My views on NeoHaskell

29 Likes

Haskell does need better product management
I think the Haskell foundation was supposed to be this (I could be wrong) but that didn’t really seem to pan out.

Imho it has been panning out – its just a very gradual and careful process because product management over a decentralized group of mostly volunteers over a whole range of different projects is a fundamentally different thing than product management within a single company driven by sales and with a stable of full-time employees.

I think users of haskell have been feeling the positive effects of HF in this regard, but only in a very gradual way, especially since so much work has been infrastructural. Those of us involved in development on different projects where HF has helped to centralize and guide discussions and direct resources have felt it much more immediately and impactfully.

30 Likes

[ot]

fragment the tooling in a way similar to stack .

this vs making a whole generation of new Haskell programmers happy and productive. I’m not a fan of salesy announcements either, but let’s not forget what is gained by radical new approaches to thorny socio-technical problems.

3 Likes

Mainline Haskell was significantly more rough around the edges back when stack was created than it is now.

stack made sense back then. Cabal has improved significantly since. I really don’t think a new CLI is actually gonna accomplish much.

6 Likes

Thanks for writing this up. It sums up my impression as well.

To be frank, I’m surprised by the amount of attention NeoHaskell has attracted. It’s just talk, talk, talk, and talk is cheap. Show me the code.

21 Likes

As of recent, there seems to be a stream of regular updates for NeoHaskell development: NeoHaskell - DEV Community. However, judging from the Discord activity, the momentum is gone. I wonder whether the project can benefit from more community involvement at this stage, I remember lots of folks being very enthusiastic.

5 Likes

As of recently, there seems to be a stream of regular updates for NeoHaskell development […]

There’s also the website:

Hmmm, neohaskell.org is not redirecting properly for me, it seems :thinking: :

The page isn’t redirecting properly

An error occurred during a connection to neohaskell.org.

  - This problem can sometimes be caused by disabling or refusing to accept cookies.

I like that it’s still going. It seemed well-intended and the NeoHaskell - DEV Community updates are nice to read too. Thanks for sharing :slight_smile:

I’m now also seeing an Secure Site Not Available warning too: clicking through it then brings up that The page isn’t redirecting properly error. But the site has been recently archived.

NeoHaskell: work in progress…

1 Like

My two cents on this from reading, is that two things come to mind, first I wonder if trying to convert the “mainstream” is a worthwhile goal. I guess (and I’m making assumptions here) that the idea is that the best programming language will be the most popular, or that the aim of a language is to serve the most people.

However, I’m not fully sure this is always true. I think to use your marketing analogy its most important to know your customer and what value you are bringing them. Much like with spoken languages I think diversity and uniqueness is often as important as mass adoption and standardization. However, I recognize this is not a standard opinion and a lot of people would prefer everyone spoke just one language (mostly their own :stuck_out_tongue_winking_eye: ). But just to push this spoken language analogy perhaps past its usefulness, different spoken languages excel at different things and when a spoken language is adopted en-mass it often leads to simplification and standardization that reduces the expressive power and also reduces the rate of change for that language.

What I love about haskell is how innovative and expressive it is, there seems to always be something new to learn and explore. I think this comes at a cost with a certain level of complexity and challenge that I think most mainstream engineers just are not interested in investing, and this not to say they are wrong or misguided but simply they have different needs and wants.

Secondly, I think with Haskell and languages like C, C++ etc you have to take the long view and avoid reactionary changes in the short term. So, I think I see where projects like neo Haskell are coming from, but I also think with a little maturity its clear to see Haskell is in a really good place and getting better there is no need for a dramatic call to action or radical change, I guess thats kind of a boring thing to say but boring is often more productive.

To get more specific, personally I’ve really appreciated recent improvements like nix and ghcup and im really grateful for all the work done on the GHC js backend and I believe there is also a C backend? From what I read one of the things neoHaskell wants is mobile support, I think before trying to get haskell to work natively on mobile devices just getting a simple way to create WebView apps would be great, this of course does currently exist but from my own experience the tooling could be improved (and indeed it’s something I’m working on atm)

Finally, I think the name is a bit bombastic for the stated goals I was expecting at least a new compiler or something. I think something like haskell prime as in haskell’ might be more appropriate. Anyway, just some thoughts from a random guy on a forum.

1 Like

I wish efforts to improve Haskell focused on stuff like better metaprogramming or specifying type class resolution. The former is a real shortcoming relative to, say, Rust.

Right now it feels like every loud complaint is taken seriously, regardless of whether the people involved are qualified.

A few years back it was trendy to say that Haskell isn’t “beginner friendly,” for instance.

3 Likes

If you truly believe that, then wouldn’t the solution be to loudly complain about better metaprogramming or specifying type class resolution?

1 Like

Being a new language, perhaps the development of NeoHaskell can provide new insights here, particularly as it’s intended to be lazy/non-strict and statically-typed:

  • comparisons of features in Haskell and Racket need to be aware of Racket being dynamically-typed (or perhaps compare against Typed Racket instead where possible).

  • similar comparisons between Haskell and Rust features need to be aware of Rust being call-by-value (as are the majority of “systems programming” languages).

NeoHaskell: work in progress…


…and neohaskell.org is working again:

(sort of.)

As I understand, it’s not intended to be “really” a new language (i.e. a new compiler, etc), but a “packaged” set of libraries/tooling that gets users going, and maybe even adding some GHC plugins if I remember correctly.

2 Likes