rattletrap VS falling-turnip

Compare rattletrap vs falling-turnip and see what are their differences.


:car: Parse and generate Rocket League replays. (by tfausak)


falling sand game with regular parallel arrays. (by tranma)
Our great sponsors
  • talent.io - Download talent.io’s Tech Salary Report
  • SonarQube - Static code analysis for 29 languages.
  • Scout APM - Truly a developer’s best friend
rattletrap falling-turnip
3 2
131 61
- -
7.8 0.0
about 1 month ago over 9 years ago
Haskell Haskell
MIT License BSD 3-clause "New" or "Revised" License
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 rattletrap. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-02-03.


Posts with mentions or reviews of falling-turnip. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-05-08.
  • Show HN: Making a Falling Sand Simulator
    3 projects | news.ycombinator.com | 8 May 2022
    If you want more performance, falling sand simulators can further be made parallel by implementing them using Margolus Neighbourhoods, as in Falling Turnip: https://github.com/tranma/falling-turnip

    The idea is that a single iteration divides the world into 2x2 squares and then applies effects sequentially within each square, but not between the squares. This means each square can be processed independently. In the next iteration, the division into squares shifts right and down by one cell each direction. This does mean you need more steps than in a sequential implementation, but I found it to be quite a principled approach to parallelizing cellular automata when I first read about it. One interesting side effect of this design is that falling particles end up being separated by blank space, as shown here: https://futhark-lang.org/static/falling-sand-2016.12.04.webm I wonder if that is fixable.

What are some alternatives?

When comparing rattletrap and falling-turnip you can also consider the following projects:

MazesOfMonad - simple game

tateti-tateti - Meta tic-tac-toe ncurses game.

werewolf-slack - A chat interface for playing werewolf in Slack

LambdaHack - Haskell game engine library for roguelike dungeon crawlers; please offer feedback, e.g., after trying out the sample game with the web frontend at

netwire-input-glfw - MonadInput instances for GLFW based netwire programs

aeson-tiled - Aeson instances for Tiled map editor types

breakout - Breakout

SFML - Low level Haskell bindings for SFML 2.x

general-games - Haskell package with helpful structures for a variety of games

Hipmunk - Haskell binding for Chipmunk, 2D physics engine.

reflex-sdl2 - A minimal host for sdl2 based reflex apps.