8 ms·
My views on NeoHaskell
- KingMob 3y agoAnyone seeking to become a dictator, benevolent or not, shouldn't get the job. FOSS has enough issues with people who were merely anointed dictators.
- castles 3y agoHave seen too many instances of "too many chiefs" to instantly dismiss the idea. Perhaps voting on a time limited dictator/final arbiter?
- KingMob 3y agoIf they're time-limited and/or recall-able, then is it accurate to say they're "dictators", though?
- tome 3y agoI'm not sure I understand why someone shouldn't be allow to be benevolent dictator of their own project, that they started.
- corethree 3y agoIt's because people associate the word with actual government dictatorships and they immediately fall into the freedom and democracy patriotism mode. The reality is much more complex. If bdfl can work for open source it technically can work for the real thing as well. The keyword here is "can".
- notpushkin 3y agoYeah, the actual difference is huge. If your open source dictator sucks, you can use different project, or fork it, or start your own. If your real life dictator sucks, you can move your family for half your life savings and hope your next dictator is better, or try to protest and get killed.
- corethree 3y agoNah not that huge. It works in many places. See Singapore and if you can look past freedom and patriotism biases... you can live actually live a very good life in china under a dictator. Democracy is also a bit of an illusion. How often has a protest changed things? why is there huge wealth inequality and power concentrated among the few? Democracy Looks like much of the bad things associated with "dictatorships" with useless freedoms like voting and protesting as an outlet.
- notpushkin 3y agoYeah, I don't believe democracy is the solution, just that dictatorship isn't either.
- ookdatnog 3y agoIt's clearly allowed, but I think the reaction here is negative because, unlike for example Python, this isn't someone making their own language from scratch which is then organically adopted. Instead, it's essentially someone looking at an established language and community, and saying "you'd all be better off if I was running the show here." And the person making that claim does not have the track record to make that claim believable. I don't think it's strange that people are reacting with some reservations here. Of course it's not a hostile takeover, he'll try to build something that convinces people that he's on the right track, and I wish him the best of luck with that. There's a small chance that the project succeeds and essentially becomes the successor language to Haskell, and there's a large chance that the project fizzles out, and both of those outcomes are fine. The worst possible outcome is that it succeeds well enough to fragment the ecosystem, but not enough to really take over.
- pyrale 3y ago> Of course it's not a hostile takeover From the pov of the Haskell community and the way it has been shaped by its academic origins, and by the work and organizational choices of SPJ on GHC, there is little chance the community doesn't see this as a hostile takeover.
- whateveracct 3y agoThis person hasn't started anything and is planning on piggybacking on GHC
- KingMob 3y agoBecause I've seen what happens when they become not-so-benevolent. It's better to think of yourself as a shepherd, visionary, leader, etc. Mentally framing yourself as dictator affects your thinking. In short, BDFLs can more easily become assholes.
- Nevermark 3y agoDeclaring yourself a benevolent dictator of your own project has zero negative impact on anyone. Frankly, it is the clearest thing about the project, how it will be run. One vision from a personality whose thought style comes through in Spades. That is refreshing. Anyone who joins the project knows exactly who they are signing up to help. Swing for the fences Nick Seagull!
- throwaway81523 3y ago"Anyone who joins the project knows exactly who they are signing up to help." I'm not so sure of that. The Neohaskell site seems designed to attract the naive. If someone isn't already using Haskell, how can they know what they are getting into with Neohaskell? Someone like Gabriella can see the substance (or lack of it) behind the claims, but to a non-Haskeller, there is nothing to go by except the sales pitch. Not good.
- ljm 3y agoI think, perhaps, that declaring oneself a benevolent dictator on a project that is more or less a proposal still is just jumping the gun a bit. Any project needs good leadership, of course, and at the start that leadership is going to be concentrated amongst a tiny number of people, maybe even just one. It's going to be hard to encourage contribution if, right off the bat, you say "I'm BDFL. End of discussion." So the author of the project might find themselves in a position where they have actively reduced buy-in.
- Scarbutt 3y agoWasn't laziness one of the things Haskell would ditch if it were to start from zero? Why is neohaskell keeping it?
- ctenb 3y agoI don't think so. There would probably be changes to which things are lazy by default (like enabling StrictData by default). For an in-depth explanation see this youtube playlist (currently 4 videos): https://youtube.com/playlist?list=PLyzwHTVJlRc8620PjqbM0x435-6-Gi1Gu&si=d0eFuwwtBW1V2ZFU https://youtube.com/playlist?list=PLyzwHTVJlRc8620PjqbM0x435...
- Barrin92 3y agoThe most fundamental proposition of Haskell was essentially the research question, "how lazy can we make a programming language?", it's the standout feature, so that'd seem kind of weird. https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.168.4008&rep=rep1&type=pdf https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.16...
- luispauloml 3y agoIn case someone wants to know what that paper is without having to download it: - "A history of Haskell: being lazy with class", from 2007, by Paul Hudak, John Hughes, Simon Peyton Jones, and Philip Wadler. - https://doi.org/10.1145/1238844.1238856 https://doi.org/10.1145/1238844.1238856
- throwaway81523 3y agoYou should probably also read "Wearing the hair shirt" (2003). https://www.microsoft.com/en-us/research/publication/wearing-hair-shirt-retrospective-haskell-2003/ https://www.microsoft.com/en-us/research/publication/wearing...
- dagw 3y agoDepends on what you mean by 'start from zero'. Haskell was born as a design by committee research language to serve as a platform for answering various questions in programming language research, including a lot of questions about the effectiveness of laziness. As such Haskell without laziness would not be fit for purpose. Some people on the other hand want to say that the research part is 'done' and that Haskell should move on and become just another language suitable for use in industry and production. And some of those people think that laziness should be relaxed.
- jdeaton 3y agoI think its great that someone is trying to make haskell not suck to use. Better still that its very ambitious as it means people will learn much if or when it doesn't meet its aspirations.
- antupis 3y agoYup Haskell is those kinda languages that you always wanna learn but then hit bumb when you actually try to do something more complex than monad tutorial with it. I will definitely test this if it is something like Haskell--.
- xcdzvyn 3y agoSame. I wasn't aware of NeoHaskell before this little drama stint but now I'm quite excited to see how it pans out. I really love Haskell, and the push it needs is so small.
- js8 3y agoYeah, but if they want to break compatibility with Haskell (GHC).. I think that's a significant drag, and I am very skeptical of that. I think Haskell's extension mechanism has shown that language can improve significantly without breaking changes. Furthermore, I don't see much in their goals which would require a departure from GHC compatibility, it's mostly about tooling.
- sbergot 3y agoIn my mind ghc extensions are one of the biggest barrier to entry for learning haskell. Tutorials typically mention them a bit at the end but they have a huge impact on the language and are used by most libraries.
- js8 3y agoI think Stephen Diehl's What I wish I knew about Haskell is an excellent overview. (Although no longer maintained, I wish he continued with Haskell and drop his worries about crypto.) Personally, I use ClassyPrelude and only a handful of extensions.
- nbittich 3y agoSeems to be vaporware for now. Next.
- throwaway81523 3y agoThis article pretty well matches my own reaction to seeing the Neohaskell web site a few minutes earlier, from clicking a nearby HN post about it. Too much song and dance, too much Discord, not enough plain explanations instead of cute graphics, no convincing vision that any version of Haskell can be anything other than a language for nerds, and also no explanation of why we nerds shouldn't want to use a nerdy language that we can nerd with, instead of this weird attention seeking thing. Hipsters already have Ruby after all. Can't they just use it? I even felt something like that about Yesod, so Gabriella's mention of Stack seemed apropos. In Yesod's case, the author (Michael Snoyman, also author of Stack) was at least an extremely knowledgeable and productive Haskeller, even if some of the decisions in Yesod came across as dubious for purists. Neohaskell has far less substance behind it.
- diogenes4 3y agoNgl i'm very willing for languages to cater to my CQRS needs. Boilerplate city amirite?
- throwaway81523 3y agoDid you ever look at Adam Chlipala's Ur/Web? That was really something. Look for wayback machine snapshot of impredicative.org.
- quadrifoliate 3y agoIt still seems to be up at http://impredicative.com/ur/ http://impredicative.com/ur/ and https://github.com/urweb/urweb https://github.com/urweb/urweb.
- malermeister 3y agoI hate the "everything interesting happens on Discord" thing some of these "hip" projects are doing. Why are we putting everything in a data silo controlled by a company with pretty draconian policies? There's so many open discussion platforms available - why use the worst one?
- nymalt 3y agoThis is how I understand the whole heohaskell thing: some guy comes out of nowhere, spends some time picking fonts for neohaskell's website and then starts churning out github-tickets for this-is-what-a-better-haskell-is-supposed-to-look-like instead of actually doing stuff :)
- fractalb 3y agoI think he's tracking his ideas about this project in github tickets. IMO, that's a good first step. Whether he'll do something about those tickets or not is a question that comes later. Let's see what he'll do.
- pyrale 3y ago> I think he's tracking his ideas about this project in github tickets. IMO, that's a good first step. I can agree with this. However, it's odd to start communicating the way he did this early in the project, when none of these ideas have been thought out.
- mhitza 3y agoThat's probably as close to reality as I would guess. We'll have to see if anything gets delivered. I don't get why Gabriela is so against this project, it might just be vaporware. But invoking the fact that this person is not already established in the community is detraction for detraction's sake (or gatekeeping). Funny enough, I've also been very slowly chipping away at some base(/prelude) Haskell library replacement, because I find it beyond embarrassing that in 2023 with a default Haskell installation one cannot make a HTTPS GET request. Haskell comes with half depleted batteries inside the box. And I cheer for anyone that tries to fix the base experience. If this one's vaporware, I'll just wait for the next person that gets too frustrated with the library experience.
- agentultra 3y ago... we also need a base library that has some standard data structures like maps, vectors, stacks, and queues! Best of luck with your project. :)
- user3939382 3y agoDoes anyone who prefers these types of languages have any thoughts on Idris? The ecosystem is small but the language seems to satisfy the Haskell use case without the language extension issue.
- pjmlp 3y agoDependent types are a great idea, that still requires a lot of research to come up with a mechanism that make them tratable to the journeyman developer.
- kreetx 3y agoThe small ecosystem plus not being production ready, are the reasons Idris and Agda are not there yet, and won't be any time soon (if ever). Also, in my experience, Haskell's user experience isn't all that bad. It seems to me that the author is worked up and dense for some reason, and is hoping that a custom base library will somehow help. All the advertised features on the website (https://neohaskell.org/ https://neohaskell.org/) are already in Haskell's base library or an import away. The "coming soon" "Pre-thought architecture" isn't, but I'm doubtful that there exists a single architecture that fits every problem.
- memorysafety 3y agoIdris 2 ruined it for me. Scientifically, it's cool of course, dependent linear types yaay. Socially though, incompatible rewrite in Scheme should've been a separate project IMO; but since it's called "Idris 2", community attention faded away from the Haskell implementation "Idris 1". Which caused bad maintenance, neglect, stagnation, of a thing I tried and liked.
- tjrowjajd 3y ago[dead]
- auggierose 3y ago> A language that triggers flow state. That's probably not a good thing.
- James_K 3y agoHow does anyone think this is real after seeing the Python bit?
- CodeCompost 3y agoAn event sourcing framework I'm out.
- foldr 3y agoI think there's a lot to be said for just ignoring projects that you aren't interested in or think are taking the wrong approach. This post is a mostly fair critique of the project, but it's just going to create a lot of pointless drama. There's no 'NeoHaskell' that anyone can download at the moment, so it's not as if newbies are going to be misled into downloading an experimental implementation instead of GHC.
- Gabriel439 3y agoAuthor here. It is true that one of my goals in writing that post was to discourage people from jumping on the NeoHaskell train, but a larger goal was to educate people on what NeoHaskell actually was because there were a LOT of misconceptions floating around that led to confusion (and that confusion in turn amplified the drama because people were reading things into NeoHaskell that were not actually true).
- cies 3y agoC++ is a giant language, it has accumulated sooo many features, so a small language can be cut out from it that offers a more concise set of features, may Zig is that language. Perl same story. And Ruby may be that language that was cut out of Perl. Haskell has a problem like that as well, and (while not a general purpose language) Elm is a neat, concise small language that's cut out of Haskell. As the author of this NeoHaskell commentary explains, I also do not see how NeoHaskell fits in here (epecially since it tries to be Haskell compatible). ----- I also see the opposite, Java and Go for instance have a small feature set and miss ergonomics (and an std lib designed based on those ergonomics). Java recently got Kotlin, which seems to me a great "Java 2.0". Go may also benefit from a language that builds on top and provides great interop with the Go std lib and ecosystem.
- cultureswitch 3y agoMany of Go's core abstractions are such half-assed broken concepts (e.g. slices) that it's hard to see how one could replace them elegantly while remaining compatible.
- cies 3y agoSame could've been said for Java right? Not saying Kotlin is perfect (it certainly shared some JVM problems like statics not being mockable, therefor needed DI everywhere in a testable codebase), but it sure did improve a the DX lot.
- msl09 3y agoMy initial reaction to the first few excerpts from neohaskell's website was: "Wait?! Are you guys already forking Simple Haskell[1] before Simple Haskell even has any traction??" In one hand neohaskell is not that dumb, but on the other hand it's not much better either. I believe that if you are going to make a claim that ambitious you need to post more than a website and a discord, you need an actual PoC. [1] https://www.simplehaskell.org/ https://www.simplehaskell.org/
- whateveracct 3y agoSimple Haskell never was anything real lol. It's main accomplishment is becoming a derogatory term.
- bjourne 3y agoSomeone said that discussing footguns with haskellers is useless because they are so used to walking around with bleeding flesh wounds in their feet... I think it applies here. Those on the "inside" will never see what those on the "outside" see and thus why an ambitious outsider would start a project like this.
- tutfbhuf 3y agoWhat is wrong with PureScript? It has strict evaluation and the Syntax is 99% similar to Haskell. It transpiles to JavaScript, C++, Erlang and Go. It runs easily in older browsers without wasm, and has access to huge amount of software libs through npm interop. Yet it seems to be used by very few.
- dimator 3y agoIt's a strange thing that purescript is not more prevalent than it is. It's got lots of development activity, and a huge package library, not to mention interop with JavaScript as well. My guess is that Haskell already takes all the air out of the (albeit small) FP room.
- george_____t 3y agoIt's quite frustrating to use a language that's so close to Haskell, but without being able to use all the libraries you're used to. And I think now that Haskell's own story for web frontend is improving, some of its appeal is fading. Having used it in production for a while, tooling was poor, particularly IDE support, and anonymous records are in practice less of an obvious win than I expected. Plus I like laziness.