Commit Graph

66 Commits

Author SHA1 Message Date
Matthew Flatt
261cb9ce1d Merge branch 'pthread' of github.com:mflatt/ChezScheme
original commit: 72597bafba6ff6290ac801aea1390e50252d8f7a
2018-01-22 17:09:55 -07:00
Matthew Flatt
4a2dc8d182 Merge branch 'rendezvous' of github.com:mflatt/ChezScheme
original commit: cccdcf961dfd3de8e2e7d0da651ef827bc128258
2018-01-22 17:08:49 -07:00
Matthew Flatt
1e95b761f1 Add __thread foreign-call convention
See the `foreign-callable` docs for a good example use.

original commit: 3645f7568c7ab9ca6a9459a870338b51605a2c6c
2018-01-22 17:06:19 -07:00
Matthew Flatt
a590b5ec35 add collect-rendezvous
original commit: 73cf31d3625e519493918faba650bbfc303f1712
2018-01-22 17:01:46 -07:00
Matthew Flatt
0c55348453 Merge branch 'fdstart' of github.com:mflatt/ChezScheme
original commit: 67f4cfc11da128038a7d631b77af8909a8901247
2018-01-15 19:40:49 -07:00
Matthew Flatt
1f77eaf2af add load-compiled-from-port and Sregister_boot_file_fd
original commit: 0865b4637fce16079cb9ad8d3eb6211f1bf08c9f
2018-01-15 19:39:20 -07:00
Matthew Flatt
f4f0bfff11 Merge branch 'genid' of github.com:mflatt/ChezScheme
original commit: bd3c746343c6850ed62eb5fcd2674292e4480fa4
2018-01-04 18:47:47 -07:00
Matthew Flatt
3526ab71fa add expand-omit-library-invocations
original commit: 35dbfdaa9ea3832f2ded108b7edcaead61922007
2018-01-04 18:32:27 -07:00
Matthew Flatt
cf87f8c4f6 add current-generate-id
original commit: be555fa7605f17f8613b1c02fe9f5e187a7cfeb9
2018-01-04 18:32:27 -07:00
Matthew Flatt
33d037f6a6 Merge branch 'procloc' of github.com:mflatt/ChezScheme
original commit: 552758ee584d142f5e92612676869cd4fde64ede
2017-12-06 08:37:50 -07:00
Matthew Flatt
9f1f5b793f add generate-procedure-source-information
original commit: 45df1f3a517c040a45aaea8f0bd4c9d859310187
2017-12-05 20:40:22 -07:00
Matthew Flatt
74dbc7d6f5 Merge branch 'arity-wrapper' of github.com:mflatt/ChezScheme
original commit: 3694a08fedfaf7e00eb52c1bbb55ce6df3e081e4
2017-12-02 08:27:01 -07:00
Matthew Flatt
4c2528653e add make-arity-wrapper-procedure
A program can use `make-arity-wrapper-procedure` to synthesize a
function that reports a given arity mask (without calling `compile`).

In addition, `set-arity-wrapper-procedure!` suports modifying the
implementation of a synthesized procedure. Although similar
functionality could be achieved with `(lambda args (apply (unbox proc)
args))`, an arity wrapper procedure can dispatch to another procedure
without allocating a list for the arguments.

The interpreter now uses an internal variant of arity wrappers to
cooperate with `procedure-arity-mask`.

original commit: 295255a326afbf3f120f95c2ccc6e95b74fdd5e2
2017-12-02 08:24:42 -07:00
Bob Burger
db1ce365fc fixed two typos
original commit: 2d1d3ad5fcf4b63423d9e7ff783315792ac81626
2017-11-22 10:38:33 -05:00
Matthew Flatt
bb1a3b0c45 Merge branch 'cas' of github.com:mflatt/ChezScheme
original commit: d9a3e7a9906649406673f49c951137db2a94de8c
2017-11-14 11:18:28 -07:00
Matthew Flatt
93c36a5d38 Merge branch 'fp-struct' of github.com:mflatt/ChezScheme
original commit: 8516339dcdacc19bfb451039e0b31146dc5b3a04
2017-11-14 11:17:36 -07:00
Matthew Flatt
682985ebea Merge branch 'orderfnl' of github.com:mflatt/ChezScheme
original commit: 8a40efa133c07dede4d8ed78f0bdd54625c1fb90
2017-11-14 11:16:44 -07:00
Matthew Flatt
0356a56eae support struct args to foreign procedures
Intermediate version: converting to use stack allocation
for `&` arguments and results in a callable, only x86_64
and x86 updated so far.

original commit: 645e1ec56376548cdef1849ba7ff2f56a926af45
2017-11-14 10:47:36 -07:00
Matthew Flatt
b796bc6719 add box-cas! and vector-cas!
original commit: d5cd34c1497541c71c8b746d5db6b3e35ee717e5
2017-11-13 07:04:15 -07:00
Andy Keep
59e6db7a61 Merge branch 'master' of github.com:cisco/ChezScheme
original commit: 1febe9b1a1e1cde4b7be8bc562153ee4b42afd8c
2017-10-14 00:00:19 -04:00
Andy Keep
b681ad9738 - Updated CSUG to replace \INSERTREVISIONMONTHSPACEYEAR with the current
month and year at the time of generation.
    csug.stex, copyright.stex
- Updated configuration to set machine types in the CSUG and release notes
  make files, and updated distclean target to remove these files.
    configure, makefiles/Makefile-csug.in (renamed from csug/Makefile),
    makefiles/Makefile-release_notes.in
      (renamed from release_notes/Makefile),
    makefiles/Makefile

original commit: d4fdb3e0c88c40cceeeeeb52032068408edc7a6e
2017-10-13 23:50:20 -04:00
dyb
f102c718c6 no longer using replacements for \tt underscore, tilde, at-sign, dots,
and curly braces, since the current cmtt font seems to support these
characters better than it once did.
  csug/scheme.sty
  release_notes/scheme.sty

original commit: f6c57b55cfbe34b269a606bd96983d62191a9aa1
2017-10-12 23:48:32 -04:00
Bob Burger
4a3e756767 more version number updates
original commit: 35ea1941338338894a05b57cd6656a4b58fc1a17
2017-10-12 10:05:30 -04:00
dyb
e55e744c4d - updated version to 9.5.1
bintar BUILDING NOTICE makefiles/Mf-install.in scheme.1.in
    c/Makefile.i3nt c/Makefile.a6nt c/Makefile.ti3nt c/Makefile.ta6nt
    workarea c/scheme.rc s/7.ss s/cmacros.ss
    release_notes/release_notes.stex csug/csug.stex

original commit: c9c45641cc50b073329cc6d219140cf93fbd5c4c
2017-10-11 19:57:53 -04:00
dyb
3c8c45328a install target now copies csug.pdf to install directory
original commit: 8fbcef7dfd6aaaf78b6571f2ad47a5ea13b290c7
2017-10-11 18:57:33 -04:00
dyb
5705bf3a69 - added version number to scheme.1.in trailer; updated date.
scheme.1.in, newrelease
- removed version update of no-longer-existing bldnt.bat.  "fixed"
  sed patterns to replace \? with * for the benefit of the deficient
  mac sed.
    newrelease
- updated version to 9.5
    bintar BUILDING NOTICE makefiles/Mf-install.in scheme.1.in
    c/Makefile.i3nt c/Makefile.a6nt c/Makefile.ti3nt c/Makefile.ta6nt
    workarea c/scheme.rc s/7.ss s/cmacros.ss
    release_notes/release_notes.stex csug/csug.stex
- updated release notes and fixed user's guide overfull hbox.
    release-notes.stex, syntax.stex
- updated install target to do something more sensible
    release_notes/Makefile

original commit: adb3b7bb22ddaa1ba91b98b6f4a647427c3a4d9b
2017-10-11 18:26:23 -04:00
Jason Hemann
934e202fde small change in documentation, ouch to shout OUCH
original commit: ad3fd16deebf8e6308d1e4726d6f5dc1fa8067e8
2017-10-11 15:53:43 -04:00
Matthew Flatt
9d8cc87758 add locate-source cache and line+column components to source objects
Add optional beginning-line and beginning-column components to a
source object, so that line and column information can be recorded
independent of the file. Add `locate-source-object-source` to use
the recorded information. Add a cache for `locate-source` as enabled by
the `use-cache?` optional argument, which can avoid compilation times
that are quadratic in the number of `let-values` or `define-values`
forms.

original commit: b36fab81d5041a54ce01a422395eee79d2f930bc
2017-08-01 05:23:56 -06:00
dybvig
f559e220db - minor wordsmithing and fix for an overfull hbox
objects.stex, system.stex

original commit: dfa469217af6ddea0bc68086b55a22b253977dbf
2017-07-12 13:40:49 -04:00
Matthew Flatt
9144829de9 add ordered guardians
Also, avoid quadratic time in GC for guardian chains.

original commit: 4f8c9d31395637557eec41e4fcb16ff71c6618da
2017-07-07 22:38:23 -06:00
Matthew Flatt
59c772ba48 add make-ephemeron-eq-hashtable, etc.
Revert the use of ephemeron pairs in weak hashtables, since the
difference is visible via guardians. Add hashtable based on ephemerons
(to avoid key-in-value problems) as an explicit variant.

original commit: 31ac6d78592e1a9ba6bfbe802260e3d56d4cf772
2017-07-06 16:27:23 -06:00
Matthew Flatt
1932612543 add bytevector-compress and bytevector-decompress
original commit: aa062c09c9f0d129250db84aeb0a5190647c5574
2017-06-21 17:52:28 -06:00
Sam Tobin-Hochstadt
0e41c9d8be Add date-dst? and date-zone-name procedures
Accesses existing-but-hidden DST information in date records,
and adds support for getting a name of the current time zone
when a time zone offset is not explicitly provided.

original commit: 3c8be62d12a8197018fb6c5aae182fd75da14fe8
2017-06-08 11:21:39 -04:00
Matthew Flatt
c9135367bc corrections from @jltaylor-us
original commit: a499d394300750ad18278469e2196ca021d9e4aa
2017-05-24 09:38:58 -06:00
Matthew Flatt
211fe4cbd7 tests and docs for ephemerons
original commit: 2ea7dcdfca1dea2c89c51c7e9ccd692ba673ba22
2017-05-24 09:38:58 -06:00
Bob Burger
a618b8860b fixed inverted logic in description of maybe-compile-*
original commit: 3747716ba6a11073146619ce75ff625ad8cbd7c0
2017-04-13 12:59:39 -04:00
Bob Burger
ee0368b462 accross => across in csug/system.stex
original commit: 37b84d9c6085d818ff993b4acc97746762997330
2017-04-13 12:48:36 -04:00
dybvig
06c7b53344 expanded the CSUG description of the handling of command-line
arguments not recognized as standard options and added a description
of the same to the COMMAND-LINE OPTIONS section of the man page.
did a bit of minor cleanup elsewhere in the man page.
  use.stex, scheme.1.in

original commit: a963a4dbc872be084cbe0ede3f7c361bcabedea5
2017-04-11 13:42:58 -07:00
Bob Burger
831ea8ad18 changed copyright year to 2017
7.ss, scheme.1.in, comments of many files

original commit: 06f858f9a505b9d6fb6ca1ac97234927cb2dc641
2017-04-06 11:41:33 -04:00
Matthew Flatt
d9c9e2b1a4 add record-type-equal-procedure, record-type-hash-procedure,
record-equal-procedure, and record-hash-procedure

original commit: 1e0fc38fe4df25804532baef87eaf30340e30bed
2017-03-24 07:22:59 -06:00
Kent Dybvig
f825e23db2 - generated bytevector=? procedure now gets out quickly on eq
arguments.  cp0 optimizes away a number of additional equality
  operations at optimize-level 3 (including bytevector=?) when
  applied to the same variable references, as it already did for
  eq?, eqv?, and equal?, at all optimize levels.
    cpnanopass.ss, cp0.ss, primdata.ss,
    cp0.ms
- updated bullyx patches
    patch*
- updated release notes and tweaked user's guide.
    release-notes.stex, objects.stex

original commit: e90c39a72563eafa4fccaf1d197060bf20aa552f
2017-03-15 21:24:52 -04:00
Kent Dybvig
9cd0199a39 merge @mflatt immutable-vector, immutable-string, immutable-bytevector,
immutable-fxvector, and immutable-box support

original commit: 547fce9b99c6566d5cb3f7af9ca84654e798486e
2017-03-15 11:09:57 -04:00
Bob Burger
a010eb7f13 removed extra blank line in csug/threads.stex
original commit: cb48dbb6fd6c4c660487e7f0421a6b44aae7d481
2017-03-14 14:52:49 -04:00
Bob Burger
636d1568ab updated copyright date in csug and release_notes
original commit: 35fd693021ae0ad142ebefd910d11778d1527064
2017-03-14 14:27:47 -04:00
Bob Burger
288243924f added optional timeout to condition-wait
original commit: 26d4dfc437fde2ba85d2d1a9ccadc2fa36979da0
2017-03-14 12:53:10 -04:00
Matthew Flatt
21fe925d06 add procedure-arity-mask
original commit: 4bd061000ab903feb3fe8e3b96ecbcb10c59dba9
2017-02-22 07:16:53 -07:00
Kent Dybvig
659a557a01 repaired descriptions of get-string-some! and get-bytevector-some!
original commit: e09139adddf9e25a5944215efb28677e60423970
2016-12-22 12:12:53 -05:00
Bob Burger
87f2f4106f fixed argument names in open-fd-output-port and open-fd-input/output-port
original commit: 66589024d5ff45200020015ac59f04242d45a362
2016-12-09 08:52:20 -05:00
Bob Burger
8679155d53 fixed typos in csug/io.stex
original commit: e38c5b2c5b01975c95f6b7cc05792e6074f86740
2016-08-23 12:41:46 -04:00
dybvig
c680147c5b - added descriptions of print-extended-identifiers to the user's guide
and release notes.  updated the release notes to account for a couple
  of other log entries.
    release_notes.stex,
    intro.stex, io.stex

original commit: 7d1bbdaaccc6640e1529fdbd8b40a8ff7012bee4
2016-08-22 23:34:32 -04:00