Scheme

From Gambit wiki

(Difference between revisions)
Jump to: navigation, search
(Web sites)
m
 
(6 intermediate revisions not shown)
Line 1: Line 1:
==Scheme in a nutshell==
==Scheme in a nutshell==
-
* Scheme is a dialect of the Lisp programming language developed in the 70s, that inherently supports ''functional programming'' but is easily ''multi-paradigm''.
+
* Scheme is a dialect of the [http://en.wikipedia.org/wiki/Lisp_(programming_language) Lisp] programming language developed in the 70s, that inherently supports ''[http://en.wikipedia.org/wiki/Functional_programming functional programming]'' but is easily ''[http://en.wikipedia.org/wiki/Multi-paradigm multi-paradigm]''.
-
* Scheme is one of the two most major Lisp dialects, the other one being [http://en.wikipedia.org/wiki/Common_Lisp Common Lisp].
+
* Scheme is one of the two major Lisp dialects used for general-purpose programming, the other one being [http://en.wikipedia.org/wiki/Common_Lisp Common Lisp].
* Scheme provides very few primitives defined in its core (known as the "RnRS standard" where "n" is an integer) as the rest is defined in extensions or libraries.
* Scheme provides very few primitives defined in its core (known as the "RnRS standard" where "n" is an integer) as the rest is defined in extensions or libraries.
Line 9: Line 9:
* Scheme can be used for any kind of software development and can be learned in a single day thanks to its minimalist yet powerful design.
* Scheme can be used for any kind of software development and can be learned in a single day thanks to its minimalist yet powerful design.
-
* ''High order'' programming and ''macros'' allow the developers using Scheme to write efficient and easily maintainable code, hence Scheme's label as the programming language of choice for many industries as well as academics.
+
* ''[http://en.wikipedia.org/wiki/Higher-order_programming High order]'' programming and ''[http://people.csail.mit.edu/gregs/info-dylan-archive-html-2002/msg00070.html macros]'' allow the developers using Scheme to write efficient and easily maintainable code, hence Scheme's label as the programming language of choice for many industries as well as academics.
 +
 
 +
* Among programming languages, Scheme is quite unique about natively supporting [http://community.schemewiki.org/?call-with-current-continuation continuations], a very powerful language construct using which for instance exception handling, [http://en.wikipedia.org/wiki/Coroutine coroutines], and [http://common-lisp.net/project/cl-weblocks/ weblocks] behaviour can be implemented.
Line 35: Line 37:
*[http://groups.google.com/group/comp.lang.scheme comp.lang.scheme on Usenet]
*[http://groups.google.com/group/comp.lang.scheme comp.lang.scheme on Usenet]
-
*The #scheme channel on [http://www.mibbit.com Freenode IRC] (remember there's #gambit for Gambit in particular as well)
+
*The #gambit and #scheme channels on [http://www.mibbit.com Freenode IRC]
==Other resources==
==Other resources==
*[http://www.iro.umontreal.ca/~boucherd/mslug/meetings/20041020/minutes-en.html The 90 minutes Scheme to C compiler]
*[http://www.iro.umontreal.ca/~boucherd/mslug/meetings/20041020/minutes-en.html The 90 minutes Scheme to C compiler]
 +
*[http://www.artima.com/weblogs/index.jsp?blogger=micheles The adventures of a Pythonista in Schemeland]
 +
 +
 +
[[Category: Language]]

Latest revision as of 04:11, 28 October 2008

Contents

Scheme in a nutshell

  • Scheme is one of the two major Lisp dialects used for general-purpose programming, the other one being Common Lisp.
  • Scheme provides very few primitives defined in its core (known as the "RnRS standard" where "n" is an integer) as the rest is defined in extensions or libraries.
  • Scheme can be used for any kind of software development and can be learned in a single day thanks to its minimalist yet powerful design.
  • High order programming and macros allow the developers using Scheme to write efficient and easily maintainable code, hence Scheme's label as the programming language of choice for many industries as well as academics.
  • Among programming languages, Scheme is quite unique about natively supporting continuations, a very powerful language construct using which for instance exception handling, coroutines, and weblocks behaviour can be implemented.


Scheme is a solid way to state of the art software development.

Literature

  • The Revised5 Report on the Algorithmic Language Scheme here and more in particular here.

Web sites

Forums and Chat

Other resources

Personal tools
documentation