Projects and Source Code

Any sufficiently complicated C or Fortran program contains an ad-hoc, informally-specified bug-ridden slow implementation of half of Common Lisp.
    - Greenspun's Tenth Rule of Programming

Here we are presenting several libraries distributed under the LLGPL, the Lisp Lesser GNU Public License (http://opensource.franz.com/preamble.html). Bug reports and suggestions are welcome.

All source text files are packed into ZIP and TAR.GZIP archives and include CRLF as a line terminator. Replace it appropriately if you are not on Windows.

YstokCard

Portable Common Lisp library dealing with smart cards, with contacts or contactless. More...

YstokGrid

CAPI-based grid widget for LispWorks. It displays data akin to RDBMS records in rows, facilitates editing in place, adding, or deleting them. More...

YstokHTML

Portable Common Lisp library for generating and parsing HTML and XHTML documents. More...

YstokSQL

Common Lisp library for interfacing relational databases via ODBC. The implementation is much inspired by LispWorks CommonSQL, provides the functional and object-oriented interfaces (ORM). More...

YstokWidgets

Common Lisp GUI library based on LispWorks CAPI. More...

Ystok-FFC

Portable Common Lisp library of macros and functions related to foreign function interface. This is a thin API layer providing calls Common Lisp to C. More...

Ystok-Library

Portable Common Lisp library of general purpose macros and functions. It also includes localization methodology, file utilities. Ystok-Library is required by many other Ystok libraries. More...

Ystok-Local-Time

Portable Common Lisp library for representing and handling time zones, dates, and timestamps. It is based on the LOCAL-TIME concept proposed in "The Long, Painful History of Time" (http://naggum.no/lugm-time.html) by Erik Naggum (1965-2009). The library partially supports ISO 8601 format and provides localized read and print of date and time. More...

Ystok-URI

Portable Universal Resource Identifier library for Common Lisp programs. It is based on RFC3986 specification. More...

Small Modules

ASDlite

Light-weight version of ASDF with add-ons. It has small footprint and can be easily embedded into applications and systems not related to "compile-and-load Lisp files" tasks. More...

ACL-Compat lite

This is a reworked excerpt from the source code of the portableaserve repository. It facilitates porting the code originally developed for Franz Allegro Common Lisp. Our tiny version of ACL-Compat lite includes only the two files:

acl-compat.lisp
The definition of excl package, the "famous" if* macro and macro excl:errorset.
(The functions excl:string-to-octets and excl:octets-to-string has been moved to Ystok-Library.)
acl-tester.lisp
The test framework within the test package.
To load it, be sure to push the :tester keyword into the *features* list before loading the ACL-Compat lite.asd or defsys.lisp file.

Platforms: LispWorks 4.3-6.1, SBCL.

Requires Ystok-Library.

Port of Pierre R. Mai's MD5 with LispWorks 32bit arithmetic

This is a portable Common Lisp implementation of MD5 algorithm. On LispWorks, it switches to a specialized code that uses a fast raw 32bit arithmetic introduced in LW 4.4. This version demonstrates speed increase of about two hundred times compared to a naive port.

LispWorks for Windows - customizing IDE

LWW novices may feel uncomfortable with standard keyboard bindings and gestures. No wonder - many Windows text editors stimulate quite different habits. The customization is a sophisticated combination of Emacs and PC-mode commands extending LWW editor functionality in a consistent way.

Projects of the Past

ExploTab

Explotab is a CAPI-based application with user interface resembling the Windows Explorer. It was built on top of the original (and rather outdated by now) SQL/ODBC module by Paul Meurer and augments this module by ODBC catalog functions and facilitates navigation through database schema.

Now the application is being ported to YstokSQL and YstokGrid.

YLisp - Common Lisp development system for DOS and Windows

This is a rather antiquarian Lisp system issued in 1993! The author had got lots of experience while coupling about 25000 lines of C code, promised to give up implementing Lisp himself, and keeps this promise...

New era of YLisp

Thanks to Arseny Slobodyuk (ampy<at>users<dot>sourceforge<dot>net), the Windows version of YLisp is getting started! The console application is already available - take a look at http://www.ich.dvo.ru/~nmr/ylisp/english.htm for the latest version. Feel free to contact Arseny for prospects and wishes.

See also