Lassi Kortela
9409096c0a
Rename error_*.h -> scheme_compiler_*.h
2019-08-27 00:46:45 +03:00
Lassi Kortela
b989d60bcd
Start rearranging things within scheme.h
2019-08-27 00:42:13 +03:00
Lassi Kortela
8c006ac672
Remove redundant Emacs -*- comments from C files
2019-08-27 00:38:56 +03:00
Lassi Kortela
c24161d584
Streamline comments in scheme.h
2019-08-27 00:37:20 +03:00
Lassi Kortela
b8ae211127
Consolidate the code itself from .h files to scheme.h
2019-08-27 00:24:58 +03:00
Lassi Kortela
2c7fe440e9
Add changes from missed in last commit
2019-08-27 00:24:54 +03:00
Lassi Kortela
a02557230b
Consolidate (almost) all #include's into new "scheme.h"
2019-08-26 22:12:15 +03:00
Lassi Kortela
6da8d0a939
Propagate scheme-core changes with a single build
...
Due to a slip-up in build.sh (compiling flmain.c instead of flisp.c multiple
times), making changes in the Scheme core would require two build.sh runs
instead of one to end up in the final executable. flisp.c is the C file that
includes boot_image.h so it's the one that should get compiled multiple times.
2019-08-26 16:53:21 +03:00
Lassi Kortela
83e64da945
Add term-init, term-exit builtins
2019-08-26 16:52:42 +03:00
Lassi Kortela
16d409c382
Add string-upcase, string-downcase builtins
...
Simple ASCII for now. Add some Unicode smarts later.
2019-08-26 11:47:56 +03:00
Lassi Kortela
41eb286f90
Remove vestigial char.* builtins
2019-08-26 11:15:38 +03:00
Lassi Kortela
464dac0e6c
Rename builtin char procedures to match R7RS
2019-08-26 11:12:50 +03:00
Lassi Kortela
c467f9e064
Add Unicode lambda
2019-08-26 11:06:42 +03:00
Lassi Kortela
d38d99dd87
Remove comments about proposed 'struct ios' features
...
We don't need anything as fancy as these.
2019-08-26 00:20:50 +03:00
Lassi Kortela
219578cff9
Remove temp xwrite/x... and old princ/print
2019-08-25 23:27:59 +03:00
Lassi Kortela
08b4fe31ed
Shake dangling princ/print references out of boot image
2019-08-25 23:25:44 +03:00
Lassi Kortela
33488d73cf
Replace xwrite/xdisplay/xnewline with non-x names
2019-08-25 22:57:31 +03:00
Lassi Kortela
924a45b7bd
Implement Scheme printer procedures in C
2019-08-25 22:39:35 +03:00
Lassi Kortela
e3d60bb776
Add const to many utility functions
2019-08-25 22:12:34 +03:00
Lassi Kortela
55cb24023b
Make Lisp core use xwrite/xdisplay/xnewline
2019-08-25 22:07:38 +03:00
Lassi Kortela
6e87c8ad26
Remove unused get-datum and put-datum procedures
2019-08-25 21:30:36 +03:00
Lassi Kortela
8fb0cbf472
Finish re-arranging printer options
2019-08-25 17:32:14 +03:00
Lassi Kortela
844b2e219c
Rename pr.opts.pretty into pr.opts.indent
2019-08-25 17:29:18 +03:00
Lassi Kortela
fe4b63b9a3
Turn pr.opts.readably into pr.opts.display
2019-08-25 17:27:16 +03:00
Lassi Kortela
726b7cad29
Decode printer options into a printer_options struct
2019-08-25 17:19:47 +03:00
Lassi Kortela
49e0a3ad1f
Put all printer state into a global struct
2019-08-25 16:56:02 +03:00
Lassi Kortela
6defff3696
Refactor print_width and enforce minimum value 20
2019-08-25 13:42:26 +03:00
Lassi Kortela
96962da3d3
Rename print_circle_prefix -> write_cycle_prefix
2019-08-25 13:20:30 +03:00
Lassi Kortela
84c10258b3
Rename printer vars that track cyclic structures
2019-08-25 13:15:27 +03:00
Lassi Kortela
dd3cc748ec
Rename Lisp printer state variables
2019-08-25 12:58:40 +03:00
Lassi Kortela
098a991ed8
Turn print_princ into print_readably
2019-08-25 12:49:56 +03:00
Lassi Kortela
4550e1ba79
Rename SCR_WIDTH to print_width
2019-08-25 12:45:48 +03:00
Lassi Kortela
8b6b2d96e4
Comment variables used by Lisp printer
2019-08-25 12:41:24 +03:00
Lassi Kortela
2b9e15920b
Fix off-by-one error
2019-08-23 00:40:41 +03:00
Lassi Kortela
9d4bf19367
Fix regression in ios_printf implementation
...
There was some problem with the way the varargs are handled. We had to
need to make (at least one) copy of them with va_copy(). The code is
brittle and I don't understand it, so just rip it all out and replace
with a fixed-size static buffer. It's a hack but we'll soon get rid of
printf completely so this will get us through the day until then.
2019-08-23 00:38:10 +03:00
Lassi Kortela
49e2ac5ae0
Add Docker to platforms in readme
2019-08-22 01:50:30 +03:00
Lassi Kortela
2e81ccd308
Fix nested bullet points in readme
2019-08-22 01:47:36 +03:00
Lassi Kortela
078cade0d2
Add platform list to readme
2019-08-22 01:43:21 +03:00
Lassi Kortela
da02e9e554
Add missing sys/stat.h
...
Fixes failed OpenBSD build. How did it work before?
2019-08-22 00:05:57 +03:00
Lassi Kortela
862a2c9d68
Add Windows build script using Open Watcom C compiler
2019-08-21 22:22:39 +03:00
Lassi Kortela
34d417b4fc
Change library name to (upscheme 2019 unstable)
...
The "unstable" is a new addition.
2019-08-21 22:18:53 +03:00
Lassi Kortela
682cbf2400
Add builtin_spawn stub for Windows
2019-08-21 22:18:20 +03:00
Lassi Kortela
1e306391a7
Add compiler name to build directory name
2019-08-21 22:18:01 +03:00
Lassi Kortela
2ff16a0182
Add Windows ID functions
...
Mostly of them are dummy placeholders that return false
2019-08-21 22:17:06 +03:00
Lassi Kortela
b2027fe023
Split setenv/unsetenv by platform
...
Windows apparently doesn't have unsetenv() at all, so use the WinAPI
native envar functions instead of the usual C ones.
2019-08-21 22:16:07 +03:00
Lassi Kortela
5caf337589
Stub builtin_environment_stack for Windows
2019-08-21 22:15:19 +03:00
Lassi Kortela
0d95c386ac
Fix socket includes
2019-08-21 22:14:04 +03:00
Lassi Kortela
ebefb2a519
Stub time functions for Windows
...
Need to rethink all time stuff and read the relevant SRFIs.
2019-08-21 22:12:19 +03:00
Lassi Kortela
6ffe6bf174
Add truly sinful float hacks for Watcom
2019-08-21 22:11:05 +03:00
Lassi Kortela
439eeb2b06
Use vsnprintf() instead of vasprintf()
...
Windows doesn't reliably offer *asprintf() (sprintf functions that
automatically malloc as much memory as they need) so hand-roll the
equivalent on all platforms.
2019-08-21 22:10:13 +03:00