Current Issue


Table of contents

CD-ROM

Sys Admin and The Perl Journal CD-ROM version 12.0

Version 12.0 delivers every issue of Sys Admin from 1992 through 2006 and every
issue of The Perl Journal from 1996-2002 in one convenient CD-ROM!

Order now!

Sys Admin Magazine > Archives > 2002 > January

Systems Administration with Scsh

Evan Sarmiento

Shell scripting languages provide systems administrators with powerful tools to automate mundane tasks, saving hours of work. Most of these languages, however, do not provide a well-designed object system, nor are they optimized for recursion and abstraction. Scheme, a dialect of LISP, incorporates all the features of a good programming language as listed above. Because Scheme cannot interact with UNIX primitives alone, there is a Scheme software package called scsh (the scheme shell). Scsh provides a set of macros for the Scheme programming language, adding the ability to call on all standard UNIX system calls and even adds regular expressions.

In this article, I will briefly introduce and describe the important features of the Scheme language and present some of my own scripts written in scsh, which exhibit many of the listed features. This article presumes that you know how to program using Scheme. If you are new to Scheme, read the Notes section at the end of this article, which provides numerous learning resources.

You can download scsh from:

http://www.swiss.ai.mit.edu/ftpdir/scsh/

There are easy-to-follow installation instructions on the site. For FreeBSD users, scsh is present in the ports collection, /usr/ports/shells/scsh.

Scheme comes in many variants, such as MIT Scheme, Scheme 48, MzScheme, and others. Scsh is based on Scheme 48. However, I find MIT Scheme to be the most complete. You can download MIT Scheme from:

http://www.swiss.ai.mit.edu/projects/scheme/

Scheme tutorials and the book Structure and Interpretation of Programs (Second Edition by Harold Abelson and Gerald Jay Sussman, with Julie Sussman, The MIT Press) are provided online at:




MarketPlace

Flowcharts from C/C++ code -- Free trial download
Understand C/C++ code in less time. A new team member ? Inherited legacy code ? Get up to speed faster with Crystal Flow for C/C++. Code-formatting improves readability. Flowcharts are integrated with code browser. Export flowcharts to Visio.

Automate Software Builds with Visual Build Pro
Easily create an automated, repeatable process for building and deploying software.

Discover WinDev 12 RAD
and develop 10 times faster ! ALM, IDE, .Net, PDF, 5GL, Database, 64-bit, etc. Free Express version

Web based bug tracking - AdminiTrack.com
AdminiTrack offers an effective web-based bug tracking system designed for professional software development teams.

Wanna see your ad here?