mit-scheme.git
7 years agoUse more aggressive NFC memoization.
Chris Hanson [Tue, 9 May 2017 03:30:26 +0000 (20:30 -0700)]
Use more aggressive NFC memoization.

Could do the same for NFD but that would use the last available flag bit.

7 years agoFix inadvertent removal of primitive body. Thanks to Matt Birkholz.
Chris Hanson [Mon, 8 May 2017 20:20:53 +0000 (13:20 -0700)]
Fix inadvertent removal of primitive body.  Thanks to Matt Birkholz.

7 years agoUpdate test to get it working again.
Chris Hanson [Mon, 8 May 2017 20:14:12 +0000 (13:14 -0700)]
Update test to get it working again.

7 years agoMake write-xml port argument optional.
Chris Hanson [Sun, 7 May 2017 22:32:28 +0000 (15:32 -0700)]
Make write-xml port argument optional.

7 years agoChange UCD converter to ignore derived properties.
Chris Hanson [Sun, 7 May 2017 22:26:59 +0000 (15:26 -0700)]
Change UCD converter to ignore derived properties.

7 years agoAdd original ucd file for completeness.
Chris Hanson [Sun, 7 May 2017 21:43:15 +0000 (14:43 -0700)]
Add original ucd file for completeness.

7 years agoChange NFC normalization to use MAYBE values of NFC_QC.
Chris Hanson [Sun, 7 May 2017 20:39:06 +0000 (13:39 -0700)]
Change NFC normalization to use MAYBE values of NFC_QC.

7 years agoRevert earlier change and try a new approach for char-set predicates.
Chris Hanson [Sun, 7 May 2017 20:37:50 +0000 (13:37 -0700)]
Revert earlier change and try a new approach for char-set predicates.

7 years agoChange parser-buffer to return immutable strings.
Chris Hanson [Sat, 6 May 2017 22:31:27 +0000 (15:31 -0700)]
Change parser-buffer to return immutable strings.

7 years agoFix typo from previous change.
Chris Hanson [Sat, 6 May 2017 22:17:15 +0000 (15:17 -0700)]
Fix typo from previous change.

7 years agoChange XML output to use predicate dispatcher.
Chris Hanson [Sat, 6 May 2017 21:54:11 +0000 (14:54 -0700)]
Change XML output to use predicate dispatcher.

7 years agoFix typo in cached handler sets.
Chris Hanson [Sat, 6 May 2017 21:53:46 +0000 (14:53 -0700)]
Fix typo in cached handler sets.

7 years agoRegister char and char-set predicates.
Chris Hanson [Sat, 6 May 2017 21:53:35 +0000 (14:53 -0700)]
Register char and char-set predicates.

7 years agoAdd ability to register predicates earlier in the boot sequence.
Chris Hanson [Sat, 6 May 2017 21:53:19 +0000 (14:53 -0700)]
Add ability to register predicates earlier in the boot sequence.

7 years agoClarify some details about the regsexp implementation.
Chris Hanson [Sat, 6 May 2017 20:55:07 +0000 (13:55 -0700)]
Clarify some details about the regsexp implementation.

7 years agoFix bug: incorrect assumption of mutability.
Chris Hanson [Sat, 6 May 2017 06:18:16 +0000 (23:18 -0700)]
Fix bug: incorrect assumption of mutability.

7 years agoDocument return values from binary write operations.
Chris Hanson [Sat, 6 May 2017 05:27:14 +0000 (22:27 -0700)]
Document return values from binary write operations.

Also add text about non-blocking mode.

7 years agoAdd examples of regsexp patterns.
Chris Hanson [Sat, 6 May 2017 05:04:15 +0000 (22:04 -0700)]
Add examples of regsexp patterns.

7 years agoChange regsexp {,inverse-}char-set to char-{,not-}in.
Chris Hanson [Sat, 6 May 2017 04:28:21 +0000 (21:28 -0700)]
Change regsexp {,inverse-}char-set to char-{,not-}in.

7 years agoRewrite the regular expression section for Unicode-safe implementation.
Chris Hanson [Fri, 5 May 2017 07:09:14 +0000 (00:09 -0700)]
Rewrite the regular expression section for Unicode-safe implementation.

Also a few small updates here and there.

7 years agoDocument named arguments to char-set and char-set*.
Chris Hanson [Fri, 5 May 2017 07:08:47 +0000 (00:08 -0700)]
Document named arguments to char-set and char-set*.

7 years agoFix typo.
Chris Hanson [Fri, 5 May 2017 07:07:35 +0000 (00:07 -0700)]
Fix typo.

7 years agoChange string-trimmer to use general char matcher like string-delimiter.
Chris Hanson [Fri, 5 May 2017 06:50:10 +0000 (23:50 -0700)]
Change string-trimmer to use general char matcher like string-delimiter.

7 years agoFix missed regexp in mime-codec.
Chris Hanson [Wed, 3 May 2017 08:03:24 +0000 (01:03 -0700)]
Fix missed regexp in mime-codec.

7 years agoChange pgsql to use regsexp.
Chris Hanson [Wed, 3 May 2017 07:57:21 +0000 (00:57 -0700)]
Change pgsql to use regsexp.

7 years agoUse named char-set for whitespace.
Chris Hanson [Wed, 3 May 2017 07:56:57 +0000 (00:56 -0700)]
Use named char-set for whitespace.

7 years agoAdd named character sets.
Chris Hanson [Wed, 3 May 2017 07:50:33 +0000 (00:50 -0700)]
Add named character sets.

7 years agoAdd case-insensitive matching.
Chris Hanson [Wed, 3 May 2017 07:50:04 +0000 (00:50 -0700)]
Add case-insensitive matching.

7 years agoChange mime-coded to use regsexp.
Chris Hanson [Wed, 3 May 2017 07:17:18 +0000 (00:17 -0700)]
Change mime-coded to use regsexp.

7 years agoChange regsexp value to have values of groups instead of indices.
Chris Hanson [Wed, 3 May 2017 07:13:56 +0000 (00:13 -0700)]
Change regsexp value to have values of groups instead of indices.

This does weird things when a group is inside a repeat, but that's a bad idea so
DON'T DO THAT!

7 years agoChange groups implementation to segregate started groups from ended groups.
Chris Hanson [Wed, 3 May 2017 06:25:41 +0000 (23:25 -0700)]
Change groups implementation to segregate started groups from ended groups.

7 years agoChange groups abstraction to use message-passing style.
Chris Hanson [Wed, 3 May 2017 06:00:27 +0000 (23:00 -0700)]
Change groups abstraction to use message-passing style.

7 years agoChange position abstraction to use message-passing style.
Chris Hanson [Wed, 3 May 2017 05:16:01 +0000 (22:16 -0700)]
Change position abstraction to use message-passing style.

7 years agoImplement regsexp string search.
Chris Hanson [Tue, 2 May 2017 06:08:04 +0000 (23:08 -0700)]
Implement regsexp string search.

Also change the return value of regsexp match from the end index to a pair of
the start and end indices.

Fix unit tests, which weren't testing anything due to the use of run-sub-test.

7 years agoExport nfc-string?.
Chris Hanson [Tue, 2 May 2017 05:41:05 +0000 (22:41 -0700)]
Export nfc-string?.

7 years agoChange char-syntax rules to emphasize that they are legacy rules.
Chris Hanson [Tue, 2 May 2017 04:08:40 +0000 (21:08 -0700)]
Change char-syntax rules to emphasize that they are legacy rules.

7 years agoFix typo in rule that broke i386 build.
Chris Hanson [Tue, 2 May 2017 04:04:23 +0000 (21:04 -0700)]
Fix typo in rule that broke i386 build.

7 years agoImplement converter from regexp patterns to regsexp forms.
Chris Hanson [Mon, 1 May 2017 06:09:24 +0000 (23:09 -0700)]
Implement converter from regexp patterns to regsexp forms.

7 years agoAdd source files for ISO 8859 mappings and move converter to src/etc/.
Chris Hanson [Mon, 1 May 2017 01:13:02 +0000 (18:13 -0700)]
Add source files for ISO 8859 mappings and move converter to src/etc/.

7 years agoHam-handed elimination of legacy strings from win32 package.
Chris Hanson [Sun, 30 Apr 2017 08:03:51 +0000 (01:03 -0700)]
Ham-handed elimination of legacy strings from win32 package.

This package is probably broken now, but it's not obvious to me how to fix it in
a way consistent with our data types.

7 years agoMerge branch 'master' of git.sv.gnu.org:/srv/git/mit-scheme
Chris Hanson [Sun, 30 Apr 2017 07:42:36 +0000 (00:42 -0700)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/mit-scheme

7 years agoEliminate last remnants of "octets" ports.
Chris Hanson [Sun, 30 Apr 2017 07:42:18 +0000 (00:42 -0700)]
Eliminate last remnants of "octets" ports.

7 years agoImplement string<->iso8859-1 converters.
Chris Hanson [Sun, 30 Apr 2017 07:23:14 +0000 (00:23 -0700)]
Implement string<->iso8859-1 converters.

7 years agoMinor cleanups to regexp code.
Chris Hanson [Sun, 30 Apr 2017 06:44:37 +0000 (23:44 -0700)]
Minor cleanups to regexp code.

7 years agoFix bugs in char-set->regexp rewrite.
Chris Hanson [Sun, 30 Apr 2017 06:44:01 +0000 (23:44 -0700)]
Fix bugs in char-set->regexp rewrite.

7 years agoAdd load-option to make sure regexp code is loaded for test.
Chris Hanson [Sun, 30 Apr 2017 06:42:09 +0000 (23:42 -0700)]
Add load-option to make sure regexp code is loaded for test.

7 years agoAllow option files to use boot-inits.
Chris Hanson [Sun, 30 Apr 2017 03:51:02 +0000 (20:51 -0700)]
Allow option files to use boot-inits.

7 years agoChange char-set->regexp to use string builder.
Chris Hanson [Sun, 30 Apr 2017 03:28:44 +0000 (20:28 -0700)]
Change char-set->regexp to use string builder.

7 years agoRewrite regexp compiler to use bytevectors. Also add test.
Chris Hanson [Sun, 30 Apr 2017 03:28:20 +0000 (20:28 -0700)]
Rewrite regexp compiler to use bytevectors.  Also add test.

7 years agoruntime/global (write-to-string): missing arg
Matt Birkholz [Sat, 29 Apr 2017 19:06:04 +0000 (12:06 -0700)]
runtime/global (write-to-string): missing arg

7 years agoEliminate legacy-string->bytevector call now primitive returns bytevector.
Chris Hanson [Sat, 29 Apr 2017 08:01:38 +0000 (01:01 -0700)]
Eliminate legacy-string->bytevector call now primitive returns bytevector.

7 years agoRefactor compressor/decompressor to use bytevectors and binary ports.
Chris Hanson [Sat, 29 Apr 2017 08:00:17 +0000 (01:00 -0700)]
Refactor compressor/decompressor to use bytevectors and binary ports.

7 years agoFix bug when calling {flush,synchronized}-output-port on a binary port.
Chris Hanson [Sat, 29 Apr 2017 07:59:20 +0000 (00:59 -0700)]
Fix bug when calling {flush,synchronized}-output-port on a binary port.

7 years agoRefactor host-adapter to detect the changes it needs to make.
Chris Hanson [Sat, 29 Apr 2017 04:12:14 +0000 (21:12 -0700)]
Refactor host-adapter to detect the changes it needs to make.

7 years agoMerge branch 'master' into sketch
Chris Hanson [Fri, 28 Apr 2017 07:10:35 +0000 (00:10 -0700)]
Merge branch 'master' into sketch

7 years agoRevert change to host-adapter that breaks self-build.
Chris Hanson [Fri, 28 Apr 2017 07:06:49 +0000 (00:06 -0700)]
Revert change to host-adapter that breaks self-build.

7 years agoRwrite to use bytevectors instead of strings.
Chris Hanson [Fri, 28 Apr 2017 06:35:10 +0000 (23:35 -0700)]
Rwrite to use bytevectors instead of strings.

7 years agoMove bytevector access macros into "object.h".
Chris Hanson [Fri, 28 Apr 2017 06:34:48 +0000 (23:34 -0700)]
Move bytevector access macros into "object.h".

7 years agoUpdate file encryption to work with binary or textual ports.
Chris Hanson [Fri, 28 Apr 2017 05:43:53 +0000 (22:43 -0700)]
Update file encryption to work with binary or textual ports.

7 years agoFix bug from recent change.
Chris Hanson [Fri, 28 Apr 2017 05:43:29 +0000 (22:43 -0700)]
Fix bug from recent change.

7 years agoFix typo in last change.
Chris Hanson [Fri, 28 Apr 2017 05:43:09 +0000 (22:43 -0700)]
Fix typo in last change.

7 years agoUse index procedures to simplify read-bytevector!.
Chris Hanson [Fri, 28 Apr 2017 05:42:43 +0000 (22:42 -0700)]
Use index procedures to simplify read-bytevector!.

7 years agoFix bug in textual->binary-port.
Chris Hanson [Fri, 28 Apr 2017 05:42:24 +0000 (22:42 -0700)]
Fix bug in textual->binary-port.

7 years agoChange crypto support to use bytevectors.
Chris Hanson [Fri, 28 Apr 2017 04:49:23 +0000 (21:49 -0700)]
Change crypto support to use bytevectors.

Interface changes:

* X-substring eliminated in favor of X-string with optional args.
* Hash codes are now bytevectors.
* Ports are assumed to be binary.

7 years agoBe more careful examining results of I/O operations.
Chris Hanson [Fri, 28 Apr 2017 04:48:43 +0000 (21:48 -0700)]
Be more careful examining results of I/O operations.

7 years agoImplement conversions between integers and bytevectors.
Chris Hanson [Fri, 28 Apr 2017 04:48:09 +0000 (21:48 -0700)]
Implement conversions between integers and bytevectors.

7 years agoChange blowfish support to use bytevectors.
Chris Hanson [Wed, 26 Apr 2017 07:35:00 +0000 (00:35 -0700)]
Change blowfish support to use bytevectors.

7 years agoImplement textual->binary-port.
Chris Hanson [Wed, 26 Apr 2017 07:34:32 +0000 (00:34 -0700)]
Implement textual->binary-port.

7 years agoImplement named char codecs.
Chris Hanson [Wed, 26 Apr 2017 07:34:04 +0000 (00:34 -0700)]
Implement named char codecs.

7 years agoTweak.
Chris Hanson [Wed, 26 Apr 2017 06:33:12 +0000 (23:33 -0700)]
Tweak.

7 years agoImplement bytevector I/O for XML.
Chris Hanson [Wed, 26 Apr 2017 05:52:53 +0000 (22:52 -0700)]
Implement bytevector I/O for XML.

7 years agoEliminate "output-octets" instance.
Chris Hanson [Wed, 26 Apr 2017 05:51:31 +0000 (22:51 -0700)]
Eliminate "output-octets" instance.

7 years agoApply rename.
Chris Hanson [Wed, 26 Apr 2017 05:51:11 +0000 (22:51 -0700)]
Apply rename.

7 years agoChange HTTP message body to be bytevector.
Chris Hanson [Wed, 26 Apr 2017 05:50:24 +0000 (22:50 -0700)]
Change HTTP message body to be bytevector.

7 years agoChange definition of content-md5 header to be a bytevector.
Chris Hanson [Wed, 26 Apr 2017 05:50:02 +0000 (22:50 -0700)]
Change definition of content-md5 header to be a bytevector.

7 years agoEliminate more low-hanging deprecations.
Chris Hanson [Wed, 26 Apr 2017 05:49:26 +0000 (22:49 -0700)]
Eliminate more low-hanging deprecations.

7 years agoImplement binary->textual-port.
Chris Hanson [Wed, 26 Apr 2017 05:46:22 +0000 (22:46 -0700)]
Implement binary->textual-port.

Also change make-generic-i/o-port to take a binary port as argument.

7 years agoImplement accessors for binary-port source/sink.
Chris Hanson [Wed, 26 Apr 2017 05:44:46 +0000 (22:44 -0700)]
Implement accessors for binary-port source/sink.

7 years agoFix typo.
Chris Hanson [Wed, 26 Apr 2017 05:06:25 +0000 (22:06 -0700)]
Fix typo.

7 years agoMore fun (less morbid) Latin valedictions.
Matt Birkholz [Wed, 26 Apr 2017 01:38:51 +0000 (18:38 -0700)]
More fun (less morbid) Latin valedictions.

7 years agomicrocode/uxsig.c: Handle SIGTERM, SIGQUIT and SIGHUP as if a C-g.
Matt Birkholz [Tue, 25 Apr 2017 21:16:06 +0000 (14:16 -0700)]
microcode/uxsig.c: Handle SIGTERM, SIGQUIT and SIGHUP as if a C-g.

Thus Scheme has a chance to clean up after a `kill %mit-scheme` or
disconnect.

7 years agoruntime/load (standard-library-directory-pathname): Simplify.
Matt Birkholz [Tue, 25 Apr 2017 21:10:56 +0000 (14:10 -0700)]
runtime/load (standard-library-directory-pathname): Simplify.

Just use the last directory in the path.  When microcode modules go
away, so will the lib/ subdirectory that previously distinguished the
"standard" options' directory.

7 years agoAdd option-loaded?.
Matt Birkholz [Tue, 25 Apr 2017 23:55:13 +0000 (16:55 -0700)]
Add option-loaded?.

7 years agoAdd with-temporary-file.
Matt Birkholz [Tue, 25 Apr 2017 21:03:38 +0000 (14:03 -0700)]
Add with-temporary-file.

This is basically call-with-temporary-file-pathname except it takes
the pathname and does not touch the file (allowing e.g. open-
exclusive-output-file to create it).  Also, optimize deallocate-
temporary-file for the case when the temporary file is already gone
(e.g. renamed into place).

7 years agocref/make.scm: Increment version for deprecated binding support.
Matt Birkholz [Tue, 25 Apr 2017 20:54:45 +0000 (13:54 -0700)]
cref/make.scm: Increment version for deprecated binding support.

7 years agoAdd close procedure before output bytevectors' custom stuff.
Matt Birkholz [Tue, 25 Apr 2017 23:36:09 +0000 (16:36 -0700)]
Add close procedure before output bytevectors' custom stuff.

7 years agoSet sign bit in DOUBLE-NEGATIVE-INFINITY-IS-INFINITE test.
Matt Birkholz [Tue, 25 Apr 2017 20:55:39 +0000 (13:55 -0700)]
Set sign bit in DOUBLE-NEGATIVE-INFINITY-IS-INFINITE test.

7 years agoffi: Restore casefulness of .cdecl files.
Matt Birkholz [Tue, 25 Apr 2017 21:01:30 +0000 (14:01 -0700)]
ffi: Restore casefulness of .cdecl files.

7 years agoruntime/host-adapter: Add string-foldcase. Train any 9.2 release.
Matt Birkholz [Tue, 25 Apr 2017 20:56:00 +0000 (13:56 -0700)]
runtime/host-adapter: Add string-foldcase.  Train any 9.2 release.

7 years agomicrocode/makegen/makegen.scm: Revert recent change.
Matt Birkholz [Tue, 25 Apr 2017 22:36:58 +0000 (15:36 -0700)]
microcode/makegen/makegen.scm: Revert recent change.

9.2 has a different write-string.  Use the deprecated write-substring
just a little longer.

7 years agoEliminate the low-hangin references to deprecated bindings.
Chris Hanson [Tue, 25 Apr 2017 06:26:29 +0000 (23:26 -0700)]
Eliminate the low-hangin references to deprecated bindings.

7 years agoFix usages of now-binary MIME codecs, by appropriate conversions.
Chris Hanson [Tue, 25 Apr 2017 03:56:02 +0000 (20:56 -0700)]
Fix usages of now-binary MIME codecs, by appropriate conversions.

7 years agoFix previous change to add close operation to non-channel sink.
Chris Hanson [Tue, 25 Apr 2017 03:55:15 +0000 (20:55 -0700)]
Fix previous change to add close operation to non-channel sink.

Also add support for sources.

7 years agoUpdate MIME codecs to use bytevectors rather than legacy strings.
Chris Hanson [Mon, 24 Apr 2017 07:23:47 +0000 (00:23 -0700)]
Update MIME codecs to use bytevectors rather than legacy strings.

**** NOTE ****
Although I modified the tests to pass, they don't test all the codecs.  Please
let me know if I broken something.

7 years agoAdd a "close" operation to non-channel output sinks.
Chris Hanson [Mon, 24 Apr 2017 07:23:22 +0000 (00:23 -0700)]
Add a "close" operation to non-channel output sinks.

7 years agoAdd test for bytevector-builder.
Chris Hanson [Mon, 24 Apr 2017 00:49:25 +0000 (17:49 -0700)]
Add test for bytevector-builder.

7 years agoRefactor make-sequence-builder and add vector-builder.
Chris Hanson [Mon, 24 Apr 2017 00:15:05 +0000 (17:15 -0700)]
Refactor make-sequence-builder and add vector-builder.

7 years agoTweak.
Chris Hanson [Mon, 24 Apr 2017 00:14:28 +0000 (17:14 -0700)]
Tweak.

7 years agoRewrite the strings chapter to account for immutability and normalization.
Chris Hanson [Sun, 23 Apr 2017 06:55:22 +0000 (23:55 -0700)]
Rewrite the strings chapter to account for immutability and normalization.

7 years agoCheck that string-find-X-index args are in NFC?
Chris Hanson [Sun, 23 Apr 2017 06:54:55 +0000 (23:54 -0700)]
Check that string-find-X-index args are in NFC?