Musing about very strong types and their accessors
Submitted by metaperl on Mon, 12/04/2006 - 2:40pm.
::
In working through SJT, I was required to implement lines. For the first time ever, I managed to break a Haskell program while running it instead of the type checker catching the problem. Feast your eyes on this:
*Main> mylines ts
["dog","cat"*** Exception: Prelude.tail: empty list
As usual, that got me thinking about how I got into the situation. And it hit me, that my main problem is that I had to do programming instead of creating a very strong type and related accessors.
In other words, lines converts a sequence of lines into a the sequence we call a list.
It seems that I should be able to type a string consisting of carriage return delimeters as a lazy list which returns elements.
Hmm, just brainstorming.
- metaperl's blog
- Login to post comments