Commit Graph

1607 Commits

Author SHA1 Message Date
Abdulaziz Ghuloum f25cc3cb67 Pretty-printed gensyms:
* print-gensym now accepts the symbol "pretty" as a valid
    argument.
  * The writer prints #:pretty-name if the print-gensym value
    is |pretty|.
  * The reader accepts #:id as a valid syntax.  The result is
    a fresh gensym with id as a pretty-name.
2006-12-25 11:33:03 +03:00
Abdulaziz Ghuloum e7d0a0a1cc Tokenize now recognizes gensym syntax:
#{id0} => a fresh gensym with pretty-string id0
  #{id0 id1} => an interned gensym with pretty-string id0
                and unique-string id1.
id0 and id1 can have any identifier syntax including bar-quoted ids.
any number of whitespaces can be placed around id0 and id1.
2006-12-25 11:18:37 +03:00
Abdulaziz Ghuloum 158980aeea The fasl-loader interns gensyms by default now. 2006-12-25 10:35:18 +03:00
Abdulaziz Ghuloum b9a369197a gensym->unique-string now interns gensyms in the gensym table. 2006-12-25 10:25:40 +03:00
Abdulaziz Ghuloum b3a6744691 renamed oblist to symbol_table in pcb 2006-12-25 09:28:53 +03:00
Abdulaziz Ghuloum 711cabe8bb removed all references to oblist from ss files 2006-12-25 09:20:09 +03:00
Abdulaziz Ghuloum 72653c5ef1 updated todo 2006-12-25 09:17:08 +03:00
Abdulaziz Ghuloum 4f5490039b * (interrupt-handler) is added to handle INT signals.
* Cafes now customize the interrupt-handler to suppress the error
  message during read that the default interrupt handler generates.
2006-12-24 12:53:01 +03:00
Abdulaziz Ghuloum da9518cc49 added comment to libguardians about where the code came from. 2006-12-24 12:20:16 +03:00
Abdulaziz Ghuloum 06158d90e0 deleted Makefile 2006-12-24 12:09:21 +03:00
Abdulaziz Ghuloum 0a01d8b4b8 makefile.ss and ikarusdoc now use "/usr/bin/env ikarus" in the shebang
line.
2006-12-24 12:08:18 +03:00
Abdulaziz Ghuloum 1e572559b7 collect is added to the set of public primitives 2006-12-24 11:50:19 +03:00
Abdulaziz Ghuloum f729a725d2 libinterpret is gone. 2006-12-24 11:27:53 +03:00
Abdulaziz Ghuloum 599f68aa84 * Ikarus now handles interrupts (e.g. ^C) by signalling an error
when an interrupt occurs.
2006-12-24 11:24:53 +03:00
Abdulaziz Ghuloum 7fed78fa9d An alt-stack and interrupt-handler are added to ikarus-main.c. When
an interrupt occurs, the engine_ticks is set to 1 and the
interrupted field is set to 1 in the pcb.
2006-12-24 09:43:20 +03:00
Abdulaziz Ghuloum fc609b4916 * lab/interupts program is added to experiment with sigaction and
sigaltstack.

added:
  lab/interrupts/
  lab/interrupts/Makefile
  lab/interrupts/inf_loop.s
  lab/interrupts/main
  lab/interrupts/main.c
2006-12-24 09:25:01 +03:00
Abdulaziz Ghuloum e69f0a5c80 * Assembler-output suppresses printing the closure-size; it prints
a newline instead.
2006-12-23 05:17:57 +03:00
Abdulaziz Ghuloum b06b28f562 * Print-gensym is now set to off during assembler-output. 2006-12-21 18:11:43 +03:00
Abdulaziz Ghuloum a41457ae66 * Heap and stack overflows now use interrupt-calls in order to push
the calls to the handlers outside of the main-line code.
2006-12-21 18:01:46 +03:00
Abdulaziz Ghuloum 0af5f6cc2a * Engine handler is functional. 2006-12-21 17:49:30 +03:00
Abdulaziz Ghuloum 3aa22ea200 * Added 'add imm, mem' instruction format. 2006-12-21 17:16:33 +03:00
Abdulaziz Ghuloum efae97a6e0 Actually, the profiling times show that memory-based tests can be
performed at around 3 secs per 1 billion checks (about 6 times
slower than register-based counters).
2006-12-21 16:32:45 +03:00
Abdulaziz Ghuloum 67a850e712 Profiling timing shows that we can do interrupt checks with cost:
* about 2.0 secs per 1 billion checks if the counter is kept in memory
* about 0.5 secs per 1 billion checks if the counter is kept in register.
2006-12-21 16:22:07 +03:00
Abdulaziz Ghuloum 5615b03879 * Input/output ports are closed when the last reference to them is
dropped.  Dropped files are closed before new files are opened.
2006-12-21 11:14:12 +03:00
Abdulaziz Ghuloum 2fcae826d1 * with-input-from-file, call-with-input-file, with-output-to-file,
and call-with-output-file no longer use dynamic-wind to track if
  an exit continuation is invoked multiple times.
2006-12-21 10:56:07 +03:00
Abdulaziz Ghuloum f7aa4c99e1 added libguardians.ss 2006-12-19 20:15:36 +03:00
Abdulaziz Ghuloum 5ccca042a6 * Implementation of Guardian is complete.
* Implementation not fully tested.  May have corner cases.
2006-12-19 20:14:31 +03:00
Abdulaziz Ghuloum 8dac92a512 added guardians primitives, not tested 2006-12-19 19:41:13 +03:00
Abdulaziz Ghuloum 3d2d52fe58 Added a guardians field to the pcb.
Added a guardians_loop procedure to the collector.  In this
revision, this procedure does nothing.
2006-12-18 23:08:33 +03:00
Abdulaziz Ghuloum e6c5c97b34 fixed simple bug in r126 for missing return(y); 2006-12-17 03:07:21 +03:00
Abdulaziz Ghuloum b7410520cb renamed all if (accounting) {...} to
#if accounting
 ...
#endif
2006-12-17 03:00:34 +03:00
Abdulaziz Ghuloum ac5ac00bab record-case definition is moved to libcompile.ss and the file is
deleted.
2006-12-17 02:18:11 +03:00
Abdulaziz Ghuloum 52acb437e8 added:
lab/prof/
  lab/prof/Makefile
  lab/prof/main
  lab/prof/main.c
  lab/prof/main.s
2006-12-17 02:15:38 +03:00
Abdulaziz Ghuloum 63dd3ba9b4 Moved test files to tests directory 2006-12-17 02:11:57 +03:00
Abdulaziz Ghuloum 37aafc2240 added a TODO list 2006-12-13 11:06:21 -05:00
Abdulaziz Ghuloum 5f3ee8a2c4 renamed lib dir to src 2006-12-10 23:13:16 -05:00
Abdulaziz Ghuloum 5a0a7068a8 fx+ open-coded 2006-12-08 08:42:56 -05:00
Abdulaziz Ghuloum 96c647b69d fx+ in progress 2006-12-08 06:12:35 -05:00
Abdulaziz Ghuloum 1d2a277063 not done with fx-/fx+/fx* 2006-12-07 15:42:25 -05:00
Abdulaziz Ghuloum 8aab527c56 predicates now evaluate their args in the acum. 2006-12-07 03:36:31 -05:00
Abdulaziz Ghuloum bd71be0d64 * Cadr is now open-coded. 2006-12-07 02:48:31 -05:00
Abdulaziz Ghuloum 1487c5ed54 * Open-coded fxadd1 and fxsub1. 2006-12-07 02:14:02 -05:00
Abdulaziz Ghuloum d7565580bf added intel docs 2006-12-07 01:38:04 -05:00
Abdulaziz Ghuloum 0fd967384b removed reference to memv in recordize 2006-12-06 21:39:13 -05:00
Abdulaziz Ghuloum 69008ea318 Rewrote recordize to get rid of the environment: total saving ~ 50ms. 2006-12-06 21:33:33 -05:00
Abdulaziz Ghuloum 5abcbccb3a changed compile-expr to expand first 2006-12-06 21:20:15 -05:00
Abdulaziz Ghuloum cd4eef2382 Documented libtoplevel.ss a bit. 2006-12-06 21:05:19 -05:00
Abdulaziz Ghuloum 2a2a3ab7fb * Added quotient.
* Added remainder.
* Added quotient+remainder :-)
2006-12-06 20:53:54 -05:00
Abdulaziz Ghuloum f378c48daf Added Rich Lewis's Sudoku solver and problems. 2006-12-06 18:27:16 -05:00
Abdulaziz Ghuloum 4143501988 * Added ~% to the format metas.
* Exported string->list.
2006-12-06 18:26:37 -05:00