-
596fa86cc4
Implement eval/apply in Scheme.
Jan Nieuwenhuizen
2016-10-16 18:53:31 +0200
-
1d0cbcd59c
Reduce eval/apply in core, extend in Scheme.
Jan Nieuwenhuizen
2016-10-20 18:43:33 +0200
-
1e62bbf8c9
Avoid adding top of environment to cache.
Jan Nieuwenhuizen
2016-10-20 00:21:06 +0200
-
7885096526
Implement environment cache.
Jan Nieuwenhuizen
2016-10-20 00:11:48 +0200
-
d1b8f0ff0c
Introduce SCM type for special symbols.
Jan Nieuwenhuizen
2016-10-20 19:19:32 +0200
-
cdd903054c
Remove static primitives hack.
Jan Nieuwenhuizen
2016-10-20 09:37:14 +0200
-
9c986748e1
Refactor primitives lookup.
Jan Nieuwenhuizen
2016-10-19 07:22:15 +0200
-
035b0a8d5d
Remove unused symbol.
Jan Nieuwenhuizen
2016-10-18 20:05:51 +0200
-
a4c3acc7ba
Add report to closure test.
Jan Nieuwenhuizen
2016-10-18 19:10:16 +0200
-
d0addb3e99
Remove dead code from let.mes.
Jan Nieuwenhuizen
2016-10-18 19:11:14 +0200
-
4ff96673c7
Avoid cons* in base.
Jan Nieuwenhuizen
2016-10-18 08:24:47 +0200
-
2a8d3c57b7
Differentiate apply asserts.
Jan Nieuwenhuizen
2016-10-18 09:21:49 +0200
-
b9bbac3d0c
Add display tag for builtin procedures.
Jan Nieuwenhuizen
2016-10-18 09:08:42 +0200
-
0eae7674b6
Remove macro expansion from apply.
Jan Nieuwenhuizen
2016-10-17 18:26:07 +0200
-
3098f84e9e
Add paredit workaround in scripts.
Jan Nieuwenhuizen
2016-10-17 18:24:40 +0200
-
d18e50a569
make tests standalone executable.
Jan Nieuwenhuizen
2016-10-16 17:34:51 +0200
-
219a8cdfbb
make clean: remove symbols.i.
Jan Nieuwenhuizen
2016-10-16 14:57:30 +0200
-
1e59009102
Update documentation.
Jan Nieuwenhuizen
2016-10-16 14:00:40 +0200
-
ac4b1eed3f
Add --help, --version.
Jan Nieuwenhuizen
2016-10-16 13:45:24 +0200
-
c5aa93d67b
guix hash: 0g6lcms2hv1i8hdkfh2xz0g7jmsayisr7bcwkp47blkbapqpzpsf
Jan Nieuwenhuizen
2016-10-19 00:36:08 +0200
-
b5af238305
Update guix hash.
Jan Nieuwenhuizen
2016-10-18 23:50:09 +0200
-
ac6fb6feed
Add installation instructions.
Jan Nieuwenhuizen
2016-10-16 11:24:41 +0200
-
7e4736f3d0
Add guix.scm package recipe.
Jan Nieuwenhuizen
2016-10-16 11:27:39 +0200
-
2001183928
Prepare for 0.1 release: update READMEs.
Jan Nieuwenhuizen
2016-10-15 11:54:24 +0200
-
6d64e55500
Prepare for 0.1 release: make install.
Jan Nieuwenhuizen
2016-10-16 08:14:50 +0200
-
323e78b190
Prepare for 0.1 release: installable scripts.
Jan Nieuwenhuizen
2016-10-16 08:00:04 +0200
-
3128c4b976
Prepare for 0.1 release: gnu-build-system.
Jan Nieuwenhuizen
2016-10-16 00:34:23 +0200
-
d114634203
Prepare for 0.1 release: new directory structure.
Jan Nieuwenhuizen
2016-10-12 23:40:11 +0200
-
bd2b81755a
Remove evcon (Sorry John).
Jan Nieuwenhuizen
2016-10-15 11:56:18 +0200
-
83970245e5
Support quasisyntax.
Jan Nieuwenhuizen
2016-10-16 01:41:07 +0200
-
2715e241e5
Add REPL.
Jan Nieuwenhuizen
2016-10-16 09:44:52 +0200
-
422b6e6ce9
Avoid 90% of cdr'ing environment, assuming static primitives.
Jan Nieuwenhuizen
2016-10-12 21:14:06 +0200
-
6948629c27
Do not use quasiquote in base0.
Jan Nieuwenhuizen
2016-10-16 09:21:17 +0200
-
dd271be218
Add procedure? to base.
Jan Nieuwenhuizen
2016-10-12 22:58:35 +0200
-
1bb3d1de11
speedup: use ->car etc.
Jan Nieuwenhuizen
2016-10-08 17:00:32 +0200
-
c5e3e3818d
Avoid out-of-spec strncat usage.
Jan Nieuwenhuizen
2016-10-11 18:50:14 +0200
-
513bd09f76
Discern between primitive atoms and symbols.
Jan Nieuwenhuizen
2016-10-11 07:10:01 +0200
-
c506880a14
resurrect mescc.
Jan Nieuwenhuizen
2016-10-10 23:54:48 +0200
-
7ff86c393f
cleanup and doc update.
Jan Nieuwenhuizen
2016-10-10 23:24:44 +0200
-
bf02fa7f07
syntax.mes: silence syntax error.
Jan Nieuwenhuizen
2016-10-10 22:44:42 +0200
-
c6ce1662e4
test/scm.test: update.
Jan Nieuwenhuizen
2016-10-10 22:42:05 +0200
-
2e1685dc2d
test/match.test: pass.
Jan Nieuwenhuizen
2016-10-11 18:51:30 +0200
-
c38ae1ebc5
lib/match: ugly hygiene hack. FIXME.
Jan Nieuwenhuizen
2016-10-10 20:53:42 +0200
-
d3fab554d5
let-syntax.mes: implement.
Jan Nieuwenhuizen
2016-10-10 22:55:37 +0200
-
a265f933d8
speedup: use ->car etc.
Jan Nieuwenhuizen
2016-10-08 17:00:32 +0200
-
4514be76d9
use IF as primitive, drop using cond/evcon only option.
Jan Nieuwenhuizen
2016-10-08 16:54:59 +0200
-
7c759e0670
c++ type-safety.
Jan Nieuwenhuizen
2016-10-08 10:14:17 +0200
-
e504998b03
assq: use while instead of recursion.
Jan Nieuwenhuizen
2016-10-08 08:47:23 +0200
-
509bf3956e
mes.c: uniquify symbols.
Jan Nieuwenhuizen
2016-10-08 08:41:30 +0200
-
3ff385ce6d
mes-check: separate target.
Jan Nieuwenhuizen
2016-10-08 08:38:29 +0200
-
cd84c337f1
Updates to README, TODO.
Jan Nieuwenhuizen
2016-09-25 12:50:00 +0200
-
e1eeaf979a
mescc.scm: compile simple, well-behaved for-loop.
Jan Nieuwenhuizen
2016-08-14 14:42:52 +0200
-
76ff664dab
elf.mes: for loop.
Jan Nieuwenhuizen
2016-08-14 14:02:09 +0200
-
04eb0609cd
mescc.scm: print two strings.
Jan Nieuwenhuizen
2016-08-14 09:06:09 +0200
-
2c7f26dbe6
mescc.scm: first a.out produced from main.c.
Jan Nieuwenhuizen
2016-08-14 01:44:42 +0200
-
85f3d40e71
lib/match.scm: import.
Jan Nieuwenhuizen
2016-08-14 01:40:55 +0200
-
da27cf183a
lib/srfi/srfi-1.scm: add append-map, filter, find.
Jan Nieuwenhuizen
2016-08-14 01:40:45 +0200
-
a3e5461952
elf.mes: make-elf.
Jan Nieuwenhuizen
2016-08-13 22:43:55 +0200
-
9fe124a4bf
elf.mes: use elf32-* remove set!.
Jan Nieuwenhuizen
2016-08-13 22:21:59 +0200
-
24291da28e
elf.mes: remove text-free, softcode data-offset.
Jan Nieuwenhuizen
2016-08-13 19:19:52 +0200
-
30076e1b2b
elf.mes: put marker in note section.
Jan Nieuwenhuizen
2016-08-13 18:57:49 +0200
-
51d0fc90de
Revert "elf.mes: drop .note section."
Jan Nieuwenhuizen
2016-08-13 18:46:22 +0200
-
403e487d16
elf.mes: drop .note section.
Jan Nieuwenhuizen
2016-08-13 18:42:53 +0200
-
98d4772e3f
elf.mes: softcode more.
Jan Nieuwenhuizen
2016-08-13 18:42:38 +0200
-
ec8553dc4f
mes.c: implement string->list.
Jan Nieuwenhuizen
2016-08-13 18:42:11 +0200
-
00e000306d
elf.mes: compute text-free, text-offset.
Jan Nieuwenhuizen
2016-08-13 15:27:02 +0200
-
1ddb703265
lib/rnrs/bytevectors.scm: minimal rnrs bytevectors.
Jan Nieuwenhuizen
2016-08-13 17:05:29 +0200
-
1d08cc7f6f
elf.mes: separate-out text, text-free and data sections.
Jan Nieuwenhuizen
2016-08-13 10:32:07 +0200
-
038f4c71be
resurrect guile-mescc, use write-int and (current-error-port) iso `2'.
Jan Nieuwenhuizen
2016-08-13 01:07:26 +0200
-
697858f670
Revert "mes.c: use single malloc with arena."
Jan Nieuwenhuizen
2016-09-25 10:13:09 +0200
-
b955b84d20
mes.c: use single malloc with arena.
Jan Nieuwenhuizen
2016-08-13 00:58:00 +0200
-
355042300c
elf.mes: a.out runs.
Jan Nieuwenhuizen
2016-08-12 16:38:59 +0200
-
ecc1ebec1d
elf.mes: error-free header, no program yet.
Jan Nieuwenhuizen
2016-08-12 15:54:15 +0200
-
2ffa9e2cdd
elf.mes: readelf -h a.out shows some info.
Jan Nieuwenhuizen
2016-08-12 15:10:05 +0200
-
0829c5762c
mescc/elf.mes: write minimal ELF header.
Jan Nieuwenhuizen
2016-08-12 14:17:55 +0200
-
2097e9e4ef
mes.c: display, newline: take optional port; add write-char, read hex #xXX.
Jan Nieuwenhuizen
2016-08-12 14:17:20 +0200
-
066deeb183
remove debug output to stdout.
Jan Nieuwenhuizen
2016-08-12 12:06:59 +0200
-
ef874c8fd3
syntax-if.mes: TODO.
Jan Nieuwenhuizen
2016-07-27 12:16:44 +0200
-
287c0284fe
Use IF iso COND as primitive; keep COND primitive as option.
Jan Nieuwenhuizen
2016-07-27 08:49:45 +0200
-
af1b6dc88d
let.scm: cleanups.
Jan Nieuwenhuizen
2016-07-27 07:35:57 +0200
-
56fcde0966
macro hax0rz
Jan Nieuwenhuizen
2016-07-27 00:32:30 +0200
-
ccb1d842f3
Revert "lib/lalr-debug.scm"
Jan Nieuwenhuizen
2016-07-27 00:05:02 +0200
-
300c997d43
lib/lalr-debug.scm
Jan Nieuwenhuizen
2016-07-26 23:34:00 +0200
-
d949b81402
quasiquote.mes: disable, too slow.
Jan Nieuwenhuizen
2016-07-26 23:22:32 +0200
-
3864d434fc
split-up test suite, implement quasiquote in scheme.
Jan Nieuwenhuizen
2016-07-25 14:39:56 +0200
-
384a88dd53
hello.c, hello.S: hello world target for C compiler.
Jan Nieuwenhuizen
2016-07-26 07:30:53 +0200
-
f170735edb
mescc: mes parses simplest main with lalr.
Jan Nieuwenhuizen
2016-07-25 01:12:22 +0200
-
d07108a6e8
scm.mes: add port-location dummies.
Jan Nieuwenhuizen
2016-07-25 00:06:50 +0200
-
479d988e42
mes.c: add set-cdr, substring, string-ref.
Jan Nieuwenhuizen
2016-07-25 00:06:18 +0200
-
87678add4a
mes.c: support whitespace characters.
Jan Nieuwenhuizen
2016-07-24 23:41:16 +0200
-
60a7c9099f
mescc.scm: parse simple main.c.
Jan Nieuwenhuizen
2016-07-24 23:18:53 +0200
-
d5fc30d265
TODO/HACKING: update: lalr/paren.scm runs.
Jan Nieuwenhuizen
2016-07-24 19:38:47 +0200
-
46387d411b
mes.c: when reading `EOF', defer read control to program.
Jan Nieuwenhuizen
2016-07-24 18:28:45 +0200
-
8dacd68fe8
mes.c, scm.c: add read-char, peek-char, char=?, char-alphabetic?.
Jan Nieuwenhuizen
2016-07-24 17:35:31 +0200
-
82a89c680f
scm.mes: add list-ref.
Jan Nieuwenhuizen
2016-07-24 17:25:03 +0200
-
2983578531
mes.c: add logior.
Jan Nieuwenhuizen
2016-07-24 17:21:30 +0200
-
bbdba26201
scm.mes: add expt.
Jan Nieuwenhuizen
2016-07-24 17:16:55 +0200
-
9fc7868a6d
scm.mes: remainder.
Jan Nieuwenhuizen
2016-07-24 17:11:49 +0200
-
39d5722973
scm.mes: implement do.
Jan Nieuwenhuizen
2016-07-24 17:03:28 +0200
-
746d06a0ec
scm.mes: add max, min.
Jan Nieuwenhuizen
2016-07-24 16:34:54 +0200