new posts
This commit is contained in:
parent
43070aaaa4
commit
0b268db637
2 changed files with 77 additions and 0 deletions
40
site/posts/2019-10-17-Frustration-levels-rising.md
Normal file
40
site/posts/2019-10-17-Frustration-levels-rising.md
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
---
|
||||||
|
title: Frustration levels rising
|
||||||
|
author: nek0
|
||||||
|
tags: english programming
|
||||||
|
description: Frustration with Haskell game development
|
||||||
|
---
|
||||||
|
|
||||||
|
The software projects I do in my spare time often revolve around game
|
||||||
|
development and usually the language of choice is Haskell. Doing things the
|
||||||
|
Haskell way demands some frustration tolerance and patience but the
|
||||||
|
outcome is usually a very robust piece of software. The outcome then usually
|
||||||
|
outweighs the frustration on the way there and makes programming quite an
|
||||||
|
enjoyable experience.
|
||||||
|
|
||||||
|
Unfortunately this does not apply to game development in Haskell. At least for
|
||||||
|
me. After years of trying the closest I ever got to a game was
|
||||||
|
[Tracer](https://github.com/nek0/tracer), which I still wish to complete, but I
|
||||||
|
doubt I will ever be successful. This is due to the fact that in the current
|
||||||
|
state it performs badly because of poor technical choices on my side, which I
|
||||||
|
am trying to rectify. To make better informed decisions I set the game aside
|
||||||
|
and started experimenting with some new and some different concepts. This
|
||||||
|
includes concepts like Functional Reactive Programming (FRP) as a new paradigm,
|
||||||
|
but also better tooling, like proper shader programming.
|
||||||
|
|
||||||
|
Finding resources on FRP was quite easy. I was given a good
|
||||||
|
[itroductory book](https://www.manning.com/books/functional-reactive-programming)
|
||||||
|
and found a capable Haskell library implementing this concept in
|
||||||
|
[reactive-banana](https://hackage.haskell.org/package/reactive-banana).
|
||||||
|
|
||||||
|
Finding resources for shader programming in Haskell was not as successful. There
|
||||||
|
are some interesting attempts at abstracting the GLSL shader language into
|
||||||
|
Haskell, so one can profit from static type checking by the compiler, but these
|
||||||
|
haven't been updated for at least two years and don't work anymore. All in all
|
||||||
|
the whole GPU programming part of game development in Haskell looks very bleak.
|
||||||
|
To get things done one has to resort to interfacing C libraries oneself, which
|
||||||
|
is an error prone and tedious task.
|
||||||
|
|
||||||
|
For now I am really frustrated by this lack of an ecosystem and by the fact,
|
||||||
|
that after three years of trying I only have rotting bits and pieces of
|
||||||
|
software.
|
37
site/posts/2019-12-08-And-we-are-at-a-full-circle.md
Normal file
37
site/posts/2019-12-08-And-we-are-at-a-full-circle.md
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
---
|
||||||
|
title: And we are at a full circle
|
||||||
|
author: nek0
|
||||||
|
tags:
|
||||||
|
description:
|
||||||
|
---
|
||||||
|
|
||||||
|
Time to make a new update. Quite a few things happened lately:
|
||||||
|
|
||||||
|
[As I posted earlier](/posts/2019-09-08-Back-to-Debian.html) I had switched back
|
||||||
|
to Debian. This did not last long. After visiting
|
||||||
|
[NixCon](https://2019.nixcon.org/) and learning about all the cool new stuff
|
||||||
|
coming to NixOS (and after breaking my Debian system) I decided to give NixOS
|
||||||
|
another shot and installed it all. I even got my graphics setup to work
|
||||||
|
properly thanks to the Optimus Prime setup options.
|
||||||
|
|
||||||
|
Now I am learning how to handle
|
||||||
|
[haskell.nix](https://github.com/input-output-hk/haskell.nix), an alternative
|
||||||
|
builder for Haskell projects I learned about at NixCon. It works quite well,
|
||||||
|
despite still being marked as experimental. What I still struggle with, is the
|
||||||
|
setup of packages depending on other packages available only locally. Until I
|
||||||
|
can resolve this issue, some of my Haskell development is halted. If someone
|
||||||
|
has some resource at hand on how to achieve this other than the official docs,
|
||||||
|
I would be very grateful for a nudge in the right direction.
|
||||||
|
|
||||||
|
Some other thing, which happened longer ago, but I failed to announce properly:
|
||||||
|
Eidolon, my image gallery is down and I am planning to change the scope and
|
||||||
|
rewrite the project. I took the gallery offline after new legislation passed
|
||||||
|
the european parliament known as "Article 13", whoch would have forced me to
|
||||||
|
either implement content filtering for copyright infringements at upload or buy
|
||||||
|
this service externally. The first seems impossible with my resorces and the
|
||||||
|
latter I am not willing to do. So the gallery will change to a single-user
|
||||||
|
gallery software.
|
||||||
|
|
||||||
|
And this concludes today's update. I will be present at 36C3, so if you want to
|
||||||
|
get in touch, you may find me there. I will be most likely hanging around the
|
||||||
|
ChaosZone assembly or you can call me on DECT 6350.
|
Loading…
Reference in a new issue