Commit Graph

56 Commits

Author SHA1 Message Date
Abdulaziz Ghuloum a9193018a6 added a cgi-server example to lab. 2008-09-10 05:22:21 -07:00
Abdulaziz Ghuloum bdd81e2b05 accept and accept-nonblocking now set the port-id to a string
representing the incoming address like "nnn.nnn.nnn.nnn:pppp"
2008-04-11 07:01:27 -04:00
Abdulaziz Ghuloum fc92ec8e9f Fixes bug 205437: socket errors not being reported 2008-03-24 00:01:22 -04:00
Abdulaziz Ghuloum 884f3fe921 Added tcp-server-socket-nonblocking, tcp-accept-connection-nonblocking
and register-callback for handling nonblocking servers and connections.
2008-03-23 05:02:12 -04:00
Abdulaziz Ghuloum 2119f44125 Added a simple tcp server facility. See lab/greeting-server.ss. 2008-03-23 03:44:20 -04:00
Abdulaziz Ghuloum 9aaf306f16 Nonblocking sockets no longer raise a continuable exception when a
read or write operation would block.  Instead, they are schedules
with an event handler that `selects' on the pending file descriptors
and dispatches the appropriate callback.
2008-03-23 02:14:00 -04:00
Abdulaziz Ghuloum 6e599c4c72 refactored nonblocking code in ikarus-io.c and ikarus.io.ss 2008-03-23 00:41:49 -04:00
Abdulaziz Ghuloum ce496aebaf * Better error message when a tcp connection is refused.
* implemented udp connections (not working yet).
2008-03-22 19:29:41 -04:00
Abdulaziz Ghuloum 4c3b17436f Added a tcp-connect-nonblocking-example.ss to demonstrate how to
handle nonblocking sockets by continuous polling.
2007-12-27 22:17:54 -05:00
Abdulaziz Ghuloum 64dac92831 Added tcp-connect-nonblocking which is line tcp-connect but puts the
socket in nonblocking mode.  An operation that would block now
raises (continuable) a condition of type &i/o-would-block which
contains the port in question.  There's no way to handle the
condition gracefully yet.
2007-12-27 22:08:27 -05:00
Abdulaziz Ghuloum 4f0a816295 Added a tcp-connect procedure that takes a host name and a service
name (e.g. "www.google.com" and "http") and returns two binary ports:
the first for output and the second for input.
Both ports must be closed for the connection to close.

Also added an example in lab/tcp-connect-example.ss which connects 
to an http server, sends "GET /\n" and prints the responde.
2007-12-26 17:35:58 -05:00
Abdulaziz Ghuloum 6eb6bf750d Added a (process "cmd" "args" ...) procedure that execs cmd, passing
args to it, and returns 4 values: 
* the process's pid
* the process's standard-input-port  (for writing)
* the process's standard-output-port (for reading)
* the process's standard-error-port  (for reading)
See lab/process-example.ss for a sample usage.
2007-12-19 22:46:07 -05:00
Abdulaziz Ghuloum 0b648054b8 removed some junk files that were in the repository. 2007-12-10 12:00:12 -05:00
Abdulaziz Ghuloum 3575b0c8d8 Added IO tests. 2007-12-10 10:42:43 -05:00
Abdulaziz Ghuloum 0e38534d2e New IO layer is installed. Still buggy in some area but can be used
for bootstrapping at least.
2007-12-10 07:28:03 -05:00
Abdulaziz Ghuloum ea96ab85db stage 1 of new input IO is almost complete. 2007-12-09 17:13:09 -05:00
Abdulaziz Ghuloum 3562a736c5 Fixes bug 175117: Named let violates scoping rules 2007-12-09 12:20:13 -05:00
Abdulaziz Ghuloum 1d5c069273 Fixes bug 175057: Added time-gmt-offset procedure that takes a time
object and returns the offset from gmt in seconds.
2007-12-09 07:20:49 -05:00
Abdulaziz Ghuloum 0e93ac2db9 Code of fasl-write is changed to use only binary output prims. 2007-12-08 14:52:35 -05:00
Abdulaziz Ghuloum 515101d188 string-input-ports in new IO work now. 2007-12-07 07:39:17 -05:00
Abdulaziz Ghuloum 86d9c640b1 decoding of utf8-transcoded ports is complete. 2007-12-07 05:34:46 -05:00
Abdulaziz Ghuloum 2575419665 utf8 input transcoding works for 1-byte and 2-byte utf8 sequences 2007-12-07 04:42:10 -05:00
Abdulaziz Ghuloum c0191a8283 Fixes bug 174594: Record read/write now terminate on cycles. 2007-12-07 01:41:21 -05:00
Abdulaziz Ghuloum 1f352825f5 Transcoding to latin-1 now works in the new IO layer. 2007-12-06 08:14:05 -05:00
Abdulaziz Ghuloum 1469932f3d Exported the transcoder? primitive. 2007-12-06 05:05:26 -05:00
Abdulaziz Ghuloum f7021bbcbc some progress in the new IO system. 2007-12-05 11:36:25 -05:00
Abdulaziz Ghuloum cebab86485 Start of work on the new IO system. 2007-12-05 05:33:31 -05:00
Abdulaziz Ghuloum 6294ea7052 * removed stuff from lib directory. 2007-12-01 01:19:45 -05:00
Abdulaziz Ghuloum c8eb73e987 added read-exprs.ss script to ikarus.dev/lab 2007-11-28 20:12:09 -05:00
Abdulaziz Ghuloum 92e278281c * pretty-print is now added to ikarus.
* new-cafe now uses pretty-print instead of write for printing to
  the interaction repl.
2007-01-13 21:33:04 -05:00
Abdulaziz Ghuloum bf23a8a1b7 * pretty-print now handles vectors 2007-01-13 20:37:54 -05:00
Abdulaziz Ghuloum 38082fc489 pretty-print now handles read-macros. 2007-01-13 18:51:23 -05:00
Abdulaziz Ghuloum 17c1b3ba10 added initial pretty-print file to lab 2007-01-13 18:34:35 -05:00
Abdulaziz Ghuloum 1a7a4e1c2a fixed bug in environ that causes substring to fail when one of the items is "foo=". 2007-01-13 13:02:03 -05:00
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 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 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 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 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 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 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
Abdulaziz Ghuloum 584e7706ea added optimize-gc note 2006-12-06 11:08:50 -05:00
Abdulaziz Ghuloum 0f2bcdb2a0 added an mmap cache to avoid repeated mmaps/munmaps 2006-12-06 11:07:27 -05:00
Abdulaziz Ghuloum 80c8ca7a5c added vimviews to repository 2006-12-05 13:03:22 -05:00
Abdulaziz Ghuloum 787264e8cf * Vars now have a ``referenced'' field to be used by the optimizer.
* Uncover-assigned is renamed to uncover-assigned/referenced.
2006-12-03 11:23:03 -05:00
Abdulaziz Ghuloum df16339018 removed some junk from libchezio 2006-12-03 05:17:08 -05:00
Abdulaziz Ghuloum 90ef531920 fixed usage message 2006-12-02 16:04:18 -05:00