Jordan Orelli
55e08628c0
(cleanup)
12 years ago
Jordan Orelli
10c674b7f3
slowly getting cleaner
12 years ago
Jordan Orelli
fb3b11d63c
ah, this is a bit cleaner
12 years ago
Jordan Orelli
4e12cefbba
holy crap, I had it so wrong before
...
good god, the original implementation was just... wrong. Soooo, so
fucking wrong I can't even fathom it.
12 years ago
Jordan Orelli
cf73b5fec0
tcp clients now get per-client consistency
...
all root-level s-expressions are evaluated in-order, on a per-client
basis.
12 years ago
Jordan Orelli
9a55b787a0
debugmode is now a flag
12 years ago
Jordan Orelli
a275c6178f
right, you can write (fact) now
12 years ago
Jordan Orelli
688c880065
added `and`, `or`, and `=`
...
the equality implementation is probably wrong.
12 years ago
Jordan Orelli
db4c1a5e58
fixed relative import error
12 years ago
Jordan Orelli
84027bf70b
werkin that tcp support
12 years ago
Jordan Orelli
e11bcf3d91
added very sloppy tcp functionality
...
can now send multi-line sexps over TCP. Max line limit is 40 lines in a
single sexp. A max needed to be selected to prevent clients from
filling up enormous buffers.
12 years ago
Jordan Orelli
d672d51f7d
hmm, tcp should work more like local...
12 years ago
Jordan Orelli
a85d6b869f
storing connections in a map instead of slice now
12 years ago
Jordan Orelli
e9264923d0
moved connection manager to its own package
12 years ago
Jordan Orelli
a4f3b6f178
added a connection manager type
12 years ago
Jordan Orelli
512549a07c
prompt now shows at the right time for clients
12 years ago
Jordan Orelli
0101163559
environment keys now include parent environments
12 years ago
Jordan Orelli
b6948645bd
added "names"
...
i'm just making shit up now.
12 years ago
Jordan Orelli
58da2f16bc
values and errors go to appropriate clients now
12 years ago
Jordan Orelli
10021eaa6d
fmt...
12 years ago
Jordan Orelli
95fa527b43
i put a tcp server in your lisp interpreter
12 years ago
Jordan Orelli
86eaf0f54e
err: `go install` --> `go get`
12 years ago
Jordan Orelli
b75f1e2491
added a readme
12 years ago
Jordan Orelli
1ee8bff82c
defined the callable interface
12 years ago
Jordan Orelli
b387d909b5
fixed quote bug
12 years ago
Jordan Orelli
c4fed38dd9
refactored builtin type
...
this is done to avoid repeating all the arity checks all over the place.
That was getting a little tedious.
12 years ago
Jordan Orelli
b9d2afce74
fixed quoting behavior
...
previously it was impossible to do the following:
(define dave (quote (x y z)))
dave
the interpreter would incorrectly try to evaluate the (x y z), because
there was no quote level being recorded, and it was seen as being the
same as a regular sexp.
12 years ago
Jordan Orelli
c648ad597d
added cons, car, cdr
12 years ago
Jordan Orelli
86929974cc
added comparison operations
12 years ago
Jordan Orelli
591a0bfe29
added "symbol?"
12 years ago
Jordan Orelli
699c407c22
added some more input tests
12 years ago
Jordan Orelli
ee8a7d3ee5
added "null" and "null?"
12 years ago
Jordan Orelli
86c288d116
added "list?" builtin
12 years ago
Jordan Orelli
7ec2538005
added "list" builtin
12 years ago
Jordan Orelli
a4e7333f86
renamed typ3 -> tokenType
...
because really, typ3 was annoying to look at.
12 years ago
Jordan Orelli
0cd35bd286
fixed up lexing of -
12 years ago
Jordan Orelli
93c86871da
(*) now evaluates to 1 instead of 0
...
I have no idea if this matters or if it's in the spec or anything like
that.
12 years ago
Jordan Orelli
e31816c22f
added a bit of documentation
12 years ago
Jordan Orelli
8476cc531b
added "length"
12 years ago
Jordan Orelli
6395089039
added "not"
12 years ago
Jordan Orelli
175e8abf1b
added "begin" special form
12 years ago
Jordan Orelli
b023686c81
added support for unary -
12 years ago
Jordan Orelli
09de857f46
added support for period-initial floats
12 years ago
Jordan Orelli
ee6c15a90f
made arity checking a little saner
12 years ago
Jordan Orelli
3bd216c75b
fixed evaluation order problem in sexp
12 years ago
Jordan Orelli
51a27aaa9b
added lambda support
12 years ago
Jordan Orelli
77195faff8
adding a bit of documentation to the lexer
12 years ago
Jordan Orelli
8c4285ec87
taking depth out of the lexer
...
I don't know why that was ever there to begin with
12 years ago
Jordan Orelli
8f150e038b
taking out a bit of redundancy in the lexer
12 years ago
Jordan Orelli
c35a4142d1
refactoring the lexer a bit
12 years ago