Commit graph

  • 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