The Tricks of Game Programming in a Pure Functional Language

Elasticsearch

6,000

Couchbase

25,000

Images

60,000

Elasticsearch

Couchbase

Images

Jordy Moos

Demo
Demo Images
  • Pure Functional language
  • Statically Typed
  • Strongly Typed
  • Friendly Compiler
  • Frontend only

Game Programming

Game Loop

Simple Game Loop Demo

Actors

Composition over Inheritance

Implementing behaviour

LevelUpdate -> LifetimeComponent

Demo
Demo move more
Demo move all
Demo Game of Life
Demo Advent of Code

Serialization

Rendering

  • Ascii
  • Canvas
  • Ascii
  • Canvas
  • Svg

4th renderer!

Demo Virtual Reality
Demo Augmented Reality
Demo 3D

Performance

Demo update narrow actors

Toughest Lesson Learned

Elm Pixel Boulder Game

https://github.com/JordyMoos/elm-pixel-boulder-game

https://jordymoos.github.io/elm-pixel-boulder-game

About me

https://www.linkedin.com/in/jordy-moos-8a809754/

https://twitter.com/jordymoos

https://github.com/jordymoos

Design thanks to

World one: spriters-resource.com
World two: Pixel-boy @2pblog1
World three: @Quaternius

Thank you

https://www.elderscrollsonline.com/en-us/updates/dlc/thievesguild
https://hackster.imgix.net/uploads/attachments/341676/20170822_012800_iwgpFxyWBr.jpg?auto=compress%2Cformat&w=900&h=675&fit=min
https://medium.economist.com/can-we-know-what-animals-are-thinking-83991bc994c4
https://i2.wp.com/tuminds.com/wp-content/uploads/2016/06/Copy-of-Copy-of-the-wild.png?w=1024&ssl=1
https://www.cjnews.com/news/business/next-einstein-competition-looking-for-a-genius-idea
https://twitter.com/i/web/status/1089183825329115136
http://www.benmvp.com/learning-es6-promises/
https://www.praktijknieuwemaan.net/training-een-energiek-en-onrustig-kind-opvoeden/
https://oldgameshelf.com/roms/nes/boulder-dash/images/nes_boulder_dash_2.jpg
https://nl.motorsport.com/f1/news/verslag-derde-training-grand-prix-china-bottas-snelste-albon-crash/4369433/
https://www.trendir.com/modernist-architecture/
https://twitter.com/01k/status/986528602635358208?s=20
http://thegioivanhoa.com.vn/kham-pha-hau-truong-dung-canh-thu-vi-cua-nhung-bo-phim-bom-tan-hollywood/
https://www.deccanchronicle.com/science/science/300417/model-for-viable-time-machine-developed.html
https://javarevisited.blogspot.com/2013/06/why-favor-composition-over-inheritance-java-oops-design.html?m=1
https://discourse.elm-lang.org/t/2-3x-faster-list-concat-implementation/3533