@bbarker@mastodon.sdf.org

Adventurer in Haskell, Scala, Rust, and similar. Erstwhile computational biologist.

<a rel=“me” href=“https://mastodon.sdf.org/@bbarker”>Mastodon</a>

  • 7 Posts
  • 20 Comments
Joined 2 years ago
cake
Cake day: October 30th, 2022

help-circle


















  • I generally take your point, though I believe FP can be applied to most domains with some benefit - it is just that existing, prevalent FP languages may not always be well suited for the job. In HPC for instance, there are a few interesting options:

    • For both games and HPC, Futhark may be of interest: “Futhark is a small programming language designed to be compiled to efficient parallel code. It is a statically typed, data-parallel, and purely functional array language in the ML family, and comes with a heavily optimising ahead-of-time compiler that presently generates either GPU code via CUDA and OpenCL, or multi-threaded CPU code.”

    • Sadly I can’t find it right now, but there was research language designed with the idea of separating the implementation from the specification, in such a way that the implementation could still be verified to conform to the specification; the specification was much more than a typical function signature as I recall. Basically you would write the function specification in a functional style, and then be able to have multiple implementations (e.g. for different hardware) conforming to that specification. I want to say this was from Standford but may be wrong about that.