adamhaney / lispy

An implementation of scheme that can call python modules
21 stars 4 forks source link

Add a type system #20

Open adamhaney opened 11 years ago

adamhaney commented 11 years ago

Python is dynamically typed. Which is great, but can lead to some rather frustrating bugs. Functional languages like Haskell make their type system an aid to a developer (instead of a hinderance like some statically typed languages).

I think it would be very interesting if lispy could enforce types (not sure if this should be optional or if a type configuration could take place as a part of a dialect so that a "typed" dialiect would require type annotations).

Typed racket (http://docs.racket-lang.org/ts-guide/ts-guide.pdf) seems like a good starting point for such a system though research (and honestly writing more exploratory code in) into other strongly typed functional languages could be enlightening.