[Haskell-cafe] Why Haskell is beautiful to the novice

M Farkas-Dyck strake888 at gmail.com
Sat Aug 29 04:17:25 UTC 2015

On 28/08/2015, Silvio Frischknecht <silvio.frischi at gmail.com> wrote:
> It has a very complicated type-system, and it's restriction to purely
> functional programming does not convey very well how (current) computers
> work. Current computers work by you giving them an step by step guide
> what to do. This I think is what should be at the base of any
> beginners-programming course.

So assembly.

Actually we ought to start with semiconductor physics, VLSI
fabrication, and such.
cuz that's how current computers work.

> There are also a lot of very basic data structures that can simply not
> be used in purely functional code like hash tables, pipes or random
> access arrays.

Wrong about hash tables [0] and random-access arrays [1] at least.

> Haskell also requires quite a bit of intelligence

Oh no, the student might have to think! That won't do.

> and perseverance to
> master.

Unlike imperative languages, which require no perseverance to master, yeah?

> Python would by my language of choice. You won't have to worry about low
> level stuff or typing, but can still write those step by step programs.

Yep, one needn't worry about typing, one can freely pass a widget to a
function what wants a gizmo and have it cheerfully barf some cryptic
exception and stack trace at one, what fun!

Oh, by the way, Python isn't how computers work either.

On 28/08/2015, Mike Meyer <mwm at mired.org> wrote:
> Python is a good language if you want an imperative language

Python is a good language if you want pain. I see much praise of
Python, while Haskell mostly performs better, is less verbose, and
catches type errors. Worse yet, I see counsel to learn it as a first

On 28/08/2015, Silvio Frischknecht <silvio.frischi at gmail.com> wrote:
> Some kids are smarter, some less so. In secondary school you should have
> a curriculum that most students can follow.

This does the smarter and more interested students a great wrong. If
someone needs extra help, they ought to get it, but not while boring
others partly to death like they do in Ontario at least.
Ideally each student would have their own program, but that's
practically difficult, so some stratification may be needed, but not
teaching the more stimulating at all lest some slower folks need to
work harder is toxic.

[0] https://hackage.haskell.org/package/hashtables
[1] https://hackage.haskell.org/package/array

More information about the Haskell-Cafe mailing list