sdl-gpu-hs
libvorbis
sdl-gpu-hs | libvorbis | |
---|---|---|
4 | 3 | |
- | 1 | |
- | - | |
- | 0.0 | |
- | over 1 year ago | |
C | ||
- | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
sdl-gpu-hs
-
3D graphics on Haskell in 2023
The bindings are currently source-only here. I am going to release to Hackage soon (tm), but I just haven't had the time to button it up. However, they do work great. Every game I've done for Ludum Dare except 47 (which was gloss) has used these bindings.
-
Monthly Hask Anything (January 2023)
The guts are in the Memorable module. There are some operators in there that allow you to pluck individual fields from struct pointers in IO instead of marshaling entire structs needlessly.
-
Haskell is the greatest programming language of all time
The games are built on a custom "engine" made with SDL2 and some other C libraries I wrote bindings for: sdl-gpu, cute_c2, and cute_sound. I use apecs and cleff for the general architecture. And for animations, I use a combination of animate and ease.
-
Linear Types AmA!
You can't exactly allocate data in this custom memory management system, but you can get close with some type-level/generics stuff I think. I've been playing with it quite a bit for no-marshal hsc FFI bindings [1] [2], and it's worked nicely for that in raw IO. With some extra elbow grease, I can probably make it work for pure linear code too.
libvorbis
-
3D graphics on Haskell in 2023
And that's PNG, for reading something more hard to come by, like OggVorbis, there's just one tiny mid-level library called libvorbis. (btw does anyone know a working email of the maintainer of that package, I have an update for that too)
-
Should raw library bindings drop the namespace prefix?
For context, I have written complete bindings to five different C libraries (freetype2, libvorbis, libspng, al, Chipmunk2D) and the question in the title may very well be the last one I have concerning FFI for quite some time. The question originates from the fact that chiphunk strips prefixes, something no other low-level library I've seen does.
-
Managing structs within low-level FFI bindings
Over the past few years I've written several low-level bindings: freetype2 (actually on Hackage), libvorbis (still waiting for a review on that one) and libpng (package name for that is free, I've just never submitted anything to Hackage myself).
What are some alternatives?
agda2hs - Compiling Agda code to readable Haskell
opus - Modern audio compression for the internet.
really-small-backpack-example - A really small example of the Backpack module system for Haskell
ffmpeg-libav-tutorial - FFmpeg libav tutorial - learn how media works from basic to transmuxing, transcoding and more. Translations: πΊπΈ π¨π³ π°π· πͺπΈ π»π³ π§π·
Kind2 - A next-gen functional language [Moved to: https://github.com/Kindelia/Kind]
HCodecs - A library to read, write and manipulate MIDI, WAVE, and SoundFont2 files
libspng - Haskell bindings for libspng
logic-TPTP - Import, export etc. for TPTP, a syntax for first-order logic
macaroni.nix
mime - A Haskell MIME library
cute-c2-hs
simple-tar - A very simple tar archive processing library