Login
7 branches 0 tags
Benjamin Vincent Schulenburg Added picolisp benchmarks 3a6a9d5 3 years ago 873 Commits
nujel / tests / testsuite / reader.nuj
[1 1]
['asd 'asd]
[:asd :asd]
[1 [if #t 1 2]]
[2 [if #f 1 2]]
[123 #d123]
[6 #b0110]
[10 #b1010]
[15 #b11_11]
[7 #b01,11]
[192 #b1100_0000]
[255 #xFF]
[255 #xFf]
[160 #xa0]
[31 #x1_F]
[30 #x1,E]
[50 #x32]
[256 #x100]
[0 #o]
[7 #o7]
[10 #o12]
[26 #o32]
[4294967295 #b11111111_11111111_11111111_11111111]
[4294967295 #xFFFFFFFF]
[2 [- [+ 1 #b10] 1]]
[8 [- [+ 1 #o10] 1]]
[16 [- [+ 1 #x10] 1]]
[32 [+ #x10#x10]]
[32 [+ #x10[+ 0#x10]]]
[0 [bit-and #xf0 #x0F]]
[255 [bit-or #xf0 #x0F]]
[255 [bit-or #xfF #xFF]]
[255 [bit-xor #xf0 #x0F]]
[240 [bit-xor #xff #x0F]]
['[3] [let [[test-string "3"]] [read test-string] [read test-string]]]
[:read-error [try [fn [err] [car err]] [read "#b1111-0000"]]]
[:read-error [try [fn [err] [car err]] [read "#x1-F"]]]
[:read-error [try [fn [err] [car err]] [read "#o12378"]]]
[:read-error [try [fn [err] [car err]] [read "#d1F"]]]
[:read-error [try [fn [err] [car err]] [read "#qwe"]]]
[:read-error [try [fn [err] [car err]] [read "\"\\z\""]]]
[:read-error [try [fn [err] [car err]] [read "123kg"]]]
[:read-error [try [fn [err] [car err]] [read "123.123m"]]]
[:read-error [try [fn [err] [car err]] [read "123.123.123"]]]
;[:read-error [try [fn [err] [car err]] [read "#xF.F"]]]
;[:read-error [try [fn [err] [car err]] [read "#o7.7"]]]
;[:read-error [try [fn [err] [car err]] [read "#b1.1"]]]
[:read-error [try [fn [e] [car e]] [read "#inf"]]]
[:read-error [try car [read/single "9999999999999999999"]]]
[:read-error [try car [read/single "1000000000000000000"]]]
[999999999999999999 [read/single "999999999999999999"]]
[100000000000000000 [read/single "100000000000000000"]]
[:read-error [try car [read "(. b)"]]]
[:read-error [try car [read "(a .)"]]]
[:read-error [try car [read "(#;a . b)"]]]
[:read-error [try car [read "(a . #;b)"]]]
['[a b] [car [read "(a #;. b)"]]]
[:read-error [try car [read "(#;x #;y . z)"]]]
[:read-error [try car [read "(#; #;x #;y . z)"]]]
[:read-error [try car [read "(#; #;x . z)"]]]
[123 [def i-assaultmegablaster 123] i-assaultmegablaster]
[:dies-ist-ein-test-ob-lange-symbole-funktionieren :dies-ist-ein-test-ob-lange-symbole-funktionieren]
['[1] [read "#;[\"asd\"] 1"]]
['[1] [read "#;[asd] 1"]]
['[1] [read "#;[asd [123]] 1"]]
['[1 2] [read "1 #;[asd [123]] 2"]]
['[1] [read "1 #;[asd [123]]"]]
[5 [eval [cons 'do [read "(+ 1 #;(* 2 3) 4)"]]]]
['[x z] [eval [cons 'do [read "(list 'x #;'y 'z)"]]]]
[12 [eval [cons 'do [read "(* 3 4 #;(+ 1 2))"]]]]
[16 [eval [cons 'do [read "(#;sqrt abs -16)"]]]]
['[a . c] [eval [cons 'do [read "'(a . #;b c)"]]]]
['[a . b] [eval [cons 'do [read "'(a . b #;c)"]]]]
[:read-error [try car [read "#{#nil 01}"]]]
[:read-error [try car [read "#{123 01}"]]]
[:read-error [try car [read "#{:asd 01}"]]]
[:read-error [try car [read "#{#[] 01}"]]]
[#t [not= :read-error [try car [read "#{##[] 01}"]]]]