4 repository-uri
Languages designed to automatically scale logic across parallel processing threads.
Distinguishing note: No existing candidate captures the identity of a language designed for automatic parallel scaling.
Explore 4 awesome GitHub repositories matching programming languages & runtimes · Concurrent Programming Languages. Refine with filters or upvote what's useful.
Bend is a high-level parallel programming language and compiler designed to execute code across multi-core CPUs and GPUs automatically. By translating functional source code into a graph-based intermediate representation, it enables massive parallel execution without requiring manual management of threads, locks, or atomic operations. The runtime operates as an interaction net engine, where computations are represented as networks of nodes that reduce through local rewriting rules. This model utilizes a work-stealing scheduler to distribute tasks across thousands of hardware threads, ensuring
Provides a high-level language that automatically scales code across thousands of processing threads.
Borgo este un limbaj cu tipizare statică și un compilator care transformă sintaxa de nivel înalt în cod sursă Go. Acesta funcționează ca un transpiler conceput pentru a profita de runtime-ul Go, introducând în același timp un sistem de tipuri centrat pe tipuri de date algebrice și gestionarea erorilor bazată pe rezultate. Limbajul se distinge prin înlocuirea valorilor returnate multiple din Go cu tipuri de rezultat și opțiune, folosind un operator dedicat pentru propagarea concisă a erorilor. Implementează sum types cu pattern matching exhaustiv și oferă un instrument pentru a genera binding-uri pentru pachetele Go existente, convertind automat returnările cu valori multiple în aceste wrapper-e de tip mai sigure. Sistemul include primitive pentru programarea concurentă, utilizând canale tipizate și sarcini în fundal pentru a coordona procesele asincrone. Sistemul său de tipuri suportă, de asemenea, implementarea interfețelor structurale, inferența automată a tipurilor de colecție și blocuri de implementare pentru organizarea metodelor pe structuri.
Provides a language designed for coordinating asynchronous processes using typed channels and background tasks.
Verona is a research programming language designed to prevent data races through a system of concurrent ownership and deep immutability. It utilizes a deeply immutable memory model to ensure that complex objects cannot be mutated, allowing data to be shared across concurrent threads without synchronization locks. The project features a deterministic parallel execution engine that ensures reproducible outputs regardless of thread timing. It employs a region-based memory manager to assign memory regions to specific threads or processes, reducing contention in producer-consumer workloads. The s
A research programming language designed specifically for data-race prevention via concurrent ownership and deep immutability.
ISPC is a vectorizing compiler and SIMD parallel programming language that implements a single program multiple data model. It serves as a toolchain for translating C-based code with parallel extensions into optimized machine code for various CPU and GPU architectures using an LLVM backend. The compiler is designed for cross-platform SIMD toolchain support, generating specialized instruction sets for x86 SSE/AVX, ARM NEON, and Intel GPU from a single source. It features a runtime dispatch mechanism that selects the most efficient hardware-specific implementation for the current system during
Implements a SIMD parallel programming language with a single program multiple data model.