[Boards: 3 / a / aco / adv / an / asp / b / biz / c / cgl / ck / cm / co / d / diy / e / fa / fit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mu / n / news / o / out / p / po / pol / qa / r / r9k / s / s4s / sci / soc / sp / t / tg / toy / trash / trv / tv / u / v / vg / vp / vr / w / wg / wsg / wsr / x / y ] [Home]
4chanarchives logo
Why does /g/ hate this language? It seems pretty neat to me.
Images are sometimes not shown due to bandwidth/network limitations. Refreshing the page usually helps.

You are currently reading a thread in /g/ - Technology

Thread replies: 39
Thread images: 3
File: haskell-logo-with-name.jpg (17 KB, 800x400) Image search: [Google]
haskell-logo-with-name.jpg
17 KB, 800x400
Why does /g/ hate this language?

It seems pretty neat to me.
>>
>>51880608
no point in learning it unless you're an "Art of the Computer Programmer" type
>>
>>51880608
It's pretty useful for learning and it has a big library on hackage.
It taught me functional programming which really pays of when doing webapplications in OTP.
>>
>>51880608
>It seems
Don't overwhelm us with your hot opinions.
>>
>>51880608
It has tons of libraries, none of them are usable. It has significant whitespace. It requires horrid workaround to get good performance in many common tasks, or rely on the FFI (arrays, for instance). There is no good metaprogramming facility (template haskell is crap, but that's the best they got). Laziness makes it really hard to understand where bugs that suddenly blow up memory and runtime come from. It requires constantly thinking about types while programming, which is a useless overhead and minddrain which increases the likelihood of making silly mistakes.
>>
>>51880630
Who isn't into the art of CP beside p2l though?
>>
>>51880608

>>51881014
this to be honest, family.

Tried in 2013, but there was a compiler bug which prevented me from compiling some library. At this point, the only point to me are Elm and the Hedgewars game server. Both are domains where pure functional languages aren't completely retarded to use.
>>
>>51881014
I like how you could could replace template haskell with macros or something else and half of the same text would apply to Lisp.
>>
>>51881940
Lolno. Lisp is literally the exact opposite. You don't have to think about types because the only time it matters is if you're overoptimizing with implementation-specific type annotations. Lisp does not have significant whitespace. Lisp allows imperative-style programming because it's a fully multiparadigm language and thus does not require workarounds to work with arrays. The libraries in lisp are FEW and high-quality. Macros in lisp are the pinnacle of metaprogramming. Lisp is not lazy.

2/10 bait.
>>
>>51882114
which lisp are you talking about to be clear?
>>
>>51882114
>Lolno. Lisp is literally the exact opposite.
That doesn't mean good.

>You don't have to think about types because the only time it matters is if you're overoptimizing with implementation-specific type annotations.
Yeah, and we all know how this sentiments ends in rewriting the now unreadable dynamical typed code in another shit-tier scripting language. No big Lisp software that isn't a clusterfuck exists.

>Lisp does not have significant whitespace.
>what is +{significant whitespace}1{significant whitespace}2

> Lisp is not lazy.
> Lisp allows imperative-style programming because it's a fully multiparadigm language and thus does not require workarounds to work with arrays.
That's the only good thing about it and that's why I wrote "half of the text", which you could have read if your autismbux would cover basic reading.

> The libraries in lisp are FEW and high-quality. Macros in lisp are the pinnacle of metaprogramming.
No and no.
>>
>>51882330
Common lisp.
>>
>>51882350
1/10, even weaker than the previous one.
>>
File: 1449808081728.jpg (21 KB, 300x300) Image search: [Google]
1449808081728.jpg
21 KB, 300x300
>>51882350
>>
>>51880608

most people who can program on /g/ never learned how to program functionally, they'd have to relearn lots of stuff
>>
People are hooked on the idea that functional programming can only be done in a pure functional language and that when you introduce mutable variables it suddenly turns the language into an imperative language. This is not true, to take Elixir for example, Elixir is built on Erlang which is a pure functional language, but Elixir introduces mutable variables as syntactic sugar so that the language is still pure under the hood but you can change values in variables like any imperative language. Most people who are into Haskell have only a superficial understanding of compiler theory and have drank the kool-aid that makes them think Haskell will allow them to make programs where all data is immutable which is a lie, Haskell has program state, people are just making things unnecessarily hard by using Haskell.
>>
Has anyone here tried the Haskell IDE which is in the Apple App Store?
>>
>>51882489
LMAO
>>
>>51882489
>IDE
>App Store
Seriously, the fuck dude?
>>
>>51881014
You raise good points.
At least you seem like you have some sort of idea, but
>It requires constantly thinking about types while programming, which is a useless overhead and minddrain which increases the likelihood of making silly mistakes.
Is wrong. The type-system is awesome.
Laziness is a Blessing and a Curse at the same time though.
You can do amazing things due to laziness, but reasoning about others becomes hard.

>>51882474
Immutability is just a prerequisite for a truly functional language, and the way to realize the type-system Haskell employs.
> people are just making things unnecessarily hard by using Haskell.
This is your opinion...
And I don't really know how immutability makes things hard for you. It is just a different Concept.
The only thing that is "hard" about Haskell, is reasoning about more complicated types when you are not used to it.
>>
>>51880630
In other words, if you're actually a computer scientist, or interested in computer science, and not some hack
>>
>>51882896
>Immutability is just a prerequisite for a truly functional language
no its not, you just have a limited understanding of what purely functional is, there is no such thing as a pure functional language except for the lambda calculus, the Haskell environment has (is) mutable state.

>and the way to realize the type-system Haskell employs
it has nothing to do with the type system, the reason that Haskell is over-zealous against outside state in I/O is because Haskell was an experiment in pure lazy evaluation, an experiment that failed, read the interviews of Haskell designers (read the book "Masterminds of Programming" which interviews the designers of most all the major programming languages).

>> people are just making things unnecessarily hard by using Haskell.
>This is your opinion...
>And I don't really know how immutability makes things hard for you
I didnt say immutability is hard, I use Erlang/Elixir, Im saying that Haskell makes things unnecessarily hard by using monads
>>
There's nothing inherently hard about Haskell or functional programming.

The only people who say this are the ones who have forgotten how much time they've put into imperative style languages to learn them(which is a far easier style to learn admittedly.) This is relevant to a problem with many programmers, once they learn enough to get by they're done, and end up churning out shitty code that is hell to maintain later on.

The other problem is the people who know fp extremely well tend to be academic in nature and teach it as such. For instance you can understand how to use monads without understanding the theory behind them.

As programs become more complicated, they become easier to write functionally(this isn't a myth or hype; example being concurrency.)
>>
>>51882881
youre probably not aware that probably about 70% of the developers that work in Silicon Valley use Macs only
>>
>>51883118
>I am a first-bumper therefore it took years to learn what a loop is for everyone too!111
>>
>>51883118
you dont need monads to do functional programming, you are doing mental masterbation

Im not against learning Haskell as a first fp language since its syntax is very clear and intuitive, I am against moron basement dwellers like you who think you can only do fp with monads
>>
>>51883184
I didn't say that at all?

I was giving an example of how many teachers tend to explain the mathematics behind them rather then just how to use them(which ends up scaring away people trying to learn them.) It's an example relevant to how Haskell is generally taught.

Monads were just a clever way for Haskell to implement IO, that's it. No one implied they're a requirement for fp.
>>
>>51883135
Are Macs only using apps now?
>>
>>51880608
>Why does /g/ hate this language?
- Because they are scared away by the word "monad" (see: hard problems in computer science)
- Because they hate learning things
>>
>>51883593
Hasklel is such a meme that it cannot be used for ML. Meanwhile, common lisp was used in the winning kaggle entry for boson classification.
>>
>>51883116
>the Haskell environment has (is) mutable state.
Practically, yes,
In Idea, no.
Naturally everything that runs on some real computer has concrete state, but this doesn't mean that the abstraction which the language pursues does!

>Im saying that Haskell makes things unnecessarily hard by using monads
I don't see how Monads are unnecessarily hard.
They may need some getting used to, but that's pretty much it.
They are practically just some category theoretical model that serves a distinction of pure and impure code (at least in the case of IO) which the type system can enforce.

>an experiment that failed
I am going to read this now. I don't think you really grasped what simon talked about though.
Laziness in Haskell is a property that does effect IO greatly, and introduces complexity when handling it,
but this has nothing to do with Monads or decoupling pure from impure code.
>>
>>51883619
>>51883619
i hate this stupid meme where saying something is a meme means it's worthless
>>
>>51883116
>read the interviews of Haskell designers
I just read through it, and nowhere does anyone say anything like the statement you made.
>>
https://www.cs.utexas.edu/users/EWD/transcriptions/EWD06xx/EWD692.html
>In short, the article is a progress report on a valid research effort but suffers badly from aggressive overselling of its significance, long before convincing results have been reached. This is the more regrettable as it has been published by way of Turing Award Lecture.

Functional programming is just as oversold today as it was 40 years ago.
>>
>>51883116
>I didnt say immutability is hard, I use Erlang/Elixir, Im saying that Haskell makes things unnecessarily hard by using monads


lmao are you serious, monads confuse you? either you're an idiot or really grasping at straws
>>
>>51884622
Confirmed for non-programmer.
>>
File: 1449449616550.gif (995 KB, 257x194) Image search: [Google]
1449449616550.gif
995 KB, 257x194
>>51884680
>>
>>51884599
>believing "concurrency and parallelism are bad: the retard"
LMAO
>>
>>51880608
most of /g/ visitors are too stupid to use it so they simply hate it.

the ones that aren't too stupid for it usually talk about shit that is easily solvable
Thread replies: 39
Thread images: 3

banner
banner
[Boards: 3 / a / aco / adv / an / asp / b / biz / c / cgl / ck / cm / co / d / diy / e / fa / fit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mu / n / news / o / out / p / po / pol / qa / r / r9k / s / s4s / sci / soc / sp / t / tg / toy / trash / trv / tv / u / v / vg / vp / vr / w / wg / wsg / wsr / x / y] [Home]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.
If a post contains personal/copyrighted/illegal content you can contact me at [email protected] with that post and thread number and it will be removed as soon as possible.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com, send takedown notices to them.
This is a 4chan archive - all of the content originated from them. If you need IP information for a Poster - you need to contact them. This website shows only archived content.