Slava Pestov
|
5d7287b71d
|
compiler: simplify ##unbox-small/large-struct by emitting an ##unbox-any-c-ptr first
|
2010-05-10 01:38:34 -04:00 |
Slava Pestov
|
8d887c3240
|
FFI rewrite part 3: eliminate ##push-context-stack and ##pop-context-stack
|
2010-05-10 00:46:29 -04:00 |
Slava Pestov
|
d19dd57f8e
|
compiler.codegen.fixup: remove unused variable
|
2010-05-10 00:45:48 -04:00 |
Slava Pestov
|
8468f72b3f
|
cpu.x86.32: fix load error
|
2010-05-09 23:36:57 -04:00 |
Slava Pestov
|
af4e851392
|
FFI rewrite part 2: use ##peek and ##replace instructions to access stack
|
2010-05-09 23:26:43 -04:00 |
Slava Pestov
|
de2becae82
|
cpu.x86.64.unix: fix load error
|
2010-05-09 22:15:14 -04:00 |
Slava Pestov
|
03108747b3
|
cpu.x86.32: fix load error
|
2010-05-09 21:55:21 -04:00 |
Slava Pestov
|
3d66820344
|
FFI rewrite part 1: split up ##alien-invoke and friends into smaller instructions
|
2010-05-09 21:36:52 -04:00 |
Slava Pestov
|
bf03b42745
|
ui.backend.windows: faster wheel mouse scroll rate
|
2010-05-07 18:26:16 -04:00 |
Slava Pestov
|
6d367ba038
|
compiler.cfg: add ##load-float instruction for single precision floating point constants
|
2010-05-07 18:26:00 -04:00 |
Slava Pestov
|
7977448310
|
compiler.cfg.linear-scan: clean up clobber-insn handling
|
2010-05-07 18:22:35 -04:00 |
Slava Pestov
|
2da8d11dda
|
Load debugger.{unix,windows} later on in bootstrap, because lopading it before the optimizing compiler incurs a long delay on Windows as all the WinAPI bindings get loaded and parsed
|
2010-05-06 17:41:00 -04:00 |
Slava Pestov
|
d2d466de29
|
Language change: tuple slot setter words with stack effect ( value object -- ) are now named FOO<< instead of (>>FOO)
|
2010-05-06 17:21:02 -04:00 |
Joe Groff
|
6587eb88ae
|
windows.directx.dinput: redo constant generation yet again to get compile time under control
|
2010-05-05 23:26:54 -07:00 |
Slava Pestov
|
aafdfd58b1
|
cpu.ppc: add missing cases to ##load/store-memory instructions
|
2010-05-05 13:37:25 -04:00 |
Slava Pestov
|
b9a9b62c52
|
compiler.cfg.intrinsics: may as well use cell-size stores instead of 32-bit stores when initializing byte arrays
|
2010-05-05 13:23:00 -04:00 |
Slava Pestov
|
22d59eaf17
|
compiler.cfg.intrinsics.allot: fix <byte-array> intrinsic for real. Don't ever check in code without testing it
|
2010-05-05 13:17:20 -04:00 |
Slava Pestov
|
ff2966a675
|
cpu.x86.32: fix load error
|
2010-05-05 02:54:48 -04:00 |
Slava Pestov
|
a2fff25685
|
compiler.cfg.intrinsics.allot: <byte-array> intrinsic was writing past the end of the array and this was causing problems for scheduling
|
2010-05-05 02:17:57 -04:00 |
Slava Pestov
|
7e8add87fe
|
More FFI cleanups
|
2010-05-05 01:13:45 -04:00 |
Slava Pestov
|
564227cc73
|
functors: fix unit test
|
2010-05-05 00:44:21 -04:00 |
Slava Pestov
|
ae24eb8f97
|
alien.c-types: cleanup
|
2010-05-04 19:33:55 -04:00 |
Slava Pestov
|
b6e9ee539c
|
bootstrap.compiler.timing: update
|
2010-05-04 19:33:54 -04:00 |
Slava Pestov
|
295f62403e
|
vm: fix field order in zone struct
|
2010-05-04 17:57:53 -04:00 |
Daniel Ehrenberg
|
9abdc4d16d
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2010-05-04 09:52:34 -05:00 |
Daniel Ehrenberg
|
1d1fd0257a
|
Fixing scheduling for compiler changes
|
2010-05-04 09:48:16 -05:00 |
Slava Pestov
|
920d6b1829
|
cpu.ppc: updating optimizing compiler backend for recent changes
|
2010-05-04 05:51:54 -05:00 |
Slava Pestov
|
030b966adf
|
cpu.ppc.assembler: new opcodes: LFDUX LFDX LFSUX LFSX STFDUX STFDX STFSUX STFSX
|
2010-05-04 05:47:21 -05:00 |
Slava Pestov
|
0d14e85cb7
|
compiler: more tests
|
2010-05-04 05:46:45 -05:00 |
Slava Pestov
|
9c5ea3f55a
|
compiler.cfg.value-numbering: don't use complex addressing modes unless architecture supports it
|
2010-05-04 05:46:21 -05:00 |
Slava Pestov
|
46864a2c92
|
vm: tweak inline_gc() for PowerPC
|
2010-05-04 06:52:30 -04:00 |
Slava Pestov
|
4b01c16870
|
windows.directx.dinput: factor out a code snippet into a word instead of repeating it many times in macro expansion, reducing compiled code size
|
2010-05-04 04:56:38 -05:00 |
Slava Pestov
|
b16662e120
|
tools.deploy.shaker: fix debugger stripping
|
2010-05-04 03:42:20 -04:00 |
Slava Pestov
|
8757cb3bd7
|
Remove 'prettyprint' from a few USING: forms
|
2010-05-04 02:34:37 -05:00 |
Slava Pestov
|
6344b69986
|
windows.directx.dinput.constants: fix breakage if image is saved and restarted
|
2010-05-04 02:31:36 -05:00 |
Slava Pestov
|
b8ec70b895
|
ui.tools.error-list: re-use the same actual gadget, so that the current selection and set of displayed error types is preserved if the user closes and re-opens the error list
|
2010-05-04 02:53:53 -04:00 |
Slava Pestov
|
8c099dac43
|
cpu.x86: GC root offsets were computed wrong in words containing alien calls
|
2010-05-04 02:53:53 -04:00 |
Doug Coleman
|
03f5dfc14d
|
C-style identifiers in peg.ebnf
|
2010-05-03 23:52:37 -05:00 |
Doug Coleman
|
ac2dd7c435
|
Allow - in peg.ebnf identifiers. Eating still not allowed...
|
2010-05-03 23:40:50 -05:00 |
Doug Coleman
|
a5ae116fd9
|
Allow a-zA-Z0-9_ in identifiers for peg.ebnf
|
2010-05-03 23:36:29 -05:00 |
Slava Pestov
|
d49032a402
|
compiler.tests: remove useless test from float tests; min and max are generic now, with methods on floats, so any potential inconsistency is gone
|
2010-05-04 00:07:53 -04:00 |
Slava Pestov
|
27ba4339a7
|
cpu: cleanups
|
2010-05-03 23:08:24 -04:00 |
Slava Pestov
|
a9238f5be2
|
tools.deploy.shaker: tweak error reporting slightly
|
2010-05-03 23:07:46 -04:00 |
Slava Pestov
|
bd4b31ffa9
|
cpu.ppc: fixing typos in non-optimizing backend
|
2010-05-03 22:43:51 -04:00 |
Slava Pestov
|
e599462bf0
|
ui.gadgets.tables: fix load error in docs
|
2010-05-03 22:42:19 -04:00 |
Slava Pestov
|
7a084e0971
|
bit-arrays: re-use utility words from math.bitwise and io.binary to make implementation a bit more elegant
|
2010-05-03 22:38:50 -04:00 |
Slava Pestov
|
34bcaecb8c
|
compiler.cfg.value-numbering: fix typo in unit test
|
2010-05-03 22:11:29 -04:00 |
Slava Pestov
|
512e4d8181
|
ui.gadgets.tables: remove multiple selection support, and make the error list handle preservation of the current selection better when the underlying model changes
|
2010-05-03 22:09:00 -04:00 |
Slava Pestov
|
94e6ed142d
|
cpu.x86.assembler: fix test on 64-bit
|
2010-05-03 20:16:13 -04:00 |
Daniel Ehrenberg
|
357afde050
|
Some fixes to merge scheduling
|
2010-05-03 17:54:46 -05:00 |
Daniel Ehrenberg
|
2e59234243
|
Merge branch 'master' of git://factorcode.org/git/factor into s3
|
2010-05-03 17:51:30 -05:00 |
Slava Pestov
|
59ad41b6a3
|
Eliminate some -rot from the codebase
|
2010-05-03 18:31:01 -04:00 |
Daniel Ehrenberg
|
771879f4c4
|
Merge branch 'master' of git://factorcode.org/git/factor into s3
|
2010-05-03 17:29:08 -05:00 |
Daniel Ehrenberg
|
0914282c52
|
Merge branch 'master' of git://factorcode.org/git/factor into s3
Conflicts:
basis/compiler/cfg/finalization/finalization.factor
|
2010-05-03 17:29:03 -05:00 |
Slava Pestov
|
acfec41df5
|
cpu.ppc: updates for recent compiler changes, untested
|
2010-05-03 18:28:31 -04:00 |
Slava Pestov
|
d0028df10b
|
compiler.cfg.empty-blocks: remove unused pass
|
2010-05-03 18:23:54 -04:00 |
Slava Pestov
|
705b03b92b
|
compiler.cfg.alias-analysis: storing a reference into an object now merges the reference's alias class with the heap alias class
|
2010-05-03 18:20:28 -04:00 |
Daniel Ehrenberg
|
e41f9bdb29
|
Merge branch 'master' into s3
Conflicts:
basis/compiler/cfg/optimizer/optimizer.factor
|
2010-05-03 17:19:28 -05:00 |
Slava Pestov
|
7f0469efef
|
compiler: new "binary literal area" at the end of a word's machine code stores constant floats and SIMD vectors; this allows ##load-reference/##load-memory fusion to be performed on x86-64, with a RIP-relative address reaching the data; also simplifies VM since custom relocation types used by the previous 32-bit-only optimization are no longer needed
|
2010-05-03 17:34:35 -04:00 |
Slava Pestov
|
b051c6cb54
|
compiler.cfg.representations: make sure that immediate operands fit
|
2010-05-03 17:34:34 -04:00 |
Slava Pestov
|
bc3826f73a
|
compiler.cfg.value-numbering: fix unit test for 64-bit
|
2010-05-03 17:34:33 -04:00 |
Slava Pestov
|
0d4693d740
|
io.launcher.unix: add timeout to a test
|
2010-05-03 17:34:33 -04:00 |
Slava Pestov
|
73c83333f2
|
compiler: remove flat machine representation and generate code directly from the CFG
|
2010-05-03 17:34:32 -04:00 |
Slava Pestov
|
121743230d
|
compiler.cfg.debugger: add ssa. word to print IR before representation selection runs
|
2010-05-03 17:34:31 -04:00 |
Slava Pestov
|
df25d4ca1c
|
compiler.tree.propagation: fix both-fixnums? trick
|
2010-05-03 17:34:30 -04:00 |
Slava Pestov
|
bb0579ecf9
|
Updating tests for recent compiler changes
|
2010-05-03 17:34:30 -04:00 |
Slava Pestov
|
e70c09c690
|
compiler.cfg.linear-scan.assignment: spill slot representation logic was backwards, just like Factor
|
2010-05-03 17:34:29 -04:00 |
Slava Pestov
|
c724550291
|
compiler.cfg: fuse ##load-integer/##load-reference into ##replace to form ##replace-imm
|
2010-05-03 17:34:28 -04:00 |
Slava Pestov
|
90b945eaa0
|
compiler: add ##load-vector instruction to avoid wasting a temporary register on x86-32
|
2010-05-03 17:34:28 -04:00 |
Slava Pestov
|
be95003594
|
cpu.x86: use available type info to generate more efficient %box-displaced-alien where possible
|
2010-05-03 17:34:27 -04:00 |
Slava Pestov
|
3b0751d35d
|
compiler.cfg.copy-prop: optimistic copy propagation
|
2010-05-03 17:34:26 -04:00 |
Slava Pestov
|
e2f164a52f
|
compiler.cfg: cleanup
|
2010-05-03 17:34:26 -04:00 |
Slava Pestov
|
d8fc595383
|
compiler.cfg: clean up ##phi literals in tests
|
2010-05-03 17:34:24 -04:00 |
Slava Pestov
|
460f163014
|
compiler.cfg.linear-scan: clean up spill slot assignment
|
2010-05-03 17:34:24 -04:00 |
Slava Pestov
|
ad55659485
|
compiler.cfg.ssa.detruction: coalesce different representations in more cases
|
2010-05-03 17:34:22 -04:00 |
Slava Pestov
|
c35eba5e34
|
compiler.cfg.alias-analysis: write unit tests and fix redundant store elimination
|
2010-05-03 17:34:22 -04:00 |
Slava Pestov
|
b9fc73e25f
|
continuations: keep original error when throwing wrapped errors as well, for easier debugging of bootstrap failures
|
2010-05-03 17:34:22 -04:00 |
Slava Pestov
|
ee890ed1cc
|
compiler.cfg.debugger: clean up and make it more flexible
|
2010-05-03 17:34:22 -04:00 |
Slava Pestov
|
8849e370ca
|
Register allocation now uses SSA properties to coalesce values with different representations
|
2010-05-03 17:34:20 -04:00 |
Slava Pestov
|
16566506f1
|
compiler.cfg: remove unused 'reps' slot from compiler.cfg, and re-organize things in preparation for SSA register allocation
|
2010-05-03 17:34:18 -04:00 |
Slava Pestov
|
d38dbdabce
|
compiler.cfg.linear-scan: cleanups
|
2010-05-03 17:34:18 -04:00 |
Slava Pestov
|
03bd160f08
|
Code cleanups
|
2010-05-03 17:34:17 -04:00 |
Slava Pestov
|
813eabadc6
|
compiler.cfg.gc-checks: move phi instructions into GC check block, to ensure correct behavior
|
2010-05-03 17:34:17 -04:00 |
Slava Pestov
|
fc7a1ad8b3
|
New GC checks work in progress
|
2010-05-03 17:34:16 -04:00 |
Slava Pestov
|
1bde985228
|
cpu.x86.assembler: small cleanups
|
2010-05-03 17:34:15 -04:00 |
Slava Pestov
|
9b770c09fb
|
compiler.tree.propagation: fix tests
|
2010-05-03 17:34:14 -04:00 |
Slava Pestov
|
6f28468e6d
|
compiler.codegen: cleanup
|
2010-05-03 17:34:14 -04:00 |
Slava Pestov
|
e4ce0d92f2
|
compiler.cfg.linear-scan.resolve: fix incorrect behavior when one physical register is used with several representations in the same register class
|
2010-05-03 17:34:14 -04:00 |
Slava Pestov
|
6b3aeeb414
|
compiler.cfg.linear-scan: don't insert a _reload if the register is going to be overwritten anyway
|
2010-05-03 17:34:14 -04:00 |
Slava Pestov
|
fd84bb98bc
|
strings: move string-nth primitive out of the VM and into the library
|
2010-05-03 17:34:12 -04:00 |
Slava Pestov
|
73c34341d7
|
compiler.cfg.representations: simplify a little
|
2010-05-03 17:34:11 -04:00 |
Slava Pestov
|
808be63c07
|
compiler.cfg.representations: add peephole optimizations for integer comparisons
|
2010-05-03 17:34:11 -04:00 |
Slava Pestov
|
8af111577c
|
compiler.cfg.representations: fix various bugs
|
2010-05-03 17:34:11 -04:00 |
Slava Pestov
|
9b130730b6
|
compiler.cfg.representations: add more peephole optimizations to reduce fixnum tagging and untagging overhead
|
2010-05-03 17:34:11 -04:00 |
Slava Pestov
|
31cd3ff574
|
compiler.cfg.value-numbering: more cleanups
|
2010-05-03 17:34:10 -04:00 |
Slava Pestov
|
7982a3f92e
|
compiler.cfg.value-numbering: identify VNs with their representative vregs, eliminating the vn>vreg hash
|
2010-05-03 17:34:10 -04:00 |
Slava Pestov
|
a4c5525a56
|
compiler.cfg.value-numbering: maintain a VN to instruction mapping. This eliminates all instances of expression inspection, allowing the auto-generated expression classes to be removed
|
2010-05-03 17:34:09 -04:00 |
Slava Pestov
|
2764cc81e2
|
compiler.cfg.value-numbering: remove constant -vs- literal distinction
|
2010-05-03 17:34:09 -04:00 |
Slava Pestov
|
c400c7e78a
|
compiler.cfg.ssa.liveness: remove unused pass
|
2010-05-03 17:34:08 -04:00 |
Slava Pestov
|
b9e27d1c82
|
compiler.cfg.builder: fix unit tests
|
2010-05-03 17:34:08 -04:00 |
Slava Pestov
|
2b50b9b315
|
compiler.cfg.value-numbering: merge 'simplify' pass into 'rewrite'
|
2010-05-03 17:34:08 -04:00 |
Slava Pestov
|
80c8a7154d
|
compiler.cfg: add ##load-memory and ##store-memory instructions implementing complex addressing modes, and associated value numbering optimizations
|
2010-05-03 17:34:07 -04:00 |
Slava Pestov
|
505b34a611
|
compiler.cfg.value-numbering: add slot addressing rewrite rule to eliminate a redundant ##add-imm from array-nth and set-array-nth
|
2010-05-03 17:34:07 -04:00 |
Slava Pestov
|
59fe281799
|
compiler.cfg: more flexible addressing for ##slot and ##set-slot
|
2010-05-03 17:34:06 -04:00 |
Slava Pestov
|
a5e4eb1948
|
cpu.x86.assembler: support all addressing modes
|
2010-05-03 17:34:06 -04:00 |
Slava Pestov
|
becd957d29
|
compiler.cfg: merge all alien accessors into ##load-memory-imm and ##store-memory-imm
|
2010-05-03 17:34:06 -04:00 |
Slava Pestov
|
3c965afd10
|
compiler.cfg: remove ##set-string-nth-fast instruction since it can be expressed just as efficiently using other instructions
|
2010-05-03 17:34:04 -04:00 |
Slava Pestov
|
65e35b842f
|
compiler.tests.low-level-ir: update for recent changes
|
2010-05-03 17:34:04 -04:00 |
Slava Pestov
|
12907654d5
|
compiler.cfg.value-numbering: fix compile error
|
2010-05-03 17:34:04 -04:00 |
Slava Pestov
|
c94666073b
|
compiler.cfg.representations: peephole optimizations are used to simplify the case where the input to a ##shl-imm or ##sar-imm needs to be untagged
|
2010-05-03 17:34:03 -04:00 |
Slava Pestov
|
6403572286
|
compiler.cfg.value-numbering: new optimizations; reassociation for shifts and redistribution for shifts/multiplies over additions/subtractions
|
2010-05-03 17:34:02 -04:00 |
Slava Pestov
|
f000bb4bd5
|
compiler.cfg.instructions: more typos
|
2010-05-03 17:34:02 -04:00 |
Slava Pestov
|
80558a93fa
|
Debugging untagged fixnums
|
2010-05-03 17:34:02 -04:00 |
Slava Pestov
|
6fdcd9fb02
|
Untagged fixnums work in progress
|
2010-05-03 17:34:02 -04:00 |
Slava Pestov
|
19412e4ad1
|
compiler: Start using tagged-rep for stuff, and split up compiler.cfg.representations into several sub-vocabularies
|
2010-05-03 17:34:01 -04:00 |
Joe Groff
|
703affa6f4
|
tools.deploy.shaker: adjust fallback error handler message so it looks better in a Win32 MessageBox
|
2010-05-02 22:40:54 -07:00 |
Joe Groff
|
f91e81ada0
|
windows.errors, debugger.windows: improve description of Windows error objects
|
2010-05-02 22:29:59 -07:00 |
Joe Groff
|
09f30e94df
|
windows.directx.dinput: pre-construct some intermediate structs to slightly improve horrible compilation time on the gigantic macro expansions
|
2010-05-02 18:14:30 -07:00 |
Joe Groff
|
aab60ba59e
|
windows.directx.dinput: forgot to reenable constant initialization
|
2010-05-02 11:23:51 -07:00 |
Joe Groff
|
53917fcfd0
|
windows.directx.dinput: use macros to define format constants to avoid holding onto a bunch of useless symbols after deployment
|
2010-05-02 01:27:07 -07:00 |
Joe Groff
|
9d10175f8e
|
Use dinput as default windows game.input backend
|
2010-05-02 00:38:37 -07:00 |
Doug Coleman
|
1e5588a0ea
|
Fix normalization to take stride/padding bytes into account
|
2010-05-01 18:37:59 -05:00 |
Doug Coleman
|
32d001a83b
|
move images.bitmap.loading to images.bitmap
|
2010-05-01 17:11:11 -05:00 |
Doug Coleman
|
b11711ab0a
|
Fix help lint for math.polynomials
|
2010-04-30 14:04:45 -05:00 |
Doug Coleman
|
89bf69a7bd
|
Clean up math.polynomials some
|
2010-04-30 08:42:29 -05:00 |
unknown
|
be69c02803
|
Fix enter-fullscreen on windows
|
2010-04-30 08:06:06 -05:00 |
Doug Coleman
|
1d602976c3
|
Fix smart-if* for multiple inputs and test. oops
|
2010-04-29 20:21:53 -05:00 |
Doug Coleman
|
6cac86bee4
|
Demonstrate smart-if and smart-if* combinators
|
2010-04-29 19:57:07 -05:00 |
Slava Pestov
|
c5fef60396
|
ui.backend.x11: fix load error
|
2010-04-29 03:59:31 -04:00 |
Slava Pestov
|
fb8d418f13
|
ui.backend.windows: fix compile error
|
2010-04-29 02:20:17 -05:00 |
Slava Pestov
|
54260643c3
|
ui: use scroll delta information for smoother mouse scrolling on Windows and Mac OS X
|
2010-04-29 02:52:32 -04:00 |
Slava Pestov
|
4ae41d4032
|
math.vectors: (vmerge) shouldn't be generic
|
2010-04-29 02:28:05 -04:00 |
Slava Pestov
|
92277b94b5
|
math.vectors.simd.cords: a dash of inline sauce
|
2010-04-29 01:58:56 -04:00 |
Slava Pestov
|
6645703def
|
bootstrap.handbook: fix typo
|
2010-04-29 01:43:40 -04:00 |
Joe Groff
|
b59d7d9bf2
|
Merge branch 'master' of factorcode.org:/git/factor
|
2010-04-28 15:49:00 -07:00 |
Joe Groff
|
bec542f08d
|
rename half-floats vocab to math.floats.half
|
2010-04-28 15:48:47 -07:00 |
Slava Pestov
|
f0291cf862
|
io.sockets: update <datagram> docs
|
2010-04-27 10:52:19 -04:00 |
Daniel Ehrenberg
|
f3de04f1b5
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2010-04-25 18:10:36 -05:00 |
Daniel Ehrenberg
|
4cf75e97b5
|
Documenting bitfields in structs
|
2010-04-25 18:09:58 -05:00 |
Joe Groff
|
352f6d68de
|
Merge branch 'master' of factorcode.org:/git/factor
|
2010-04-25 12:19:28 -07:00 |
Joe Groff
|
c434fbf47c
|
ui.backend.x11: search path for xmessage rather than hardcoding path
|
2010-04-25 12:18:45 -07:00 |
Daniel Ehrenberg
|
cf0453f80c
|
Making tools.deploy.shaker remove require-when data structures
|
2010-04-24 21:29:46 -05:00 |
Joe Groff
|
adcdc5a45e
|
use word-props instead of singletons for enum>number conversion so there's not a big fat generic making the image buy another plane ticket
|
2010-04-21 22:22:06 -07:00 |
Joe Groff
|
00e4503982
|
doll up ENUM: docs
|
2010-04-21 21:33:04 -07:00 |
Doug Coleman
|
9145e897b5
|
Fix alien.enum docs
|
2010-04-21 21:32:33 -05:00 |
Joe Groff
|
970df56056
|
alien.enums: make enum>number foldable so it optimizes constant enums to constant ints, make number>enum a macro so it doesn't use c-type metadata at runtime
|
2010-04-20 17:05:14 -07:00 |
Erik Charlebois
|
79b61d8393
|
Use generic word for enum>number. Tests and documentations.
|
2010-04-19 20:08:40 -07:00 |
Erik Charlebois
|
d44e470416
|
Remove ENUM: f and replace uses with CONSTANTs.
Fix bootstrap and load-all errors from enum classes.
|
2010-04-19 20:08:40 -07:00 |
Joe Groff
|
fc7ed73f87
|
prettyprint ENUM: definitions
|
2010-04-19 20:07:18 -07:00 |
Joe Groff
|
e28882bf59
|
add alien.enums vocab with enum-c-types that convert between symbols and integer values in the FFI. update ENUM: to define symbolic enums, and take an optional base type
|
2010-04-19 20:07:18 -07:00 |