Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon.

Pages: 1-

Why is Haskell's syntax so shit?

Name: Anonymous 2015-09-26 10:44

Language features aside, Haskell's syntax is horrible.

Name: Anonymous 2015-09-26 10:45

From the point of view of an imperative monkey - most definitely.

Name: Anonymous 2015-09-26 10:53

>>2
It has nothing to do with paradigms. Lisp's syntax is far more beautiful and enjoyable to write.

Name: Anonymous 2015-09-26 10:57

Haskell's syntax has some roots in mathematical syntax.
Blame mathematicians.

Name: Anonymous 2015-09-26 10:57

>>3
Can't argue with that. Haskell's syntax comes in at a close second place, though.

Name: Anonymous 2015-09-26 11:17

it uses ocaml/sml 'space for curried function application' which works really well. where clauses are really useful. equations with pattern matching and guards are also very terse. I want to say the bad part is indentation sensitive syntax but it isn't a problem in haskell like it is in python.

what exactly is it that you don't like about it?

Name: Anonymous 2015-09-26 11:33

>>6
The program text doesn't look like how it executes, nor is there any clear mapping, nor does the syntax look like the problem or the solution to the problem, nor does it describe the problem in natural language. Haskell has the worst syntax I know of only next to Python.

Good syntax: APL, SQL, Ada, Common Lisp, Meta

Name: Anonymous 2015-09-26 11:36

>>7
The program text doesn't look like how it executes
nor is there any clear mapping
nor does the syntax look like the problem or the solution to the problem
nor does it describe the problem in natural language
You better explain yourself.

Haskell has the worst syntax I know of only next to Python.
I see, no more explanation needed.

Name: Anonymous 2015-09-26 12:06

>>7
So SQL syntax looks like the problem domain? Or maybe like the solution to the problem, or like natural language? Nice laugh.

Name: Anonymous 2015-09-26 12:55

>>6
It's totally ambiguous, I find myself constantly wrapping things in parentheses because otherwise it doesn't do what I expect it to or I get a compilation error, so my code ends up looking like Lisp. If your indentation is off you get cryptic compilation errors. If you stick a `where' between two guards you get a cryptic compilation error. Then that's weird infix function calling syntax.

Name: Anonymous 2015-09-26 13:56

>>10
you may just not be very good at haskell

Name: Anonymous 2015-09-26 14:57

FORCED INDENTATION OF THE CODE

Name: Anonymous 2015-09-26 16:04

the optional indentation of code

Name: Anonymous 2015-09-26 17:21

DEADDOG

Name: Anonymous 2015-09-26 19:57

M'onads
*tips hat calculus*

Name: Anonymous 2015-09-28 9:15

why use haskell when you could be using the far superior standard ml

Name: Anonymous 2015-09-28 16:16

>>16
Where's my higher-kinded types, brah? Where are my type classes?

Name: Anonymous 2015-09-28 17:09

Why use Haskell when you could be doing anything else?

Name: Anonymous 2015-09-29 3:47

Please, it's not _that_ bad. You've been pampered by lisp's homoiconicity. Although, the most annoying thing is the double::colon for type signatures.

Name: Anonymous 2015-09-29 4:20

>>19
C++ has nicer syntax than Haskell. That's how much I like Haskell's syntax.

Name: Anonymous 2015-09-29 10:24

Can someone give me a clear and concise argument about what they don't like about Haskell's syntax? I think it's extremely simple and concise.

Name: Anonymous 2015-09-29 11:13

>>21
it looks like poop

Name: >>22 2015-09-29 11:14

>>21
and writing it feels like squishing poop in your hands

Name: Anonymous 2015-09-29 11:58

>>7
The program text doesn't look like how it executes
Typical imperative monkey.
nor is there any clear mapping, nor does the syntax look like the problem or the solution to the problem, nor does it describe the problem in natural language
Of course it is. Haskal consciously tries not to look like natural languages which are always shit at expressing abstraction by the way but of course your average /frog/rider would have already taken that for granted. It's supposed to look like mathematics notation, which sucks BUTT in comparison with sexpr.
I find myself constantly wrapping things in parentheses
($)::(a->b)->a->b
infixr 0

cockbigBlackPhimosis (goes here) == cockbigBlackPhimosis $ goes here

Name: Anonymous 2015-09-29 14:29

>>24
Typical imperative monkey.
``Error: invalid argument.''
Sorry, son.

Name: Anonymous 2015-09-29 17:35

>>25
Don't you have another UML class to diagram, codemonkey?

Name: Anonymous 2015-09-30 5:07

>>26
UML? Is that one of those functional markup languages, son?

Don't change these.
Name: Email:
Entire Thread Thread List