Skip to content

libraries for chez scheme productivity -- fork focused on adding more SDL bindings

Notifications You must be signed in to change notification settings

ArnautDaniel/thunderchez

 
 

Repository files navigation

thunderchez

Libraries for Chez Scheme productivity

Be sure to put thunderchez path on your library path,

By example:

(library-directories "/path/to/thunderchez")

or set the CHEZSCHEMELIBDIRS environment variable:

CHEZSCHEMELIBDIRS=/path/to/thunderchez

SRFI

Based on surfage with minor changes

(import (srfi s1 lists))
(import (srfi s13 strings))
(import (srfi s14 char-sets))
etc...

Fmt

Original site

(import (fmt fmt)) 
(import (fmt fmt-c)) 
(import (fmt fmt-js)) 

Matchable

Based on matchable egg

(import (matchable))

irregex

Based on ashinn irregex

(import (irregex))

Sqlite3

Based partially on chicken sqlite3 egg but slightly different. Needs some testing.

(import (sqlite3))

USB

Library website

(import (usb))

SDL2

Library website

(import (sdl2))
;Optional sdl2 addons
(import (sdl2 ttf))
(import (sdl2 image))
(import (sdl2 mixer))	

Cairo

Library website

(import (cairo))

See test.ss for examples

Json parser

Uses lalr

(import (json))

(string->json "{ \"name\" : \"my-name\" , \"age\" : 120 , \"children\" : [{ \"name\" : \"my-son\", \"age\" : 1 }, { \"name\" : \"my-son2\", \"age\" : 2 }] }" )
=> ((name . "my-name")
    (age . 120)
    (children .
                #(((name . "my-son") (age . 1))
                  ((name . "my-son2") (age . 2)))))

NanoMsg

Library website

(import (nanomsg))

Some tests from nanomsg-examples

Redis

Library website

(import (redis))

About

libraries for chez scheme productivity -- fork focused on adding more SDL bindings

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Common Lisp 73.4%
  • Scheme 25.4%
  • Other 1.2%