source: project/wiki/Eggs Unlimited @ 5627

Last change on this file since 5627 was 5627, checked in by Kon Lovett, 13 years ago

updated by egg-post-commit

File size: 44.6 KB
Line 
1[[tags: eggs]]
2[[toc:]]
3
4== Eggs Unlimited
5
6A library of extensions for the Chicken Scheme system.
7
8=== Installation
9
10Just enter
11
12  $ chicken-setup EXTENSIONNAME
13
14This will download anything needed to compile and install the library. If your extension ''repository'' is placed at a location for which you don't have write permissions, then run {{chicken-setup}} as root. You can obtain the repository location by running
15
16  $ chicken-setup -repository
17
18If you only want to download the extension and install it later, pass the {{-fetch}} option to {{chicken-setup}}:
19
20  $ chicken-setup -fetch EXTENSIONNAME
21
22By default the archive will be unpacked into a temporary directory (named {{EXTENSIONNAME.egg.dir}} and the directory will be removed if the installation completed successfully. To keep the extracted files add {{-keep}} to the options passed to {{chicken-setup}}.
23
24For more information, enter
25
26  $ chicken-setup -help
27
28If you would like to access the subversion repository, see [[eggs tutorial]].
29
30If you are looking for 3rd party libraries used by one the extensions, check out the CHICKEN [[http://www.call-with-current-continuation.org/tarballs/|tarball repository]].
31
32=== List of available eggs
33
34
35==== Language extensions
36
37<table>
38
39<chickenegg name="autoload" license="BSD" author="Alex Shinn" description="Load modules lazily"/>
40
41<chickenegg name="awk" license="LGPL" author="Olin Shivers, adapted to Chicken by [[felix winkelmann]]" description="The SCSH/PLT 'awk' macro"/>
42
43<chickenegg name="codewalk" license="BSD" author="felix winkelmann" description="macro-expansion and code-walking"/>
44
45<chickenegg name="contracts" license="BSD" author="felix winkelmann" description="Simple contract-oriented programming"/>
46
47<chickenegg name="datatype" license="BSD" author="felix winkelmann" description="A facility for creating and deconstructing variant records (from EOPL)"/>
48
49<chickenegg name="date-literals" license="MIT" author="Arto Bendiken" description="A reader extension providing SRFI-19 date/time literals of the form <code>#@2007-12-31T23:59:59Z</code>"/>
50
51<chickenegg name="environments" license="BSD" author="felix winkelmann" description="User defined evaluation environments"/>
52
53<chickenegg name="extended-cond" license="Public Domain" author="Shawn Wagner" description="cond conforming to SRFI-61 (Guard clauses)
54case conformating to SRFI-87 (Passing the matched value to a function)
55Generic case and switch versions that take a user-defined equality function."/>
56
57<chickenegg name="F-operator" license="BSD" author="Kon Lovett" description="Shift/Reset Control Operators."/>
58
59<chickenegg name="foof-loop" license="public domain" author="Taylor R Campbell" description="Extensible looping macros (originally based on Alex Shinn's)"/>
60
61<chickenegg name="fspath" license="Public Domain" author="Kon Lovett" description="CL-like namestring & pathname"/>
62
63<chickenegg name="generalised-case" license="BSD" author="Peter Bex" description="A generalised version of CASE that accepts an equality predicate"/>
64
65<chickenegg name="generator" license="BSD" author="Kon Lovett" description="Provides generator-like coroutine operations."/>
66
67<chickenegg name="job-worker" license="BSD" author="Kon Lovett" description="Background Job/Worker Associates"/>
68
69<chickenegg name="lexmod" license="unknown" author="Taylor Campbell" description="A portable module system based on lexical scope"/>
70
71<chickenegg name="loop" license="GPL" author="Heinrich Taube" description="The Common Lisp LOOP macro"/>
72
73<chickenegg name="loopy-loop" license="public domain" author="Alex Shinn" description="Alex Shinn's LOOP macro"/>
74
75<chickenegg name="make" license="LGPL" author="PLT, adapted to Chicken by [[felix winkelmann]]" description="The PLT 'make' macro"/>
76
77<chickenegg name="match-action" license="BSD" author="Kon Lovett" description="Match extension with explicit success & fail actions"/>
78
79<chickenegg name="matchable" license="public domain" author="Alex Shinn" description="Syntax-case MATCH replacement"/>
80
81<chickenegg name="misc-extn" license="BSD" author="Kon Lovett" description="Miscellaneous useful stuff"/>
82
83<chickenegg name="miscmacros" license="BSD" author="felix winkelmann" description="Various helper macros"/>
84
85<chickenegg name="modules" license="BSD" author="felix winkelmann" description="a simple module system"/>
86
87<chickenegg name="object-apply" license="BSD" author="felix" description="Allows calling arbitrary data objects as procedures"/>
88
89<chickenegg name="pmatch" license="Public Domain" author="Mayer Goldberg" description="Macroless ML-style pattern matching"/>
90
91<chickenegg name="procedure-surface" license="BSD" author="Kon Lovett" description="Generic Programming Support"/>
92
93<chickenegg name="regex-case" license="BSD" author="felix winkelmann" description="Provides an easy to use <code>case</code> construct for regular expression matching"/>
94
95<chickenegg name="regex-literals" license="MIT" author="Arto Bendiken" description="A reader extension providing precompiled regular expression literals of the form <code>#/[a-z0-9]+/i</code>"/>
96
97<chickenegg name="sandbox" license="BSD" author="felix winkelmann" description="A safe evaluation environment"/>
98
99<chickenegg name="softscheme" license="GPL" author="Andrew Wright, packaged by Lars Thomas Hansen and ported to chicken by felix" description="Andrew Wright's soft type checker"/>
100
101<chickenegg name="srfi-45" license="BSD" author="Kon Lovett" description="Primitives for Expressing Iterative Lazy Algorithms"/>
102
103<chickenegg name="srfi-60" license="BSD" author="Aubrey Jaffer" description="Integers as bits"/>
104
105<chickenegg name="suspension" license="BSD" author="felix" description="Serialized limited continuations"/>
106
107<chickenegg name="tagged-begin" license="BSD" author="Jens Axel S&oslash;gaard" description="An extended form of <code>begin</code> similar to Common Lisp's <code>tagbody</code>"/>
108
109<chickenegg name="uri-literals" license="MIT" author="Arto Bendiken" description="A reader extension providing URI literals of the form <code>#<http://www.call-with-current-continuation.org/></code>"/>
110
111
112</table>
113
114==== Graphics
115
116<table>
117
118<chickenegg name="aalib" license="BSD" author="felix winkelmann" description="Bindings for the AAlib ASCII renderer"/>
119
120<chickenegg name="aquaterm" license="BSD" author="Thomas Chust" description="Bindings to the C API for AquaTerm"/>
121
122<chickenegg name="cairo" license="LGPL" author="Michael Bridgen and Tony Garnock-Jones" description="Chicken bindings for Cairo, a vector graphics library"/>
123
124<chickenegg name="epeg" license="BSD" author="Peter Bex" description="Chicken bindings for the JPEG thumbnail creation library epeg"/>
125
126<chickenegg name="ezxdisp" license="LGPL" author="n-sibata and Morihiko Tamai" description="A simple 2D and 3D graphics library for X11"/>
127
128<chickenegg name="fps" license="unknown" author="Wandy Sae-Tan and Olin Shivers" description="Functional PostScript"/>
129
130<chickenegg name="freetype" license="BSD" author="Alex Shinn" description="Freetype2 Interface"/>
131
132<chickenegg name="g2" license="BSD" author="felix winkelmann" description="Interface to the G2 graphics libary"/>
133
134<chickenegg name="glut" license="BSD" author="felix winkelmann" description="GLUT bindings"/>
135
136<chickenegg name="imlib2" license="BSD" author="Peter Bex" description="Chicken bindings for the Imlib2 image library"/>
137
138<chickenegg name="octave" license="BSD" author="Pierre-Alexandre Fournier" description="Interface to GNU/Octave"/>
139
140<chickenegg name="opengl" license="BSD" author="felix winkelmann" description="OpenGL bindings"/>
141
142<chickenegg name="sdl" license="LGPL" author="Tony Garnock-Jones" description="Basic SDL support"/>
143
144<chickenegg name="xlib" license="unknown" author="Richard Mann" description="Xlib bindings"/>
145
146<chickenegg name="xmi" license="BSD" author="felix winkelmann" description="An interface to libxmi, the 2D rasterization library"/>
147
148
149</table>
150
151==== Debugging tools
152
153<table>
154
155<chickenegg name="dissector" license="BSD" author="Taylor Campbell" description="An object inspector for Chicken"/>
156
157<chickenegg name="gdb" license="MIT" author="Tony Sidaway <tonysidaway@gmail.com>" description="GDB-MI interface to the GNU debugger"/>
158
159<chickenegg name="mayo" license="MIT" author="Tony Sidaway <tonysidaway@gmail.com>" description="Scheme source-level debugger"/>
160
161
162</table>
163
164==== Logic programming
165
166<table>
167
168<chickenegg name="kanren" license="MIT" author="Oleg Kiselyov and Dan Friedman" description="A declarative applicative logic programming system."/>
169
170<chickenegg name="schelog" license="LGPL" author="Dorai Sitaram, substantially optimized by Brad Lucier" description="Dorai Sitaram's embedding of logic programming into Scheme"/>
171
172
173</table>
174
175==== Networking
176
177<table>
178
179<chickenegg name="dict" license="BSD" author="David Krentzlin" description="Simple API for the dict client/server-protocol"/>
180
181<chickenegg name="dpfw" license="GPL" author="Dan Muresan" description="A lightweight distributed programming framework"/>
182
183<chickenegg name="ftp" license="BSD" author="felix winkelmann" description="Simple FTP client"/>
184
185<chickenegg name="hostinfo" license="BSD" author="Zbigniew Szadkowski" description="Look up host, protocol, and service information"/>
186
187<chickenegg name="http" license="BSD" author="felix winkelmann" description="HTTP client and server"/>
188
189<chickenegg name="irc" license="BSD" author="felix winkelmann" description="A simple IRC client"/>
190
191<chickenegg name="memcached" license="BSD" author="Alaric B. Snell-Pym" description="A client for accessing a memcached cluster"/>
192
193<chickenegg name="openssl" license="BSD" author="Thomas Chust" description="Bindings to the OpenSSL SSL/TLS library"/>
194
195<chickenegg name="pcap" license="BSD" author="Category 5" description="Interface to the portable packet-capture library"/>
196
197<chickenegg name="pop3" license="BSD" author="felix winkelmann" description="Mail retrieval via the POP3 protocol"/>
198
199<chickenegg name="raw-sockets" license="BSD" author="Ben Kurtz" description="Simple access to UNIX raw sockets"/>
200
201<chickenegg name="remote-launch" license="BSD" author="Kon Lovett" description="Remote Launch Service"/>
202
203<chickenegg name="remote-mailbox" license="BSD" author="Kon Lovett" description="Remote Mailbox"/>
204
205<chickenegg name="rpc" license="BSD" author="Thomas Chust" description="A flexible peer-to-peer RPC system."/>
206
207<chickenegg name="scgi" license="BSD" author="Thomas Chust" description="SCGI server library"/>
208
209<chickenegg name="smtp" license="BSD" author="felix winkelmann" description="A simple library to send e-mail via SMTP (RFC 821)"/>
210
211<chickenegg name="spread" license="BSD" author="felix winkelmann" description="An interface to the Spread communication library"/>
212
213<chickenegg name="tcp-server" license="BSD" author="felix winkelmann" description="A simple generic multithreaded tcp-server"/>
214
215<chickenegg name="tcp6" license="BSD" author="Jun-ichiro Itojun Hagino and felix winkelmann" description="A replacement for the <code>tcp</code> library unit that supports IPv6"/>
216
217<chickenegg name="udp" license="BSD" author="Category 5" description="An interface to User Datagram Protocol sockets"/>
218
219<chickenegg name="unix-sockets" license="BSD" author="felix winkelmann" description="UNIX domain sockets"/>
220
221<chickenegg name="uuid-lib" license="BSD" author="Kon Lovett" description="OSF DCE 1.1 UUID"/>
222
223<chickenegg name="uuid-ossp" license="BSD" author="Kon Lovett" description="OSSP UUID"/>
224
225
226</table>
227
228==== Input/Output
229
230<table>
231
232<chickenegg name="binary-parse" license="Public Domain" author="Oleg Kiselyov" description="Reading variable number of bits from a sequential input stream"/>
233
234<chickenegg name="endian-port" license="GPL" author="Ivan Raikov" description="An I/O port that supports different endian formats."/>
235
236<chickenegg name="fmt" license="BSD" author="Alex Shinn" description="Combinator Formatting"/>
237
238<chickenegg name="format-graph" license="GPL" author="Ivan Raikov" description="Prints a graph in various formats."/>
239
240<chickenegg name="format-modular" license="Public Domain" author="Alejandro Forero Cuervo, Alex Shinn and Kon Lovett" description="Modular Common-Lisp style formatted output"/>
241
242<chickenegg name="format-textdiff" license="GPL" author="Ivan Raikov" description="Output text diff scripts in different formats"/>
243
244<chickenegg name="http-fs" license="BSD" author="[[felix winkelmann]]" description="Simple read-only HTTP access over [[vfs]]"/>
245
246<chickenegg name="nbstdin" license="BSD" author="Daishi Kato" description="Non-blocking Standard Input"/>
247
248<chickenegg name="pipeline" license="BSD" author="Hans Bulfone" description="Run multiple subprocesses connected via pipes"/>
249
250<chickenegg name="ppi" license="MIT" author="Michal Dybizbanski" description="user-space interface to ppbus parallel 'geek' port under FreeBSD"/>
251
252<chickenegg name="pty" license="BSD" author="Alex Shinn" description="Easy Pseudo-Terminal Interface"/>
253
254<chickenegg name="readline" license="GPL" author="Tony Garnock-Jones" description="An interface to the GNU readline library"/>
255
256<chickenegg name="sfio" license="BSD" author="Category 5" description="Interface to AT&T's Safe/Fast I/O Library"/>
257
258<chickenegg name="srfi-38" license="SRFI" author="Al Petrofsky and Ray Dillinger" description="The SRFI-38 reference implementation"/>
259
260<chickenegg name="vfs" license="BSD" author="[[felix winkelmann]]" description="TinyCLOS wrappers for file operations"/>
261
262
263</table>
264
265==== Databases
266
267<table>
268
269<chickenegg name="gdbm" license="BSD" author="Alex Shinn" description="GNU DBM interface"/>
270
271<chickenegg name="geoip" license="MIT" author="Arto Bendiken" description="Chicken bindings for the GeoIP C API"/>
272
273<chickenegg name="metakit" license="MIT" author="Sergey Khorev" description="An interface to the Metakit database"/>
274
275<chickenegg name="mysql" license="MIT" author="Toby Butzon" description="MySQL bindings for Chicken"/>
276
277<chickenegg name="postgresql" license="BSD" author="Johannes Groedem" description="Some simple bindings for PostgreSQL's C-api"/>
278
279<chickenegg name="qdbm" license="GPL" author="Sven Hartrumpf" description="Some bindings for qdbm (depot interface)"/>
280
281<chickenegg name="sedna" license="Apache" author="The Institute for System Programming of the Russian Academy of Sciences (ISP RAS)" description="An interface to the Sedna XML database management system."/>
282
283<chickenegg name="sql" license="BSD" author="Hans Bulfone" description="A small scheme library for constructing SQL queries"/>
284
285<chickenegg name="sql-null" license="public domain" author="Ivan Shmakov" description="A convenience extension for representing SQL NULL values"/>
286
287<chickenegg name="sqlite3" license="BSD" author="Thomas Chust" description="Bindings to version 3.x of the SQLite API"/>
288
289<chickenegg name="sqlite3-tinyclos" license="BSD" author="Thomas Chust" description="A bridge between persistent storage in SQLite3 tables and TinyCLOS objects."/>
290
291<chickenegg name="sqlora" license="BSD" author="Graham Fawcett <graham.fawcett@gmail.com>" description="A wrapper for libsqlora8, the Oracle-database library"/>
292
293
294</table>
295
296==== OS interface
297
298<table>
299
300<chickenegg name="lirc-client" license="BSD" author="Hans Bulfone" description="Interface to LIRC (Linux Infrared Remote Control) client library"/>
301
302<chickenegg name="locale" license="BSD" author="Kon Lovett" description="Provides locale operations"/>
303
304<chickenegg name="macosx" license="BSD" author="Kon Lovett" description="MacOS X Utilities"/>
305
306<chickenegg name="osprocess" license="BSD" author="Kon Lovett" description="Subprocess Object"/>
307
308<chickenegg name="rlimit" license="BSD" author="felix winkelmann" description="Setting resource limits"/>
309
310
311</table>
312
313==== Interfacing to other languages
314
315<table>
316
317<chickenegg name="dollar" license="BSD" author="felix winkelmann" description="FFI convenience macro"/>
318
319<chickenegg name="easyffi" license="BSD" author="[[felix winkelmann]]" description="Generates bindings from C/C++ declarations"/>
320
321<chickenegg name="javahack" license="BSD" author="felix winkelmann" description="A simple interface to Java(tm)"/>
322
323<chickenegg name="jni" license="BSD" author="Daishi Kato and felix winkelmann" description="An interface to Java(tm) via JNI"/>
324
325<chickenegg name="lazy-ffi" license="BSD" author="felix winkelmann" description="A foreign function interface for lazy people"/>
326
327<chickenegg name="lua" license="MIT" author="PUC Rio, chicken interface by felix winkelmann" description="Embed Lua interpreter into Scheme applications"/>
328
329<chickenegg name="objc" license="MIT" author="Zbigniew" description="An Objective-C interface"/>
330
331<chickenegg name="pyffi" license="GPL" author="Ivan Raikov" description="An interface to the Python programming language."/>
332
333<chickenegg name="q-lang" license="GPL" author="John Cowan" description="An interface to the programming language Q"/>
334
335
336</table>
337
338==== Web programing
339
340<table>
341
342<chickenegg name="ajax" license="MIT" author="[[felix winkelmann]]" description="Using xmlHttpRequest with the Spiffy web-server"/>
343
344<chickenegg name="cgi-util" license="unknown" author="Oleg Kiselyov. Ported to chicken by Shawn Wagner." description="CGI GET and POST query string parsing."/>
345
346<chickenegg name="curl" license="BSD" author="Tony Sidaway <tonysidaway@gmail.com>" description="Bindings for libcurl, the multiprotocol file transfer library"/>
347
348<chickenegg name="estraier" license="GPL" author="Alejandro Forero Cuervo" description="Thin wrapper around the Hyper Estraier API for indexing documents and searching them."/>
349
350<chickenegg name="fancypants" license="BSD" author="Peter Bex" description="Automatic ASCII smart quotes and ligature handling for SXML"/>
351
352<chickenegg name="fastcgi" license="BSD" author="Alex Drummond <a.d.drummond@gmail.com>" description="Bindings for the FCGX API of libfcgi"/>
353
354<chickenegg name="hart" license="BSD" author="Graham Fawcett <graham.fawcett@gmail.com>" description="An efficient HTML-generation library."/>
355
356<chickenegg name="honu" license="BSD" author="felix winkelmann" description="A parser for `honu' syntax"/>
357
358<chickenegg name="html-plots" license="GPL" author="Alejandro Forero Cuervo" description="Parsing files in wiki format and rendering them to HTML"/>
359
360<chickenegg name="html-stream" license="GPL" author="Alejandro Forero Cuervo" description="Tiny, functional HTML generator, generating srfi-40 streams of characters"/>
361
362<chickenegg name="htmlprag" license="LGPL" author="Neil W. Van Dyke" description="A permissive HTML parser"/>
363
364<chickenegg name="http-server-form-posts" license="Public Domain" author="Moe Aboulkheir" description="Extends http-server to handle multipart/form-data POSTs"/>
365
366<chickenegg name="http-session" license="BSD" author="Mario Domenech Goulart" description="Facilities for managing HTTP sessions"/>
367
368<chickenegg name="idna" license="BSD" author="Zbigniew" description="An interface to Internationalizing Domain Names in Applications"/>
369
370<chickenegg name="irnc-base" license="BSD" author="Tony Sidaway <tonysidaway@gmail.com> and Martin Sidaway <martinsidaway@yahoo.co.uk>" description="Base package for the iron-chicken bot framework"/>
371
372<chickenegg name="mime" license="BSD" author="Shiro Kawai, ported to Chicken by Hans Bulfone" description="Parse MIME Messages"/>
373
374<chickenegg name="phoghorn" license="BSD" author="Peter Bex" description="A thumbnail gallery library for spiffy"/>
375
376<chickenegg name="scheme-dissect" license="GPL" author="Alejandro Forero Cuervo" description="Functions useful to show Scheme code in an HTML file"/>
377
378<chickenegg name="spiffy" license="BSD" author="felix winkelmann" description="Spiffy the web-server"/>
379
380<chickenegg name="spiffy-utils" license="BSD" author="Peter Bex" description="Utility library for Spiffy"/>
381
382<chickenegg name="stream-cgi" license="Public Domain" author="Alejandro Forero Cuervo" description="A library with functionality useful for creating applications that run under CGI using streams"/>
383
384<chickenegg name="stream-httplog" license="GPL" author="Alejandro Forero Cuervo" description="Parser for Apache access_log files"/>
385
386<chickenegg name="stream-wiki" license="GPL" author="Alejandro Forero Cuervo" description="Parsing files in wiki format and rendering them to HTML"/>
387
388<chickenegg name="uri" license="BSD" author="Felix Winkelmann and Kon Lovett, with code taken from Aubrey Jaffers' SLIB" description="URL (RFC 1739 & 3986) parsing"/>
389
390<chickenegg name="uri-namespaces" license="MIT" author="Arto Bendiken" description="Facilities for converting between prefixed symbols (such as 'dc:title) and absolute URI references (such as #<http://purl.org/dc/elements/1.1/title>). This is useful e.g. for working with XML documents and RDF triples."/>
391
392<chickenegg name="web-scheme" license="BSD" author="Mario Domenech Goulart" description="Scheme for web programming"/>
393
394<chickenegg name="xml-rpc" license="BSD" author="felix winkelmann" description="XML-RPC client/server"/>
395
396
397</table>
398
399==== XML processing
400
401<table>
402
403<chickenegg name="asxt" license="LGPL" author="Neil van Dyke" description="Another Scheme XML Transformer"/>
404
405<chickenegg name="doctype" license="Public Domain" author="Zbigniew Szadkoswski" description="Exports strings corresponding to standard XML (XHTML, HTML) doctypes"/>
406
407<chickenegg name="expat" license="BSD" author="felix winkelmann" description="An interface to James Clark's Expat XML parser"/>
408
409<chickenegg name="lazy-ssax" license="Public Domain" author="Dmitry Lizorkin" description="A specialized lazy XML->SXML parser"/>
410
411<chickenegg name="rss" license="BSD" author="felix winkelmann" description="A RSS parser"/>
412
413<chickenegg name="ssax" license="Public Domain" author="Oleg Kiselyov, ported to CHICKEN by Kirill Lisovsky, packaged as an extension by felix winkelmann" description="Oleg Kiselyov's XML parser"/>
414
415<chickenegg name="sxml-match" license="MIT" author="Reed Sheridan <rsheridan6@gmail.com>" description="Pattern matching of SXML"/>
416
417<chickenegg name="sxml-tools" license="Public Domain" author="Oleg Kiselyov, Kirill Lisovsky, Dmitry Lizorkin" description="The sxml-tools from the SSAX project"/>
418
419<chickenegg name="sxml-transforms" license="Public Domain" author="Oleg Kiselyov" description="The SXML transformations (to XML, SXML, and HTML) from the SSAX project at Sourceforge"/>
420
421<chickenegg name="xxexpr" license="LGPL" author="Tony Garnock-Jones" description="Manipulation of eXtended Xml EXPRessions"/>
422
423
424</table>
425
426==== Documentation tools
427
428<table>
429
430<chickenegg name="eggdoc" license="BSD" author="Zbigniew" description="An egg documentation tool"/>
431
432<chickenegg name="eggdoc-svnwiki" license="BSD" author="Zbigniew" description="Render eggdoc source to svnwiki syntax"/>
433
434<chickenegg name="eggdoc-texinfo" license="BSD" author="Zbigniew" description="Render eggdoc source to Texinfo"/>
435
436<chickenegg name="man" license="BSD" author="Mario Goulart" description="Access the manual from the REPL"/>
437
438<chickenegg name="mole" license="Public Domain" author="Kirill Lisovsky" description="A literate programming tool for Scheme"/>
439
440
441</table>
442
443==== Egg tools
444
445<table>
446
447<chickenegg name="meta-setup" license="BSD" author="felix winkelmann" description="A tool for various operations on a local CHICKEN extension repository"/>
448
449<chickenegg name="nest-tool" license="BSD" author="Mario Domenech Goulart" description="Extension and command-line tool for extracting information from eggs repositories listings"/>
450
451<chickenegg name="salmonella" license="BSD" author="Mario Domenech Goulart" description="A tool for testing eggs"/>
452
453
454</table>
455
456==== Mathematical libraries
457
458<table>
459
460<chickenegg name="atlas-lapack" license="GPL" author="Ivan Raikov" description="An interface to the LAPACK routines implemented in ATLAS."/>
461
462<chickenegg name="blas" license="BSD" author="felix winkelmann" description="An interface to level 1, 2 and 3 BLAS routines"/>
463
464<chickenegg name="complex" license="BSD" author="Thomas Christian Chust" description="Support for complex numbers in Chicken"/>
465
466<chickenegg name="fpfz" license="BSD" author="Kon Lovett" description="Floating-point Comparison With Epsilon"/>
467
468<chickenegg name="gmp" license="LGPL" author="Peter Keller" description="Bindings for the <b>GNU Multiprecision Arithmetic Library</b>"/>
469
470<chickenegg name="gsl-srfi-27" license="GPL" author="Will M. Farr" description="SRFI-27 library which uses the GSL behind the scenes to generate random numbers."/>
471
472<chickenegg name="mapm" license="Public Domain" author="[[mailto:tjaden(at)users.sourceforge.net|Peter Wang]]" description="Binding to Mike's Arbitrary Precision Math Library"/>
473
474<chickenegg name="mathh" license="Public domain" author="John Cowan" description="Some ISO C math functions"/>
475
476<chickenegg name="matrix-utils" license="GPL" author="Ivan Raikov" description="Generation of special utility matrices."/>
477
478<chickenegg name="numbers" license="BSD" author="felix winkelmann" description="Full numeric tower support"/>
479
480<chickenegg name="SO31" license="GPL" author="Will M. Farr <farr@mit.edu>" description="Basic functions to manipulate SO(3,1) group elements."/>
481
482
483</table>
484
485==== Object-oriented programming
486
487<table>
488
489<chickenegg name="c3" license="BSD" author="Alex Shinn" description="Implements C3 class linearization for TinyCLOS"/>
490
491<chickenegg name="meroon" license="LGPL" author="Christian Queinnec, ported to CHICKEN by felix winkelmann" description="A fast and feature-rich object system"/>
492
493<chickenegg name="modds" license="BSD" author="Thomas Chust" description="A prototype based object system with multiple object dynamic dispatch"/>
494
495<chickenegg name="operations" license="BSD" author="felix winkelmann" description="The object system from the T Lisp system"/>
496
497<chickenegg name="pos" license="unknown" author="Blake McBride" description="POS is a portable object system for Scheme"/>
498
499<chickenegg name="prometheus" license="GPL" author="Jorgen Schaefer" description="The Prometheus prototype-based object system"/>
500
501<chickenegg name="protobj" license="LGPL" author="Neil van Dyke" description="A prototype-delegation object model"/>
502
503<chickenegg name="tinyclos" license="BSD" author="Gregor Kiczales (ported to CHICKEN and heavily modified by felix" description="Gregor Kiczales TinyCLOS object system"/>
504
505
506</table>
507
508==== Algorithms and data-structures
509
510<table>
511
512<chickenegg name="amb" license="BSD" author="Thomas Chust" description="The non-deterministic backtracking ambivalence operator"/>
513
514<chickenegg name="array-lib" license="BSD" author="Kon Lovett" description="SRFI-25 Similar, SRFI-47, SRFI-63 & More"/>
515
516<chickenegg name="bit-cat" license="BSD" author="Ben Kurtz" description="Bitstring Concatenator for u8vectors"/>
517
518<chickenegg name="bloom-filter" license="BSD" author="Kon Lovett" description="Bloom Filter"/>
519
520<chickenegg name="box" license="BSD" author="Kon Lovett" description="Boxing"/>
521
522<chickenegg name="charplot" license="public domain" author="Aubrey Jaffer" description="Character plots"/>
523
524<chickenegg name="coerce" license="BSD" author="Kon Lovett" description="SLIB Coerce"/>
525
526<chickenegg name="defstruct" license="BSD" author="Dorai Sitaram" description="Another record-type facility"/>
527
528<chickenegg name="digraph" license="GPL" author="Ivan Raikov" description="Directed graph in adjacency list format."/>
529
530<chickenegg name="dyn-vector" license="GPL" author="Ivan Raikov" description="Dynamic (dense) vectors based on SRFI-43."/>
531
532<chickenegg name="ftl" license="LGPL" author="Sergei Egorov, partially reimplemented by felix winkelmann" description="Interface based sequence library"/>
533
534<chickenegg name="ftl-peg" license="BSD" author="Thomas Chust" description="Parsing expression grammars for FTL"/>
535
536<chickenegg name="graph-bfs" license="GPL" author="Ivan Raikov" description="Breadth-first search in a graph."/>
537
538<chickenegg name="graph-cycles" license="GPL" author="Ivan Raikov" description="Enumerate all simple cycles in a graph."/>
539
540<chickenegg name="graph-dfs" license="GPL" author="Ivan Raikov" description="Depth-first search in a graph."/>
541
542<chickenegg name="graph-scc" license="GPL" author="Ivan Raikov" description="Compute strongly-connected components (SCC) of a graph."/>
543
544<chickenegg name="iset" license="BSD" author="Alex Shinn" description="Integer sets"/>
545
546<chickenegg name="kvlists" license="MIT" author="Arto Bendiken" description="Provides keyword/value list (or key-value list, for short) operations."/>
547
548<chickenegg name="lookup-table" license="BSD" author="Kon Lovett" description="Simple Lookup Table"/>
549
550<chickenegg name="metaphone" license="BSD" author="Kon Lovett" description="Metaphone 'sounds like' algorithm"/>
551
552<chickenegg name="npdiff" license="GPL" author="Ivan Raikov" description="Compute the longest common subsequence of two sequences"/>
553
554<chickenegg name="orders" license="GPL" author="Alejandro Forero Cuervo" description="Functions useful for defining orders (for sorting)"/>
555
556<chickenegg name="perfect-hash" license="BSD" author="Kon Lovett" description="Provides perfect hashing"/>
557
558<chickenegg name="proplist" license="BSD" author="Kon Lovett" description="Provides property list operations"/>
559
560<chickenegg name="random-swb" license="GPL" author="Ivan Raikov" description="A random number generator based on the subtract-with-borrow (SWB) method."/>
561
562<chickenegg name="random-test" license="GPL" author="Ivan Raikov" description="Some simple randomness tests for a sequence of numbers."/>
563
564<chickenegg name="rb-tree" license="GPL" author="Ivan Raikov" description="A sorted dictionary data structure based on red-black trees."/>
565
566<chickenegg name="records" license="public domain" author="David Carlton, Aubrey Jaffer" description="Procedural record-type interface"/>
567
568<chickenegg name="rgraph" license="BSD" author="Jonah Beckford" description="A graph library for Scheme"/>
569
570<chickenegg name="sfht" license="GPL" author="Ivan Raikov" description="A dictionary data structure based on counting Bloom filters."/>
571
572<chickenegg name="sparse-vectors" license="BSD" author="Richard Kelsey and Jonathan Rees" description="Arbitrarily large vectors"/>
573
574<chickenegg name="srfi-19" license="BSD" author="Kon Lovett" description="Time Data Types and Procedures"/>
575
576<chickenegg name="srfi-25" license="SRFI" author="Jussi Piitulainen" description="Multidimensional arrays"/>
577
578<chickenegg name="srfi-27" license="BSD" author="Kon Lovett" description="Sources of Random Bits"/>
579
580<chickenegg name="srfi-4-comprehensions" license="SRFI" author="Will Farr" description="SRFI-42 Comprehensions for SRFI-4 Vectors"/>
581
582<chickenegg name="srfi-40" license="SRFI" author="Based on the original SRFI 40 reference implementation by Philip L. Bewig and Andre von Tonder, modified for Chicken by Category 5" description="SRFI-40 (Streams)"/>
583
584<chickenegg name="srfi-42" license="SRFI" author="Sebastian Egner" description="SRFI-42 (Eager comprehensions)"/>
585
586<chickenegg name="srfi-47" license="SRFI" author="Aubrey Jaffer" description="SRFI-47 arrays"/>
587
588<chickenegg name="srfi-66" license="BSD" author="felix" description="Octet vectors"/>
589
590<chickenegg name="srfi-85" license="SRFI" author="Will Clinger, modified for Chicken by John Cowan" description="Recursive equivalence predicates"/>
591
592<chickenegg name="srfi-95" license="public domain" author="Richard O'Keefe, modified for Chicken by John Cowan" description="Sorting and merging"/>
593
594<chickenegg name="stack" license="BSD" author="Kon Lovett" description="Provides LIFO queue (stack) operations"/>
595
596<chickenegg name="stream-ext" license="Public Domain" author="Alejandro Forero Cuervo" description="A library of extensions to the SRFI-40 streams"/>
597
598<chickenegg name="topological-sort" license="public domain" author="Mikael Djurfeldt" description="Topological sorting"/>
599
600<chickenegg name="treap" license="GPL" author="Oleg Kiselyov; packaged for Chicken Scheme by Ivan Raikov" description="A sorted dictionary data structure based on randomized search trees."/>
601
602<chickenegg name="vector-lib" license="Artistic" author="Taylor Campbell, with CHICKEN-specific modifications by William S. Annis. Adapted to final version and bugs fixed by Zbigniew Szadkowski" description="A port of the reference implementation of SRFI-43 with additions and fixes"/>
603
604<chickenegg name="wt-tree" license="MIT-ish" author="Reed Sheridan <rsheridan6@gmail.com>" description="Weight-balanced trees"/>
605
606<chickenegg name="z3" license="BSD" author="Oskar Schirmer and felix winkelmann" description="A gzip (RFC1952) compression and decompression library"/>
607
608
609</table>
610
611==== Data formats and parsing
612
613<table>
614
615<chickenegg name="base64" license="BSD" author="James Bailey" description="Parsing and unparsing of base-64 strings"/>
616
617<chickenegg name="charconv" license="BSD" author="Alex Shinn" description="Character encoding utilities"/>
618
619<chickenegg name="chasen" license="BSD" author="Alex Shinn" description="Bindings to ChaSen Japanese Morphological Analyzer"/>
620
621<chickenegg name="content-type" license="Public Domain" author="Alejandro Forero Cuervo" description="Parsing of Content-type headers"/>
622
623<chickenegg name="cookie" license="BSD" author="Reed Sheridan <rsheridan6@gmail.com>" description="Parse and construct HTTP cookies"/>
624
625<chickenegg name="csv" license="LGPL" author="Neil van Dyke" description="Parsing comma-separated values"/>
626
627<chickenegg name="iconv" license="Public Domain" author="Alejandro Forero Cuervo" description="Character-set conversions"/>
628
629<chickenegg name="input-parse" license="unknown" author="Oleg Kiselyov. Ported to chicken by Shawn Wagner." description="input-stream tokenizing and parsing routines."/>
630
631<chickenegg name="json" license="MIT" author="Tony Garnock-Jones" description="A JSON library"/>
632
633<chickenegg name="lalr" license="GPL" author="Dominique Boucher" description="An efficient LALR(1) parser generator"/>
634
635<chickenegg name="levenshtein" license="BSD" author="Kon Lovett" description="Levenshtein edit distance"/>
636
637<chickenegg name="magic" license="BSD" author="Peter Busser" description="Identifies file types"/>
638
639<chickenegg name="mat5-lib" license="GPL" author="Ivan Raikov" description="Reading and writing Level 5 MAT-File format."/>
640
641<chickenegg name="mistie" license="BSD" author="Dorai Sitaram" description="A programmable filter"/>
642
643<chickenegg name="mpeg3" license="Public Domain" author="Alejandro Forero Cuervo" description="Decodes several MPEG standards into uncompressed data suitable for editing and playback."/>
644
645<chickenegg name="packedobjects" license="BSD" author="John P. T. Moore" description="cross platform bit-stuffing based on Packed Encoding Rules"/>
646
647<chickenegg name="packrat" license="MIT" author="Tony Garnock-Jones" description="A packrat parsing library"/>
648
649<chickenegg name="php-s11n" license="MIT" author="Arto Bendiken" description="Serialization/unserialization of PHP data types."/>
650
651<chickenegg name="rfc3339" license="LGPL" author="Neil van Dyke" description="RFC3339 Date and Time Format"/>
652
653<chickenegg name="rfc822" license="BSD" author="Reed Sheridan <rsheridan6@gmail.com>" description="Parse Internet Message Format"/>
654
655<chickenegg name="s11n" license="BSD" author="felix winkelmann" description="Serialization of arbitrary data."/>
656
657<chickenegg name="scsh-regexp" license="GPL" author="Dan Muresan" description="Emulates SCSH regular expression API"/>
658
659<chickenegg name="silex" license="Other" author="Danny Dub&eacute;" description="An efficient and powerful lexer generator"/>
660
661<chickenegg name="stream-base64" license="Public Domain" author="Alejandro Forero Cuervo" description="Performs lazy encoding and decoding of streams of characters to and from Base64"/>
662
663<chickenegg name="stream-htpasswd" license="Public Domain" author="Alejandro Forero Cuervo" description="Lazy parser and generator of Apache htpasswd password files."/>
664
665<chickenegg name="stream-ldif" license="Public Domain" author="Alejandro Forero Cuervo" description="Library to parse and produce files in the LDAP Data Interchange Format (LDIF) file format"/>
666
667<chickenegg name="stream-parser" license="Public Domain" author="Alejandro Forero Cuervo" description="A stream-based parser"/>
668
669<chickenegg name="stream-sections" license="GPL" author="Alejandro Forero Cuervo" description="Split a document into sections and do useful things with the results."/>
670
671<chickenegg name="tar" license="BSD" author="feix winkelmann" description="Reading and writing tar archives"/>
672
673<chickenegg name="utf8" license="BSD" author="Alex Shinn" description="Unicode support"/>
674
675
676</table>
677
678==== Tools
679
680<table>
681
682<chickenegg name="patch" license="MIT" author="Tony Sidaway <tonysidaway@gmail.com" description="Simple source patch utility"/>
683
684
685</table>
686
687==== Sound
688
689<table>
690
691<chickenegg name="mpd-client" license="BSD" author="Hans Bulfone" description="Interface to Music Player Daemon"/>
692
693<chickenegg name="openal" license="BSD" author="felix winkelmann" description="OpenAL 1.1 bindings"/>
694
695
696</table>
697
698==== Unit-testing
699
700<table>
701
702<chickenegg name="check" license="SRFI" author="Sebastian Egner" description="SRFI-78 leightweight testing"/>
703
704<chickenegg name="test" license="BSD" author="Alex Shinn" description="Yet Another Testing Utility"/>
705
706<chickenegg name="testbase" license="BSD" author="Kon Lovett" description="Unit Testing Framework"/>
707
708<chickenegg name="testbase-driver" license="Open Source" author="Kon Lovett" description="Unit Testing Framework Test Runner"/>
709
710<chickenegg name="testbase-results" license="BSD" author="Kon Lovett" description="TestBase Test Results Support"/>
711
712<chickenegg name="testeez" license="LGPL" author="Neil van Dyke" description="Simple Test Mechanism for Scheme"/>
713
714
715</table>
716
717==== Cryptography
718
719<table>
720
721<chickenegg name="crc" license="BSD" author="Daishi Kato" description="Computes CRC checksum"/>
722
723<chickenegg name="crc16" license="BSD" author="Ben Kurtz" description="CRC16 Algorithm"/>
724
725<chickenegg name="crypt" license="BSD" author="Thomas Christian Chust" description="Bindings to the cryptlib library"/>
726
727<chickenegg name="crypt3" license="BSD" author="Thomas Christian Chust and Kon Lovett" description="Bindings to the cryptlib library (for cryptlib 3.2.2)"/>
728
729<chickenegg name="hashes" license="BSD" author="Kon Lovett" description="Miscellaneous Hash Functions"/>
730
731<chickenegg name="md5" license="GPL" author="Chistophe Devine (packaged for CHICKEN by felix winkelmann)" description="Computes MD5 (RFC1321) checksums"/>
732
733<chickenegg name="message-digest" license="BSD" author="Kon Lovett" description="Message Digest Support"/>
734
735<chickenegg name="ripemd" license="BSD" author="Kon Lovett" description="RIPE Message Digest"/>
736
737<chickenegg name="sha1" license="GPL" author="Chistophe Devine (packaged for CHICKEN by [[felix winkelmann]])" description="Computes SHA1 (FIPS-180-1) checksums"/>
738
739<chickenegg name="sha2" license="BSD" author="Aaron D. Gifford and Daishi Kato" description="Computes 256-, 385- and 512-bit SHA2 checksums"/>
740
741<chickenegg name="tiger-hash" license="BSD" author="Kon Lovett" description="Tiger/192 Message Digest"/>
742
743
744</table>
745
746==== User interface toolkits
747
748<table>
749
750<chickenegg name="bb" license="BSD" author="felix winkelmann" description="An easy-to-use GUI toolkit based on FLTK"/>
751
752<chickenegg name="japi" license="BSD" author="felix winkelmann" description="A set of bindings for the JAPI GUI toolkit"/>
753
754<chickenegg name="ncurses" license="BSD" author="felix winkelmann" description="An interface to the UNIX <code>ncurses</code> package"/>
755
756<chickenegg name="PS-tk" license="BSD" author="Nils M Holm [Chicken: Kon Lovett]" description="PS-tk"/>
757
758<chickenegg name="qt" license="BSD" author="felix winkelmann" description="A leightweight Qt 4 interface"/>
759
760<chickenegg name="slang" license="MIT" author="Tony Sidaway <tonysidaway@gmail.com>" description="Bindings for slang text-based user interface library."/>
761
762<chickenegg name="sx" license="LGPL" author="Dominic Giampaolo, chicken interface by felix winkelmann" description="Simple X programming"/>
763
764<chickenegg name="tk" license="Bremer License" author="Wolf-Dieter Busch" description="An interface to the Tk GUI toolkit"/>
765
766<chickenegg name="xosd" license="BSD" author="felix winkelmann" description="An interface to the XOSD (On Screen Display) library"/>
767
768
769</table>
770
771==== Code generation
772
773<table>
774
775<chickenegg name="crunch" license="BSD" author="felix winkelmann" description="A restricted statically typed subset of Scheme"/>
776
777<chickenegg name="fp" license="BSD" author="felix winkelmann" description="An interpreter/translator for a dialect of John Backus' FP language"/>
778
779<chickenegg name="inline" license="BSD" author="felix winkelmann" description="Use compiled code inside interpreter scripts"/>
780
781<chickenegg name="lightning" license="BSD" author="felix winkelmann" description="An interface to GNU Lightning"/>
782
783<chickenegg name="sassy" license="LGPL" author="Jonathan Kraut" description="A portable 32-bit assembler for x86 processors"/>
784
785<chickenegg name="tcc" license="BSD" author="[[felix winkelmann]]" description="Accessing the Tiny C compiler from Scheme"/>
786
787
788</table>
789
790==== Macros and meta-syntax
791
792<table>
793
794<chickenegg name="alexpander" license="BSD" author="Al Petrofsky" description="A syntax-rules macro-expander"/>
795
796<chickenegg name="riaxpander" license="public domain, with one file under modified BSD" author="Taylor R Campbell (with one file written by Jonathan A Rees)" description="Flexible macro expander"/>
797
798<chickenegg name="simplify" license="BSD" author="felix winkelmann" description="simplifies macroexpand code"/>
799
800<chickenegg name="syntactic-closures" license="MIT" author="Alan Bawden, Chris Hanson" description="Hygienic macros with syntactic closures"/>
801
802<chickenegg name="syntax-case" license="MIT" author="R. Kent Dybvig, Oscar Waddell, Bob Hieb, Carl Bruggeman" description="Portable syntax-case macro and module system"/>
803
804
805</table>
806
807==== Miscellaneous
808
809<table>
810
811<chickenegg name="args" license="BSD" author="Zbigniew" description="Command-line argument handling, on top of SRFI 37"/>
812
813<chickenegg name="args-doc" license="public domain" author="Ivan Shmakov" description="Formatting GNU-style help messages"/>
814
815<chickenegg name="eopl" license="unknown" author="various" description="Support code for the book 'Essentials of Programming Languages'"/>
816
817<chickenegg name="free-gettext" license="BSD" author="Alex Shinn" description="Binary-compatible flexible gettext reimplementation"/>
818
819<chickenegg name="gettext" license="Public Domain" author="Alejandro Forero Cuervo" description="Wrapper around the gettext API for translating messages."/>
820
821<chickenegg name="logging" license="BSD" author="Kon Lovett" description="Logging Facility"/>
822
823<chickenegg name="numspell" license="LGPL" author="Neil van Dyke" description="Spelling Numbers as English in Scheme"/>
824
825<chickenegg name="peep" license="BSD" author="felix winkelmann" description="Explore the compiler's symbol database"/>
826
827<chickenegg name="slib" license="various" author="Aubrey Jaffer" description="Scheme library code"/>
828
829<chickenegg name="srfi-29" license="BSD" author="Kon Lovett" description="Localization"/>
830
831<chickenegg name="srfi-37" license="BSD" author="Anthony Carrico" description="A simple and flexible command-line option parsing facility"/>
832
833<chickenegg name="svn-client" license="Public Domain" author="Alejandro Forero Cuervo" description="A wrapper around Subversion's libsvn_client C library."/>
834
835<chickenegg name="svn-post-commit-hooks" license="GPL" author="Alejandro Forero Cuervo" description="Convenience functions for creating applications that run as post-commit hooks for a Subversion repository."/>
836
837<chickenegg name="tabexpand" license="LGPL" author="Neil W. van Dyke" description="Tab Character Expansion in Scheme"/>
838
839<chickenegg name="tool" license="BSD" author="felix winkelmann" description="Simplified command-line parsing"/>
840
841
842</table>
843
844==== Concurrency and parallelism
845
846<table>
847
848<chickenegg name="futures" license="BSD" author="felix winkelmann" description="Concurrent evaluation of expressions"/>
849
850<chickenegg name="mailbox" license="BSD" author="felix winkelmann and kon lovett" description="Thread-safe queues with timeout"/>
851
852<chickenegg name="synch" license="BSD" author="Kon Lovett" description="Synchronization Forms"/>
853
854
855</table>
856
857==== Unsupported or redundant
858
859<table>
860
861<chickenegg name="format" license="Public Domain" author="Dirk Lutzebeck" description="Common-Lisp style formatted output"/>
862
863<chickenegg name="matcher" license="BSD" author="Andre van Tonder; ported to CHICKEN by Dale Jordan" description="Match extension to srfi-57"/>
864
865<chickenegg name="oblist" license="BSD" author="[[felix winkelmann]]" description="Obtain list of all interned symbols and variables"/>
866
867<chickenegg name="r6rs-libraries" license="SRFI" author="Andre van Tonder and felix" description="Simple, hygienic macros (SRFI-72 compliant) and R6RS (draft) libraries"/>
868
869<chickenegg name="simple-macros" license="SRFI" author="Andre van Tonder" description="Simple, hygienic macros and portable modules (SRFI-72 compliant)"/>
870
871<chickenegg name="sqlite" license="BSD" author="Lars Rustemeier, with some modifications by [[felix winkelmann]]" description="A wrapper for the SQLite database engine"/>
872
873<chickenegg name="srfi-57" license="SRFI" author="Andre van Tonder" description="[[http://srfi.schemers.org/srfi-57/srfi-57.html|SRFI-57]] records"/>
874
875<chickenegg name="structures" license="BSD" author="felix winkelmann" description="A module system inspired by SML structures and Taylor Campbell's lexmod module system"/>
876
877<chickenegg name="test-infrastructure" license="BSD" author="Peter Keller & Kon Lovett" description="Unit-testing framework"/>
878
879<chickenegg name="url" license="BSD" author="felix winkelmann" description="URL (RFC 1739) parsing"/>
880
881
882</table>
Note: See TracBrowser for help on using the repository browser.