cabal-extras
haskell-handbook
Our great sponsors
cabal-extras | haskell-handbook | |
---|---|---|
13 | 9 | |
78 | 89 | |
- | - | |
4.4 | 2.3 | |
4 days ago | 6 months ago | |
Haskell | ||
- | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
cabal-extras
-
Management of obsolete/orphaned/abandoned packages?
There's also cabal-store-gc from cabal-extras by /u/phadej. But it is still highly experimental.
-
Learning Tidal Fundamentals - nice ground-up intro to TidalCycles by Mark Zadel
I've not completely got my head around it, but I think it's more about bugs and missing features. Tidal users don't work in 'projects' or 'packages', they just want to install a library and then use it in the interpreter. There's a fundamental difference between programming to make something and programming as the end in itself, and cabal doesn't seem to consider the latter use case. It seems the cabal-env prototype does support this (sitting here: https://github.com/phadej/cabal-extras) but it hasn't been merged into cabal itself yet. In the meantime v1-install works pretty well, or at least a lot better than v2-install, which just seems buggy to me, but I'm told I'm just trying to use it the wrong way.
-
[Request for review] Short article on Cabal and Stack and difference between them
Cabal also has some support for offline builds, the cabal-extras project has a bundle command to curl the dependencies into a bundle. https://github.com/phadej/cabal-extras The build artefact aren't necessarily portable across machines.
-
Why did haskell not "succeed"?
For cabal, there is https://github.com/phadej/cabal-extras/tree/master/cabal-store-gc
-
Trouble with cabal.
If you want to use cabal (which has various advantages over stack, although as it has access to whole hackage some times requires a bit more thinking) i'd suggest to install cabal-env. Its an experimental tool, written by previous maintainer of cabal. You can simply run cabal install cabal-env to get it. Its part of https://github.com/phadej/cabal-extras. It is what cabal install --lib is supposed to be (and likely will become at some point).
-
Quick Haskell exploration setup on Linux
cabal-env from /u/phadej's cabal-extras is working pretty well for me
-
GHC grows self-distinctively.
There's cabal-store-gc from cabal-extras which does gc on cabal's store.
-
There is no cabal hell.
Cabal 3.x and nix-style builds is a partial improvement, however it still suffers its legacy, with some of the most fundamental issues unsolved or even not addressed. For example maintenance of installed packages in long runs, stale or broken packages from previous failed builds impede the workings etc. Suggested fix is usually to wipe-out whole storage and rebuild everything from scratch again sic. Even when you are lucky, like avoiding update of ghc at all costs, with new base breaking almost everything, you'll soon end up with tenths or hundreds of gigabytes wasted disk space and significantly slower operations, with half of whole Hackage packages in its their countless iterations. I would already gave up completely, unless I've run across phadej's cabal-extras, which with some minor fixes save my sanity.
-
Need help with installing modules
You can install libraries separately with cabal install --lib ..., but the default way is kind of broken. There is an experimental cabal-env tool which works much better, but it is experimental so it is hard to recommend to a beginner.
-
Why is Stack rebuilding everything?
If you are willing to use cabal then the cabal-extra library has some support for offline builds via cabal-bundle https://github.com/phadej/cabal-extras
haskell-handbook
-
Haskell Noob Experience Blogpost
All together that was a thoughtful and fair write up, thanks for that! I think you are spot on regarding monad transformers. Testing story is very good, the only part that I found harder then I would like it to be is testing IO code - there are some solutions that help but still, it is a bit surprisingly complex. And Template Haskell - it is not as hard as it sounds! Can be quite powerful without super deep knowledge. Btw here is short "cheat sheet" for Template Haskell that I wrote as notes for myself and others in the company: https://github.com/wasp-lang/haskell-handbook/blob/master/template-haskell.md .
-
Počeo da učim Haskell
haskell-handbook
-
A new online Haskell guide
I am trying to do something similar with https://github.com/wasp-lang/haskell-handbook, but much less ambitious - it is mostly there for me and my colleagues, not as a general guide, and is for intermediate level, not beginners, also has no order, just topics. But what I do is create issues with quick drafts and then fill them in when I have time and others can also add to it.
-
We reached Beta with Wasp, DSL (written in Haskell) for building full-stack JS web apps with less boilerplate!
Wrote some popular tutorials on Haskell concepts, like https://wasp-lang.dev/blog/2021/09/01/haskell-forall-tutorial, and also are maintaining haskell handbook (still in infancy): https://github.com/wasp-lang/haskell-handbook .
-
Looking for a review of my Haskell solution to my Advent of Code day 4 solution
I actually wrote a short text about how functions behave as Functor, Applicative or Monad: https://github.com/wasp-lang/haskell-handbook/blob/master/function-as-functor-applicative-monad.md .
-
[Request for Review] Tutorial on determining dependency version bounds
Recently I realized I have no idea how should I define version bounds for my library and I got pretty confused before I finally figured out the reasoning behind it (thanks to r/haskell and Adam Bergmark from Stackage), so I thought I would capture that reasoning in a short article: https://github.com/wasp-lang/haskell-handbook/blob/master/dependencies-version-bounds.md .
-
[Request for review] Short article on Cabal and Stack and difference between them
As a result I decided to write a small article that gives overview of Cabal and Stack are and also compares them, based on what I learned: https://github.com/wasp-lang/haskell-handbook/blob/master/cabal-and-stack.md .
- I wrote a tutorial about `forall`aimed at non-senior Haskellers - any feedback is welcome!
What are some alternatives?
Cabal - Official upstream development repository for Cabal and cabal-install
course-plan - 📜 Haskell course info, plan, video lectures, slides
cache-s3
learnyouahaskell - [Moved to: https://github.com/learnyouahaskell/learnyouahaskell.github.io]
heist - An xhtml-based templating engine, allowing Haskell functions to be bound to XML tags.
learn-you-a-haskell-notebook - Jupyter adaptation of Learn You a Haskell for Great Good!
cabalgc - Selectively remove library packages in cabal store.
awesome-haskell - A curated list of amazingly awesome Haskell articles and talks for beginners.
sccache - Sccache is a ccache-like tool. It is used as a compiler wrapper and avoids compilation when possible. Sccache has the capability to utilize caching in remote storage environments, including various cloud storage options, or alternatively, in local storage.
www.haskell.org - www.haskell.org site source
stack-clean-old - Tool for cleaning away old Haskell Stack build artifacts
strong-path - Strongly typed paths in Haskell