background preloader

Scheme

Facebook Twitter

Welcome to schemers.org! IronScheme. IronScheme - Download: Builds. Playing with IronScheme. Introduction The decision to learn Scheme was not a result of a need to solve any practical problem. Professionally, I have mostly worked with imperative programming languages such as C++, Perl, JavaScript, C#, and wanted to learn something radically different in my spare time. Scheme seemed to be a good choice: a minimalist functional, dynamic, Lisp-based language, used mostly in academia for teaching purposes. The interesting thing about IronScheme is that it runs on top of the .NET runtime. Leppie was kind enough to review this article and give me some useful suggestions. Installation and "Hello World" To get IronScheme Beta 2, go to the IronScheme page at CodePlex, currently at click the "Downloads" link, and pick the download labeled "IronScheme-1.0-beta2-setup.exe". Double clicking the "Lambda" shortcut opens a REPL (read-eval-print loop) window.

Now, let's stop cheating, and make a real "hello world" app with Scheme. "Scheme" in IronScheme. R6RS. Lisp (programming language) The interchangeability of code and data also gives Lisp its instantly recognizable syntax. All program code is written as s-expressions, or parenthesized lists. A function call or syntactic form is written as a list with the function or operator's name first, and the arguments following; for instance, a function f that takes three arguments might be called using (f arg1 arg2 arg3). John McCarthy and Steve Russell Information Processing Language was the first AI language, from 1955 or 1956, and already included many of the concepts, such as list-processing and recursion, which came to be used in Lisp. McCarthy's original notation used bracketed "M-expressions" that would be translated into S-expressions. Lisp was first implemented by Steve Russell on an IBM 704 computer. During the 1980s and 1990s, a great effort was made to unify the work on new Lisp dialects (mostly successors to Maclisp like ZetaLisp and NIL (New Implementation of Lisp)) into a single language.