Peter Bex
About me
I'm a Schemer and CHICKEN core developer from the Netherlands.
My ongoing core contributions mainly focus on the numerical tower code, keeping the in-core copy of the irregex library up-to-date with the upstream version (of which I'm a co-maintainer), squashing bugs and the odd security fix. I enjoy deep diving into odd corners of a code base to get a better understanding and then improve any weirdnesses I find.
If you're looking for CHICKEN or Postgres support, I'm available as a consultant. For more info, see my company site Pebble Software.
Eggs I maintain
Besides core, I also maintain the following eggs:
- Postgresql - bindings to libpq.
- Spiffy the webserver.
- spiffy-cgi-handlers (with Andy Bennett) - CGI handlers for Spiffy.
- URI-generic (with Ivan Raikov) - parser for URI syntax as per RFC 3986.
I've written the following eggs:
- Colorize - a port of the Lisppaste colorizing code (from Common Lisp).
- Crypt - bindings for the UNIX crypt() C function, packaged with some fallback implementations.
- Henrietta-cache - a caching system for the distributed egg repository.
- HTTP-client - high-level HTTP client library.
- Intarweb - a more convenient HTTP library (serves as the plumbing for Spiffy and Intarweb).
- SCSH-process - A reimplementation of the Scheme Shell's process pipeline notation.
- simple-md5 - Scheme wrapper of a common MD5 C library.
- URI-common - More convenient support for parsing specific URI syntax of common protocols like HTTP.
- qwiki (with Ivan Raikov) - The wiki engine serving the page you're currently reading.
And occasionally, when I feel like it or when it's really needed, I work on the following eggs. None of these are authored by me and I'm not the official maintainer of any here either:
- Defstruct - A convenient alternative to define-record (from Dorai Sitaram).
- Sendfile - send a file as quickly as possible from A to B.
- SVN-client - Bindings for libsvn.
- Sxml-transforms - SXML transformations (from the SSAX project).
- Sxpath - Structured XPath selectors (also from the SSAX project).
Abandoned eggs
I no longer have as much free time (or energy) to hack on random projects, so there are quite a few eggs that I authored or maintained at some point in time but are now abandoned or been handed over to a new maintainer.
- 9p (with Alaric Snell-Pym) - 9p protocol implementation in pure Scheme.
- Efax - support for their fax gateway service.
- Epeg bindings.
- estraier-client - Full text search using Hyper Estraier.
- Imlib2 bindings.
- Phoghorn - an image gallery library.
- Fancypants - a ligature and quote education library for SXML.
- ugarit-backend-s3 for archiving backups on Amazon S3 or compatible storage services.
- md5 - Scheme wrapper of a common MD5 C library.
- sha1 - Scheme wrapper of a common SHA1 C library.
- XML-RPC - Support for the XML-RPC standard.
- svn-egg-author - Helper scripts for making egg releases with Subversion.
- Prometheus - a prototype-based object system with a really cool name.
- Numbers - Add-on egg for full numeric tower support. Now part of CHICKEN core, so no longer needed.
- FreeTDS (with Peter Danenberg) - bindings for the FreeTDS library.
- SLaTeX - Typesetting of Scheme and Lisp code with LaTeX. This is a CHICKEN port of Dorai Sitaram's package.
- Smsmatrix - support for their SMS and fax gateway service.
- spiffy-dynamic-handlers - dynamic web page handlers for Spiffy (deprecated).
- ssql - "structured sql".
- Sxml-fu - Some useful SXML procedures.
- sxml-modifications - the "modif" parts from sxml-tools (from the SSAX project).
- wmiirc - Scripting library for the wmii window manager.
Other odds and ends
I occasionally write some stuff that isn't suitable for eggification for one reason or another. Here's a list:
- VPS building script. Can be used to provision a VPS image, which initially started as a Scheme conversion of Debian's build-openstack-debian-image shell script.
- Berkeley Packet Filter toolset. Started out with this but lost interest. It's an assembler/disassembler for "machine code" for the BPF VM. A DSL based on s-expressions is provided. It includes syntactic support for byte-compilation of static s-expressions at compile time.
Personal website
I run a blog called More Magic. It has lovingly crafted long-form posts dealing with Scheme, but I like to write about broader programming topics, free software and security as well. My blog is syndicated on Planet Scheme, which I heartily recommend subscribing to. If you run your own Scheme blog please consider asking Jens Axel Søgaard to add your blog to it! Scheme needs more advocacy and documentation.
Contacting me
You can reach me through e-mail at (string-concatenate-reverse '(".net" "more-magic" "@" "peter")) or through Matrix at (string-concatenate-reverse '(".net" "more-magic" ":" "peter" "@")), but only if you've loaded SRFI-13. You can also try joining #chicken on Libera.Chat and asking for sjamaan.