Commit Graph

43 Commits

Author SHA1 Message Date
Abdulaziz Ghuloum b507118f5d Added libtimers.ss:
(time-it proc) runs proc and reports the time.
  (time-it proc message) runs proc and reports the time, with message.
  (time <expr>) evaluates expr and prints the running time.
2006-12-29 10:53:47 +03:00
Abdulaziz Ghuloum d38880b777 Fixed bug in libfasl that caused reading a thunk to return the code
instead.
2006-12-26 12:03:43 +03:00
Abdulaziz Ghuloum 0b38b1ff30 ikarus-fasl.c plays along with the rtd-symbol game by setting and
referencing rtd symbols.
2006-12-26 11:46:23 +03:00
Abdulaziz Ghuloum f5f91712dd * Fasl file reader almost complete with full record and code reader. 2006-12-26 11:25:48 +03:00
Abdulaziz Ghuloum 9c00592520 fasl-read handles negative fixnums. 2006-12-26 09:22:58 +03:00
Abdulaziz Ghuloum 3ddceaa164 fasl-read now handled pairs, positive-fixnums and the empty list. 2006-12-26 06:32:59 +03:00
Abdulaziz Ghuloum d41a2c0096 fasl-write now returns void instead of the meaningless number it used to return 2006-12-26 06:25:35 +03:00
Abdulaziz Ghuloum 4fa2bdf0d9 tokenize recognizes #@ as a fasl header and calls $fasl-read (in
libfasl.ss).
2006-12-26 06:21:07 +03:00
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 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 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 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 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 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 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 63dd3ba9b4 Moved test files to tests directory 2006-12-17 02:11:57 +03:00
Abdulaziz Ghuloum 5f3ee8a2c4 renamed lib dir to src 2006-12-10 23:13:16 -05:00
Abdulaziz Ghuloum 5bb14cad6e renamed:
runtime => bin
  src => lib
2006-12-01 10:40:21 -05:00
Abdulaziz Ghuloum 23dd55e7f6 removed Petite from the greeting 2006-12-01 10:20:50 -05:00
Abdulaziz Ghuloum d24523376d * Ikarus can now be started like:
$ ikarus [-b boot-file-name] file ... [-- arg ...]
  
  files will be "load"ed sequentially after the greeting message is
  printes.  args are available from the command-line-arguments
  parameter.
2006-12-01 10:15:25 -05:00
Abdulaziz Ghuloum 0ff5b0cf75 * Added a $arg-list system primitive that accesses the pcb->arg_list
field.
* Added a command-line-arguments parameter to the core.
2006-12-01 10:02:05 -05:00
Abdulaziz Ghuloum ee0e6c91e7 Ikarus now recognizes a -b command-line argument for providing the
name of the boot file. If -b is missing, argv[0]++".boot" is used.
2006-12-01 09:23:37 -05:00
Abdulaziz Ghuloum c3401ef735 Bug fix: Equal handles numbers correctly now. 2006-11-30 18:28:44 -05:00
Abdulaziz Ghuloum 9eaaf3c438 added file-exists? and delete-file operations to libposix.ss and ikarus-runtime.c 2006-11-29 17:06:16 -05:00
Abdulaziz Ghuloum e97b39a39a implemented assoc 2006-11-28 06:54:07 -05:00
Abdulaziz Ghuloum f6a95c07d2 Removed all version names from files 2006-11-23 20:37:04 -05:00
Abdulaziz Ghuloum 10268dfc43 Fixed makefiles 2006-11-23 20:18:02 -05:00