Am 14.03.2009 um 12:38 schrieb André Thieme:
> At two places we would need a hook to add typing
> information. This could happen via metadata. Those places
> are: variable binding (such as def, let or function
> parameters), and the return values of functions.
> A global or namespace based switch would be also a nice
> thing to have.
I remember some presentation of someone doing this for,
I think, Python. There you hint things, where the type is
known and the compiler inferred the rest as far as possible.
What cannot be inferred was cast to a special type called
"dynamic". So this roughly worked like type hints in Clojure.
Just with a bit more inference and "dynamic" meaning
"reflection".
However, I can't seem to find the video anymore. I think
it was a Google techtalk....
How something like this could be implemented, where
some types life in the Java class space while others
exist in the Clojure map space.... I'm not that of a specialist
for language implementation. :)
Sincerely
Meikel
Am 16.03.2009 um 12:26 schrieb Robert Pfeiffer:
> Did you mean this:
>
> http://wiki.jvmlangsummit.com/pdf/28_Siek_gradual.pdf
>
> It was presented at the JVM Summit, so Rich may already have given a
> thought to this.
Argh.. "Gradual Typing" that was term I was missing.
Here some more information.
The Paper (and a unsurprisingly negative discussion) on LtU:
http://lambda-the-ultimate.org/node/1707
And the video of the talk from the above link.
http://video.google.com/videoplay?docid=21835070615692553
I don't know, whether this is useful or not, but if we really want
an optional type system, we should investigate the possibilities,
I think.
Sincerely
Meikel
maybe this is a bad/crazy idea, but could one make a pluggable
Dialyzer, which could then be customized to work on any dynamic
language? that could be pretty awesome.
sincerely.