Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
21
Task/S-expressions/PicoLisp/s-expressions-1.l
Normal file
21
Task/S-expressions/PicoLisp/s-expressions-1.l
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
: (any "((data \"quoted data\" 123 4.5) (data (!@# (4.5) \"(more\" \"data)\")))")
|
||||
-> ((data "quoted data" 123 5) (data (!@# (5) "(more" "data)")))
|
||||
|
||||
: (view @)
|
||||
+---+-- data
|
||||
| |
|
||||
| +-- "quoted data"
|
||||
| |
|
||||
| +-- 123
|
||||
| |
|
||||
| +-- 5
|
||||
|
|
||||
+---+-- data
|
||||
|
|
||||
+---+-- !@#
|
||||
|
|
||||
+---+-- 5
|
||||
|
|
||||
+-- "(more"
|
||||
|
|
||||
+-- "data)"
|
||||
26
Task/S-expressions/PicoLisp/s-expressions-2.l
Normal file
26
Task/S-expressions/PicoLisp/s-expressions-2.l
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
(de readSexpr ()
|
||||
(case (skip)
|
||||
("(" (char) (readList))
|
||||
("\"" (char) (readString))
|
||||
(T (readAtom)) ) ) )
|
||||
|
||||
(de readList ()
|
||||
(make
|
||||
(loop
|
||||
(NIL (skip))
|
||||
(T (= @ ")") (char))
|
||||
(link (readSexpr)) ) ) )
|
||||
|
||||
(de readString ()
|
||||
(pack
|
||||
(make
|
||||
(until (= "\"" (or (peek) (quit "Unterminated string")))
|
||||
(link (char)) )
|
||||
(char) ) ) )
|
||||
|
||||
(de readAtom ()
|
||||
(let X
|
||||
(make
|
||||
(until (or (sp? (peek)) (member (peek) '("(" ")")))
|
||||
(link (char)) ) )
|
||||
(or (format X) (intern (pack X))) ) )
|
||||
2
Task/S-expressions/PicoLisp/s-expressions-3.l
Normal file
2
Task/S-expressions/PicoLisp/s-expressions-3.l
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
: (pipe (prin "((data \"quoted data\" 123 4.5) (data (!@# (4.5) \"(more\" \"data)\")))") (readSexpr))
|
||||
-> ((data "quoted data" 123 5) (data (!@# (5) "(more" "data)")))
|
||||
2
Task/S-expressions/PicoLisp/s-expressions-4.l
Normal file
2
Task/S-expressions/PicoLisp/s-expressions-4.l
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
: (sym @@)
|
||||
-> "((data \"quoted data\" 123 5) (data (!@# (5) \"(more\" \"data)\")))"
|
||||
14
Task/S-expressions/PicoLisp/s-expressions-5.l
Normal file
14
Task/S-expressions/PicoLisp/s-expressions-5.l
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
(de printSexpr (Expr Fun)
|
||||
(cond
|
||||
((pair Expr)
|
||||
(Fun "(")
|
||||
(printSexpr (car Expr) Fun)
|
||||
(for X (cdr Expr)
|
||||
(Fun " ")
|
||||
(printSexpr X Fun) )
|
||||
(Fun ")") )
|
||||
((str? Expr)
|
||||
(Fun "\"")
|
||||
(mapc Fun (chop Expr))
|
||||
(Fun "\"") )
|
||||
(T (mapc Fun (chop Expr))) ) )
|
||||
4
Task/S-expressions/PicoLisp/s-expressions-6.l
Normal file
4
Task/S-expressions/PicoLisp/s-expressions-6.l
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
: (printSexpr
|
||||
'((data "quoted data" 123 4.5) (data (!@# (4.5) "(more" "data)")))
|
||||
prin )
|
||||
((data "quoted data" 123 5) (data (!@# (5) "(more" "data)")))
|
||||
6
Task/S-expressions/PicoLisp/s-expressions-7.l
Normal file
6
Task/S-expressions/PicoLisp/s-expressions-7.l
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
: (pack
|
||||
(make
|
||||
(printSexpr
|
||||
'((data "quoted data" 123 4.5) (data (!@# (4.5) "(more" "data)")))
|
||||
link ) ) )
|
||||
-> "((data \"quoted data\" 123 5) (data (!@# (5) \"(more\" \"data)\")))"
|
||||
Loading…
Add table
Add a link
Reference in a new issue