Scsh: Difference between revisions
Appearance
Content deleted Content added
SPDX: BSD-3-Clause |
|||
Line 18: | Line 18: | ||
| language = English |
| language = English |
||
| genre = [[Unix shell]] |
| genre = [[Unix shell]] |
||
| license = [[BSD licenses|BSD]] |
| license = [[BSD licenses|BSD-3-Clause]] |
||
| alexa = |
| alexa = |
||
| website = {{URL|www.scsh.net}} |
| website = {{URL|www.scsh.net}} |
||
Line 25: | Line 25: | ||
}} |
}} |
||
'''Scsh''' (a ''Scheme shell'') is computer [[software]], a type of [[Shell (computing)|shell]] for an [[operating system]]. It is a Portable Operating System Interface ([[POSIX]]) [[application programming interface]] (API) layered on the programming language [[Scheme (programming language)|Scheme]], in a manner to make the most of Scheme's ability for [[Scripting language|scripting]]. Scsh is limited to [[32-bit]] platforms but there is a development version against the latest [[Scheme 48]] that works in [[64-bit]] mode.<ref>{{cite web |url=https://github.com/scheme/scsh |title=Scheme/Scsh |website=GitHub |access-date=2018-12-04}}</ref> It is [[free and open-source software]] released under |
'''Scsh''' (a ''Scheme shell'') is computer [[software]], a type of [[Shell (computing)|shell]] for an [[operating system]]. It is a Portable Operating System Interface ([[POSIX]]) [[application programming interface]] (API) layered on the programming language [[Scheme (programming language)|Scheme]], in a manner to make the most of Scheme's ability for [[Scripting language|scripting]]. Scsh is limited to [[32-bit]] platforms but there is a development version against the latest [[Scheme 48]] that works in [[64-bit]] mode.<ref>{{cite web |url=https://github.com/scheme/scsh |title=Scheme/Scsh |website=GitHub |access-date=2018-12-04}}</ref> It is [[free and open-source software]] released under the [[BSD licenses|BSD-3-Clause]] license. |
||
==Features== |
==Features== |
Revision as of 09:28, 9 July 2021
Original author(s) | Olin Shivers |
---|---|
Developer(s) | Brian Carlstrom Martin Gasbichler Mike Sperber |
Initial release | 31 October 1994 |
Stable release | 0.6.7
/ 16 May 2006 |
Repository | github |
Written in | Scheme 48 |
Operating system | Unix-like |
Platform | IA-32 |
Size | 4.2 MB |
Available in | English |
Type | Unix shell |
License | BSD-3-Clause |
Website | www |
Scsh (a Scheme shell) is computer software, a type of shell for an operating system. It is a Portable Operating System Interface (POSIX) application programming interface (API) layered on the programming language Scheme, in a manner to make the most of Scheme's ability for scripting. Scsh is limited to 32-bit platforms but there is a development version against the latest Scheme 48 that works in 64-bit mode.[1] It is free and open-source software released under the BSD-3-Clause license.
Features
Scsh includes these notable features:
- Library support for list, character, and string manipulations;
- Regular expressions manipulation support using scheme regular expressions, a domain-specific language (DSL), or little languages, approach to the abilities;
- 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.
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"))))
"Acknowledgments"
The reference manual for Scsh includes a spoof Acknowledgments section[2] written by Olin Shivers. It starts:
- 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.
See also
References
- ^ "Scheme/Scsh". GitHub. Retrieved 2018-12-04.
- ^ "Acknowledgements (reprinted in Philip Greenspun's book, Database-backed Web Sites)". Philip Greenspun. Retrieved 2018-12-04.