Ystok-Library is a portable Common Lisp library of general purpose macros, functions, and utilities. It is is required by other Ystok-something packages.
Ystok-Library includes the
defnative macro for customizing
national language strings. Such strings are compiled into application
when delivering in a specific language.
The lang/ subdirectory contains language files for German and Russian.
For run-time string translation, Ystok-Library includes the following:
The file-utils.lisp contains some useful functions:
string-to-octets, which are not built in every Common Lisp implementation.
The library includes the portable code of META, a classic technique for building recursive descent parsers, which is both simple and effective. See "Pragmatic Parsing in Common Lisp" of Henry G. Baker at http://citeseer.ist.psu.edu/baker91pragmatic.html or inside http://portal.acm.org/ or just download Prag-Parse.ps, the original article in PostScript.
The meta-parse-number.lisp file in the distribution bundle presents an example of using META. This approach is used by
The lw-compat.lisp file contains reimplementation of useful primitives from
string-append, and the like.
Ystok-Library optionally depends on Ystok-FFC.
Ystok-Library is required by YstokCard, YstokGrid, YstokHelp, YstokHTML, YstokSQL, YstokWidgets, Ystok-Local-Time, Ystok-URI, and our version of ACL-Compat lite.
The source code was tested on the following Lisp implementations:
Ystok-Library is available from
The distribution package contains both the ASDlite/ASDF-based ycard.asd and the LispWorks-based defsys.lisp system definition files.