Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Gauche (Scheme implementation)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{inline|date=September 2016}} {{Infobox Software | name = Gauche | logo = | screenshot = | caption = | developer = Shiro Kawai | released = {{Start date and age|2001|01|11|df=yes}} | latest release version = {{wikidata|property|preferred|references|edit|P348|P548=Q2804309}} | latest release date = {{Start date and age|{{wikidata|qualifier|preferred|single|P348|P548=Q2804309|P577}}|df=yes}} | operating_system = [[Cross-platform]] | genre = [[Programming language]] | license = [[BSD License]] | website = {{URL|practical-scheme.net/gauche/}} }} '''Gauche''' is an R7RS [[Scheme (programming language)|Scheme]] implementation. It is designed for [[Scripting language|scripting]] in a production environment. It is intended to allow programmers and system administrators to write scripts in support of daily operations. Quick startup, built-in system interface, native multilingual support are some of its key design goals. Gauche is [[free software]] under the [[BSD License]]. It is primarily developed by Shiro Kawai. ==Features== *Quick startup - Gauche includes common features in its executable, while less common functions are in libraries which are loaded on demand. *Module system - A simple module system, API compatible to [[STklos]]. *Object system - [[CLOS]]-like object system with [[metaobject protocol]]. Almost API compatible to [[STklos]]. It is also similar to [[GNU Guile|Guile]]'s object system. *Native multilingual support - Strings are represented by multibyte string internally. You can use UTF-8, EUC-JP, Shift-JIS or no multibyte encoding. Conversion between native coding system and external coding system is supported by port objects. *Multibyte regexp - Regular expression matcher is aware of multibyte string; you can use multibyte characters both in patterns and matched strings. *Built-in system interface - Gauche has built-in support for most POSIX.1 system calls. *Network interface - Has API for socket-based network interface, including IPv6 if the OS supports it. *Multithreading - Multithreading is supported on top of pthreads. Scheme-level API conforms to SRFI-18. *DBM interface - Interfaces to dbm, ndbm and/or gdbm. *XML parsing - Oleg Kiselyov's SXML tools are included. ==References== {{reflist}} ;Notes *R. Kelsey, W. Clinger, J. Rees (eds.), Revised^5 Report on the Algorithmic Language Scheme, Higher-Order and Symbolic Computation, 11(1), September, 1998 and ACM SIGPLAN Notices, 33(9), October, 1998. *Carl Bruggeman, Oscar Waddell and R. Kent Dybvig, Representing control in the presence of one-shot continuations, in Proceedings of SIGPLAN '96, pp. 99-107, 1996. *Eugene Myers, An O(ND) Difference Algorithm and Its Variations, Algorithmica Vol. 1 No. 2, pp. 251-266, 1986. *Gregor Kiczales, Jim Des Rivieres, Daniel Bobrow, The Art of Metaobject Protocol, The MIT Press. *Kim Barrett, Bob Cassels, Paul Haahr, David A. Moon, Keith Playford, P. Tucker Withington, A Monotonic Superclass Linearization for Dylan, in Proceedings of OOPSLA 96, October 1996. ==External links== *[http://practical-scheme.net/gauche/ Gauche home page] *[http://practical-scheme.net/gauche/man/gauche-refe.html Gauche reference manual] *[http://practical-scheme.net/gauche/devinfo.html Gauche development progress & plan] *[http://practical-scheme.net/gauche/features.html Standards conformance and platform list] *[http://practical-scheme.net/docs/jlugm2000.html Shooting A Moving Target - An Experience in Developing a Production Tracking Database] *[https://web.archive.org/web/20111001132005/http://users.lava.net/~shiro/Private/essay/gdc2002.html Tracking Assets in the Production of 'Final Fantasy: The Spirits Within'] *[http://practical-scheme.net/docs/ILC2002.html Gluing Things Together - Scheme in a Real-time CG Content Production] [[Category:Scheme (programming language) interpreters]] [[Category:Scheme (programming language) implementations]] [[Category:Free and open source interpreters]] [[Category:Cross-platform free software]] [[Category:Software using the BSD license]] {{free-software-stub}} {{compu-prog-stub}}
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Compu-prog-stub
(
edit
)
Template:Free-software-stub
(
edit
)
Template:Infobox Software
(
edit
)
Template:Inline
(
edit
)
Template:Reflist
(
edit
)