android
,
FRP
,
functional programming
,
game programming
,
games
,
haskell
,
yampa
More Haskell games, graphic adventure engine, running on Android
We are extremely happy to announce that we now have several Haskell games working on Android, including our Graphic Adventure engine. Also, we have just begun beta-testing one of the games with real users via Google Play (aka. the Android Market).
...
android
,
FRP
,
functional programming
,
functional reactive programming
,
game programming
,
games
,
haskell
,
parallel haskell
Par thy Android - A short followup on "60 FPS to 500"
Last week we published a blog post briefly outlining several steps of optimization of a Haskell game. In the article, the last two steps, which referred to parallelism and concurrency respectively, were inverted, making it sound like the Android version was using the parallel library.
...
android
,
FRP
,
functional programming
,
functional reactive programming
,
game programming
,
games
,
haskell
,
reactive
,
yampa
From 60 Frames per Second to 500 in Haskell
Haskell is often advertised as fast, easy to parallelize and to optimize. But how much of that is really true? We are going to demonstrate it using a game we are building, including how many changes we had to introduce to increase the game speed by 700% on desktop, how we managed to go from increasing memory consumption in the order of hundreds of megabytes down to constant memory consumption of only 3MB. We’ll also see the impact it had on Android.
...
android
,
FRP
,
functional programming
,
functional reactive programming
,
game programming
,
games
,
haskell
,
Open Source
,
reactive
,
sdl
,
yampa
Declarative Game Programming -- slides, videos and code
Earlier this month, Henrik Nilsson & Ivan Perez presented a tutorial at PPDP 14 on Declarative Game Programming.
The goal was to show how real game programming is possible in a purely functional, declarative way. One way of doing so, seeing games as networks of interconnected signals and signal transformers, results in clear, reusable, modular code.
To illustrate these ideas, a small but realistic game was demonstrated, featuring many of the complex elements found in arcade games: SDL graphics and sound, Wiimote controller, and differentiated subsystems for rendering and sound, game input, physics/collisions, game logic, etc. The game has several levels, each with its own background and music.
To help others interested in functional game programming, all the talk material have been made available, including the slides and the full game code.
...
android
,
FRP
,
functional programming
,
functional reactive programming
,
game programming
,
haskell
,
Open Source
,
reactive
,
reactive banana
,
yampa
A new version of Yampa is out (0.9.6)
Yampa is an impressive, arrowized, Functional Reactive Programming (FRP) implementation written in Haskell. We are using it to implement Android games at Keera Studios, and it has been used, among others, to implement the video game Frag (see video below).
...
android
,
apple
,
FRP
,
functional programming
,
functional reactive programming
,
game programming
,
games
,
haskell
,
ios
,
iphone
,
Open Source
,
reactive
,
yampa
The most inspiring green screen you will ever see
While Haskell, Idris and other Functional Programming (FP) languages enable writing elegant code, the road to production is, well, bumpy. Writing code for industrial environments has added costs that make certain products too expensive and infeasible in practice.
...
functional programming
,
game programming
,
games
,
haskell
,
linux
,
Open Source
,
wii
,
wiimote
Interacting with your Haskell Games using the Wiimote
Quite recently we have been focusing our attention on using new input devices in Haskell games. Wiimotes have many sensors, they are very cheap, and people have been hacking them for a long time.
...
functional programming
,
gtk
,
gtk2hs
,
gui
,
hails
,
haskell
,
Open Source
,
reactive
,
UI
Delving into Reactive Values
In a previous posts we examined the current state of GUI programming in Haskell, how imperative libraries get in the way of functional beauty, and how (non-FRP) reactive programming enables short, declarative code and facilitates code reuse. But without the low-level details, without more information on how this framework is structured, all we have is an idea, a draft on a piece of paper. It’s impossible to know how much effort it will require, or how much it will affect our code.
...
Reactive Programming using Reactive Values
If you’ve read previous posts about GUI programming in Haskell, you’ll know that reactive programming allows us to write simpler, less coupled controllers and to move much of our logic to the model of our applications. But how can we realise such stateful elements in Haskell? Meet Reactive Values.
...
FRP
,
functional programming
,
functional reactive programming
,
gtk
,
gtk2hs
,
haskell
,
reactive
,
UI
GUI programming in Haskell "the old way"
As discussed in a previous post, purely functional GUI frameworks may fail to deliver in terms of feature coverage, look-and-feel and codebase scalability. As a result, many programmers turn back to good-old Gtk+ for their user interfaces (see, for instance, Ian-Woo Kim’s hoodle).
...