langs
futhark
Our great sponsors
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.
langs
- How does the compiler know that an already typedefed ident is meant to be a new declarator?
- Compiler Case Study
- Making Simple Concepts Hard
- What makes a language easy for writing a parser?
-
Resources to understand mojo and compilers
The code is here. Note that the input filename is hardcoded in the source code.
- Automatic import of C headers —how to deal with macros?
- How does preprocessing work in a one pass compiler?
- 'Table Data' and 'X-Macros'
- Register Window in a Stack VM Interpreter
- My New IL
futhark
-
What downsides exist to Futhark? Seems almost too good to be true?
Why Futhark? (futhark-lang.org)
-
GPU Programming: When, Why and How?
There is no on-going work to support Metal apart from the work done by Miles. There's an old issue about it: https://github.com/diku-dk/futhark/issues/853#issuecomment-5...
-
Is Parallel Programming Hard, and, If So, What Can You Do About It? v2023.06.11a
Functional programming can be a great way to handle parallel programming in a sane way. See the Futhark language [1], for example, that accepts high-level constructs like map and convert them to the appropriate machine code, either on the CPU or the GPU.
[1] https://futhark-lang.org/
-
Is there a programming language that will blow my mind?
Futhark - use a functional language to program the gpu
-
Does This Language Exist?
You might want to look into Futhark, although it's mainly designed for writing GPU code.
- Learn WebGPU
-
Two-tier programming language
Futhark https://futhark-lang.org/
- Best book on writing an optimizing compiler (inlining, types, abstract interpretation)?
- Functional GPU programming: what are alternatives or generalizations of the idea of "number of cycles must be known at compile time"?
- APL: An Array Oriented Programming Language (2018)
What are some alternatives?
prolog-to-minizinc - A Prolog-to-MiniZinc translator
arrayfire-rust - Rust wrapper for ArrayFire
rakudo - 🦋 Rakudo – Raku on MoarVM, JVM, and JS
dex-lang - Research language for array processing in the Haskell/ML family
vox - Vox language compiler. AOT / JIT / Linker. Zero dependencies
Halide - a language for fast, portable data-parallel computation
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
julia - The Julia Programming Language
wabt - The WebAssembly Binary Toolkit
BQN - An APL-like programming language. Self-hosted!
factor - Factor programming language
kompute - General purpose GPU compute framework built on Vulkan to support 1000s of cross vendor graphics cards (AMD, Qualcomm, NVIDIA & friends). Blazing fast, mobile-enabled, asynchronous and optimized for advanced GPU data processing usecases. Backed by the Linux Foundation.