3a1439a16e 
								
							 
						 
						
							
							
								
								Remove warning message "Warning: dropping ignored channel i/o result"  
							
							... 
							
							
							
							because it can be legitimately triggered by WAIT-FOR-CHANNELS. 
							
						 
						
							2002-12-11 12:40:29 +00:00  
				
					
						
							
							
								 
						
							
								6fc80dfb4b 
								
							 
						 
						
							
							
								
								Fix typo: remove double application of MAKE-I/O-COMPLETION-HANDLER.  
							
							
							
						 
						
							2002-11-12 13:13:02 +00:00  
				
					
						
							
							
								 
						
							
								a1e9e54bbc 
								
							 
						 
						
							
							
								
								Add lookup-external from recent S48 (it's already described in the manual).  
							
							
							
						 
						
							2002-11-07 09:43:29 +00:00  
				
					
						
							
							
								 
						
							
								17b1a55c8b 
								
							 
						 
						
							
							
								
								+ Factor out pending interrupts into a separate package.  
							
							... 
							
							
							
							+ Let vm-channel-abort clear the pending-i/o interrupt if the queue became empty 
							
						 
						
							2002-09-27 12:44:43 +00:00  
				
					
						
							
							
								 
						
							
								5b47488938 
								
							 
						 
						
							
							
								
								Include half-assed implementation of ADD-PENDING-CHANNEL.  
							
							
							
						 
						
							2002-09-19 07:08:16 +00:00  
				
					
						
							
							
								 
						
							
								d14e638e10 
								
							 
						 
						
							
							
								
								Replace hacked-up VM-CHANNEL-ABORT by a version that's simpler and  
							
							... 
							
							
							
							closer to the original. 
							
						 
						
							2002-09-19 07:07:40 +00:00  
				
					
						
							
							
								 
						
							
								9950aa7205 
								
							 
						 
						
							
							
								
								Wrap an additional (lambda a ...) around the application of (terminate-current-thread) in terminate-thread! as the continuation may provide any number of values  
							
							
							
						 
						
							2002-09-18 19:16:23 +00:00  
				
					
						
							
							
								 
						
							
								d21334de83 
								
							 
						 
						
							
							
								
								Keep separate queues for input and output channels, so the VM doesn't  
							
							... 
							
							
							
							get confused handling events/interrupts.
I despise myself. 
							
						 
						
							2002-09-18 14:56:31 +00:00  
				
					
						
							
							
								 
						
							
								5cb76fd27b 
								
							 
						 
						
							
							
								
								Replace call to channel-has-waiter? by channel-check-waiter.  
							
							
							
						 
						
							2002-09-17 21:22:41 +00:00  
				
					
						
							
							
								 
						
							
								3c07ebb50f 
								
							 
						 
						
							
							
								
								PROTECT-PORT-OP saves the return value of CLOSE so better return (if #f #f) than (values).  
							
							
							
						 
						
							2002-09-11 14:38:56 +00:00  
				
					
						
							
							
								 
						
							
								024d938e39 
								
							 
						 
						
							
							
								
								Added SRFI 25, 26, 27, 28, 30.  
							
							
							
						 
						
							2002-09-11 14:34:58 +00:00  
				
					
						
							
							
								 
						
							
								cd9907c68f 
								
							 
						 
						
							
							
								
								Fixed bug in the reference implementation reported by Vladimir Tsichevski on c.l.s..  
							
							
							
						 
						
							2002-09-09 08:03:59 +00:00  
				
					
						
							
							
								 
						
							
								e3d6f985fc 
								
							 
						 
						
							
							
								
								Put back an accidentally elided ELSE branch in PLACEHOLDER-SET!  
							
							
							
						 
						
							2002-09-06 14:11:36 +00:00  
				
					
						
							
							
								 
						
							
								854f9d18e1 
								
							 
						 
						
							
							
								
								Removed duplicate definition of S48_ENTER/EXTRACT_BOOLEAN.  
							
							
							
						 
						
							2002-09-06 11:57:53 +00:00  
				
					
						
							
							
								 
						
							
								1599136ffa 
								
							 
						 
						
							
							
								
								Added map, for-each, member, assoc to srfi-1-interface  
							
							
							
						 
						
							2002-09-04 08:23:47 +00:00  
				
					
						
							
							
								 
						
							
								33c14d7901 
								
							 
						 
						
							
							
								
								First stab at implementing SELECT/SELECT!:  
							
							... 
							
							
							
							- extend the VM interrupts to distinguish between read and write
  events
- add new ADD-PENDING-CHANNEL instruction to the VM
- add WAIT-FOR-CHANNELS procedure to the run-time system
- implement SELECT and SELECT! on top of that in newports.scm
This runs some basic tests, but in general should be considered
largely untested.
Moreover, SELECT/SELECT! never detect any exceptional conditions---the
returned vectors are always empty.  This is because the VM doesn't
really track those, and it's unclear whether it would be worth the
effort. 
							
						 
						
							2002-08-20 14:03:01 +00:00  
				
					
						
							
							
								 
						
							
								ac343ba970 
								
							 
						 
						
							
							
								
								Replace Martin's implementation of selective blocking by the one in  
							
							... 
							
							
							
							Scheme 48 1.0.1.
Namely, instead of associating a list of queues with every thread, we
associate a single cell, holding the thread.  That cell is stored in
thread queues, and once a thread is made runnable again, the cell is
set to #f.  The thread-queue accessors ignore cells containing #f.
Implement an experimental OBTAIN-LOCK-MULTIPLE to test the whole
thing. 
							
						 
						
							2002-08-16 14:11:50 +00:00  
				
					
						
							
							
								 
						
							
								8f1dfb6935 
								
							 
						 
						
							
							
								
								Ensure that newspace is the space in front when dumping an image the  
							
							... 
							
							
							
							prevent relocation on startup. 
							
						 
						
							2002-08-15 16:35:26 +00:00  
				
					
						
							
							
								 
						
							
								4e5b87209d 
								
							 
						 
						
							
							
								
								Added ignore-port-locks? flag to output-port-forcers and use it in  
							
							... 
							
							
							
							flush-all-ports-no-threads. 
							
						 
						
							2002-06-26 11:25:33 +00:00  
				
					
						
							
							
								 
						
							
								bbfd094bbd 
								
							 
						 
						
							
							
								
								Queue os-signal events.  
							
							
							
						 
						
							2002-06-10 08:46:08 +00:00  
				
					
						
							
							
								 
						
							
								aed248d24b 
								
							 
						 
						
							
							
								
								First version of libscsh.  
							
							
							
						 
						
							2002-05-16 14:50:46 +00:00  
				
					
						
							
							
								 
						
							
								1d35626709 
								
							 
						 
						
							
							
								
								Redo the forking-without-the-threads fix in a way not involving  
							
							... 
							
							
							
							command levels (as there *are* no command levels for things like scsh
-c):
There's now a new asynchronous event, similar to SPAWN, called NARROW.
It spawns off a new scheduler with just one thread (which runs the
thunk provided as an argument to NARROW) and blocks the current one
until the narrowed scheduler finishes.
For this to work, two schedulers need to be in place: the root
scheduler which performs the housekeeping, and another one inside that
which is the one the program uses---otherwise it's the root scheduler
that's blocked, and that means no housekeeping gets done.  This is
trivially the case for interactive mode, as the command-levels all
have their own schedulers, but we also need to make sure scsh's entry
point fires up its own initial scheduler. 
							
						 
						
							2002-05-03 13:42:36 +00:00  
				
					
						
							
							
								 
						
							
								2a302178e6 
								
							 
						 
						
							
							
								
								Provide names for housekeeping threads for better debugging.  
							
							
							
						 
						
							2002-05-03 13:36:15 +00:00  
				
					
						
							
							
								 
						
							
								104ed36666 
								
							 
						 
						
							
							
								
								Export PRESERVE-THREAD-FLUIDS from THREAD-FLUIDS.  
							
							
							
						 
						
							2002-04-12 14:29:25 +00:00  
				
					
						
							
							
								 
						
							
								fe5c9a3783 
								
							 
						 
						
							
							
								
								Cells for thread-env's fluid-cell-{ref,set!}.  
							
							
							
						 
						
							2002-04-04 08:45:28 +00:00  
				
					
						
							
							
								 
						
							
								ea31d95dbc 
								
							 
						 
						
							
							
								
								All the SRFIs from S48 0.57.  
							
							
							
						 
						
							2002-04-04 08:44:49 +00:00  
				
					
						
							
							
								 
						
							
								66a5384a98 
								
							 
						 
						
							
							
								
								alt/ from S48 0.57.  
							
							
							
						 
						
							2002-04-04 08:36:20 +00:00  
				
					
						
							
							
								 
						
							
								ffa5461a39 
								
							 
						 
						
							
							
								
								Added fluid-cell-ref and fluid-cell-set!.  
							
							
							
						 
						
							2002-04-04 08:22:20 +00:00  
				
					
						
							
							
								 
						
							
								06b68b7c5e 
								
							 
						 
						
							
							
								
								Cells as stob (from S48 0.57).  
							
							
							
						 
						
							2002-04-04 08:13:53 +00:00  
				
					
						
							
							
								 
						
							
								6f083d7205 
								
							 
						 
						
							
							
								
								Small renamer for clarity.  
							
							
							
						 
						
							2002-04-04 08:09:15 +00:00  
				
					
						
							
							
								 
						
							
								5aee745efb 
								
							 
						 
						
							
							
								
								New module language from S48 0.57.  
							
							
							
						 
						
							2002-04-03 12:17:19 +00:00  
				
					
						
							
							
								 
						
							
								b4312d028c 
								
							 
						 
						
							
							
								
								Be even more thorough about releasing port locks after exceptions.  
							
							
							
						 
						
							2002-02-28 08:29:04 +00:00  
				
					
						
							
							
								 
						
							
								f5d853712b 
								
							 
						 
						
							
							
								
								Remove STEAL-CHANNEL-PORT! which has been unused for a while now and  
							
							... 
							
							
							
							uncomfortably shared code with STEAL-PORT! 
							
						 
						
							2002-02-28 08:28:32 +00:00  
				
					
						
							
							
								 
						
							
								12ced00589 
								
							 
						 
						
							
							
								
								Make sure port locks get released after I/O errors.  
							
							
							
						 
						
							2002-02-26 14:40:21 +00:00  
				
					
						
							
							
								 
						
							
								150031d918 
								
							 
						 
						
							
							
								
								Revive these wonderful debugging tools.  
							
							
							
						 
						
							2002-02-12 07:54:22 +00:00  
				
					
						
							
							
								 
						
							
								baf1dbbf76 
								
							 
						 
						
							
							
								
								Pass optional arguments from FORK-THREAD to SPAWN.  
							
							
							
						 
						
							2002-02-04 11:34:17 +00:00  
				
					
						
							
							
								 
						
							
								2b1d8a3d01 
								
							 
						 
						
							
							
								
								Let s48-do-gc return 0 so the PreScheme compiler will emit the correct  
							
							... 
							
							
							
							signature of the function. 
							
						 
						
							2002-02-01 10:25:50 +00:00  
				
					
						
							
							
								 
						
							
								7c026ff0b4 
								
							 
						 
						
							
							
								
								Fix external-call-from-callback problem leading to spurious  
							
							... 
							
							
							
							gc-protection-mismatch exceptions. 
							
						 
						
							2002-01-27 20:20:53 +00:00  
				
					
						
							
							
								 
						
							
								284d89fe12 
								
							 
						 
						
							
							
								
								Added hook to align cwd and umask for the S48 system.  
							
							
							
						 
						
							2001-12-19 09:14:15 +00:00  
				
					
						
							
							
								 
						
							
								8bba3a13e1 
								
							 
						 
						
							
							
								
								Adjust top of stack as well.  
							
							
							
						 
						
							2001-12-04 13:06:12 +00:00  
				
					
						
							
							
								 
						
							
								136e313af7 
								
							 
						 
						
							
							
								
								New implementation of (no-inheritance) thread-local cells and thread  
							
							... 
							
							
							
							fluids.
New implementation of syslog.
Both are to be compatible with what's actually probably going into
Scheme 48. 
							
						 
						
							2001-12-03 15:21:46 +00:00  
				
					
						
							
							
								 
						
							
								b5180b35af 
								
							 
						 
						
							
							
								
								Make naming consistent with current Scheme 48:  
							
							... 
							
							
							
							argtype -> argument_type
argnumber -> argument_number 
							
						 
						
							2001-12-03 15:19:48 +00:00  
				
					
						
							
							
								 
						
							
								1ed75d8531 
								
							 
						 
						
							
							
								
								Let thread-uid->thread invoke the GC if it encounters multiple threads with the same uid.  
							
							
							
						 
						
							2001-11-08 10:24:41 +00:00  
				
					
						
							
							
								 
						
							
								405512e0db 
								
							 
						 
						
							
							
								
								Expported the rest of the port-handler accessors.  
							
							
							
						 
						
							2001-10-25 07:24:42 +00:00  
				
					
						
							
							
								 
						
							
								fe6a9db1e5 
								
							 
						 
						
							
							
								
								Renamed scsh-events to sigevents.  
							
							
							
						 
						
							2001-10-18 09:02:52 +00:00  
				
					
						
							
							
								 
						
							
								59bd2ab6e4 
								
							 
						 
						
							
							
								
								Peek on char-source-input-ports does not work. Added error message to report this.  
							
							
							
						 
						
							2001-10-05 16:25:41 +00:00  
				
					
						
							
							
								 
						
							
								9552e7900a 
								
							 
						 
						
							
							
								
								A thread may life in multiple queues.  
							
							
							
						 
						
							2001-10-04 11:16:15 +00:00  
				
					
						
							
							
								 
						
							
								2e3dd4b65c 
								
							 
						 
						
							
							
								
								Fixed small typo.  
							
							
							
						 
						
							2001-09-12 13:42:29 +00:00  
				
					
						
							
							
								 
						
							
								7a45d9cc01 
								
							 
						 
						
							
							
								
								Change from Richard, Scheme 48 0.56 -> 0.56.9:  
							
							... 
							
							
							
							Define exception handler for TIME opcode. 
							
						 
						
							2001-07-10 13:13:27 +00:00  
				
					
						
							
							
								 
						
							
								569dbe6649 
								
							 
						 
						
							
							
								
								Bug fix by Richard for finite types used within macros.  
							
							
							
						 
						
							2001-07-09 14:15:51 +00:00