It seems, this is ājustā an idea. Thereās no code that has been written? At least I canāt find any.
While I find the ideas exciting, I question that itās helping the project to go public this early with no substantial implementation work done and not even a firm design document.
Brainstorming in public usually ends in a disaster, with too many opinions and no engaged contributors anyway. The subversion developers talked about this and suggested a project in early stages should have a very small circle of developers until some substantial work has been done and certain design decisions have crystallized, so people donāt project all their ideas into your product.
Having something concrete to show is also a better way to attract hands-on contributors. I know a couple of people interested in writing a Haskell implementations or tinkering with Haskell dialects. Iām not sure they would invest their time in this project, though. Not at this stage.
Sounds like a noble cause, I wish you the best of luck
EDIT: Correction, I wish the initiator of the project the best of luck.
I think thatās correct. You can see how e.g. the build system section on neohaskell.org is below the ācoming soonā label. It does seem a bit strange to show a terminal screenshot of software that isnāt actually available.
Please note that I am just posting links, Reddit style. I am not the initiator of this project.
Thanks @janus for the link:
The main goal is to create many different pieces:
- A remarkable standard library
- An integrated CLI tool with precise error messages
- Templates with planned architectures
- Documentation with a set of recipes
- Mobile app packaging
- Python interoperability
- And many more
Whilst
develop[ing] an optimal programming language and ecosystem that eradicates accidental complexity, either in mental form, or in code form.
āaccidentalā is doing a lot of heavy lifting there. If you didnāt aim for āPython interoperabilityā, thatād eradicate quite a bit of complexity, I suspect. (Doesnāt Haskell already include āa remarkable standard libraryā? Is the Python library so much more remarkable?)
I agree. Furthermore o.p. seems to agree: " I believe that in order for a product to be successful, the design process must be centralized in a single person." And yet āAnyone interested can contribute by participating in discussions ā¦ā. Contribute how/what at this early stage?
(I feel thereās a lot of marketing bumf/buzzwords in that text, far too little substance.)
And why didnāt the dude start by kicking around some ideas here/comparing to how similar projects fared? (Usually ran out of steam rather quickly, I fear.) Rather than putting the effort into a big manifesto. (Or perhaps they have been, without revealing the grand plan?)
Iām sure you didnāt intend it this way @AntC2, but that comes across, to me, as really very insulting and dismissive. Iāve corresponded with the individual in question and I know them to be acting in good faith. You may not like the presentation style of the linked document, and indeed anyone is welcome to express on this forum that they donāt like something, but judicious choice of words really matters. Could I encourage you to choose a different way of expressing yourself on future occasions?
EDIT: The post in question was edited slightly and it comes across as less insulting and dismissive, but I still think we can strive for better.
This is a very exciting and inspiring manifesto! Many of the elements are things that I would like to see in Haskell, in an effort to broadening adoption of the language. Indeed, I have been spending a lot of my own time and energy working on them.
There is clearly a lot of appetite for making Haskell more accessible: 200 people have joined NeoHaskellās Discord already!
The road is long and hard but if this project can galvanise people into enthusiasm and energy then the road will become shorter and easier!
I donāt like the opening sentence
Today, Iām proud to announce a (free and open-source) project that Iāve been working on for many years:
followed by a great deal of high talk. And then only much later does it become clear the āworking on for many yearsā has produced only a github repo with a bunch of Issues none more than 0% complete, zero Closed; and a fancy website with everything labelled āComing soonā, as noted already here.
Exactly! āannounce ā¦ projectā when thereās only āthinkwareā is not a judicious choice of words. Yes it would be an āinspiring manifestoā if there were more substance behind it. So far I see only high ideals (which we could all aspire to if we werenāt aware how hard they are to deliver [**]).
The individual may believe themselves to be acting in good faith. Does that mean they understand and are capable of delivering to those ideals? Putting more effort over those āmany yearsā into establishing feasibility; and moderating the language to distinguish the feasible vs. the aspirational would help me share the hope.
[**] Only a few months ago there was talk of another āDreamā. Did anything come of it? Iām not seeing how āNeoHaskellā is going to deliver to those aspirations without another compiler, or at least severe surgery inside GHC.
I believe you have completely failed to engage with the substance of my post, which is about your behaviour, not the behaviour of others (who are not even present on this forum).
I understand your feelings @AntC2 .
I suppose one perspective, though, is that itās nice to see enthusiasm in the Haskell space for making newbie-friendly material; and it seems the path of most kindness is to encourage it, even if we are a bit skeptical on how it will turn out, and possibly a bit burned having seen a few of these before go not as far as we wish.
I think in some sense itās just how incremental improvements look; people have to drop them for different reasons, and people have to inspire themselves in ways they find useful; for some this might be working in silent and showing something copmlete, for others it might look like building a community of people around them to lean on for motivational energy.
In that vein, I feel similary to @tomjaguarpaw ; I hope janus (the author, edit: thanks @tomjaguarpaw) makes some progress here and it becomes a nice contribution back into the broader Haskell ecosystem that perhaps can be brought back into Haskell itself, over time
Iām confused by this being marketed extensively before work on it has commenced. Wouldnāt it make more sense to present once something substantial exists? Usually a polished website, extensive roadmap, and a discord server come after an MVP. Or at least a single line of code.
Thanks @silky, so you (or NeoHaskell) are suggesting Haskellers avoid making newbie-friendly material? Or discourage people contributing?
Make things as simple as possible but no simpler. Software development is hard. Business requirements are complex. The more the profession brings in tools to manage complexity, the more the business (or its competitors) amps up the complexity in the requirements. Itās never-ending.
Iād encourage everybody to scan through this monthās discussions amongst the Steering Committee on extensions lifecycle, stability, warnings ā and observe the agonising about impacts on users at all levels of experience, and the compromises in trying to be friendly to as many as possible. Would anybody like to help out NeoHaskell by pointing out where is the āaccidental complexityā in any of that?
Thanks @silky, so you (or NeoHaskell) are suggesting Haskellers avoid making newbie-friendly material? Or discourage people contributing?
Iām genuinely unsure what part of my message youāre quoting that has me suggesting that? Iām not associated with NeoHaskell; but indeed, Iām suggesting the exact opposite of your quote above, if I understand you correctly?
I would like to invite the developer to Haskell Discourse, but nobody would be happy to enter in a thread where people are flinging mud to each other, would they?
Let us all try to be considerate meanwhile, Discourse is as welcoming and as unwelcoming as we users are!
As I dimly recall, I first saw the phrase āaccidental complexityā here:
Out of the Tar Pit (2006)
ā¦and itās thought-provoking! So if NeoHaskell is inspired in some way by that article, it could be rather interesting. But considering the reasonable level of detail in that articleā¦to not see even a basic (e.g. CLI-based) prototype seems peculiar at best.
I think judging peopleās tone too harshly on an internet forum should be avoided. People talk differently and come from different internet backgrounds. For instance, I donāt read anything in this thread as especially rude. But I come from an internet background where people will give raw opinions about stuff like this and generally avoid pleasantries and couching.
On the topic, my opinion on this NeoHaskell stuff is that Iāll believe it when I see it, and so far I see nothing (and I read the github issue tracker entirely, which is all that exists afaict).
Iāve been using Haskell to do real things for a while, and I never found learning it hard. I also havenāt found teaching it hard, and I continue to see people learn it fine. So I personally donāt see any use for NeoHaskell.
And to be somewhat cynical, it feels like one goal is some sort of community fork with no good reason.
Luckily, I really donāt see NeoHaskell becoming big enough for the forking nature of it to affect me, so thatās good.
^ I wouldnāt say any of that is mud-slinging fwiw
Shared with the permission of NeoHaskell author:
I think this idea has its merits but what I dislike about the presentation of it is how the haskell community is portrayed:
ā¦ a community primarily focused on resolving theoretical academic and mathematical challenges, often overlooking pragmatic solutions, which can be overwhelming for newcomers.
Sure, there are a lot of haskell developers working fervently to get some very cutting edge features implemented in the language (e.g dependent Haskell), but if Iāve learned anything from hanging out in the ghc channel, itās that the developers are concerned with far more than academics.
I often see discussion of platforms like Apple or Windows doing weird things that break the compiler and the devs figuring out ways to resolve these issues. HLS, GhcUp, Cabal, Stack, VsCode Haskell, Ormoulu/Fourmolu, etc; are amazing tools that have come a long way towards improving the user/newcomer experience. And then thereās the push to make ghc webassembly capable as well!
These are important and complex issues that are useful and completely practical, but they take time. The Haskell Foundation has also worked very hard to make sure these issues are addressed as well
The issue is, that documenting technology is easy, changing the minds of an entire community is not.
Seeing quotes like this makes me think the author of the article maybe isnāt well enough acquainted with the community.
I think itās easy to assume the community doesnāt care about making things more pragmatic because the change happens (probably) a lot slower than we want it too, but all of the efforts Iāve seen seems to indicate that everyone cares about these things, and weāre moving in that direction.
The way I see it, the solution isnāt to create competing projects, but to join in with the efforts of the other devs and help influence the change you want to see.