With the latest iolib, iolib-posix and cffi from darcs, trying to load
the fasl for file io-multiplex/utils.lisp fails miserably. Does iolib
depend on some non-committed things in iolib-posix? Or on a special
branch of cffi?
Unknown CFFI type: :TIME.
[Condition of type SIMPLE-ERROR]
Restarts:
0: [RETRY] Retry performing #<ASDF:LOAD-OP (:VERBOSE T) {2856581}>
on #<ASDF:CL-SOURCE-FILE "util$
1: [ACCEPT] Continue, treating #<ASDF:LOAD-OP (:VERBOSE T)
{2856581}> on #<ASDF:CL-SOURCE-FILE "u$
2: [ABORT-REQUEST] Abort handling SLIME request.
3: [TERMINATE-THREAD] Terminate this thread (#<THREAD "repl-thread"
{2DBA269}>)
Backtrace:
0: (CFFI::PARSE-TYPE :TIME)
1: (SB-FASL::FOP-FUNCALL)
1: (SB-FASL::FOP-FUNCALL)
2: (SB-FASL::LOAD-FASL-GROUP #<SB-SYS:FD-STREAM for "file
/home/fare/.cache/lisp-fasl/sbcl-1.0.4.109.ita.4-linux-x86/home/fare/fare/lisp/philip-jose/utilities.fasl"
{3DF22F1}>)
[ François-René ÐVB Rideau | Reflection&Cybernethics | http://fare.tunes.org ]
I have many lucky numbers: 45, 357, 9, etc etc etc.
but 911 is NOT one of them - I440r
;; (1) this code should be moved to iolib-posix and exported under some name...
(defun fsleep (delay)
(when (plusp delay)
(multiple-value-bind (i d) (floor delay)
(unless (zerop i)
;; TODO: here insert check for overflow...
(et::sleep i))
(unless (zerop d)
(et::usleep (floor (* d 1000000))))))
nil)
;; (2) et::gettime should be exported
;; (3) unless we don't care about the inefficiency of calling gettime
many times, we should expose the deadline in polling, etc., because
that's what the application wants, anyway. At least mine.
[ François-René ÐVB Rideau | Reflection&Cybernethics | http://fare.tunes.org ]
The hacker: someone who figured things out and made something cool happen.
-- Alan Schmitt