Skip to content
spherebreak build with elm
JavaScript Elm Other
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app
public
tests
.gitignore
brunch-config.js
elm-package.json
package.json
plan.org
readme.org

readme.org

Spherebreak build with elm

https://edil3ra.github.io/games/spherebreak/ First project build with elm, It’s a clone of the spherebreak (a mini game in final fantasy-x2 )

Rules

http://finalfantasy.wikia.com/wiki/Sphere_Break

What went right

  • The model and the view are well separated.
  • Each view element has a mapper function with the model.
  • The Coin, Coins, and Player type are well written and unit tested.
  • The Update function has no side effect except for the first random generator, that make it very easy to test.
  • The application has few messages that represent the interaction with the games.

What went wrong

  • Bad organisation, it should have a models and a views folder.
  • Probably too much code for what it does.
  • The View module has too much code.
  • Init module is stupid.
  • Cmd, Sub, Message, Init should have their own modules.

What i like about elm

  • Easy to test.
  • Excellent type system.
  • Pure functional.
  • Small core of principles (you can learn it in one week if you already know functional style programming).
  • Compilation make runtime error almost inexistant.
  • Easy to debug with Debug.log.
  • Very good package system.
  • Scalable.
  • Good alternative to react or angular.

What i dislike about elm

  • The format convention is weird for variable initialisation.
  • Lack of examples in the documentation.
  • Lack of tutorials.
  • It seem like not enougth developer are interested in elm (it’s a shame).
You can’t perform that action at this time.