I hate Scheme.
Reason #210: awkward mathematical and comparative grammar. For everyone in the world, basically, the way you do math or compare arguments is argument operator argument (like a+b or a>b), not operator argument argument (like (+ a b) or (< a b)).
Not only is it amazingly illogical and actually a bit inefficent, it also is horribly confusing.
Take my midterm, where I got an 88, losing 6 percent because of this code:
(define valid-word?
(lambda (d)
(and
(< 0 (word-count d))
(> 41 (word-count d)))))
Supposedly, it would always return a value of false because there's no way any number could be greater than 41 and less than 0.
But wait, read that code again folks!
I got it right. The reader messed up, and I spent a week thinking I got a B+ on my midterm when I really should've gotten a 94.
Well, that's changed. Error corrected, score changed, and now I aced the midterm.
And I hate scheme for making me think I didn't >:(.
Reason #210: awkward mathematical and comparative grammar. For everyone in the world, basically, the way you do math or compare arguments is argument operator argument (like a+b or a>b), not operator argument argument (like (+ a b) or (< a b)).
Not only is it amazingly illogical and actually a bit inefficent, it also is horribly confusing.
Take my midterm, where I got an 88, losing 6 percent because of this code:
(define valid-word?
(lambda (d)
(and
(< 0 (word-count d))
(> 41 (word-count d)))))
Supposedly, it would always return a value of false because there's no way any number could be greater than 41 and less than 0.
But wait, read that code again folks!
I got it right. The reader messed up, and I spent a week thinking I got a B+ on my midterm when I really should've gotten a 94.
Well, that's changed. Error corrected, score changed, and now I aced the midterm.
And I hate scheme for making me think I didn't >:(.
0 Comments:
Post a Comment
<< Home