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
Accelerate is a framework for high-performance array computing that provides a domain-specific language for expressing complex mathematical and parallel computations. By utilizing a declarative programming interface, it allows users to define high-level array transformations that are automatically translated into optimized machine code for diverse hardware architectures. The system distinguishes itself through a modular architecture that decouples high-level array operations from hardware-specific instructions. It employs just-in-time compilation and kernel fusion to transform programs into e
Ring is a low-level cryptographic primitive library and security toolset designed for building portable, secure applications. It provides a collection of implementations for RSA, elliptic curve cryptography, and authenticated symmetric encryption. The project focuses on constant-time cryptography to prevent secret data from leaking through timing side-channel attacks. It utilizes a formal verification tool that generates arithmetic logic from templates, ensuring mathematical correctness and eliminating manual implementation errors. The library includes capabilities for producing cryptographi
OCaml is a strongly typed functional language featuring a sophisticated type system and a focus on safety and expressiveness. It provides a comprehensive compiling toolchain that transforms source code into either portable bytecode or high-performance native binaries. The project is distinguished by a shared memory parallel runtime that executes computations across multiple processor cores using domains, and an algebraic effect system for managing side effects and control flow through execution context handlers. It also includes a dedicated parser generator to automatically create lexers and
Flex est un générateur de scanners et un générateur d'analyseurs lexicaux qui transforme les définitions d'expressions régulières en logiciels capables de convertir du texte d'entrée en jetons (tokens). Il génère principalement du code source C et C++ pour une utilisation dans le développement de compilateurs et d'interpréteurs.
Les fonctionnalités principales de westes/flex sont : Lexical Analyzer Generators, DFA-Based Scanning, Scanner Generators, C Source Generators, Compiler Front-End Development, Lexical Analyzers, Cross-Architecture Binary Compilation, Cross-Compilation Toolchains.
Les alternatives open-source à westes/flex incluent : ispc/ispc — ISPC is a vectorizing compiler and SIMD parallel programming language that implements a single program multiple data… void-linux/void-packages — This project is a source-based package management framework designed to build, maintain, and distribute software for a… ocaml/ocaml — OCaml is a strongly typed functional language featuring a sophisticated type system and a focus on safety and… briansmith/ring — Ring is a low-level cryptographic primitive library and security toolset designed for building portable, secure… acceleratehs/accelerate — Accelerate is a framework for high-performance array computing that provides a domain-specific language for expressing… riscv-collab/riscv-gnu-toolchain — This project is a cross-compiler toolchain for RISC-V software development. It provides the necessary components to…