Hmm, type annotations in typed racket is defined according to
http://docs.racket-lang.org/ts-guide/more.html#%28part._.Type_.Annotation_and_.Binding_.Forms%29
Any objections against that scheme? ideas?
A suggestion would be to have a type item in tree-il that works like
(<type> type expression)
And at first stage let tree-il->glil code just ignore this information.
For <let> tree-il code we could just use the method
(let ((x : number 1)) code)
-->
(<let> ((<type> number x)) (1) code)
For lambda expressions we could use
(lambda ([x : integer]) : symbol code)
as
(<lambda> ((<type> integer x)) (<type> symbol code))
So, a first step would be to enter a type tree-il record and then make sure that various tree-il->* translators can
use them (ignoring them at first). modify scheme->tree-il to allow typeed variants, and also enter a (type x) form
directly.
What do you think?
Hi Stefan,
Thanks for this mail, it's interesting.
Agreed, that this would be good. Something to think about for 2.2.
On Fri 06 May 2011 23:18, Stefan Israelsson Tampe <stefan.itampe@gmail.com> writes:
> It would be good if there was a standard way to enter type information
> in guile and if that information could be hooked into the tree-il
> representation. But until then I will just use a simple macro
> framework to enter typed functions.
Happy hacking,
Andy
--
http://wingolog.org/