3 min read

Arctic Repository 1.1

I think I will mention this here. There is a new release of the Arctic Repository. Here are the release notes:

This archive contains the aggregate work of the following branches in
their respective directories.

us.sacrideo.misc => arcfide
us.sacrideo.foof => foof
us.sacrideo.neil => neil
us.sacrideo.oleg => oleg
us.sacrideo.riastradh => riastradh
us.sacrideo.srfi => srfi

Code is merged into this directory on an as needed basis, usually for
preparing the release tarballs. If you wish to follow the most up-to-date
changes, please track the branches mentioned above.

The main branch for this archive is us.sacrideo.arcrepo.

Currently most of these libraries are designed to run on Chez Scheme.
Some of the code has been designed with portability in mind, or is approaching
that goal, so eventually this repository should hold fairly portable or eash to port
code in a ready to port form.

Set of libraries includes in the Arctic Repository:


The following libraries are my own personal Miscellaneous libraries. They come with
relatively detailed source level documentation.

* Base64
* A set of extended definition forms
(define-integrable, define-constant, define-auxilary-keywords)
* FFI Bindings for expansion time binding of foreign values
* MIME parsers
* A new modlisp library in a functional style for web programming
* A set of additional parser utilities for parser combinators
* RFC2822 parsing
* An useful sockets library
* Swapping primitives for swapping bindings and values
* Variant Types a la Taylor Campbell's version
* Query String handling for URLs and POST requests
* Foreign Type abstractions for FFI code
* Authorize.NET libraries
* Build Utilities for easily building programs
* An Errno library for accessing errno in Scheme
* A script for converting SXML to HTML.


Neil Van Dyke's CSV code


Oleg's code

* CGI Processing
* SSAX + SXML + SXPath and tools


Alex Shinn's code

* Irregex regular expressions
* A IU compatible MATCH


Libraries originating with Taylor Campbell

* Foof looping macros and nested looping macros
* Parser combinators
* Schemantic-Web (RDF, Turtle, and N-tuple parsers and libraries)
* Concurrent ML for Scheme
* TRC Testing framework


Code from the Portable R6RS SRFIs project.

Aaron W. Hsu

Changes from Version 1 to Version 1.1:


* Authorize.NET Support
* Better Build System
* New Foreign Type framework
* Better URL Query String handling libraries
* SXML->HTML convenience
* Improvements to modlisp and sockets.
* Improvements to Scheme Concurrent ML

Added Files:

* arcfide/authorize.net/

This contains a set of modules for working with Authorize.NET
Payment Gateways.

* arcfide/authorize.net/arb.nw

A module for Authorize.NET Automatic Recurring Billing

* arcfide/building.nw

A library for building programs with a set of dependencies.

* arcfide/errno.nw

A library that provides access to errno.

* arcfide/ffi-bind/types.chezscheme.nw

A set of basic foreign types for Chez Scheme.

* arcfide/noweb_make.mk

Better building for

* arcfide/query-strings.nw

Implement a new interface on Oleg's Query code.

* arcfide/sxml2html.ss

Program to make development in SXML easier.

Changes to Existing files:


* Improvements to document generation
* Improvements to the general build procedure


* Generates better C names when building foreign constants.
* New syntax for defining primitive foreign types
* New syntax for defining foreign C-like structures.


* Uses the new query-string code.
* Uses the improved sockets paradigm.


* Better errno handling
* Socket Options
* Documentation improvements and better integer handling
* Most of the Chezisms have been removed
* get-address-info has been improved to be more natural to use
* Now uses explicit foreign type definitions instead of ad hoc
bytevector hackery.
* The internet address handling has been altered and improved.
- string->ipv4 is now exported.
- string->internet-address now handles ip addresses without


* Scheme CML has been improved and upgraded to a more recent
version, with better and nicer frameworks

Sneak Preview

What is next for the Arctic Repository? Think Windows Sockets support and Minikanren Logic Programming. :cool: