Matt Birkholz [Fri, 22 Jun 2018 11:30:45 +0000 (04:30 -0700)]
Punt pgsql µmodule; autoload pgsql plugin version 1.0.
Matt Birkholz [Fri, 22 Jun 2018 10:35:31 +0000 (03:35 -0700)]
Punt bfish µmodule; autoload blowfish plugin version 1.0.
Matt Birkholz [Fri, 22 Jun 2018 08:16:54 +0000 (01:16 -0700)]
Punt gdbm µmodule; autoload gdbm plugin version 1.0.
Matt Birkholz [Fri, 22 Jun 2018 10:21:04 +0000 (03:21 -0700)]
Deprecate without-interrupts.
Matt Birkholz [Fri, 22 Jun 2018 10:23:01 +0000 (03:23 -0700)]
Make FFI a non-optional subsystem.
Matt Birkholz [Fri, 22 Jun 2018 10:22:08 +0000 (03:22 -0700)]
Export FFI's delete-plugin-list and update-plugin-indices.
Matt Birkholz [Fri, 22 Jun 2018 10:20:04 +0000 (03:20 -0700)]
Update FFI manual.
Chris Hanson [Wed, 13 Jun 2018 03:51:48 +0000 (20:51 -0700)]
Change nearly all code to use parameterize rather than parameterize*.
Chris Hanson [Wed, 13 Jun 2018 03:10:50 +0000 (20:10 -0700)]
Define parameterize using syntax-rules and add it to the host adapter.
Chris Hanson [Sun, 10 Jun 2018 03:51:54 +0000 (20:51 -0700)]
Not-yet-complete implementation of R7RS libraries.
Matt Birkholz [Wed, 6 Jun 2018 15:49:35 +0000 (08:49 -0700)]
microcode/extern.h (HASH_TO_FIXNUM): typo
Matt Birkholz [Wed, 6 Jun 2018 15:44:40 +0000 (08:44 -0700)]
i386/compiler.pkg: Add missing scode/definition?.
Matt Birkholz [Wed, 6 Jun 2018 15:42:23 +0000 (08:42 -0700)]
SVM assembler needs hash-table-clear!.
Matt Birkholz [Tue, 5 Jun 2018 20:46:27 +0000 (13:46 -0700)]
mhash: Punt. The µmodule-based package disappeared long ago.
Matt Birkholz [Tue, 5 Jun 2018 19:51:06 +0000 (12:51 -0700)]
Serialize access to thread/properties via thread-get, thread-put./fetch 69
Matt Birkholz [Tue, 5 Jun 2018 19:50:06 +0000 (12:50 -0700)]
Name the initial thread.
Matt Birkholz [Tue, 5 Jun 2018 19:43:04 +0000 (12:43 -0700)]
imail: Like probe-folder-output-processor, avoid referencing folder.
Matt Birkholz [Tue, 5 Jun 2018 16:45:36 +0000 (09:45 -0700)]
ffi: version 1.0
Matt Birkholz [Tue, 5 Jun 2018 16:37:51 +0000 (09:37 -0700)]
plugin tags-fix.sh: Use command-line-arguments.
Matt Birkholz [Tue, 5 Jun 2018 14:33:05 +0000 (07:33 -0700)]
A couple more fall-through comments.
Matt Birkholz [Tue, 5 Jun 2018 08:15:56 +0000 (01:15 -0700)]
Name most threads.
Matt Birkholz [Tue, 5 Jun 2018 17:54:41 +0000 (10:54 -0700)]
Print Edwin buffer names.
Matt Birkholz [Tue, 5 Jun 2018 08:15:36 +0000 (01:15 -0700)]
world-report: Display thread names instead of associated "flags".
Matt Birkholz [Fri, 1 Jun 2018 21:15:27 +0000 (14:15 -0700)]
Add optional name parameter to create-thread.
Matt Birkholz [Tue, 5 Jun 2018 17:11:05 +0000 (10:11 -0700)]
Add thread-get and thread-put! for e.g. giving threads names.
Matt Birkholz [Tue, 5 Jun 2018 06:44:29 +0000 (23:44 -0700)]
blowfish: typo in manual
Matt Birkholz [Fri, 1 Jun 2018 22:37:07 +0000 (15:37 -0700)]
x11: version 0.3
Matt Birkholz [Fri, 1 Jun 2018 21:41:05 +0000 (14:41 -0700)]
x11: Allow CurrentTime.
Matt Birkholz [Fri, 1 Jun 2018 21:32:57 +0000 (14:32 -0700)]
ffi: Add delete-plugin-list and update-plugin-indices
for the Debian install/uninstall scripts.
Matt Birkholz [Fri, 1 Jun 2018 21:17:58 +0000 (14:17 -0700)]
runtime/ffi: Save/restore floenv around callouts.
The c-call primitive can "alienate" the floenv, but cooperating with
c-call-continue to save/restore it is... more difficult than doing it
in Scheme.
And fix some trailing whitespace, indentation.
Matt Birkholz [Tue, 5 Jun 2018 07:22:28 +0000 (00:22 -0700)]
Signal an error in unlock-thread-mutex when mutex is not owned,
before applying remove-thread-mutex! to #f, which produces a less
helpful error message.
Matt Birkholz [Fri, 1 Jun 2018 21:01:34 +0000 (14:01 -0700)]
Use with-interrupts-reduced in with-limited-interrupts.
Save a primitive apply.
Matt Birkholz [Fri, 1 Jun 2018 20:58:37 +0000 (13:58 -0700)]
user.texinfo: typos
Need ./configure when building gdbm. Prefer --prepend-library where
applicable. Mention all 6 sample plugins. Do *not* mention the
defunct --edwin option.
Matt Birkholz [Fri, 1 Jun 2018 20:45:13 +0000 (13:45 -0700)]
plugins: Copy .crf reports into the build log.
Matt Birkholz [Fri, 1 Jun 2018 19:51:31 +0000 (12:51 -0700)]
gdbm: version 0.4
Matt Birkholz [Fri, 1 Jun 2018 19:49:36 +0000 (12:49 -0700)]
gdbm: Update documentation regarding file locks.
Matt Birkholz [Tue, 5 Jun 2018 06:51:13 +0000 (23:51 -0700)]
gdbm: Accommodate 1.14 (in Ubuntu 18.04) but disable file locking.
Chris Hanson [Tue, 5 Jun 2018 04:43:13 +0000 (21:43 -0700)]
Fix fencepost error reported by Patric Jonsson.
Also handle limited kinds of redundant clauses, and special case where there's
exactly one clause.
Chris Hanson [Sat, 2 Jun 2018 05:42:56 +0000 (22:42 -0700)]
Update copyrights.
Chris Hanson [Sat, 2 Jun 2018 05:26:32 +0000 (22:26 -0700)]
Change subexpression marker to not require quoting.
Chris Hanson [Sat, 2 Jun 2018 05:20:08 +0000 (22:20 -0700)]
No need to quote weird symbols as strings.
Chris Hanson [Tue, 29 May 2018 06:53:16 +0000 (23:53 -0700)]
Refactor promises again, to support delay-force.
This no longer uses scode DELAY expressions, which can be deleted after 9.3 is
released. It does continue to use DELAYED objects for type convenience.
Chris Hanson [Tue, 29 May 2018 01:22:13 +0000 (18:22 -0700)]
Implement make-promise for R7RS.
Also clean up promise implementation a bit.
Chris Hanson [Tue, 29 May 2018 00:55:24 +0000 (17:55 -0700)]
Fill in pseudo-keywords so that they can be imported from libraries.
Chris Hanson [Tue, 29 May 2018 00:35:07 +0000 (17:35 -0700)]
Implement call-with-port for R7RS.
Chris Hanson [Mon, 28 May 2018 20:54:43 +0000 (13:54 -0700)]
Add definitions of standard libraries.
Chris Hanson [Mon, 28 May 2018 20:54:17 +0000 (13:54 -0700)]
Fix thinko: forgot to provide definition of file-error?.
Chris Hanson [Mon, 28 May 2018 05:05:33 +0000 (22:05 -0700)]
Implement target-metadata declaration.
This declaration has a body that's an alist keyed by symbols. The information
in the declaration is carried through the compiler and attached to the compiled
code in the wrapper comment.
The short-term purpose of this declaration is to attach R7RS library information
to compiled code. But it's general enough for other uses too.
Chris Hanson [Mon, 28 May 2018 02:47:13 +0000 (19:47 -0700)]
Implement vector-any and vector-every.
Chris Hanson [Thu, 24 May 2018 03:49:51 +0000 (20:49 -0700)]
Fix equal-hash to return the same value as eq-hash on non-pointers.
Chris Hanson [Wed, 23 May 2018 07:18:42 +0000 (00:18 -0700)]
Use the new hashing primitives to simplify standard hashes.
Also, the standard hashes now always return a fixnum.
Chris Hanson [Wed, 23 May 2018 07:17:55 +0000 (00:17 -0700)]
Rewrite the hashing primitives to support runtime-level hashing.
Chris Hanson [Wed, 23 May 2018 05:17:51 +0000 (22:17 -0700)]
Fix thinko in hash-simple-object and add primitive-memory-hash.
Chris Hanson [Wed, 23 May 2018 05:03:15 +0000 (22:03 -0700)]
Use bytevector instead of string when detecting endianness.
Chris Hanson [Tue, 22 May 2018 07:47:12 +0000 (00:47 -0700)]
Implement hash-simple-object.
This works for any object that can be viewed as a contiguous sequence of bytes
in memory, so includes strings, bytevectors, symbols, bignums, flonums, and
non-pointer objects.
This is not tested but also not yet used.
Chris Hanson [Tue, 22 May 2018 07:46:51 +0000 (00:46 -0700)]
Move knowledge of unicode strings into sdata.h and object.h.
Chris Hanson [Mon, 21 May 2018 06:16:48 +0000 (23:16 -0700)]
Actually implement a library and imports parser.
This one isn't done as macros, since these "forms" are a specialized syntax that
is available only in constrained contexts. This implementation handles both
cond-expand and include-library-declarations.
This isn't yet tested, so don't expect it to work.
Chris Hanson [Mon, 21 May 2018 05:42:00 +0000 (22:42 -0700)]
Refactor cond-expand to separate out the clauses evaluator.
Also change cond-expand to use new id!=? for else clause.
Chris Hanson [Mon, 21 May 2018 05:35:26 +0000 (22:35 -0700)]
Implement spar-arg:id!=? to handle useful case.
Chris Hanson [Mon, 21 May 2018 00:27:50 +0000 (17:27 -0700)]
Change symbol<? to sort interned symbols before uninterned.
Chris Hanson [Sun, 20 May 2018 23:59:38 +0000 (16:59 -0700)]
Clean up loader's handling of pathname and environment.
Chris Hanson [Sun, 20 May 2018 23:59:02 +0000 (16:59 -0700)]
Move magit-diff-arguments from custom.el to init.el.
Chris Hanson [Sun, 20 May 2018 21:03:22 +0000 (14:03 -0700)]
Implement interaction-environment for R7RS.
Chris Hanson [Sun, 20 May 2018 21:03:13 +0000 (14:03 -0700)]
Fix title.
Chris Hanson [Sun, 20 May 2018 05:30:49 +0000 (22:30 -0700)]
Implement include and include-ci for R7RS.
Chris Hanson [Sun, 20 May 2018 05:21:07 +0000 (22:21 -0700)]
READ no longer uses its environment arg, so remove it.
Chris Hanson [Sun, 20 May 2018 01:05:44 +0000 (18:05 -0700)]
Non-functioning implementation of import and define-library.
Chris Hanson [Sun, 20 May 2018 00:47:08 +0000 (17:47 -0700)]
Capture useful pattern with spar-pattern-fixed-point.
Chris Hanson [Sun, 20 May 2018 00:23:29 +0000 (17:23 -0700)]
Rewrite cond-expand-pattern as cond-expand-clause-pattern.
This will allow it to be reused for define-library.
Chris Hanson [Sun, 20 May 2018 00:23:03 +0000 (17:23 -0700)]
Tweak pattern->spar to make it more useful.
Also add (cons* ...) pattern.
Chris Hanson [Sat, 19 May 2018 22:06:29 +0000 (15:06 -0700)]
Fix typo in DISPLAY.
Chris Hanson [Sat, 19 May 2018 06:42:54 +0000 (23:42 -0700)]
Implement define-values for R7RS.
Chris Hanson [Sat, 19 May 2018 06:21:05 +0000 (23:21 -0700)]
Split command-line processing out of load into its own file.
Also implement command-line for R7RS, renaming existing command-line to
command-line-arguments.
Chris Hanson [Sat, 19 May 2018 04:24:53 +0000 (21:24 -0700)]
Implement exact-integer-sqrt for R7RS.
Chris Hanson [Thu, 17 May 2018 07:08:53 +0000 (00:08 -0700)]
Implement CASE-LAMBDA for R7RS.
Chris Hanson [Thu, 17 May 2018 05:37:24 +0000 (22:37 -0700)]
Make sure that value of r4rs-lambda-list-arity is simplified.
Chris Hanson [Thu, 17 May 2018 05:16:19 +0000 (22:16 -0700)]
Implement fold-r4rs-lambda-list and r4rs-lambda-list-arity.
Chris Hanson [Wed, 16 May 2018 05:32:46 +0000 (22:32 -0700)]
Implement GUARD for R7RS.
Chris Hanson [Tue, 15 May 2018 04:48:25 +0000 (21:48 -0700)]
Change users of arity-dispatched-procedure to use the abstraction.
Chris Hanson [Tue, 15 May 2018 04:36:22 +0000 (21:36 -0700)]
Move the arity-dispatcher-tag from the microcode to the runtime system.
Chris Hanson [Tue, 15 May 2018 04:35:24 +0000 (21:35 -0700)]
Rewrite microcode-tables.scm for simplicity.
Also add a 'fixed-objects boot-actions list and change record.scm to use it.
Chris Hanson [Mon, 14 May 2018 19:31:25 +0000 (12:31 -0700)]
A few more fall-through comments.
Chris Hanson [Mon, 14 May 2018 19:29:35 +0000 (12:29 -0700)]
Add comments to suppress fall-through warnings in GCC 7.
Chris Hanson [Mon, 14 May 2018 04:54:30 +0000 (21:54 -0700)]
Apple doesn't need special definition for jiffies-per-second.
Chris Hanson [Mon, 14 May 2018 04:52:51 +0000 (21:52 -0700)]
Don't use CLOCKS_PER_SEC for the value returned by times().
Chris Hanson [Mon, 14 May 2018 04:29:35 +0000 (21:29 -0700)]
Add missing procedure in host-adapter.
Chris Hanson [Mon, 14 May 2018 04:20:23 +0000 (21:20 -0700)]
Implement CURRENT-JIFFY and JIFFIES-PER-SECOND for R7RS.
Very rough implementation, may return process time instead of real time on
non-POSIX systems.
Chris Hanson [Mon, 14 May 2018 03:06:41 +0000 (20:06 -0700)]
Implement CURRENT-SECOND for R7RS.
Chris Hanson [Mon, 14 May 2018 03:02:16 +0000 (20:02 -0700)]
Fix bug: earlier rewrite of printer broke pp.
Chris Hanson [Mon, 14 May 2018 02:43:57 +0000 (19:43 -0700)]
Implement get-environment-variables for R7RS.
Chris Hanson [Mon, 14 May 2018 02:43:42 +0000 (19:43 -0700)]
More R7RS tags.
Chris Hanson [Mon, 14 May 2018 00:15:59 +0000 (17:15 -0700)]
Rename GET-SUPPORTED-FEATURES to FEATURES for R7RS.
Also add some more R7RS comments to runtime.pkg.
Chris Hanson [Mon, 14 May 2018 00:13:21 +0000 (17:13 -0700)]
A bunch of changes to implement R7RS exit/emergency-exit.
* The EXIT procedure has been removed.
* The %EXIT procedure has been renamed to EXIT.
* The EMERGENCY-EXIT procedure has been added.
* The optional argument to the above has been generalized to meet R7RS
requirements.
* The QUIT procedure has been renamed to SUSPEND to more accurately reflect what
it does.
* The names %EXIT and QUIT are deprecated aliases for EXIT and SUSPEND.
Chris Hanson [Sun, 13 May 2018 23:05:37 +0000 (16:05 -0700)]
Don't expose internal structure of continuations.
Chris Hanson [Sun, 13 May 2018 06:22:28 +0000 (23:22 -0700)]
Eliminate two unused exports.
Chris Hanson [Sun, 13 May 2018 06:19:18 +0000 (23:19 -0700)]
Eliminate uses of unparser/set-tagged-{pair,vector}-unparser!.
Also change their implementation to use define-print-method.
Chris Hanson [Sun, 13 May 2018 06:18:05 +0000 (23:18 -0700)]
Rename a bunch of places from "unparse" to "print".
Chris Hanson [Sun, 13 May 2018 06:15:36 +0000 (23:15 -0700)]
Eliminate other references to "unparser" in the documentation.
Chris Hanson [Sun, 13 May 2018 05:33:03 +0000 (22:33 -0700)]
Simplify *print-with-brackets a bit.
Chris Hanson [Sun, 13 May 2018 05:32:36 +0000 (22:32 -0700)]
Assume that named vector/list unparsers are in fact print methods.