diff options
author | Keith Packard <keithp@keithp.com> | 2018-01-06 17:29:10 -0800 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2018-01-06 17:31:43 -0800 |
commit | 16061947d4376b41e596d87f97ec53ec29d17644 (patch) | |
tree | f7ad08f8810b0ea78cf282048eacb46d441a2ee1 /src/scheme/ao_scheme_port.scheme | |
parent | 39df849f0717d92a7d5bdf8aa5904bd4db1b467f (diff) |
altos/scheme: Add ports. Split scheme code up.
And lots of other changes, including freeing unreferenced atoms.
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'src/scheme/ao_scheme_port.scheme')
-rw-r--r-- | src/scheme/ao_scheme_port.scheme | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/scheme/ao_scheme_port.scheme b/src/scheme/ao_scheme_port.scheme new file mode 100644 index 00000000..e4fa06cc --- /dev/null +++ b/src/scheme/ao_scheme_port.scheme @@ -0,0 +1,39 @@ +; +; Copyright © 2018 Keith Packard <keithp@keithp.com> +; +; This program is free software; you can redistribute it and/or modify +; it under the terms of the GNU General Public License as published by +; the Free Software Foundation, either version 2 of the License, or +; (at your option) any later version. +; +; This program is distributed in the hope that it will be useful, but +; WITHOUT ANY WARRANTY; without even the implied warranty of +; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +; General Public License for more details. +; +; port functions placed in ROM + + +(define newline + (lambda args + (if (null? args) + (write-char #\newline) + (write-char #\newline (car args)) + ) + ) + ) + +(newline) +(newline (open-output-file "/dev/null")) + +(define (load name) + (let ((p (open-input-file name)) + (e)) + (while (not (eof-object? (set! e (read p)))) + (write (eval e)) (newline) + ) + (close-port p) + ) + ) + +(load "/dev/null") |