tabexpand.scm Tab Character Expansion in Scheme

There is no denying that ASCII tab characters are an archaic abomination [JWZ]. Savvy Emacs users might have noticed that the [Quack] option variable quack-tabs-are-evil-p defaults to true. Note also that quack-tidy gladly slays any tab in sight, laughing maniacally as only the truly righteous can. Sadly, not all strings in the universe are Scheme code subject to the wrath of Quack, therefore...

This very simple Scheme library provides procedures for expanding tab characters. It was written early one Sunday morning to complement the plethora of PLT-specific solutions being offered to the problem on the nascent Schematics cookbook Wiki. Its source code is a bit verbose, but it tries not to generate much garbage, it supports non-zero starting columns, and it should work with any R5RS Scheme implementation that supports [SRFI-6]. (A future edition of this continuing epic might remove the dependency on SRFI-6, should we bother to benchmark and find that some implementations are not as efficient as we'd like.)

At time of this writing, the author notes with no small amount of interest that the Internet domain name tabexpand.com has not yet been taken.

See documentation for cites and more info...

The current version of tabexpand.scm is 0.1 (9-May-2004).

You can download file tabexpand.scm, Scheme source code with embedded documentation.

You can download file tabexpand.html, documentation in HTML format.

You can download file tabexpand.pdf, documentation in PDF format.

You can download file tabexpand-0-1.plt, PLT Scheme package.

© Copyright Neil Van Dyke, All Rights Reserved      Contact    Legal