Delve type checked a simple polymorphic function today -
Polymorphism in Delve is similar to polymorphism in an untyped language like ruby.
In Ruby, you can define a method which takes an object and accesses one of its members - even if no such object is in scope.
In Delve, such a function can be defined, but constraints are imposed on its arguments. They must possess that member for the type checker to accept the program.
This approach differs fundamentally with Haskell. With Haskell, the function writer must be responsible for writing code that uses a given type class, or function - it must be defined.
In Delve all the responsibility is on the function caller, who must ensure his arguments have the appropriate type. It's strongly typed ruby/python/smalltalk :)
I've been ranting about it for a while, but now it's really happening! Wooo!
Actually I feel really unproductive. Since August, I've written 6.3K lines of code for the Delve VM and compiler. The last week I was off to Aberdeen, and now it's just testing, testing, testing. I'm confirming it works, and fixing little bits when I need to, but I haven't written more than 100 lines in the past two weeks.
Must work more...
6 October 2009
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment