JeffBezanson
c89111f7cb
refactored escape sequence handling a bit, added error for invalid hex
...
discarding rest of input line after a parse error
made compare() do less work for unordered comparison
added peekc and purge to ios
2008-11-06 04:04:04 +00:00
JeffBezanson
120522c212
updating bitvector functions to use int64s in more places, since
...
after all that's the whole point of bitvectors
some prettyprinting tweaks
more uniform way to handle forwarding pointers. fix forwarding
of gensyms
:keyword symbols
2008-10-31 02:50:00 +00:00
JeffBezanson
581afbf636
fixing the result of casting floating point numbers to uint64
...
handling NULL locale
2008-10-08 01:14:23 +00:00
JeffBezanson
c8c59b1dfc
added globals *install-dir* and *print-width*, parameterized
...
prettyprinter by screen width
decent accumulate-while and accumulate-for
2008-09-11 02:37:38 +00:00
JeffBezanson
6f934a817b
I decided it was rather random that set was the only function
...
that could access the current environment dynamically. It also
differed unnecessarily from common lisp set in this respect.
So now setq is a builtin special form that sets lexical or
global variables, and set is a function that sets global variables.
Rather than eliminate the power of the dynamic set, I extended it
by adding eval*, which evaluates its argument in the current
environment. The justification for this is that the interpreter
is already dynamic enough to allow it with no overhead, so the
ability might as well be exposed.
cleanup; removing some magic numbers
beginning hash tables
2008-09-06 22:19:51 +00:00
JeffBezanson
72d8dec7df
adding new UTF8 example text
...
adding new example big expression for ast testcase
2008-09-03 18:39:27 +00:00
JeffBezanson
7412a31af3
removing more clutter
2008-09-03 15:42:00 +00:00
JeffBezanson
af8b332367
fixed some small flaws in (compare)
2008-08-30 22:18:20 +00:00
JeffBezanson
ca1b12064f
removing some redundant/irrelevant files
2008-08-30 05:05:31 +00:00
JeffBezanson
7cdd489f86
changing license, since google code does not support the CPL
2008-08-30 02:56:46 +00:00
JeffBezanson
d6470ac62f
fixed array constructor so it doesn't require allocating a generic
...
container first
updates and improvements to ios
2008-08-29 03:27:59 +00:00
JeffBezanson
9acdf313b9
adding more ios functions
...
porting femtolisp to use ios for all I/O
2008-08-17 18:16:31 +00:00
JeffBezanson
fa0e134dd8
adding "d.df" syntax for reading single-precision numbers
...
misc. fixes
more work on ios
2008-08-16 21:15:36 +00:00
JeffBezanson
6e515a532e
fix oops in new apply()
...
more cvalues design
2008-08-07 05:08:10 +00:00
JeffBezanson
62e5c359d0
adding string.inc and string.dec
...
moving string functions to their own file
2008-08-05 04:34:14 +00:00
JeffBezanson
46f2f47b14
switched to 3-bit type tags for simpler checking
...
fixnums still have 30 bits
moving towards making "guest functions" more opaque; their type is now
just 'builtin
pretty printing some forms better: defun, defmacro, for, label
support *print-pretty*
2008-08-05 01:43:12 +00:00
JeffBezanson
c3811312a7
adding vector.map, string.char
...
fixing 0-trip-count case in (for)
2008-08-02 16:18:39 +00:00
JeffBezanson
e08091e4a1
adding (for lo hi f) construct, changing library funcs to use it
...
setting license to CPL v1
2008-07-26 22:04:02 +00:00
JeffBezanson
60644c760e
made apply() entry point more efficient (now non-consing)
...
added selfevaluating(v) predicate
2008-07-26 04:03:48 +00:00
JeffBezanson
180b05fa8e
storing environment size on the stack so lambda doesn't need to
...
compute it. changed penv from pointer to stack index.
result is best performance yet.
fixing constantp to be true for quoted values
2008-07-18 04:16:07 +00:00
JeffBezanson
ed61ae48a5
fixing mistake re: dotted arglists in last revision
2008-07-15 01:24:50 +00:00
JeffBezanson
b76bbe3724
changing environment representation to contiguous values
...
eliminating built-in label form
2008-07-15 01:20:52 +00:00
JeffBezanson
0d5cb73523
updating AST test to work with latest
2008-07-15 00:11:04 +00:00
JeffBezanson
b0e8582c1d
adding performance test files
2008-07-15 00:06:42 +00:00
JeffBezanson
b3b2bc3300
fix to how defun was using macroexpand
2008-07-12 02:58:55 +00:00
JeffBezanson
135492d18c
updating build for new repository structure
2008-07-01 01:58:16 +00:00
JeffBezanson
0c9010a117
import femtolisp source
2008-07-01 01:54:22 +00:00