|over 9 years ago||about 7 years ago|
|BSD 3-clause "New" or "Revised" License||LicenseRef-OtherLicense|
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.
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.
We haven't tracked posts mentioning Hipmunk yet.
Tracking mentions began in Dec 2020.
What are some alternatives?
SFML - Low level Haskell bindings for SFML 2.x
tateti-tateti - Meta tic-tac-toe ncurses game.
aeson-tiled - Aeson instances for Tiled map editor types
Nomyx - The Nomyx game
dominion - A Dominion simulator in Haskell
FunGEn - A lightweight, cross-platform, OpenGL-based 2D game engine in Haskell
general-games - Haskell package with helpful structures for a variety of games
haskanoid - A free and open source breakout clone in Haskell using SDL and FRP, with Wiimote and Kinect support.
werewolf - A game engine for running werewolf in a chat client
Monadius - 2-D arcade scroller