我被要求做一個Wireworld線的舉動,我想提出一個功能的其他功能(「help1」)內,但我不能讓它工作,有多個文件 這裏是我Wireworld線哈斯克爾需要幫助
module Transitions.For_List_2D (
transition_world -- :: List_2D Cell -> List_2D Cell
) where
import Data.Cell (Cell)
import Data.Cell (Cell (Head, Tail, Conductor, Empty))
import Data.Coordinates
import Data.Coordinates (Distance,X_Coord,Y_Coord,Coord,Element_w_Coord,)
import Data.List_2D
-- Replace this function with something more meaningful:
transition_world :: List_2D Cell -> List_2D Cell
transition_world w = case w of
[] -> []
x:xs -> transition_cell x : transition_world xs
transition_cell :: Element_w_Coord Cell -> Element_w_Coord Cell
transition_cell a = case a of
(Head,(x_coord,y_coord)) -> (Tail, (x_coord,y_coord))
(Tail,(x_coord,y_coord)) -> (Conductor, (x_coord,y_coord))
(Empty,(x_coord,y_coord))-> (Empty, (x_coord, y_coord))
(Conductor,(x_coord,y_coord)) -> (i want to put working function here)
help1 :: Coord -> List_2D Cell -> List_2D Cell
help1 a = case a of
x:xs
(Conductor, (x_e, y_e))-> List_2D.local_elements(element, (x_e, y_e)): help1 xs
的local_element是,我想,如果你需要查看的任何他的其他文件使用 也是另一個文件中的函數,只問 感謝任何幫助是極大的讚賞
我想你可能只是得到了'的情況下... of'和函數的語法搞砸了,我們沒有看到所有的定義(比如我想'指揮,..'將是一個'Element_w_Coord Cell'但你試圖用它來代替將失敗的List_2D單元格) - 無論如何,試試'help(x:xs)(Conductor ...)= ...'而不是'help1 a = case X的A:XS ...'上手 – Carsten 2015-03-31 08:17:11
在任何情況下,請給我們報告給你點它顯示錯誤(或多個) – Carsten 2015-03-31 08:18:48