Linked by Eugenia Loli-Queru on Sat 18th Mar 2006 00:20 UTC
General Development "I've been working for the past 15 months on repairing my rusty math skills, ever since I read a biography of Johnny von Neumann. I've read a huge stack of math books, and I have an even bigger stack of unread math books. And it's starting to come together. Let me tell you about it," writes programmer Steve Yegge.
Thread beginning with comment 105550
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE: connections
by Morin on Sat 18th Mar 2006 13:50 UTC in reply to "connections"
Morin
Member since:
2005-12-31

> He mentions a book by Kleene and clicking on it jumps
> to Amazon which suggests another book by Haskell Curry
> which is something I will probably browse if I find it.
> Anyone heard of the Haskell language. I started looking
> at that and once the operators were explained, that
> made alot of sense too ie quicksort in 3 lines instead
> of 30 lines of C code.

Was it also as obvious that the 3 lines of Haskell code have a O(n*log(n)) space complexity as opposed to the O(n) of the 30 lines of C code? This can make a big difference once your data sets get large.

Reply Parent Bookmark Score: 2

RE[2]: connections
by modmans2ndcoming on Sat 18th Mar 2006 16:42 in reply to "RE: connections"
modmans2ndcoming Member since:
2005-11-09

are you just pulling that out of your rear or is that a fact?

Reply Parent Bookmark Score: 1

RE[2]: connections
by BryanFeeney on Sat 18th Mar 2006 18:27 in reply to "RE: connections"
BryanFeeney Member since:
2005-07-06

Was about to say you were wrong, then realised you were right. In terms of space complexity the Haskell version is a lot worse than the classic C version (which can be used in any imperative language). This article discusses the pros and cons of Haskell using Quicksort as an example: http://www.haskell.org/haskellwiki/Introduction

Personally I found Haskell to be a very accessible functional programming language. I learned it from the book "Haskell: The Craft of Functional Programming" which did a lot of additional work into algorithm correctness and proof by induction (something which is easy in Haskell). However that book never got into typically applied programs: the impressions I got was that it was best for prototyping important algorithms. That said, the Darcs project is an impressive version control system built on Haskell (http://lambda-the-ultimate.org/node/391)

Edited 2006-03-18 18:30

Reply Parent Bookmark Score: 1