This is a simple raycaster I put together based on F. Permadi's tutorial "Ray-Casting Tutorial For Game Development And Other Purposes". Note that some pages in Permadi's tutorial are not reachable from the table of contents - use the next/previous page links to view those.
Rays are not cast using Permadi's method, but instead use the Algorithm of Amanatides and Woo.
There's no collision detection.
The easiest way to get a build environment is to use
Nix. Once you have nix installed, you can
nix-shell to enter a shell with GHC and all needed libraries
After you have GHC ready (either from Nix or otherwise), build and run
the raycaster with