| Related sites for http://en.wikipedia.org/wiki/GNU_Guile |
| Microsoft_Mum_on_Unix_Licensing_Move Firm, which on Monday announced it was licensing Unix source code and patents from SCO, remains tight-lipped on its reasons for the move; spokesman says no one available to discuss matter further at t | | Eicon_Networks_Corporation Provider of secure Internet connectivity products. Offers devices for connecting PCs and network servers to the Internet and corporate networks, secure communications gateways and media gateways for v | | IT-OPTICS_s_a_ Networking expertise and Linux and Open Source.Mons, Belgium. | | RTF2FO RTF to XML converter RTF documents to XML ones in line with latest W3C specifications for XSL FO formatting semantics. Using different XSL FO rendering tools converted files can ease converted in diff | | The_Linux_Mirror_Project BitTorrent Linux Mirror providing mirrors for many of the big linux distributions. | | JVision Pure Java UML modeling tool that uses Java classes as basis for a model. By Object Insight, Inc. [Commercial, Free Trial] | | AnswerTool Stores and organizes frequently used replies, then lets you reuse them instantly in email or on the Web. Free trial. [Windows 95/98/ME/NT 4.0/2000/XP] | | iVisit Multiparty video chat application that does not require a reflector, central server, or other special hardware. | | Politehnica_University_of_Bucharest Computer Science Department: specialising in Systems Science and Computer Science. | | Vivvo Article management software that helps create a full article website quickly and easily. [Commercial] | | EXG Eiffel X Graphics, another Eiffel GTK+ binding. | | Knife Mail and news client, with support for SMTP, IMAP, POP3, Unix Mailbox, and NNTP. [Open Source, GPL] | | Jesux Jesux (pronounced Hay-sooks) is a new Linux distribution for Christian hackers, schools, families, and churches. There is already a core distribution being prepared, based on RedHat's distribution. Pl | | BasicLinux Mini distribution runs in 4 MB RAM disk, good for older systems (i486). Descriptions, documents, FAQ, downloads. | | Mottac_Communications Web side design, hosting and promotion. Based in Lake Charles, Louisiana. Services, portfolio, clients. | | ChiMu_OO_and_Java_Development__Guidelines_and_Resources Detailed tutorial by Mark Fussel on coding including concepts of object-oriented programming and coding style. | | Param_Web_Solutions Website and logo design, hosting, site promotion, domain registration, software development, multimedia presentation, 3D animation and object module designing. | | Atlast_Computer_Solutions The one stop solution for writing notes against any files on disks, CD-ROMs, removable media, over networks and even within compressed ZIP files. | | Clearcase_VC_for_NT_Emacs Extension to the Emacs lisp version control package, not just for NT. | | WeAreAffiliates_Com Affiliate programs directory with 1000`s of programs and networks. |
|
GNU Guile - Wikipedia, the free encyclopedia /**/ GNU Guile From Wikipedia, the free encyclopedia Jump to: navigation, search GNU Guile Developed byFree Software FoundationLatest release1.8.5 [1] / 2008-05-07; 153 days agoOSGNUTypeProgramming languageLicenseGNU Lesser General Public LicenseWebsitegnu.org: guileStandard(s)R5RSGNU Guile is an interpreter/virtual machine for the Scheme programming language. It was first released in 1993.[2] Guile includes modularized extensions for POSIX system calls, APL array functionality, and others, packaged as an object[3] library. "Libguile" allows the language to be embedded in other programs, and used as an interface for other languages which allow close integration[4].Guile is the "official" extension language of the GNU Project, although, as of 2006, it has been used for only a handful of major projects. Its name was coined in a Usenet discussion by Lee Thomas.[5] The idea is that "the developer implements critical algorithms and data structures in C or C++ and exports the functions and types for use by interpreted code. The application becomes a library of primitives orchestrated by the interpreter, combining the efficiency of compiled code with the flexibility of interpretation."[6]Contents1 Scheme compliance2 History3 Programs using Guile4 References5 External links//[edit] Scheme complianceFor much of its history, Guile did not strictly adhere to Scheme standards:The Guile version of Scheme differs from standard Scheme ([Clinger]) in two ways. First, in Guile Scheme, symbols are case sensitive. Second, in Guile Scheme, there is no distinction made between the empty list and boolean false (between '() and #f).[7]In recent releases of Guile, symbols are still case sensitive, but the empty list and boolean false are now distinct. A switch in the reader procedure, which is Guile's lexical scanner and parser, enables Guile to treat symbols as case-insensitive. The latest adopted Scheme standard, R6RS, departs from the previous standards by adopting case-sensitive symbols as the default.The close interaction between Guile and the application can come at a cost. Scheme requires implementations to optimize tail recursion because of Scheme's heavy use of recursion, but most techniques interfere with interoperation; Guile is forced to compromise and optimize tail calls within purely Scheme functions and programs, but to abandon tail recursion when C functions enter the picture.[8] Implementation of call/cc, another requirement of the Scheme standard, is also unsatisfactory — to handle continuations with C involves copying the entire C stack into the heap.[9] Garbage collection, too, is not high-performance because C code could well have a pointer to a Scheme object; to avoid loss of needed cons cells, Guile's garbage collector is a conservative one which can miss cells that could be reclaimed.[10][edit] HistoryGuile had its origin in a heated discussion (later dubbed "the Tcl Wars") started by Richard Stallman, who stated that Tcl was underpowered for application scripting; he proposed Scheme as the preferred language for extending GNU applications and eventually launched the Guile project.[11] Because an appropriate Scheme interpreter did not exist at that time, Guile was developed to fill the niche. Tom Lord (later the developer of GNU arch) was heavily involved in the development of Guile while employed by Cygnus Solutions (later acquired by Red Hat). Its earlier versions were forked from SIOD ("Scheme In One Day"[12]) and the SCM interpreter[13], before 1995[14].One of the goals of Guile is to allow other languages to be translated into Scheme and thence into portable byte-code; thus Guile would effectively be a language-neutral runtime environment. This goal has not been fulfilled yet, though various attempts have been made (a dialect of Scheme essentially differing only in its C-like syntax; a translation of Emacs Lisp; a Tcl converter motivated by TkWWW; and something roughly resembling the Logo programming language).Guile Scheme supports XML, XPath, and XSLT in the forms of SXML, SXPath and SXSLT, respectively. The S-expression-based XML processing is provided by guile-lib.Guile is supported by SLIB the portable Scheme library.[edit] Programs using GuileGEDAGNU AnubisGnuCashGNU LilyPondGNU MDKGNU RobotsGNU ServeezGNU TeXmacsGnoTimemcron — a backwards compatible replacement for Vixie cron written in Guile[15]OpenCog[16]ScwmSkribiloSnd (software)TkWWW — defunct web browser; was a Free GNU browser written & extensible in Tk[edit] References^ Guile project site, What's the latest news?^ Blandy 1997, p. 102.^ "Strictly speaking, Guile is an object library, not an executable." Blandy 1997, p. 89.^ "To encourage customization, Guile provides extensive interfaces, allowing C code to interact with the Scheme world. C code can freely create, access, and mutate Scheme objects; C functions may call Scheme functions and vice versa; C code may add new types to the Scheme world and take advantage of Guile's garbage collection… Most of the standard Scheme procedures are implemented by C functions, visible to Guile clients; for example, applications can call the C function scm_cons, which is the underlying implementation of the Scheme procedures cons." Blandy 1997, pp. 94, 96.^ "The name Guile was first suggested in a Usenet discussion by Lee Thomas." Guile Scheme 1995.^ Blandy 1997, pp 87.^ "An Anatomy of Guile, The Interface to Tcl/Tk", 1995^ Blandy 1997, p. 99.^ "Because Guile allows C functions and Scheme functions to call each other freely, a Guile continuation may include both C and Scheme stack frames. For simplicity, Guile's implementation of call/cc copies the entire C stack into the heap; invoking a continuation copies the stack back from the heap and uses the longjmp function to reactivate it. This implementation has a number of drawbacks…", Blandy 1997, p. 99.^ Blandy 1997, pp. 99–100.^ Tcl war.^ SIOD.^ "It's hard to determine just who designed Guile. A large share of the credit surely belongs to Aubrey Jaffer whose excellent Scheme interpreter, SCM, forms the core of the implementation. The module system was designed and built by Miles Bader…" "An Anatomy of Guile, The Interface to Tcl/Tk", 1995^ "Here is a very, very brief history of this interpreter. I hope that people involved in its past will contribute more to this document. SIOD: George Carrette wrote SIOD, the earliest version. Although most of this code as been rewritten or replaced over time, the garbage collector from SIOD is still an important part of Guile. SIOD is still actively developed and freely available (search for "siod"). It has a very small footprint." Guile Scheme 1995.^ "It is written in pure Guile, and allows configuration files to be written in scheme (as well as Vixie's original format) for infinite flexibility in specifying when jobs should be run." mcron, Project GNU.^ OpencCog"Guile Scheme". December 1995; specification and history; © FSF."An Anatomy of Guile, The Interface to Tcl/Tk" (1995)Jim Blandy, "Guile: An Interpreter Core for Complete Applications", Handbook of Programming Languages, Volume IV: Functional and Logic Programming Languages, ed. Peter H. Salus. 1998 (1st edition), Macmillian Technical Publishing; ISBN 1-57870-011-6, pp. 87–104.[edit] External links Free software portalGNU Guile homepageWhat Is Guile?Archives of the Tcl WarsA 2003 interview with GNU Guile maintainer Marius Vollmerv • d • eGNU ProjectHistoryGNU Manifesto · Free Software Foundation · History of free software LicencesGNU General Public License · GNU Lesser General Public License · Affero General Public License · GNU Free Documentation License · GPL linking exceptionSoftwareGNU (variants) · Hurd · GNOME · Gnuzilla · IceCat · Gnash · Bash · GCC · GNU Emacs · glibc · Coreutils · Build system · Other GNU packages and programsPublic speakersRobert J. Chassell · Loïc Dachary · Ricardo Galli · Georg C. F. Greve · Federico Heinz · Benjamin Mako Hill · Bradley M. Kuhn · Eben Moglen · Richard Stallman · John Sullivan · Leonard H. Tower Jr.Other topicsGNU/Linux naming controversy · Revolution OSRetrieved from "http://en.wikipedia.org/wiki/GNU_Guile" Categories: GNU project • GNU project software • Free compilers and interpreters • Scripting languages • Scheme interpreters • Scheme implementations Views Article Discussion Edit this page History Personal tools Log in / create account if (window.isMSIE55) fixalpha(); Navigation Main page Contents Featured content Current events Random article Search Interaction About Wikipedia Community portal Recent changes Contact Wikipedia Donate to Wikipedia Help Toolbox What links here Related changesUpload fileSpecial pages Printable version Permanent linkCite this page Languages Deutsch Español Français Italiano This page was last modified on 29 September 2008, at 10:23. All text is available under the terms of the GNU Free Documentation License. (See Copyrights for details.) Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a U.S. registered 501(c)(3) tax-deductible nonprofit charity. Privacy policy About Wikipedia Disclaimers if (window.runOnloadHook) runOnloadHook(); |
|