• Stars
    star
    202
  • Rank 193,691 (Top 4 %)
  • Language
  • Created about 10 years ago
  • Updated 10 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Functional Programming in Games Resources

Functional Programming In Games

Welcome to this page! Hope you find what you are looking for

I don't know you, but when I was learning how to do funcitonal programming I wanted to program fun things, or something other than a "website for your cat(tm)" so I was looking for FP in games and there wasn't much around at the time... so I created this list.

Please note: this list is not complete. If you find something missing or incorrect, please send a PR or create an issue specifying the problem.

Thanks

Some resources for Functional Programming in Games Resources

Books

Tutorials

Videos

Presentations

Papers

Libraries and engines

Haskell

F #

  • Duality Scripting Allows you to write F# on the Duality Game Engine (the compiler is integrated into the editor so you can write code on any editor you want). This plugin supports C# too.
  • Nu Game Engine cross-platform F# 2D game engine. It encourages to use as the architecture a variation of FRP which he calls Iterative Functional Reactive Programming.
  • Unity 3D can be used with F#. There are multiple examples in the internet, for example this one.

Clojure

  • play-clj A wrapper around libGDX. It supports pc, Android and iOS (through RoboVM).
  • brute An Entity Component System which supports both Clojure and ClojureScript. Some information on the thinking behind the implementation are on the author's blog.
  • Arcadia Clojure integrated into the Unity engine. It uses ClojureCLR. It has been used for interactive art installations and game jam games.

Scala

  • Indigo: A Scala 3 / Scala.js 2D game engine built specifically for functional programmers.
  • SGL: Scala Game Library (SGL) is a library for developing cross-platform 2D video games in Scala. It provides a high-level API for building games, and can export games to the Desktop, Android, and the web. More platforms, including iOS and consoles, are on the roadmap.

Awesome Gamedev Repositories

Games

Shipped or in development commercial games made with FP languages
Open source
  • Game jam games

  • More open source games, by language

  • Meta - games that teach functional programming concepts in-game

    • cube-composer
      • "A puzzle game inspired by functional programming, written in PureScript."
    • lambda-lantern
      • You collect functional programming patterns and use them to solve puzzles and escape a dungeon.
      • "Lambda Lantern is a game made with PureScript, PureScript Native, and Panda3D." ("One of the purposes of Lambda Lantern is to demonstrate binding PureScript to C++.")
    • functional - on Steam and open source, implemented in Rust
      • "functional is a puzzle game about math and abstraction."

More Repositories

1

FSharpAndGamesBreakout

A simple F# Breakout clone using Duality
F#
16
star
2

IncompleteGameLabs

C#
10
star
3

PapersInSystems

3
star
4

Photoshop-Content-Processor-for-XNA

Photoshop Content Processor for XNA
C#
3
star
5

JoyOfCoding16-Elm

A game made in Elm as a workshop for Joy of Coding 2016
Elm
3
star
6

duality-withsvn-history

A 2D Authoring engine. Original source was on google code but recently moved here https://github.com/AdamsLair/duality. MIT license http://opensource.org/licenses/mit-license.php. A Nuget package is available from MyGet public repo here http://www.myget.org/feed/6416d9912a7c4d46bc983870fb440d25/package/DualityEditor
C#
3
star
7

UnfryingYourBrain

Code samples for Unfrying your brain talk
F#
2
star
8

Presentations

Presentations
F#
2
star
9

andrea.github.io

my blog
JavaScript
2
star
10

Simple-2D-camera-Sample

C#
2
star
11

c4g

I wrote a blog post about double buffering implemented in MultithreadingWithDoubleBufferLockFree here http://bit.ly/115zMx6
C#
2
star
12

MercuryParticleEngine

Git clone of Mercury Particle Engine http://mpe.codeplex.com
C#
2
star
13

Lsystem

L System fractal generation workshop
F#
1
star
14

HelloRabbitMQCSharp

Hellow world for Rabbit Mq
C#
1
star
15

nxmpp

C#
1
star
16

dualityTechDemos

Duality tech demos for duality
C#
1
star
17

MercuryParticleEngineWP7Sample

MercuryParticleEngine super simple Windows Phone 7 Sample
C#
1
star
18

DualityOgvPlayerPlugin

Duality Ogv Vorbis Player Plugin
C#
1
star
19

RabbitInHeadlightsWorkshop

Code for the RAbbit in Headlights workshop
F#
1
star
20

Nuclex

A git clone of http://nuclexframework.codeplex.com/ with a monogame for windows build
1
star
21

DirectoryTruncator

A utility to deal with files and directories. Use it for truncating a directory so that it has a number of files, while deleting older ones.
C#
1
star
22

SpringCamera2dXNA

An example 2d Spring camera in 2d
C#
1
star
23

BASWeb-old

Bytesize Architecture Sessions info website
HTML
1
star
24

JoyOfCoding2015

In this workshop, we will start of with the skeleton of a Breakout clone in F# and turn it into a more functional version of Breakout.
F#
1
star