Joe Groff
943596575a
use radix literals
2011-11-23 19:03:40 -08:00
Joe Groff
466d41c341
unix.signals: documentation and metadata
2011-11-08 23:12:10 -08:00
Joe Groff
8b9c9a5c63
unix.process: take raise from unix.ffi
...
And fix introduced ambiguity between unix.ffi:kill and unix.process:kill
2011-11-08 10:42:51 -08:00
Joe Groff
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
Doug Coleman
cb14adb1c2
Fix bootstrap. Add missing using on io.serial.linux. Fixes #351 .
2011-11-04 06:08:02 -07:00
Joe Groff
7942f807c9
unix.ffi: add signal constants
2011-11-04 00:24:18 -07:00
Joe Groff
8cf18d1a82
remove BSD,solaris,etc. misc platform support code
2011-11-02 17:13:51 -07:00
Doug Coleman
94db86a6db
Make "foo.private" require load foo instead.
...
Move require from vocabs.loader to vocabs. Update everything.
Fixes #201 .
2011-11-02 11:50:03 -07:00
Doug Coleman
eb7fd4a69b
Add options to set the child process group id or session for Unix. This fixes part of #307 .
2011-10-29 02:47:10 -07:00
Joe Groff
bd50acf424
unix.stat: bind to fstat
2011-10-17 21:23:07 -07:00
Slava Pestov
a8633d28c7
unix.*, io.directories.unix: remove unnecessary dependency on io.backend.unix
2011-09-01 22:31:45 -07:00
Slava Pestov
32261681f8
unix.linux.epoll: epoll_event is a packed struct! Damn...
2011-08-25 21:37:52 -07:00
Erik Charlebois
013209bd17
epoll working on linux
2011-05-23 23:36:13 -04:00
Keita Haga
c542cf13e9
unix.users: minor fixes in 'passwd' description
2011-01-04 21:51:51 +09:00
Slava Pestov
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
Slava Pestov
e139a7a02d
Clean up alien.c-types changes a little
2010-10-25 21:09:08 -07:00
Doug Coleman
67c37591ca
Remove <uint> *uint and friends. Hopefully remove the last usages of these words
2010-10-25 15:54:42 -05:00
Doug Coleman
4ca9bd0bba
Remove usages of <void*> and *void*
2010-10-25 13:22:50 -05:00
Doug Coleman
1f57dc326e
Remove many uses of <int> and *int etc
2010-10-25 12:49:12 -05:00
Doug Coleman
345447b961
Fix bootstrap on mac by adding back the PF_INET constant
2010-10-09 16:53:54 -07:00
Slava Pestov
daae54a88a
unix.ffi.bsd: fix load errors
2010-10-09 15:16:14 -07:00
Slava Pestov
a84d7af2c5
unix.ffi.bsd: fix AF_INET6 constants on FreeBSD and OpenBSD
2010-10-09 15:04:49 -07:00
Doug Coleman
2c42e616b4
Implement a raw port. Make ping only run on Windows and Mac because the other platforms require root privs.
2010-09-21 22:00:18 -05:00
Doug Coleman
7b0a50e7d2
Squashed commit of the following:
...
commit 90deaafa9db083ecdb9e0e30ad3694317e616399
Merge: f392dfd
32cf7bb
Author: Doug Coleman <doug.coleman@gmail.com>
Date: Tue Sep 21 00:33:37 2010 -0500
Merge branch 'icmp-ping' of git://github.com/mrjbq7/factor into icmp-ping2
commit 32cf7bb0e0b876309bce248944dfeca243f02594
Author: John Benediktsson <mrjbq7@gmail.com>
Date: Fri Sep 10 14:01:47 2010 -0700
ping: Adding a simple IPv4 ping implementation.
commit da0c5ce7acf1407256c3ac2b98ac5b68858878c1
Author: John Benediktsson <mrjbq7@gmail.com>
Date: Fri Sep 10 14:01:15 2010 -0700
io.sockets.icmp: Adding ICMP support.
commit 60fdf7e7d995d63c11be87e8e1398f7bdd593833
Author: John Benediktsson <mrjbq7@gmail.com>
Date: Fri Sep 10 14:00:48 2010 -0700
io.sockets: Adding protocol support for sockets.
commit 2f130f1f9e0e2ea44d798beaad244a9c33b0d86a
Author: John Benediktsson <mrjbq7@gmail.com>
Date: Fri Sep 10 14:00:28 2010 -0700
Adding getprotobyname().
2010-09-21 11:15:33 -05:00
Joe Groff
3f13fc7099
unix.ffi: third argument of ioctl should be void*, not c-string (reported by ceninan)
2010-06-30 09:09:16 -07:00
Doug Coleman
580c9190d5
Fix using list
2010-06-23 10:27:17 -05:00
Doug Coleman
317e793ef4
Fix all-users word by calling setpwent to rewind file
2010-06-23 10:25:08 -05:00
Slava Pestov
db3c4fe43c
Fix unix.time to actually load
2010-06-22 15:13:07 -04:00
Doug Coleman
82ac7e4e32
Better docs for users/groups
2010-06-21 12:10:45 -05:00
Doug Coleman
58de929a42
Fix a bug when calling all-groups twice. Add some users/groups utility words, unit tests, and docs.
2010-06-21 12:07:56 -05:00
Doug Coleman
82f38ce9a1
Allow with-*-group/user to be a no-op if first parameter is f
2010-06-17 13:20:51 -05:00
Doug Coleman
27af7ffe50
Throw an error on certain combinators if a user/group does not exist
2010-06-17 12:59:19 -05:00
Doug Coleman
d050ad5906
Add more time bindings
2010-06-13 19:34:18 -05:00
Slava Pestov
78dcc5bc33
Move system word from unix.ffi to libc since its not Unix-specific
2010-06-02 02:59:56 -04:00
Slava Pestov
70a99e1cdb
Updating code to use with-out-parameters
2010-05-23 03:07:47 -04:00
Slava Pestov
ea726f5680
Move remaining sequence operations from generalizations to sequences.generalizations where they belong
2010-05-18 18:36:47 -04:00
Daniel Ehrenberg
aa6158b366
Changing require-when usages to the new syntax for require-when
2010-04-18 14:29:24 -05:00
Slava Pestov
aaacd2a349
unix.process: use if-zero instead of re-inventing it
2010-04-14 22:45:30 -07:00
Joe Groff
ba2fa96eeb
unix: don't hack _exit to have a terminating effect; just use FUNCTION:
2010-04-14 22:04:04 -07:00
Slava Pestov
da6bcbedfc
Replace 'untested' tag with 'not loaded' and 'not tested' tags
2010-04-13 18:43:01 -07:00
Joe Groff
ef884ef7f2
Merge branch 'master' into abi-symbols
2010-04-01 15:28:36 -07:00
Doug Coleman
026499e64f
Use flags{ instead of flags all over the place
2010-04-01 14:44:03 -05:00
Joe Groff
65c3259761
"cdecl" -> cdecl
2010-03-31 19:20:35 -07:00
Daniel Ehrenberg
eb060443db
Updating code to use require-when rather than vocab [ require ] when
2010-03-18 01:13:37 -04:00
Slava Pestov
01e5aadcd0
unix.types.freebsd: fix time_t typedef
2010-03-17 17:39:43 +13:00
Joe Groff
4cfa1a6c77
rename current string-mangling "char*" to "c-string". char* is now just a boring old pointer to char
2010-02-23 11:42:02 -08:00
Joe Groff
53e601c5f0
_DARWIN_MAXNAMELEN+1 should actually be _DARWIN_MAXNAMELEN + 1
2010-02-22 23:55:52 -08:00
Joe Groff
6d4724a095
scrub memory>struct calls made redundant
2010-02-22 12:22:29 -08:00
Doug Coleman
957f2d9ff6
Check if we're using ttys before starting curses, since initscr exits on error for some dumb reason
2010-02-21 23:38:18 -06:00
Slava Pestov
570a2d0b37
unix.utmpx: fix load errors
2010-02-21 20:19:11 +13:00
Slava Pestov
5700d94e2b
unix.utilities: remove platforms.txt since its portable
2010-02-21 17:48:04 +13:00
Slava Pestov
c3f4bcb616
Fix load errors exposed by platforms.txt change
2010-02-20 13:31:09 +13:00
Slava Pestov
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
Doug Coleman
7d73d85856
Fix help lint for user-id
2010-02-05 01:20:40 -06:00
Doug Coleman
c32fcf918b
Fix user-name in unix.users, add unit test
2010-02-04 22:14:53 -06:00
Doug Coleman
c50682c6f0
make unix.utilities unportable
2010-01-23 10:12:25 -06:00
Doug Coleman
1a5768030b
Make unix.debugger unportable
2010-01-23 10:03:02 -06:00
Doug Coleman
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
Doug Coleman
2bf53dde61
Fix netbsd load error
2010-01-22 17:10:32 -06:00
Doug Coleman
4857c737d3
Fix getgrent call in unix.groups
2010-01-22 16:55:05 -06:00
Doug Coleman
f144a36ad0
Move netbsd.structs into netbsd
2010-01-22 14:49:32 -06:00
Doug Coleman
bbff91e0ed
Fix load error
2010-01-22 14:45:15 -06:00
Doug Coleman
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
Doug Coleman
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
Slava Pestov
7155447aed
stack-checker: add inputs and outputs words, since 'infer (in>>|out>>) length' was coming up a lot
2010-01-15 08:04:14 +13:00
Slava Pestov
df4fb4a3ee
Removing integers-as-sequences
2010-01-15 07:15:33 +13:00
Slava Pestov
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
Doug Coleman
adcb0df0c4
fix stack effects for nanosseconds, update io backends for nanos
2009-11-19 04:51:47 -06:00
Doug Coleman
0af1b3a7d9
add librt for monotonic timers, new timespec>nanoseconds word
2009-11-15 00:46:12 -06:00
Doug Coleman
9085f30b18
move iokit typedefs to unix.types.macosx
2009-11-15 00:47:52 -06:00
Joe Groff
61d579360d
remove non-primitive-related uses of tuck from basis
2009-11-05 17:03:24 -06:00
Joe Groff
935c0797c3
update existing code for [let change
2009-10-27 22:05:37 -05:00
Doug Coleman
1ca81c3130
fix typo in unix.statfs.freebsd
2009-10-04 15:31:19 -05:00
Keith Lazuka
405e5d015b
docs: change $subsection to $subsections
2009-10-02 12:15:48 -04:00
Doug Coleman
0e97398da8
fix openbsd bootstrap
2009-09-30 21:07:57 -05:00
Slava Pestov
0b0a2c5ce4
unix.statvfs.netbsd: update for C type parser change
2009-09-28 19:38:00 -05:00
Slava Pestov
4abfe06b51
Fixing various test failures caused by C type parser change, and clarify C type docs some more
2009-09-28 08:48:39 -05:00
Slava Pestov
efe8f3c74c
unix.linux: fix load errors from c-type changes
2009-09-28 04:26:05 -05:00
Slava Pestov
253db8fee0
unix.statvfs.netbsd: load fix
2009-09-27 22:56:45 -05:00
Joe Groff
d4bfa0a581
fill in missing USING:s in unix.linux and unix.bsd.*
2009-09-27 23:08:16 -05:00
Joe Groff
866b62755e
replace all TYPEDEF: void* XXX* with C-TYPE: XXX
2009-09-27 22:21:24 -05:00
Joe Groff
543ca72632
fix linux bootstrap
2009-09-27 22:16:07 -05:00
Joe Groff
24de21eac8
take a shot at making other platform vocabs c-type-string-free
2009-09-27 19:25:34 -05:00
Joe Groff
5054c954be
add USING:s and rearrange definitions so macosx can compile without parsing c-type strings
2009-09-26 23:14:57 -05:00
Slava Pestov
a8b851bb35
unix.statfs.freebsd: add alien.c-types to using to future-proof
2009-09-25 16:06:55 -05:00
Joe Groff
91902825ac
update structs in unix.utmpx
2009-09-18 18:30:48 -05:00
Joe Groff
076ab42dc3
move some allocation words that don't really have much to do with c types out of alien.c-types into a new alien.data vocab
2009-09-17 22:36:05 -05:00
Slava Pestov
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
Doug Coleman
eb558fcc9c
remove deprecated inotify-event struct
2009-09-08 14:15:25 -05:00
Doug Coleman
475530ef3d
update network structs. NO WHAMMY, NO WHAMMY, NO WHAMMY...STOP!!!
2009-09-03 16:57:36 -05:00
Slava Pestov
2037667473
io.backend.unix.multiplexers.epoll: update for STRUCT:
2009-09-01 14:46:08 -05:00
Doug Coleman
45629c63b3
update users/groups for new structs
2009-08-30 23:07:46 -05:00
Doug Coleman
14973eacb5
update dirent for structs
2009-08-30 22:11:42 -05:00
Doug Coleman
867d87998c
fix typo in stat struct
2009-08-30 20:46:49 -05:00
Doug Coleman
05cc8babb6
update kqueue for structs
2009-08-30 20:26:25 -05:00
Doug Coleman
6867f2a806
fix stat struct on freebsd
2009-08-30 20:25:57 -05:00
Doug Coleman
8be06f0e5e
typo in stat
2009-08-30 19:05:49 -05:00
Doug Coleman
be9035753a
fit typo
2009-08-30 10:02:32 -05:00
Doug Coleman
783eb0bb53
change all stat, statfs, statvfs and calendar structs
2009-08-30 04:06:41 -05:00
Doug Coleman
3f3d57032b
Delete empty unit tests files, remove 1- and 1+, reorder IN: lines in a lot of places, minor refactoring
2009-08-13 19:21:44 -05:00