Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What are some of the requirements that IronScheme couldn't complete?

According to Wikipedia: "IronScheme, an upcoming Scheme implementation, was planning to build upon the DLR, 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"

Does anyone know what requirements were not fulfilled and why?

like image 607
unj2 Avatar asked Nov 02 '09 03:11

unj2


1 Answers

Originally, one of the big limitations was the ability to generate assemblies. I believe however they did solve that one.

Secondly, I requested support for tail calls, but that never happened, and it an absolute must for Scheme.

Lastly*, the DLR seemed very Python-centric, and had tonnes of functionality not required for Scheme (eg first class environments) which just slowed down things and prevented further optimizations.

Anyways, the plan for version 2, is to rewrite the compiler in Scheme, and then either go barebones with Reflection.Emit, or use a non language centric 'assembler' like the CCI.

*** I am probably forgetting about more

like image 96
leppie Avatar answered Oct 13 '22 18:10

leppie