public
Description: Not-Yet-Arc Compiler
Homepage:
Clone URL: git://github.com/stefano/nyac.git
nyac / README
100644 58 lines (35 sloc) 1.492 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
NYAC -- Not Yet an Arc Compiler
 
As the name suggests, the goal of this project is to build a complete Arc
compiler that generates native binary code.
Currently it is not Arc compatible, but it is already able to compile itself.
 
*) Supported platforms
 
The only platform supported is GNU/Linux on a x86 32 bits CPU.
 
*) Dependencies
 
In order to make nyac work, you will need a working gcc install.
 
*) Installation
 
First get it (you will need git installed):
 
$ git clone git://github.com/stefano/nyac.git
 
then enter nyac directory:
 
$ cd nyac
 
now you'll need to unpack the precompiled binaries and to set LD_LIBRARY_PATH
(this assumes that you're using bash):
 
$ tar -jxvf nyac-build-linux-x86-32-'insert most recent date here'.tar.bz2
 
$ export LD_LIBRARY_PATH=build-arc:$LD_LIBRARY_PATH
 
at this point, you should be able to test if it works:
 
$ ./build-arc/test.arc.run
 
*) Missing features
 
The two most important ones:
 
- Threading
- Lists, vectors, hash tables, etc. in function call position
 
Others (in no particular order):
 
- Some function names differ from their Arc equivalent
- Almost all of standard functions and macros are missing
- 'annotate and 'rep
- ssyntax
- quasiquoting (but the reader expands `... to (quasiquote ...) and ,... to
  (unquote ...))
- bignums, ratnums, etc. Only fixnums and floating point numbers are supported
- only ASCII characters are supported
- hash tables are still not implemented
 
The list could go on...
Macros are supported, though.