Cabal VS codeworld

Compare Cabal vs codeworld and see what are their differences.


Official upstream development repository for Cabal and cabal-install (by haskell)


Educational computer programming environment using Haskell (by google)
Our great sponsors
  • InfluxDB - Collect and Analyze Billions of Data Points in Real Time
  • Onboard AI - Learn any GitHub repo in 59 seconds
  • SaaSHub - Software Alternatives and Reviews
Cabal codeworld
84 14
1,531 1,231
0.6% -0.1%
9.4 0.0
4 days ago 10 months ago
Haskell Haskell
BSD 3-clause "New" or "Revised" License Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.


Posts with mentions or reviews of Cabal. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-09.


Posts with mentions or reviews of codeworld. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-04-13.
  • Pedagogical Downsides of Haskell
    3 projects | | 13 Apr 2023
    Code World[1] is a great project that addresses a number of the problems from the article, with an eye towards using Haskell to teach children basic math and programming simultaneously. Code World directly addresses a number of the obstacles outlined in this article:

    1. Using an online editor with a rich built-in library removes any toolchain problems.

    2. A custom standard library simplifies pedagogically unnecessary details like Foldable

    3. The custom standard library also avoids currying (f(a, b) for functions rather than f a b)

    4. Custom error messages improve the feedback students get from the compiler

    I would highly recommend Code World to anybody looking to teach programming with Haskell. If you want to teach Haskell in a way that fits the existing ecosystem, it's also possible to run Code World without the custom standard library[2].



  • Ask HN: It's 2022. Where should I direct the youths to learn about programming?
    12 projects | | 29 Apr 2022
    Loose connection, but made me remember uses a Haskell-like functional language to define still pictures, animations, or even games.
  • My kid loves computers. I would like him to start programming, just for fun to see if it is something for him. But how to start, what type of programming language that is appealing. Books? I mean, we can start with Lisp, but how long will attention hold? Please advise, thanks.
    3 projects | /r/programming | 30 Jan 2022
  • Game
    3 projects | /r/haskellgamedev | 21 Dec 2021
    I second gloss! It's a bit limited (no sound, fonts, nor even text centering, but you do have support for vector and bitmap graphics, color manipulation, mouse, keyboard, and animations), but it's so, so easy to use that I not only recommend it (or the similar Code World) for anybody's first game, I still use it for my newer games.
  • Functional Programming in OCaml
    4 projects | | 27 Jul 2021
    Two that I can think of:

    - Bootstrap teaches a toned-down version of Racket (i.e. Scheme): . It's taught in some schools as well as a comp sci curriculum.

    - teaches using a toned-down version of Haskell. To my knowledge it's not used in schools.

  • Why I Support the Haskell Foundation
    2 projects | /r/haskell | 16 Jun 2021
    I had the silly 'fromString' error you get when using RebindableSyntax but had forgotten what to do next. Quick Google search and I hit on codeworld #59.
  • Safe Haskell?
    3 projects | /r/haskell | 16 Apr 2021
    I'm not a user myself, but I understand Lambdabot and mueval depend on it. More generally, anything that executes Haskell code supplied by untrusted users would fit the bill. I don't know if CodeWorld for example allows user-supplied modules, but if it did they'd have to be Safe.
  • Do you recommend using ghc-pkg? Do you use it and why?
    3 projects | /r/haskell | 16 Mar 2021
    I also have a list of about 300 or so packages at, which I'd like Cabal to solve and find compatible versions to make available, preferably without listing them all on one massive command line! There are limits on the length of a command line. I don't know if cabal install --lib will expose packages that are dependencies, but not actually listed on the command line, in the resulting environment.
    3 projects | /r/haskell | 16 Mar 2021
    You know, now that you mention it, that sounds familiar. There's an issue for this at, and having cabal set up an environment file for GHC is mentioned there. There are some other complications: for example, with cabal v2-install, I can't seem to list multiple packages in local directories. So the answer to that seems to be creating a cabal.project file that lists them all... but then I want to install all of the packages from that cabal.project file into the environment, and their dependencies, and also make the consistent set of dependency versions that work with them (as chosen by Cabal's constraint solver) available in an environment for any further projects built against those same libraries.
  • Beginner Question on library
    2 projects | /r/haskell | 12 Mar 2021
    You could also use with a guide here. It is meant as a beginner-friendly introduction to Haskell. It also has an online environment, so you won't need to install anything.

What are some alternatives?

When comparing Cabal and codeworld you can also consider the following projects:

stack - The Haskell Tool Stack

haskell.nix - Alternative Haskell Infrastructure for Nixpkgs

static-haskell-nix - easily build most Haskell programs into fully static Linux executables


hackage-repo-tool - Hackage security framework based on TUF (The Update Framework)

stackage - Stable Haskell package sets: vetted consistent packages from Hackage

cab - A maintenance command of Haskell cabal packages

wasp - The fastest way to develop full-stack web apps with React & Node.js.

cabal2nix - Generate Nix build instructions from a Cabal file

hackage-server - Hackage-Server: A Haskell Package Repository

cabal-dev - A wrapper program around cabal and cabal-install that maintains sandboxed build environments.