Live data from Hacker News

Basics of Haskell – Code and exercises

github.com

11–20 of 47 posts

Re: Basics of Haskell – Code and exercises

#11
post #3

My university teaches the intro CS course in Racket (lisp), and I know another that teaches in Haskell. If decades of priority exposure to young programmers is not enough to spur widespread adoption, then I'm not hopeful.

I think most programmers aren't actually coming from university currently.

Re: Basics of Haskell – Code and exercises

#12
Bartosz truly deserves to be more widely known.

His Category Theory for Programmers book is an excellent introduction to the CT world if you come from a Computer Science background (well ... duh it says it right there in the title) and know very little math.

Highly recommended to give it a try, even if the topic doesn't seem to fit you. This is one of those books that will make you a better programmer regardless of what you do.

Re: Basics of Haskell – Code and exercises

#13

Bartosz is always doing great stuff. Check out is Category Theory lectures for people who know Haskell: https://www.youtube.com/user/DrBartosz

Indeed, also a big fan of his category theory for programmers https://bartoszmilewski.com/2014/10/28/category-theory-for-p...

Re: Basics of Haskell – Code and exercises

#14
post #3

My university teaches the intro CS course in Racket (lisp), and I know another that teaches in Haskell. If decades of priority exposure to young programmers is not enough to spur widespread adoption, then I'm not hopeful.

I think most programmers aren't actually coming from university currently.

I did my interpreter class in Scheme in university. The main thing it taught me was I never wanted to use scheme (or lisp) and put me off of functional programming for many years.

I re-did the interpreter from that class in C++ and it made insanely more sense to me than the scheme version. I could see where scheme was going and why it was a good fit but just hated it.

That same professor taught our C++ class (while learning it, they had someone quit) the next semester and they had to actually do a do-over he was so bad at C++. To his credit he knew as much half way through the semester (he had students getting ahead of him). He basically nop'd out of C++ like I did out of Scheme. It just didn't fit his brain.

Re: Basics of Haskell – Code and exercises

#15
post #3

My university teaches the intro CS course in Racket (lisp), and I know another that teaches in Haskell. If decades of priority exposure to young programmers is not enough to spur widespread adoption, then I'm not hopeful.

I think most programmers aren't actually coming from university currently.

There are plenty of programmers who learned languages like Haskell, Scheme, Eiffel etc. as their first languages who are now programming in Java, JavaScript, C# etc.

There are just way more courses/universities that teach or taught Java/Python.

Businesses settle on the lowest common denominator it seems.

Re: Basics of Haskell – Code and exercises

#17
post #3

My university teaches the intro CS course in Racket (lisp), and I know another that teaches in Haskell. If decades of priority exposure to young programmers is not enough to spur widespread adoption, then I'm not hopeful.

I think intro CS courses in Lisp and Haskell (or other less-than-mainstream languages) hurts the uptake of those languages. The students will confuse the difficulty of the material with the language itself. And there's less material out there to support them, compared to the multitude of Q&As for C or Java or C++. And when later courses move them to other languages (C, Java, C++, etc.) things seem easier so the students reject those earlier languages. In some ways those languages may be easier, but the student is also more experienced.

I doubt I would've taken as well to Lisp if it was my first course, versus used in a couple graduate courses.

Re: Basics of Haskell – Code and exercises

#18

Earlier quoted context omitted.

I think most programmers aren't actually coming from university currently.

I did my interpreter class in Scheme in university. The main thing it taught me was I never wanted to use scheme (or lisp) and put me off of functional programming for many years. I re-did the interpreter from that class in C++ and it made insanely more sense to me than the scheme version. I could see where scheme was going and why it was a good fit but just hated it. That same professor taught our C++ class (while l…

We learned Scheme, Haskell, Prolog and Clips in one semester for Programming Paradigms course.

I can still remember the homework for each programming language (this was 6 years ago):

- Something with genetic algorithms in Scheme

- 2048 implementation in Haskell

- Searching in an infinite space in Prolog

- Phutball in Clips

Pretty dope if you ask me. :)

Re: Basics of Haskell – Code and exercises

#19

Earlier quoted context omitted.

I think most programmers aren't actually coming from university currently.

I did my interpreter class in Scheme in university. The main thing it taught me was I never wanted to use scheme (or lisp) and put me off of functional programming for many years. I re-did the interpreter from that class in C++ and it made insanely more sense to me than the scheme version. I could see where scheme was going and why it was a good fit but just hated it. That same professor taught our C++ class (while l…

If you already knew C++, that's not a particularly useful comparison. Of course you were more comfortable reading and writing code in a language you already knew, than one you were learning.

An equivalent would be a class teaching c++ and writing and interpreter at the same time. And my gut says that would be more complex for unnecessary reasons than the class you took.

Re: Basics of Haskell – Code and exercises

#20

Earlier quoted context omitted.

I did my interpreter class in Scheme in university. The main thing it taught me was I never wanted to use scheme (or lisp) and put me off of functional programming for many years. I re-did the interpreter from that class in C++ and it made insanely more sense to me than the scheme version. I could see where scheme was going and why it was a good fit but just hated it. That same professor taught our C++ class (while l…

If you already knew C++, that's not a particularly useful comparison. Of course you were more comfortable reading and writing code in a language you already knew, than one you were learning. An equivalent would be a class teaching c++ and writing and interpreter at the same time. And my gut says that would be more complex for unnecessary reasons than the class you took.

I did not already know C++. I did already know Java since we did java for our intro class (101/102) and then the next year we did Compiler theory (240). But the professors who know more than me an entry level student designed this structure.

And I did write that same compiler in c++ and sure it was more lines of code but I understood it better.

I've also worked on a scheme interpreter in C++ that someone wrote in a game engine and it wasn't all that complicated.

Post reply on HN