create command-line interfaces
(sph io path-pipe-chain)
call procedures with input/output arguments in a chained manner to allow data flow between them.
(sph lang parser type-signature)
a parser and writer for a type signature notation.
(sph lang plcss)
s-expression language that compiles to css.
(sph lang scm-format)
format scheme code
binding to the libmagic library from the "file" utility that guesses file types
(sph process create)
create child processes and process chains
scgi interface. a server that accepts scgi requests and calls a custom procedure to handle them.
a generic socket data processing server that uses a thread-pool for parallel request processing.
string processing. includes string-replace-string, a fast replacer.
automated code testing with composable modules.
(sph test performance)
adaptive performance testing with formatted result display.
thread-pool that uses wait-conditions to pause unused threads and has a customisable queue type
time as tai or utc nanoseconds since the unix epoch or gregorian calendar dates.
(sph time gregorian)
gregorian calendar calculations
(sph time rfc3339)
parse and create strings in the rfc3339 time format
(sph web atom)
create atom syndication feeds with sxml
association list processing
copy files and set permissions, with an optional, automatically created command line interface for users to set install options.
extract and display documentation (bindings, arguments and docstrings) from modules
(sph documentation shtml)
rnrs exception helpers. experimental
(sph filesystem versioning)
gives a path to the next version of a file and automatically archives the old version.
fine-grain parallelism based on (sph thread-pool).
port and file input/output.
(sph lang config)
a scheme syntax configuration file format that parses to a alist or hashtable, possibly nested.
(sph lang indent-syntax)
converting to and from strings with indented lines
(sph lang itpn)
helpers for working with a notation that lists space separated tags and then associated text indented in following lines.
(sph lang parser outline)
parse a markup structure where headings are prefixed by one or multiple characters for nested sections.
(sph lang scheme)
scheme parsing helpers including helpers for implicitly quasiquoted configuration files
(sph lang scm-format base)
(sph lang scm-format format)
formatters for individual expressions
(sph lang scm-format transform)
transformations on the abstract syntax tree
(sph list other)
additional list processing bindings that depend on libraries that depend on (sph list). to avoid circular dependencies
a rudimentary and incomplete but fast json writer
diagnostic logging with routing by category to none or many configurable output-targets
a few mathematics related methods
guile module system and rnrs library related procedures
(sph module binding-info)
get information about bindings in modules
execute programs and evaluate shell or scheme code
(sph server base)
create and analyse set selections: permutations, combinations and similar
composable interpolated paths through points.
create sql-statements from scheme data
srfi-41 stream helpers
(sph system reader)
a scheme reader that can include comments. depends on guile-reader
(sph test base)
(sph test report)
test reporters for writing to standard output for example while tests are running are implemented as a special hook
(sph time stream)
create an srfi-41 stream of (sph time) date vectors between two dates
(sph time string)
time string conversions.
(sph time utc)
utc related time calculations.
process tree-like list structures.
helpers for srfi-4 and compatible vectors. for example f32vector
(sph web html)
html related methods including an advanced html multipart form data parser
(sph web http)
(sph web shtml)
helpers to create html via sxml