IronScheme
Encyclopedia
IronScheme is an implementation of the Scheme programming language targeting the Microsoft
.NET framework
. IronScheme is a complete rewrite of IronLisp
, incorporating lessons learnt while developing IronLisp.
IronScheme was planning to build upon the Microsoft Dynamic Language Runtime
, but decided to abandon this idea because the DLR branch
the project used became out of sync with the trunk
, and also because the DLR, according to the developers, could not support the majority of the Scheme's requirements. IronScheme eventually made a limited use of its own version of the Microsoft's DLR, but it had to patch it to be able to implement some required Lisp features like Tail call
s.
Microsoft
Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...
.NET framework
.NET Framework
The .NET Framework is a software framework that runs primarily on Microsoft Windows. It includes a large library and supports several programming languages which allows language interoperability...
. IronScheme is a complete rewrite of IronLisp
IronLisp
IronLisp was an implementation of the Lisp programming language targeting the Microsoft .NET framework. It was announced by Xacc.ide on July 23, 2007. It was superseded by IronScheme November 5, 2007 while still in beta. No further development will take place on IronLisp.IronLisp Beta versions have...
, incorporating lessons learnt while developing IronLisp.
IronScheme was planning to build upon the Microsoft Dynamic Language Runtime
Dynamic Language Runtime
The Dynamic Language Runtime from Microsoft is an ongoing effort to bring a set of services that run on top of the Common Language Runtime and provides language services for several different dynamic languages...
, but decided to abandon this idea because the DLR branch
Branching (software)
Branching, in revision control and software configuration management, is the duplication of an object under revision control so that modifications can happen in parallel along both branches....
the project used became out of sync with the trunk
Trunk (software)
In the field of software development, trunk refers to the unnamed branch of a file tree under revision control. The trunk is usually meant to be the base of a project on which development progresses. If developers are working exclusively on the trunk, it always contains the latest cutting-edge...
, and also because the DLR, according to the developers, could not support the majority of the Scheme's requirements. IronScheme eventually made a limited use of its own version of the Microsoft's DLR, but it had to patch it to be able to implement some required Lisp features like Tail call
Tail call
In computer science, a tail call is a subroutine call that happens inside another procedure and that produces a return value, which is then immediately returned by the calling procedure. The call site is then said to be in tail position, i.e. at the end of the calling procedure. If a subroutine...
s.