Lassi Kortela
4599bf6f07
Update boot image
2019-08-28 21:22:38 +03:00
Lassi Kortela
471d24ce38
Fix sort procedure in base system
2019-08-28 21:22:06 +03:00
Lassi Kortela
50063d4523
Cause compiler error when (if ...) has spurious args
2019-08-28 21:19:39 +03:00
Lassi Kortela
aca621c32e
Add -Werror compiler flag
...
Compiler warnings are runtime errors waiting to happen.
2019-08-28 20:51:15 +03:00
Lassi Kortela
2d89603691
List nothing instead of everything in (apropos-list "")
2019-08-28 18:13:14 +03:00
Lassi Kortela
05c43c716c
Reformat
2019-08-28 18:12:41 +03:00
Lassi Kortela
b7db5bb755
Rename string.split into string-split
...
By analogy to SRFI 140. TODO: Think about character delimiter.
2019-08-28 16:18:37 +03:00
Lassi Kortela
0763a5df44
Add REPL history
2019-08-28 14:22:08 +03:00
Lassi Kortela
78b663d41d
Add help and colored banner
...
- (help ...) is a macro that quotes everything to be user-friendly
- (help* ...) is the equivalent procedure
- When the user types just `help` or `exit`, the REPL shows a hint
that they are probably looking for `(help)` or `(exit)`.
2019-08-28 14:07:50 +03:00
Lassi Kortela
4fef0b89b9
Add const
2019-08-28 13:30:07 +03:00
Lassi Kortela
e0194112c5
Color the REPL prompt
2019-08-28 13:12:43 +03:00
Lassi Kortela
9047523588
Add crummy ANSI color routines
...
Output raw codes straight to the terminal, don't coordinate with anybody.
2019-08-28 13:10:37 +03:00
Lassi Kortela
777d882d9a
Add sort, apropos, apropos-list
2019-08-28 13:01:02 +03:00
Lassi Kortela
40ba694ea6
Make environment variable procedures match R7RS
2019-08-28 12:49:10 +03:00
Lassi Kortela
0ad800ea06
Add C file forgotten from last commit
2019-08-28 12:47:01 +03:00
Lassi Kortela
b33f6c9d76
Add a proper list accumulator utility in C
2019-08-28 12:45:21 +03:00
Lassi Kortela
0e723587e5
Remove redundant read-u8 definition
2019-08-28 12:43:39 +03:00
Lassi Kortela
a489bf5784
Reformat
2019-08-28 12:00:07 +03:00
Lassi Kortela
96a541b1dc
Update list of tested Linux distros
2019-08-28 11:54:48 +03:00
John Cowan
3b4d31db85
Add Cygwin build
2019-08-28 11:52:00 +03:00
Lassi Kortela
fc5df2c2a7
Update boot image
2019-08-28 11:40:10 +03:00
Lassi Kortela
e5813fe5c9
Add directory listing primitives from SRFI 170 draft
...
TODO: 'dotfiles?' flag and 'directory-files' procedure
2019-08-28 11:11:55 +03:00
Lassi Kortela
ba54484a0b
Add Arch Linux build into Cirrus CI
2019-08-28 01:23:53 +03:00
Lassi Kortela
7649a1a858
Add Ubuntu build to Cirrus CI
2019-08-28 00:30:39 +03:00
Lassi Kortela
e20f1a62d3
Put LFLAGS last for linker
...
For some reason, some versions of the GNU linker will fail to find libraries
if the -l flags are listed before the .o files to be linked.
2019-08-28 00:29:20 +03:00
Lassi Kortela
ca3ab55a5c
Satisfy compiler warning about unchecked getcwd() return
...
TODO: raise an error
2019-08-28 00:27:28 +03:00
Lassi Kortela
3ad4f9f199
Add Cirrus CI build badge to readme
2019-08-27 15:53:34 +03:00
Lassi Kortela
4cb17fc9fa
Add Cirrus CI build configuration
2019-08-27 15:52:03 +03:00
Lassi Kortela
c0ca8c8611
Add missing includes to socket.h
2019-08-27 15:52:03 +03:00
Lassi Kortela
1f55ef2a3b
Record compiler name and version at build time
2019-08-27 15:21:00 +03:00
Lassi Kortela
c72f12b85c
Add missing headers to OS files
2019-08-27 11:13:50 +03:00
Lassi Kortela
59e76275ba
Unify variable names in hash functions
2019-08-27 10:39:39 +03:00
Lassi Kortela
847eb585ae
Reorganize boot image inclusion on C
...
Cuts the build time in half that flisp.c is no longer re-compiled
unnecessarily.
2019-08-27 10:31:31 +03:00
Lassi Kortela
297e6fa13d
Reorganize headers some more
2019-08-27 10:20:30 +03:00
Lassi Kortela
43b41bc8a6
Remove unused T_LONG and T_ULONG defines
2019-08-27 01:33:43 +03:00
Lassi Kortela
248840df1f
Get rid of LLT malloc wrappers
2019-08-27 01:25:11 +03:00
Lassi Kortela
934bf9d859
Replace typedef bool_t with int
2019-08-27 01:17:52 +03:00
Lassi Kortela
f72c3e9f02
Move more things into compiler-specific headers
...
This commit has probably broken all compilers except GCC/Clang.
2019-08-27 01:14:59 +03:00
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