Scsh logo.png
Ph: 465097086

Scsh

From Wikipedia, the free encyclopedia
Jump to: navigation, search
SCSH (SCheme SHell)
Developer(s) Olin Shivers
Brian Carlstrom
Martin Gasbichler
Mike Sperber
Initial release October 31st, 1994
Stable release 0.6.7 / 16 May 2006
Development status Active
Size 4.2 MB
Available in English
Website scsh.net

Scsh is a POSIX API layered on top of the Scheme programming language in a manner to make the most of Scheme's capability for scripting. It is limited to 32-bit platforms but there is a development version against the latest scheme48 that works in 64bit mode.[citation needed].

[edit] Features

Scsh includes these notable features:

Library support for list, character, and string manipulations; Regular expressions manipulation support using scheme regular expressions, a little languages approach to the capabilities; Strong networking support; High-level support for awk like scripts, integrated into the language as macros; Abstractions supporting pseudo terminals; A shell language, modeled using quasi-quotation.

[edit] Example

Print a list of all the executables available in the current PATH to the standard output:
#!/usr/local/bin/scsh -s
!#
 
(define (executables dir)
  (with-cwd dir
    (filter file-executable? (directory-files dir #t))))
(define (writeln x) (display x) (newline))
 
(for-each writeln
  (append-map executables ((infix-splitter ":") (getenv "PATH"))))

[edit] "Acknowledgments"

The reference manual for Scsh includes a spoof Acknowledgments section[1] written by Olin Shivers. It begins

Who should I thank? My so-called "colleagues", who laugh at me behind my back, all the while becoming famous on my work? My worthless graduate students, whose computer skills appear to be limited to downloading bitmaps off of netnews? My parents, who are still waiting for me to quit "fooling around with computers," go to med school, and become a radiologist? My department chairman, a manager who gives one new insight into and sympathy for disgruntled postal workers?

and concludes with

Oh, yes, the acknowledgements. I think not. I did it. I did it all, by myself.

[edit] See also

[edit] References

[edit] External links


Personal tools
Namespaces
Variants
Actions


You are viewing a mobilized version of this site...
View original page here

Mobilized by Mowser Mowser