Commit Graph
489 Commits
Author SHA1 Message Date
lassik e5813fe5c9 Add directory listing primitives from SRFI 170 draft
TODO: 'dotfiles?' flag and 'directory-files' procedure
2019-08-28 11:11:55 +03:00
lassik ba54484a0b Add Arch Linux build into Cirrus CI 2019-08-28 01:23:53 +03:00
lassik 7649a1a858 Add Ubuntu build to Cirrus CI 2019-08-28 00:30:39 +03:00
lassik 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
lassik ca3ab55a5c Satisfy compiler warning about unchecked getcwd() return
TODO: raise an error
2019-08-28 00:27:28 +03:00
lassik 3ad4f9f199 Add Cirrus CI build badge to readme 2019-08-27 15:53:34 +03:00
lassik 4cb17fc9fa Add Cirrus CI build configuration 2019-08-27 15:52:03 +03:00
lassik c0ca8c8611 Add missing includes to socket.h 2019-08-27 15:52:03 +03:00
lassik 1f55ef2a3b Record compiler name and version at build time 2019-08-27 15:21:00 +03:00
lassik c72f12b85c Add missing headers to OS files 2019-08-27 11:13:50 +03:00
lassik 59e76275ba Unify variable names in hash functions 2019-08-27 10:39:39 +03:00
lassik 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
lassik 297e6fa13d Reorganize headers some more 2019-08-27 10:20:30 +03:00
lassik 43b41bc8a6 Remove unused T_LONG and T_ULONG defines 2019-08-27 01:33:43 +03:00
lassik 248840df1f Get rid of LLT malloc wrappers 2019-08-27 01:25:11 +03:00
lassik 934bf9d859 Replace typedef bool_t with int 2019-08-27 01:17:52 +03:00
lassik 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
lassik 9409096c0a Rename error_*.h -> scheme_compiler_*.h 2019-08-27 00:46:45 +03:00
lassik b989d60bcd Start rearranging things within scheme.h 2019-08-27 00:42:13 +03:00
lassik 8c006ac672 Remove redundant Emacs -*- comments from C files 2019-08-27 00:38:56 +03:00
lassik c24161d584 Streamline comments in scheme.h 2019-08-27 00:37:20 +03:00
lassik b8ae211127 Consolidate the code itself from .h files to scheme.h 2019-08-27 00:24:58 +03:00
lassik 2c7fe440e9 Add changes from missed in last commit 2019-08-27 00:24:54 +03:00
lassik a02557230b Consolidate (almost) all #include's into new "scheme.h" 2019-08-26 22:12:15 +03:00
lassik 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
lassik 83e64da945 Add term-init, term-exit builtins 2019-08-26 16:52:42 +03:00
lassik 16d409c382 Add string-upcase, string-downcase builtins
Simple ASCII for now. Add some Unicode smarts later.
2019-08-26 11:47:56 +03:00
lassik 41eb286f90 Remove vestigial char.* builtins 2019-08-26 11:15:38 +03:00
lassik 464dac0e6c Rename builtin char procedures to match R7RS 2019-08-26 11:12:50 +03:00
lassik c467f9e064 Add Unicode lambda 2019-08-26 11:06:42 +03:00
lassik 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
lassik 219578cff9 Remove temp xwrite/x... and old princ/print 2019-08-25 23:27:59 +03:00
lassik 08b4fe31ed Shake dangling princ/print references out of boot image 2019-08-25 23:25:44 +03:00
lassik 33488d73cf Replace xwrite/xdisplay/xnewline with non-x names 2019-08-25 22:57:31 +03:00
lassik 924a45b7bd Implement Scheme printer procedures in C 2019-08-25 22:39:35 +03:00
lassik e3d60bb776 Add const to many utility functions 2019-08-25 22:12:34 +03:00
lassik 55cb24023b Make Lisp core use xwrite/xdisplay/xnewline 2019-08-25 22:07:38 +03:00
lassik 6e87c8ad26 Remove unused get-datum and put-datum procedures 2019-08-25 21:30:36 +03:00
lassik 8fb0cbf472 Finish re-arranging printer options 2019-08-25 17:32:14 +03:00
lassik 844b2e219c Rename pr.opts.pretty into pr.opts.indent 2019-08-25 17:29:18 +03:00
lassik fe4b63b9a3 Turn pr.opts.readably into pr.opts.display 2019-08-25 17:27:16 +03:00
lassik 726b7cad29 Decode printer options into a printer_options struct 2019-08-25 17:19:47 +03:00
lassik 49e0a3ad1f Put all printer state into a global struct 2019-08-25 16:56:02 +03:00
lassik 6defff3696 Refactor print_width and enforce minimum value 20 2019-08-25 13:42:26 +03:00
lassik 96962da3d3 Rename print_circle_prefix -> write_cycle_prefix 2019-08-25 13:20:30 +03:00
lassik 84c10258b3 Rename printer vars that track cyclic structures 2019-08-25 13:15:27 +03:00
lassik dd3cc748ec Rename Lisp printer state variables 2019-08-25 12:58:40 +03:00
lassik 098a991ed8 Turn print_princ into print_readably 2019-08-25 12:49:56 +03:00
lassik 4550e1ba79 Rename SCR_WIDTH to print_width 2019-08-25 12:45:48 +03:00
lassik 8b6b2d96e4 Comment variables used by Lisp printer 2019-08-25 12:41:24 +03:00