1

私はCourseraのAI計画クラス用にLispyPDDLパーサーをプログラミングしています。

HaskellでLispyデータ型を定義するにはどうすればよいですか?

4

2 に答える 2

2

Lispyに見えますね。

{-# LANGUAGE FlexibleInstances #-}

import Data.List

data S s = T s | S [S s] deriving (Eq)

instance Show (S String) where
 show (T s) = s
 show (S list) = "(" ++ (intercalate " " $ map show list) ++ ")"

sExpr = S [T "define",T "x",T "10",S [T "print",T "hello"],S []]

main = do
 putStrLn $ show sExpr

mainを実行した結果:

(define x 10 (print hello) ())
于 2013-02-17T05:01:31.353 に答える
0

私のLispyPDDLパーサー:

https://dl.dropbox.com/u/46434672/Code/LispyPddlParser.hs

DWR-operators.txtファイル:

https://spark-public.s3.amazonaws.com/aiplan/resources/DWR-operators.txt

于 2013-02-19T22:12:16.603 に答える