If anyone here is interested in genetic programming, the PLT implementation of my Push/PushGP system, for which several of you provided help over the last few weeks, is posted at http://hampshire.edu/lspector/schush.ss
Via Eli on comp.lang.scheme:
#lang scheme ;; using the /proc filesystem (call-with-input-file "/proc/self/loginuid" read) ;; running `id' (require scheme/system) (let ([o (open-output-string)]) (parameterize ([current-output-port o]) (system "id -u")) (read (open-input-string (get-output-string o)))) ;; calling getuid() (require scheme/foreign) (unsafe!) ((get-ffi-obj 'getuid #f (_fun -> _int)))
Here is a great article (and piece of code) that addresses one of the few complaints about tail-recursion, the inability to easily collect debugging information. It is just wonderful.
I’m pleased to announce the initial release of parallel futures, a construct for fine-grained parallelism in PLT. Roughly speaking, a programmer passes a thunk to ‘future’ and it gets run in parallel. That “roughly” holds a few gotchas, partly because we’re just getting started and partly due to the technique we’re using. See the documentation for more details:
Happy Halloween with PLT! 🙂