3 ms·
> I imagine it's quite simple once you actually know what it means. The first part isn't notable. Olympian athletes, for example, do the most baffling of intr
by kristopolous 4y ago
> I imagine it's quite simple once you actually know what it means.
The first part isn't notable. Olympian athletes, for example, do the most baffling of intricate movements in grace and simplicity. Instead it's the amount of effort and context to get to the understanding that's at play.
Maybe this syntax is intuitive for a mathematician, formal logician or some other specialist, but as just a mere every day programmer, it looks like nothing I'm familiar with.
This is fine. Just let's not pretend that it's low effort to get onboard
- kragen 4y agoit's probably low effort for a 'mere every day' haskell programmer; it's just a question of what you're familiar with, not actually deep math (minor correction, as tromp points out, :: is evidently list construction, as in ocaml or haskell, not a type annotation) you asked what `matchAll primes as list integer with` meant ('what is the second line, a comment?') but apparently the person who answered you didn't understand that you didn't understand. it means 'evaluate the expression `primes`, which should have the type `list integer`, and then attempt to match the value resulting from that evaluation against each of the following expressions in order' deep math isn't simple to do even when you know what it means; it isn't just a matter of learning what all the symbols mean. this is just a matter of learning what all the symbols mean, like reading english instead of chinese. so to me your complaint reads like someone saying (in chinese) 'just a mere every day reader of novels, it looks like nothing I'm familiar with' because some text is written in english however, the situation is not quite so symmetric as with chinese and english. with a good notation, cramming lots of symbols onto a line is a really good lever to empower your reasoning ability. consider trying to explain how to play the seventeenth measure of pachelbel's canon in words. or writing assembly instead of c, even though they're both at pretty much the same level of abstraction pattern-matching really significantly improves the clarity of certain kinds of code, and you're missing out if you don't know what that's like i'm guessing that #() (the only weird part) is analogous to ${} in `-strings in javascript or #{} in ""-strings in ruby: it embeds an expression to be evaluated in a context where you wouldn't normally expect expression evaluation, in this case a pattern for pattern-matching (disclaimer, i don't actually know haskell, though i've implemented my own programming language featuring pattern-matching)
- kristopolous 4y agoThanks. As a correction, the comment you are directly replying to is the only one that I personally made. I just happened to agree with the sympathies of the first person and was trying to rephrase things in a more productive and positive manner. I appreciate the response not only for myself but for others who may be reading it as well. Thank you for taking the time.
- kragen 4y agoi appreciate both the correction and the appreciation
- imtringued 4y ago>or writing assembly instead of c, even though they're both at pretty much the same level of abstraction They aren't.
- pasquinelli 4y agoit must be simple because this code is, i presume, runnable.
- kristopolous 4y agoThat's now how simple works. Malborge's "Hello World" is a single line! (=<`#9]~6ZY327Uv4-QsqpMn&+Ij"'E%e{Ab~w=_:]Kw%o44Uqp0/Q?xNvL:`H%c#DD2^WV>gY;dts76qKJImZkj Look at how compact that is! Must be simple! You can't claim simplicity by using character or line count.
- kragen 4y agothere are an awful lot of separate entities in that line
- crabbone 4y agoNah, this mess isn't intuitive to anyone. There also isn't anything like an agreed upon mathematical or logical notation. Everything in this field beyond the basics of algebra / set theory is awful one-off NIH languages with awful / inconsistent grammar that nobody beside the "inventor" can understand, while the inventor has perhaps a 50/50 chance of understanding their own writing. The lack of requirement of mechanically verifiable proofs and adherence to common standards of expression of mathematical concepts is a huge drawback of what happens in this area of academia. People who come up with languages like Haskell (which this one certainly is) are people who want the absurdity of languages created w/o system or any general design to spill over into the programming land. Solely based on the fact that they've been exposed to this cuneiform during their apprenticeship and learned to associate it with the actually valuable stuff it's meant to convey.