e50d1375a1 
								
							
								 
							
						 
						
							
							
								
								io: need to use libc for OS X?  
							
							
							
						 
						
							2014-04-03 21:43:37 -07:00  
				
					
						
							
							
								 
						
							
							
								eaca04de3b 
								
							
								 
							
						 
						
							
							
								
								libc: several vocabs now need to depend on libc  
							
							
							
						 
						
							2014-04-02 12:13:00 -05:00  
				
					
						
							
							
								 
						
							
							
								753b2f0177 
								
							
								 
							
						 
						
							
							
								
								io.files: make wait-for-fd generic and dispatch depending on backend  
							
							... 
							
							
							
							do-ssl-accept need to call wait-for-fd so it needs to be generic. On
windows it's a noop but on unix it will wait for the fd. 
							
						 
						
							2014-04-02 12:12:49 -05:00  
				
					
						
							
							
								 
						
							
							
								5f38df7741 
								
							
								 
							
						 
						
							
							
								
								io.sockets.secure.windows: reading and writing from ssl sockets  
							
							... 
							
							
							
							Unified the drain and refill generics and put their definition in
io.files. They are now used by both the windows and unix ssl backend
for io. Windows ssl kind of works now, but the error cases are not
implemented correctly. 
							
						 
						
							2014-04-02 12:12:14 -05:00  
				
					
						
							
							
								 
						
							
							
								3b7d0681af 
								
							
								 
							
						 
						
							
							
								
								unix: rename C function kevent.  
							
							
							
						 
						
							2013-03-23 17:44:00 -07:00  
				
					
						
							
							
								 
						
							
							
								f4834ce51c 
								
							
								 
							
						 
						
							
							
								
								io.backend.unix: Nobody uses (refill), remove it.  
							
							
							
						 
						
							2013-02-05 09:35:51 -08:00  
				
					
						
							
							
								 
						
							
							
								7d8d6cdd51 
								
							
								 
							
						 
						
							
							
								
								core-foundation.run-loop: remove reset on every iteration.  
							
							
							
						 
						
							2012-08-01 16:59:33 -07:00  
				
					
						
							
							
								 
						
							
							
								1b32690d22 
								
							
								 
							
						 
						
							
							
								
								io.backend.unix.multiplexors.run-loop: switch to "mx get-global".  
							
							
							
						 
						
							2012-08-01 16:20:31 -07:00  
				
					
						
							
							
								 
						
							
							
								1a3e8a2994 
								
							
								 
							
						 
						
							
							
								
								io.backend: fix docs to show nanoseconds instead of micros.  
							
							
							
						 
						
							2012-08-01 12:08:18 -07:00  
				
					
						
							
							
								 
						
							
							
								3e6e6458e5 
								
							
								 
							
						 
						
							
							
								
								core-foundation.run-loop: do less work, speeds up yield by 50%.  
							
							
							
						 
						
							2012-08-01 10:57:58 -07:00  
				
					
						
							
							
								 
						
							
							
								1a73e79ef7 
								
							
								 
							
						 
						
							
							
								
								cleanup some use of with-scope.  
							
							
							
						 
						
							2012-07-19 13:55:34 -07:00  
				
					
						
							
							
								 
						
							
							
								943596575a 
								
							
								 
							
						 
						
							
							
								
								use radix literals  
							
							
							
						 
						
							2011-11-23 19:03:40 -08:00  
				
					
						
							
							
								 
						
							
							
								9443f30b7d 
								
							
								 
							
						 
						
							
							
								
								io.backend.unix: hints on M\ fd refill  
							
							... 
							
							
							
							Trims some low-order dispatch overhead for #376 . 
							
						 
						
							2011-11-09 16:32:47 -08:00  
				
					
						
							
							
								 
						
							
							
								feb8c6149a 
								
							
								 
							
						 
						
							
							
								
								io.backend: start signal thread after io-backend  
							
							... 
							
							
							
							The c-io-backend can't handle input-ports and raises an error during bootstrap. 
							
						 
						
							2011-11-08 11:54:54 -08:00  
				
					
						
							
							
								 
						
							
							
								fc7c175c9f 
								
							
								 
							
						 
						
							
							
								
								new module unix.signals: app-level signal handlers  
							
							... 
							
							
							
							example:
IN: scratchpad USING: unix.ffi unix.signals ;
Loading resource:basis/unix/signals/signals.factor
IN: scratchpad [ V{ "Me not that kind of orc!" "Me busy, leave me alone!" "Work work" "Zug zug" } pop print flush ] SIGINFO add-signal-handler
IN: scratchpad load: 0.60  cmd: factor 41541 running 0.28u 0.16s
Zug zug
load: 0.71  cmd: factor 41541 running 0.28u 0.16s
Work work
load: 0.71  cmd: factor 41541 running 0.28u 0.16s
Me busy, leave me alone!
load: 0.73  cmd: factor 41541 running 0.28u 0.16s
Me not that kind of orc! 
							
						 
						
							2011-11-08 10:21:49 -08:00  
				
					
						
							
							
								 
						
							
							
								8337b08d0d 
								
							
								 
							
						 
						
							
							
								
								io.backend.unix: startup hook for signal-pipe  
							
							
							
						 
						
							2011-11-08 08:42:48 -08:00  
				
					
						
							
							
								 
						
							
							
								ed24890dce 
								
							
								 
							
						 
						
							
							
								
								io.backend.unix: init-signal-pipe function  
							
							... 
							
							
							
							Currently just reads off signal numbers and drops them. 
							
						 
						
							2011-11-08 08:42:48 -08:00  
				
					
						
							
							
								 
						
							
							
								69ffe6377a 
								
							
								 
							
						 
						
							
							
								
								io.backend.unix.macosx: Remove duplicate USE:  
							
							
							
						 
						
							2011-11-02 17:47:15 -07:00  
				
					
						
							
							
								 
						
							
							
								8cf18d1a82 
								
							
								 
							
						 
						
							
							
								
								remove BSD,solaris,etc. misc platform support code  
							
							
							
						 
						
							2011-11-02 17:13:51 -07:00  
				
					
						
							
							
								 
						
							
							
								67cccc63b3 
								
							
								 
							
						 
						
							
							
								
								formatting  
							
							
							
						 
						
							2011-10-17 21:23:36 -07:00  
				
					
						
							
							
								 
						
							
							
								863ab575e3 
								
							
								 
							
						 
						
							
							
								
								io.ports: stream-seekable? and stream-length  
							
							... 
							
							
							
							io.files.windows, io.backend.unix: platform-specific backends for those methods 
							
						 
						
							2011-10-17 21:23:08 -07:00  
				
					
						
							
							
								 
						
							
							
								4f42c72012 
								
							
								 
							
						 
						
							
							
								
								specialized-arrays: performed some cleanup.  
							
							... 
							
							
							
							Specifically,
    •   Created >c-array to be replacement for >T-array.
    •   Created cast-array to be generic replacement for all T-array-cast words.
    •   Created c-array@ to be generic replacement for T-array@ words.
    •   Replaced usages of <T-array> with T <c-array>
    •   Replaced usages of <direct-T-array> with T <c-direct-array>
    •   Replaced usages of >T-array with T >c-array
    •   Replaced usages of T-array-cast with T cast-array
    •   Replaced usages of malloc-T-array with T malloc-array.
    •   Removed malloc-T-array.
    •   Removed T-array-cast.
    •   Removed T-array@.
    •   Removed >T-array.
I also added (but didn't change any code to use):
    •   T c-array-type, returns T-array
    •   T c-array?, returns T-array?
    •   c-array{ T ... }, returns T-array{ ... }
Bootstraps just find on Mac OS X.  Also `load-all test-all` works for me. 
							
						 
						
							2011-09-26 11:37:51 -07:00  
				
					
						
							
							
								 
						
							
							
								662bc3b07b 
								
							
								 
							
						 
						
							
							
								
								Fix bugs in unix ffi usage  
							
							
							
						 
						
							2011-05-23 23:36:14 -04:00  
				
					
						
							
							
								 
						
							
							
								013209bd17 
								
							
								 
							
						 
						
							
							
								
								epoll working on linux  
							
							
							
						 
						
							2011-05-23 23:36:13 -04:00  
				
					
						
							
							
								 
						
							
							
								75560699ea 
								
							
								 
							
						 
						
							
							
								
								Move <ref>, deref and little-endian? from alien.c-types to alien.data, remove <c-object>  
							
							
							
						 
						
							2010-12-25 16:55:36 -08:00  
				
					
						
							
							
								 
						
							
							
								1f57dc326e 
								
							
								 
							
						 
						
							
							
								
								Remove many uses of <int> and *int etc  
							
							
							
						 
						
							2010-10-25 12:49:12 -05:00  
				
					
						
							
							
								 
						
							
							
								c447ca5427 
								
							
								 
							
						 
						
							
							
								
								io.backend.unix: remove dead code from bsd backend, fix select code  
							
							
							
						 
						
							2010-09-15 21:56:42 -07:00  
				
					
						
							
							
								 
						
							
							
								76d2b83685 
								
							
								 
							
						 
						
							
							
								
								Add unless-disposed combinator to clean up some repetition, and fix bogus error reported from timer thread if an I/O operation with a set timeout fails on Windows  
							
							
							
						 
						
							2010-08-23 21:12:24 -05:00  
				
					
						
							
							
								 
						
							
							
								949712243f 
								
							
								 
							
						 
						
							
							
								
								io.backend.unix: make timeouts work on stdin once Doug fixes alarms  
							
							
							
						 
						
							2010-05-21 19:09:15 -04:00  
				
					
						
							
							
								 
						
							
							
								ef884ef7f2 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' into abi-symbols  
							
							
							
						 
						
							2010-04-01 15:28:36 -07:00  
				
					
						
							
							
								 
						
							
							
								026499e64f 
								
							
								 
							
						 
						
							
							
								
								Use flags{ instead of flags all over the place  
							
							
							
						 
						
							2010-04-01 14:44:03 -05:00  
				
					
						
							
							
								 
						
							
							
								65c3259761 
								
							
								 
							
						 
						
							
							
								
								"cdecl" -> cdecl  
							
							
							
						 
						
							2010-03-31 19:20:35 -07:00  
				
					
						
							
							
								 
						
							
							
								f1e19aabdb 
								
							
								 
							
						 
						
							
							
								
								threads: simplify 'suspend' combinator  
							
							
							
						 
						
							2010-03-28 08:29:53 -04:00  
				
					
						
							
							
								 
						
							
							
								c3f4bcb616 
								
							
								 
							
						 
						
							
							
								
								Fix load errors exposed by platforms.txt change  
							
							
							
						 
						
							2010-02-20 13:31:09 +13:00  
				
					
						
							
							
								 
						
							
							
								95bfc8a240 
								
							
								 
							
						 
						
							
							
								
								vocabs.metadata: replace unportable tag with a platforms.txt file for more fine-grained control. Rename unportable tag to untested for remaining cases  
							
							
							
						 
						
							2010-02-20 13:30:49 +13:00  
				
					
						
							
							
								 
						
							
							
								4893ebf183 
								
							
								 
							
						 
						
							
							
								
								Small cleanups  
							
							
							
						 
						
							2010-02-16 04:04:09 +13:00  
				
					
						
							
							
								 
						
							
							
								7c40fc1a36 
								
							
								 
							
						 
						
							
							
								
								unix-system-call io-error -> unix-system-call drop  
							
							... 
							
							
							
							make unix.ffi, unix.ffi.linux unportable
fix spacing in io.cpp before refactoring 
							
						 
						
							2010-01-23 09:07:35 -06:00  
				
					
						
							
							
								 
						
							
							
								8d952277a2 
								
							
								 
							
						 
						
							
							
								
								Handle EINTR in a lot of cases where it wasn't handled before.  Split off unix into unix.ffi and unix.  
							
							
							
						 
						
							2010-01-22 12:59:24 -06:00  
				
					
						
							
							
								 
						
							
							
								07fcb43a06 
								
							
								 
							
						 
						
							
							
								
								Make unix-system-call retry the call immediately upon hitting EINTR.  Use unix-system-call wherever EAGAIN or EINPROGRESS are not handled.  Handle EINTR if connect returns it.  
							
							
							
						 
						
							2010-01-22 12:59:17 -06:00  
				
					
						
							
							
								 
						
							
							
								e96404327e 
								
							
								 
							
						 
						
							
							
								
								Get optimizing compiler working without global register variables in VM  
							
							
							
						 
						
							2009-12-22 15:42:49 +13:00  
				
					
						
							
							
								 
						
							
							
								3a90db03c6 
								
							
								 
							
						 
						
							
							
								
								use CONSTANT: in epoll  
							
							
							
						 
						
							2009-11-21 20:56:39 -06:00  
				
					
						
							
							
								 
						
							
							
								ffd7de02d6 
								
							
								 
							
						 
						
							
							
								
								Update a few places that used string C type names to use words; fixes some deploy tests  
							
							
							
						 
						
							2009-11-20 03:21:48 -06:00  
				
					
						
							
							
								 
						
							
							
								dc1eefbcc9 
								
							
								 
							
						 
						
							
							
								
								update run-loop multiplexer  
							
							
							
						 
						
							2009-11-19 14:18:27 -06:00  
				
					
						
							
							
								 
						
							
							
								adcb0df0c4 
								
							
								 
							
						 
						
							
							
								
								fix stack effects for nanosseconds, update io backends for nanos  
							
							
							
						 
						
							2009-11-19 04:51:47 -06:00  
				
					
						
							
							
								 
						
							
							
								c3b8847936 
								
							
								 
							
						 
						
							
							
								
								update a bunch of alien-callbacks and alien-indirects to use c-type words  
							
							
							
						 
						
							2009-10-21 21:10:11 -05:00  
				
					
						
							
							
								 
						
							
							
								ed1636a0c0 
								
							
								 
							
						 
						
							
							
								
								fix stream-tell  
							
							
							
						 
						
							2009-10-03 19:26:59 -05:00  
				
					
						
							
							
								 
						
							
							
								098fd0248a 
								
							
								 
							
						 
						
							
							
								
								support limited-streams correctly for seekable streams  
							
							
							
						 
						
							2009-10-03 18:27:09 -05:00  
				
					
						
							
							
								 
						
							
							
								21f918adb6 
								
							
								 
							
						 
						
							
							
								
								io.backend.unix.multiplexers: add meta-data  
							
							
							
						 
						
							2009-09-28 06:38:23 -05:00  
				
					
						
							
							
								 
						
							
							
								7f2e2b1777 
								
							
								 
							
						 
						
							
							
								
								Specialized array overhaul  
							
							... 
							
							
							
							- Replace hand-written specialized-arrays.* subvocabularies with new system; instead of USE:ing specialized-arrays.T, do SPECIALIZED-ARRAY: T
- Ditto for specialized-vectors; use SPECIALIZED-VECTOR:
- io.mmap.functor: removed entirely, use <mapped-array> instead
- struct-arrays and struct-vectors have been removed because specialized arrays and vectors subsume them entirely 
							
						 
						
							2009-09-09 22:33:34 -05:00  
				
					
						
							
							
								 
						
							
							
								2037667473 
								
							
								 
							
						 
						
							
							
								
								io.backend.unix.multiplexers.epoll: update for STRUCT:  
							
							
							
						 
						
							2009-09-01 14:46:08 -05:00