Scheme Code




This contains by bits of scheme code...

NEW!  check out "define-global" below.



multi-session scheme:
makes scheme multi-tasking, and allows you to have several sessions going at the same time, with a shared global namespace... 
***insert the multi-session-code****
Next i want to make it multi-user, by thinking through everyones private spaces as well.  (maybe be a good excuse to use continuations :)



My Rss syndicator:
here is a RSS syndicaton service.  it's pretty cool.  RSS Syndicator (version 0.7).  It requires plt scheme, and guibuilder. (just copy the guibuilder files to your "collects/guibuilder" directory)

A newer, more broken version, can be found here: RSS Syndicator 0.8
(it will work fine if you renamte the "scheme name" of the frames, to the scheme names indicated in the comments")



define-global:
Lets you globally define variables from anywhere.  (for debugging purposes).  Developed under plt scheme (drscheme) but the best part is that i think it's R5RS compliant, so it should run anywhere! :)

New version!  one hour after the announcement of 0.8, i make a new version.  This version should be *completely* syntax compatible with "define".  If you find that it's not *tell me*.

Even newer version!  Just a few hours later I've released a version that I think might be totally complete.  If i don't recieve any comments on it within the next few days, I'll be bumping the version number up from 0.95 to 1.0.  And announce all the fixes.  (sorry to those who got the early version)

New New version (0.95): define-global.scm

old old 0.8 version define-global.0.8.scm



Next, some ugly, but usefull hacks:
    (mostly guile dependant)

unicode - here is my unicode hack, which displays *some* unicode charactors.  fill in the tables with whatever charactors you need.  also includes some ansi controlls.
unicode.and.ansi.scm - (written using guile)

The awful, horrible, bridge-dr function-
guile has "match", but plt scheme has a improved version.  this is to get a improved match command in guile.

step 1:  install plt scheme, (comes with the match library)
step 2:  add this to your guile program

(define (bridge-dr command)
  (system (string-append "mzscheme -m -e '(begin (require (lib \"match.ss\")) (display "
                         (call-with-output-string (lambda (x) (write command x)))
                         ") (exit))' > /tmp/drscheme.interface"))
  (read (open-input-file "/tmp/drscheme.interface")))

step 3:  test it

(bridge-dr `(match '(hello there my name is bob and i like to talk)
                         (((and (not `my) a) ... `my `name `is b c ...)
                          `(hi ,b))))


--- If your crying right now, i understand.  This is a awful and horrible way of doing things, but is the beginning of my idea for the "scheme hoard"...  an even uglier, more elaborate (but still more usefull) version...  more to come




Corey




corey@neural.dlsemc.com

That's the end, but you can always go back to



RSS feed