doc: Release update.

* HACKING: Update.
* INSTALL: Update.
* NEWS: Update.
* README: Update.
* doc/announce/ANNOUNCE-0.17: New file.
This commit is contained in:
Jan Nieuwenhuizen 2018-07-22 16:21:50 +02:00
parent ce3d25395e
commit 54bfc90850
No known key found for this signature in database
GPG Key ID: F3C1A0D9C1D65273
21 changed files with 174 additions and 42 deletions

View File

@ -67,7 +67,6 @@ mes.c.
** TODO ** TODO
*** release 0.x, unsorted *** release 0.x, unsorted
- upstream mes-boot to GuixSD. - upstream mes-boot to GuixSD.
- add full source gcc-4.7 package build.
- replace GuixSD bootstrap for x86. - replace GuixSD bootstrap for x86.
- replace bootstrap utils (with gash?): flex, bash, bzip2, - replace bootstrap utils (with gash?): flex, bash, bzip2,
coreutils, diffutils, gawk, grep, gzip, make, sed, tar. coreutils, diffutils, gawk, grep, gzip, make, sed, tar.
@ -102,6 +101,7 @@ mes.c.
- add x86_64, replace GuixSD's bootstrap binaries for x86_64. - add x86_64, replace GuixSD's bootstrap binaries for x86_64.
- more architectures (does GuixSD require this, i.e. before 1.0?). - more architectures (does GuixSD require this, i.e. before 1.0?).
** DONE ** DONE
*** 0.17 GNU Mes is now an official GNU project and bootstraps gcc-4.7.4.
*** 0.16.1 Mes now has info docs and installs ootb on Debian buster/testing. *** 0.16.1 Mes now has info docs and installs ootb on Debian buster/testing.
*** 0.16 Mes Lib C now bootstraps glibc-2.2.5, binutils-2.20.1, gcc-4.1.0. *** 0.16 Mes Lib C now bootstraps glibc-2.2.5, binutils-2.20.1, gcc-4.1.0.
*** 0.15: MesCC now has a libc+gnu that supports compiling binutils-2.14, gcc-2.95.3 and glibc-2.2.5. *** 0.15: MesCC now has a libc+gnu that supports compiling binutils-2.14, gcc-2.95.3 and glibc-2.2.5.

View File

@ -48,17 +48,17 @@ similar way.
* Bootstrap build * Bootstrap build
The bootstrap build is being developed in GuixSD, see The bootstrap build is being developed in Guix, on wip-bootstrap, see
https://gitlab.com/janneke/guix/blob/wip-bootstrap/gnu/packages/mes.scm http://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/mes.scm?h=wip-bootstrap
** Prerequisites ** Prerequisites
- [[https://github.com/oriansj/mescc-tools][mescc-tools]], 0.5 is known to work. - [[https://github.com/oriansj/mescc-tools][mescc-tools]], 0.5 is known to work.
- [[https://savannah.gnu.org/projects/nyacc][Nyacc]], [[https://gitlab.com/janneke/nyacc][patched Nyacc]] 0.80.42 is known to work. - [[https://savannah.gnu.org/projects/nyacc][Nyacc]], [[https://gitlab.com/janneke/nyacc][patched Nyacc]] 0.80.42 is known to work.
- [[https://gitlab.com/janneke/mes-seed][mes-seed]], 0.16 is known to work. - [[https://gitlab.com/janneke/mes-seed][mes-seed]], 0.17 is known to work.
** Build it ** Build it
<setup environment, e.g. prefix, MES_SEED> <setup environment, e.g. prefix, MES_SEED>
./configure.sh [--prefix=<prefix>]
./build.sh ./build.sh
** Check it ** Check it

24
NEWS
View File

@ -10,6 +10,14 @@ Copyright © 2016,2017,2018 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
Please send Mes bug reports to bug-mes@gnu.org. Please send Mes bug reports to bug-mes@gnu.org.
* Changes in 0.17 since 0.16.1
** Core
*** GNU Mes is now an official GNU package.
*** MesCC is now installed as a regular Guile package.
*** Support --srcdir build.
*** Support all standard GNU make targets.
** MesCC
*** Mes C Lib now bootstraps glibc-2.2.5, binutils-2.20.1, gcc-4.7.4.
* Changes in 0.16.1 since 0.16 * Changes in 0.16.1 since 0.16
** Core ** Core
*** Mes now builds out of the box on Debian buster/testing. *** Mes now builds out of the box on Debian buster/testing.
@ -19,10 +27,10 @@ Please send Mes bug reports to bug-mes@gnu.org.
*** MesCC now exits if spawning BLOOD_ELF, M1, or HEX2 fails. *** MesCC now exits if spawning BLOOD_ELF, M1, or HEX2 fails.
* Changes in 0.16 since 0.15 * Changes in 0.16 since 0.15
** Core ** Core
*** Support building with tcc, including Mes Lib C in-line assembly. *** Support building with tcc, including Mes C Lib in-line assembly.
*** core:execl now supports 1000 arguments. *** core:execl now supports 1000 arguments.
** MesCC ** MesCC
*** Mes Lib C now bootstraps glibc-2.2.5, binutils-2.20.1, gcc-4.1.0. *** Mes C Lib now bootstraps glibc-2.2.5, binutils-2.20.1, gcc-4.1.0.
*** MesCC binaries now run on Linux 4.17 too, i.e. survive Linus' new `sane mmap limits.' *** MesCC binaries now run on Linux 4.17 too, i.e. survive Linus' new `sane mmap limits.'
*** MesCC now runs with mescc-tools 0.5 (no = in long options). *** MesCC now runs with mescc-tools 0.5 (no = in long options).
**** 3 new C test **** 3 new C test
@ -44,13 +52,13 @@ Please send Mes bug reports to bug-mes@gnu.org.
*** 2 new functions *** 2 new functions
drop, drop-right. drop, drop-right.
** MesCC ** MesCC
*** MesCC and Mes Lib C can now build binutils-2.30, gcc-2.95.3 and glibc-2.2.5. *** MesCC and Mes C Lib can now build binutils-2.30, gcc-2.95.3 and glibc-2.2.5.
*** MesCC now provides dummy crti.o, crtn.o so that tcc needs not be patched for those. *** MesCC now provides dummy crti.o, crtn.o so that tcc needs not be patched for those.
*** Mes Lib C now supports compiling glibc-2.2.25. *** Mes C Lib now supports compiling glibc-2.2.25.
*** Mes Lib C now supports compiling gcc-2.95.3 *** Mes C Lib now supports compiling gcc-2.95.3
*** Mes Lib C now supports compiling binutils-2.30. *** Mes C Lib now supports compiling binutils-2.30.
*** Mes Lib C now supports compiling m4-1.4. *** Mes C Lib now supports compiling m4-1.4.
*** Mes Lib C has been split into archs: gcc, x86-mes-gcc and x86-mes. *** Mes C Lib has been split into archs: gcc, x86-mes-gcc and x86-mes.
*** MesCC now has a posixy command line interface. *** MesCC now has a posixy command line interface.
**** 70 new functions **** 70 new functions
abs, access, alarm, alloca, atexit, atol, bcmp, bcopy, brk, bzero, abs, access, alarm, alloca, atexit, atol, bcmp, bcopy, brk, bzero,

25
README
View File

@ -8,25 +8,24 @@ source bootstrapping for GNU/Linux distributions such as
[[https://www.gnu.org/software/guix][GuixSD]] as part of the [[https://www.gnu.org/software/guix][GuixSD]] as part of the
[[http://bootstrappable.org][bootstrappable builds]] effort. [[http://bootstrappable.org][bootstrappable builds]] effort.
It currently consists of a mutual self-hosting Scheme interpreter It consists of a mutual self-hosting Scheme interpreter written in
written in ~5,000 LOC of simple C and a Nyacc-based C compiler written ~5,000 LOC of simple C and a Nyacc-based C compiler written in Scheme.
in Scheme. This mes.c is [[https://github.com/oriansj/mes-m2][being simplified]] to be transpiled by This mes.c is [[https://github.com/oriansj/mes-m2][being simplified]] to be transpiled by [[https://github.com/oriansj/m2-planet][M2-Planet]].
[[https://github.com/oriansj/m2-planet][M2-Planet]].
The Scheme interpreter prototype (mes.c) has a Garbage Collector, a The Scheme interpreter (mes.c) has a Garbage Collector, a library of
library of loadable Scheme modules-- notably Dominique Boucher's [[https://github.com/schemeway/lalr-scm][LALR]], loadable Scheme modules-- notably Dominique Boucher's [[https://github.com/schemeway/lalr-scm][LALR]], Pre-R6RS
Pre-R6RS [[https://www.cs.indiana.edu/chezscheme/syntax-case/old-psyntax.html][portable syntax-case]] with R7RS ellipsis, Matt Wette's [[https://www.nongnu.org/nyacc][Nyacc]], [[https://www.cs.indiana.edu/chezscheme/syntax-case/old-psyntax.html][portable syntax-case]] with R7RS ellipsis, Matt Wette's [[https://www.nongnu.org/nyacc][Nyacc]] --and test
Guile's [[https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html][PEG]] --and test suite just barely enough to support a simple suite just barely enough to support a simple REPL and simple
REPL and simple C-compiler: MesCC. C-compiler: MesCC.
Mes+MesCC can compile an only [[http://gitlab.com/janneke/tinycc][lightly patched TinyCC]] that is Mes+MesCC can compile an only [[http://gitlab.com/janneke/tinycc][lightly patched TinyCC]] that is
self-hosting. Using this tcc and the Mes C library we now have a self-hosting. Using this tcc and the Mes C library we now have a
reduced-binary-seed bootstrap for the gnutools triplet: glibc-2.2.5, reduced-binary-seed bootstrap for the gnutools triplet: glibc-2.2.5,
binutils-2.20.1, gcc-4.1.0. binutils-2.20.1, gcc-4.7.4.
GNU Mes is inspired by The Maxwell Equations of Software: [[http://www.softwarepreservation.org/projects/LISP/book/LISP%2525201.5%252520Programmers%252520Manual.pdf][LISP-1.5]] -- Mes is inspired by The Maxwell Equations of Software: [[http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf][LISP-1.5]] -- John
John McCarthy page 13, GNU Guix's source/binary packaging transparency McCarthy page 13, GNU Guix's source/binary packaging transparency and
and Jeremiah Orians's [[https://github.com/oriansj/stage0][stage0]] ~500 byte self-hosting hex assembler. Jeremiah Orians's [[https://github.com/oriansj/stage0][stage0]] ~500 byte self-hosting hex assembler.
GNU Mes is free software, it is distributed under the terms of the GNU GNU Mes is free software, it is distributed under the terms of the GNU
General Public Licence version 3 or later. See the file [[file:COPYING][COPYING]]. General Public Licence version 3 or later. See the file [[file:COPYING][COPYING]].

View File

@ -300,9 +300,20 @@ else
$(warning update-hash: no guix) $(warning update-hash: no guix)
endif endif
release: update-hash tag:
git tag -s v$(VERSION) -m "GNU Mes $(VERSION)."
# Release process
# 0. doc: Release update, Release commit, make seed, test guix bootstrap
# 1. make tag
# 2. make dist
# 3. make release
guix-build:
./pre-inst-env $(GUIX) build mes@$(VERSION) --with-source=$(TARBALL) ./pre-inst-env $(GUIX) build mes@$(VERSION) --with-source=$(TARBALL)
release: update-hash | gen-announce guix-build
GPG_KEY_ID:=1A858392E331EAFDB8C27FFBF3C1A0D9C1D65273 GPG_KEY_ID:=1A858392E331EAFDB8C27FFBF3C1A0D9C1D65273
gen-announce: gen-announce:
../gnulib/build-aux/announce-gen\ ../gnulib/build-aux/announce-gen\

View File

@ -93,4 +93,4 @@ janneke
[7] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html [7] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html
[8] https://gitlab.com/janneke/tinycc [8] https://gitlab.com/janneke/tinycc
[9] https://lists.gnu.org/archive/html/tinycc-devel/2017-05/msg00103.html [9] https://lists.gnu.org/archive/html/tinycc-devel/2017-05/msg00103.html
[10] http://www.softwarepreservation.org/projects/LISP/book/LISP%25201.5%2520Programmers%2520Manual.pdf [10] http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf

View File

@ -67,4 +67,4 @@ janneke
[7] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html [7] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html
[8] https://gitlab.com/janneke/tinycc [8] https://gitlab.com/janneke/tinycc
[9] https://lists.gnu.org/archive/html/tinycc-devel/2017-05/msg00103.html [9] https://lists.gnu.org/archive/html/tinycc-devel/2017-05/msg00103.html
[10] http://www.softwarepreservation.org/projects/LISP/book/LISP%25201.5%2520Programmers%2520Manual.pdf [10] http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf

View File

@ -93,5 +93,5 @@ janneke
[7] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html [7] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html
[8] https://gitlab.com/janneke/tinycc [8] https://gitlab.com/janneke/tinycc
[9] https://lists.gnu.org/archive/html/tinycc-devel/2017-05/msg00103.html [9] https://lists.gnu.org/archive/html/tinycc-devel/2017-05/msg00103.html
[10] http://www.softwarepreservation.org/projects/LISP/book/LISP%25201.5%2520Programmers%2520Manual.pdf [10] http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf
[11] https://github.com/oriansj/stage0 [11] https://github.com/oriansj/stage0

View File

@ -77,5 +77,5 @@ janneke
[7] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html [7] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html
[8] https://gitlab.com/janneke/tinycc [8] https://gitlab.com/janneke/tinycc
[9] https://lists.gnu.org/archive/html/tinycc-devel/2017-05/msg00103.html [9] https://lists.gnu.org/archive/html/tinycc-devel/2017-05/msg00103.html
[10] http://www.softwarepreservation.org/projects/LISP/book/LISP%25201.5%2520Programmers%2520Manual.pdf [10] http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf
[11] https://github.com/oriansj/stage0 [11] https://github.com/oriansj/stage0

View File

@ -97,5 +97,5 @@ janneke
[7] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html [7] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html
[8] https://gitlab.com/janneke/tinycc [8] https://gitlab.com/janneke/tinycc
[9] https://lists.gnu.org/archive/html/tinycc-devel/2017-05/msg00103.html [9] https://lists.gnu.org/archive/html/tinycc-devel/2017-05/msg00103.html
[10] http://www.softwarepreservation.org/projects/LISP/book/LISP%25201.5%2520Programmers%2520Manual.pdf [10] http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf
[11] https://github.com/oriansj/stage0 [11] https://github.com/oriansj/stage0

View File

@ -102,5 +102,5 @@ janneke
[6] https://www.nongnu.org/nyacc/ [6] https://www.nongnu.org/nyacc/
[7] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html [7] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html
[8] https://gitlab.com/janneke/tinycc [8] https://gitlab.com/janneke/tinycc
[9] http://www.softwarepreservation.org/projects/LISP/book/LISP%25201.5%2520Programmers%2520Manual.pdf [9] http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf
[10] https://github.com/oriansj/stage0 [10] https://github.com/oriansj/stage0

View File

@ -96,5 +96,5 @@ janneke
[7] https://www.nongnu.org/nyacc [7] https://www.nongnu.org/nyacc
[8] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html [8] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html
[9] https://gitlab.com/janneke/tinycc [9] https://gitlab.com/janneke/tinycc
[10] http://www.softwarepreservation.org/projects/LISP/book/LISP%25201.5%2520Programmers%2520Manual.pdf [10] http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf
[11] https://github.com/oriansj/stage0 [11] https://github.com/oriansj/stage0

114
doc/announce/ANNOUNCE-0.17 Normal file
View File

@ -0,0 +1,114 @@
Subject: GNU Mes 0.17 released [alpha]
<#secure method=pgpmime mode=sign>
We are delighted to announce the release of GNU Mes 0.17, representing
55 commits over 5 weeks.
Mes is now an official GNU package and we have bootstrapped gcc-4.7.4
for x86-linux with a reduced binary seed (i.e., without regular toolchain).
Next targets:
- upstream the x86 Mes bootstrap to GuixSD
- create a x86_64 Mes C Lib, see if that is is enough to bootstrap x86_64
- reduce the 1MB ASCII M1 seed to ~5000 LOC/~100KB of M2 source
- create a plan for Geesh and Gash and use them to reduce the
bootstrap binary dependencies
- and/or otherwise reduce the bootstrap binary dependencies
Packages are available from Guix's wip-bootstrap branch.
* About
GNU Mes[0] aims to help create full source bootstrapping for GNU/Linux
distributions such as GuixSD[1] as part of the bootstrappable builds[2]
effort.
It consists of a mutual self-hosting Scheme interpreter written in
~5,000 LOC of simple C and a Nyacc-based C compiler written in Scheme.
This mes.c is being simplified[3] to be transpiled by M2-Planet[4].
The Scheme interpreter (mes.c) has a Garbage Collector, a library of
loadable Scheme modules-- notably Dominique Boucher's LALR[5],
Pre-R6RS portable syntax-case[6] with R7RS ellipsis, Matt Wette's
Nyacc[7] --and test suite just barely enough to support a simple REPL
and simple C-compiler: MesCC.
Mes+MesCC can compile an only lightly patched TinyCC[8] that is
self-hosting. Using this tcc and the Mes C library we now have a
reduced-binary-seed bootstrap for the gnutools triplet: glibc-2.2.5,
binutils-2.20.1, gcc-4.7.4.
Mes is inspired by The Maxwell Equations of Software: LISP-1.5[9] --
John McCarthy page 13, GNU Guix's source/binary packaging transparency
and Jeremiah Orians's stage0[10] ~500 byte self-hosting hex assembler.
* Download
git clone git://git.savannah.gnu.org/mes.git
Here are the compressed sources and a GPG detached signature[*]:
https://alpha.gnu.org/gnu/mes/mes-0.17.tar.gz
https://alpha.gnu.org/gnu/mes/mes-0.17.tar.gz.sig
Use a mirror for higher download bandwidth:
https://www.gnu.org/order/ftp.html
Here are the MD5 and SHA1 checksums:
5e571c2f5ddaefbfe3dd618d69c40038 mes-0.17.tar.gz
1fbebe64ab330aec4c7ffbca88ea04b7be17458d mes-0.17.tar.gz
[*] Use a .sig file to verify that the corresponding file (without the
.sig suffix) is intact. First, be sure to download both the .sig file
and the corresponding tarball. Then, run a command like this:
gpg --verify mes-0.17.tar.gz.sig
If that command fails because you don't have the required public key,
then run this command to import it:
gpg --keyserver keys.gnupg.net --recv-keys 1A858392E331EAFDB8C27FFBF3C1A0D9C1D65273
and rerun the 'gpg --verify' command.
Mes runs from the source tree and can also be built, packaged and
installed in Guix[SD] from a git checkout by running
guix package -f .guix.scm
* Get informed, get involved
Join #bootstrappable on irc.freenode.net.
* Changes in 0.17 since 0.16.1
** Core
*** GNU Mes is now an official GNU package.
*** MesCC is now installed as a regular Guile package.
*** Support --srcdir build.
*** Support all standard GNU make targets.
** MesCC
*** Mes C Lib now bootstraps glibc-2.2.5, binutils-2.20.1, gcc-4.7.4.
* Changes in 0.16.1 since 0.16
** Core
*** Mes now builds out of the box on Debian buster/testing.
*** Mes now comes with a generic build recipe: build-aux/setup-mes.sh.
*** Mes now comes with INFO documentation.
** MesCC
*** MesCC now exits if spawning BLOOD_ELF, M1, or HEX2 fails.
Greetings,
janneke
[0] https://www.gnu.org/software/mes
[1] https://www.gnu.org/software/guix
[2] http://bootstrappable.org
[3] https://github.com/oriansj/mes-m2
[4] https://github.com/oriansj/m2-planet
[5] https://github.com/schemeway/lalr-scm
[6] https://www.cs.indiana.edu/chezscheme/syntax-case/old-psyntax.html
[7] https://www.nongnu.org/nyacc
[8] https://gitlab.com/janneke/tinycc
[9] http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf
[10] https://github.com/oriansj/stage0

View File

@ -96,4 +96,4 @@ Greetings,
Jan Jan
[1] https://lists.nongnu.org/archive/html/guile-user/2016-09/msg00061.html [1] https://lists.nongnu.org/archive/html/guile-user/2016-09/msg00061.html
[2] http://www.softwarepreservation.org/projects/LISP/book/LISP%25201.5%2520Programmers%2520Manual.pdf [2] http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf

View File

@ -100,4 +100,4 @@ Jan
[2] https://www.cs.indiana.edu/chezscheme/syntax-case/old-psyntax.html [2] https://www.cs.indiana.edu/chezscheme/syntax-case/old-psyntax.html
[3] https://www.nongnu.org/nyacc/ [3] https://www.nongnu.org/nyacc/
[4] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html [4] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html
[5] http://www.softwarepreservation.org/projects/LISP/book/LISP%25201.5%2520Programmers%2520Manual.pdf [5] http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf

View File

@ -74,6 +74,6 @@ janneke
[2] https://www.cs.indiana.edu/chezscheme/syntax-case/old-psyntax.html [2] https://www.cs.indiana.edu/chezscheme/syntax-case/old-psyntax.html
[3] https://www.nongnu.org/nyacc/ [3] https://www.nongnu.org/nyacc/
[4] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html [4] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html
[5] http://www.softwarepreservation.org/projects/LISP/book/LISP%25201.5%2520Programmers%2520Manual.pdf [5] http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf
[6] https://www.gnu.org/software/guix/ [6] https://www.gnu.org/software/guix/
[7] https://github.com/oriansj/stage0 [7] https://github.com/oriansj/stage0

View File

@ -77,6 +77,6 @@ janneke
[2] https://www.cs.indiana.edu/chezscheme/syntax-case/old-psyntax.html [2] https://www.cs.indiana.edu/chezscheme/syntax-case/old-psyntax.html
[3] https://www.nongnu.org/nyacc/ [3] https://www.nongnu.org/nyacc/
[4] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html [4] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html
[5] http://www.softwarepreservation.org/projects/LISP/book/LISP%25201.5%2520Programmers%2520Manual.pdf [5] http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf
[6] https://www.gnu.org/software/guix/ [6] https://www.gnu.org/software/guix/
[7] https://github.com/oriansj/stage0 [7] https://github.com/oriansj/stage0

View File

@ -77,7 +77,7 @@ janneke
[2] https://www.cs.indiana.edu/chezscheme/syntax-case/old-psyntax.html [2] https://www.cs.indiana.edu/chezscheme/syntax-case/old-psyntax.html
[3] https://www.nongnu.org/nyacc/ [3] https://www.nongnu.org/nyacc/
[4] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html [4] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html
[5] http://www.softwarepreservation.org/projects/LISP/book/LISP%25201.5%2520Programmers%2520Manual.pdf [5] http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf
[6] https://www.gnu.org/software/guix/ [6] https://www.gnu.org/software/guix/
[7] https://github.com/oriansj/stage0 [7] https://github.com/oriansj/stage0
[8] https://gitlab.com/janneke/tinycc [8] https://gitlab.com/janneke/tinycc

View File

@ -63,7 +63,7 @@ janneke
[2] https://www.cs.indiana.edu/chezscheme/syntax-case/old-psyntax.html [2] https://www.cs.indiana.edu/chezscheme/syntax-case/old-psyntax.html
[3] https://www.nongnu.org/nyacc/ [3] https://www.nongnu.org/nyacc/
[4] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html [4] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html
[5] http://www.softwarepreservation.org/projects/LISP/book/LISP%25201.5%2520Programmers%2520Manual.pdf [5] http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf
[6] https://www.gnu.org/software/guix/ [6] https://www.gnu.org/software/guix/
[7] https://github.com/oriansj/stage0 [7] https://github.com/oriansj/stage0
[8] https://gitlab.com/janneke/tinycc [8] https://gitlab.com/janneke/tinycc

View File

@ -90,4 +90,4 @@ janneke
[7] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html [7] https://www.gnu.org/software/guile/docs/master/guile.html/PEG-Parsing.html
[8] https://gitlab.com/janneke/tinycc [8] https://gitlab.com/janneke/tinycc
[9] https://lists.gnu.org/archive/html/tinycc-devel/2017-05/msg00103.html [9] https://lists.gnu.org/archive/html/tinycc-devel/2017-05/msg00103.html
[10] http://www.softwarepreservation.org/projects/LISP/book/LISP%25201.5%2520Programmers%2520Manual.pdf [10] http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf

View File

@ -283,7 +283,7 @@ distribution from source, using only an initial 500 byte binary seed?
As fate would have it, I stumbled upon this As fate would have it, I stumbled upon this
@url{https://queue.acm.org/detail.cfm?id=1039523, interview with Alan @url{https://queue.acm.org/detail.cfm?id=1039523, interview with Alan
Kay}, where he shares a revelation he had when reading John McCarthy's Kay}, where he shares a revelation he had when reading John McCarthy's
@url{http://www.softwarepreservation.org/projects/LISP/book/LISP%25201.5%2520Programmers%2520Manual.pdf, @url{http://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf,
LISP-1.5} manual: LISP-1.5} manual:
@quotation @quotation