App and Game Programming with F#

Platforms

F# executes on a broad range of app and gaming platforms such as Android, iOS, F# on Mac, JavaScript/HTML5 and Windows. See those sections for details about getting started with F# on those platforms.

Mobile App Development

These higher-level app development stacks are support F#:

  • XamarinStudio Xamarin Mobile - Use F# to develop for iOS, Android, Mac and Windows development

  • WebSharper WebSharper - Can be used for cross-tier client/server HTML5 development and more

  • Windows Store - You can use F# Portable libraries as components in Windows 8 and Windows 8 Phone applications

MonoGame - Write Once, Play Everywhere

MonoGame is an open implementation of a cross-platform gaming framework originally based on the XNA 4 framework design. The goal of the project is to allow XNA developers on Xbox 360, Windows & Windows Phone to port their games to the iOS, Android, Mac OS X, Linux, Windows 8 Metro, and PlayStation Mobile.

Xamarin Game Development

Xamarin provide game and app development tools for Android, iOS and other platforms. They support F# as part of their stack.

Some resources for game development with F# and Xamarin tools:

Resources specific to iOS:

Server-side of Games

F# is ideal for the sever-side of game and app development. For example, F# is used on the server-side of one of the largest Facebook social games, as described in this interview.

See the Web Programming and Cloud section for details of using F# with server-side technologies.

Microsoft XNA

Microsoft XNA is a set of tools with a managed runtime environment that facilitates video game development and management.

Projects

  • fquake3_logo FQuake3 - An attempt to re-implement id Software’s Quake III Arena in F#.

  • learnonthego Learn On The Go - A windows phone app for watching Coursera lectures implemented in F#.

  • trains UK Trains - A windows phone app for checking train departure and arrival information implemented in F#.