30 open-source projects similar to hsutter/cppfront, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Cppfront alternative.
pysheeet is a technical reference library providing a curated collection of code snippets and implementation patterns for advanced Python development, system integration, and high-performance computing. It serves as a comprehensive guide for implementing low-level network programming, native C extensions, and asynchronous and concurrent programming. The project provides specialized frameworks for the development and deployment of large language models, including tools for distributed GPU inference and high-performance serving. It also includes detailed patterns for high-performance computing
c3c is the compiler for the C3 programming language, transforming source code into executable binaries, static libraries, or dynamic libraries using an LLVM backend. It implements a system based on result-based error handling, scoped memory pooling, and a semantic macro system. The compiler provides first-class support for hardware-backed SIMD vectors that map directly to processor instructions and enables runtime polymorphism through interface-based dynamic dispatch. The project covers a broad set of low-level capabilities, including manual and pooled memory management, inline assembly inte
Janet is a Lisp-based dynamic programming language featuring a register-based bytecode virtual machine and an embeddable scripting engine. It functions as a fiber-based concurrency runtime and includes a parsing engine based on Parsing Expression Grammars. The project is distinguished by its ability to be integrated into C or C++ applications via a minimal header interface. It utilizes a Lisp-style macro system for compile-time code transformation and employs prototype-based table inheritance for object-oriented behavior. The runtime covers a broad set of capabilities, including asynchronous
Reason is a strongly typed functional language and multi-target compiler designed to produce either JavaScript for web environments or native machine code for operating systems. It serves as an OCaml-compatible language that shares an abstract syntax tree with OCaml, providing a practical syntax for the OCaml ecosystem. The project functions as a type-safe frontend language, incorporating JSX support to build user interfaces through structural elements that translate into type-safe function calls. It enables deep integration with the JavaScript ecosystem, allowing the use of existing librarie
j2objc is a source-to-source compiler and transpiler that converts Java source code into Objective-C. It functions as a cross-platform logic porter, allowing application logic and data models written in Java to be shared and executed on iOS. To support this translation, the project provides an Objective-C implementation of core Java classes and APIs to emulate the Java runtime environment. The system includes specialized translation for Java libraries and provides mapping for dependency injection and static analysis annotations to preserve metadata. It also enables the conversion of JUnit tes
Hy is a Lisp implementation for Python that allows for writing Lisp syntax which compiles to Python bytecode. It operates as a Python-based Lisp dialect and S-expression language, providing full access to the Python standard library and ecosystem. The language focuses on macro-based metaprogramming, featuring an AST-walking macro system and reader macros that allow for custom syntax transformations and parsing rules. It enables the manipulation of the abstract syntax tree to extend language capabilities. The project includes a read-eval-print loop for interactive development and supports sta
This project is a comprehensive, curated directory of high-quality libraries, tools, and educational resources for C and C++ development. It serves as an ecosystem discovery index, helping developers navigate the vast landscape of third-party components, frameworks, and technical documentation available for the language. The collection is distinguished by its focus on high-performance systems programming and technical mastery. It provides deep coverage of specialized domains including SIMD-accelerated data processing, compile-time template metaprogramming, and asynchronous event-driven archit
pybind11 is a header-only C++ binding library that exposes C++ functions and classes as Python modules. It serves as a language bridge, mapping native types, inheritance hierarchies, and lambda functions into compatible Python objects to enable high-performance native code execution. The library includes specialized integration for NumPy arrays, utilizing buffer protocols to bind native C++ data without copying memory. It provides a toolkit for mapping C++ standard library data structures and smart pointers into the Python environment while maintaining cross-language memory management. The p
Standard is a zero-configuration static analyzer, linter, and formatter for JavaScript. It functions as a style guide that enforces consistent coding rules and identifies programming errors without requiring manual configuration files. The tool distinguishes itself by providing an automatic code fixer that scans source files to correct style violations and ensure a uniform codebase. It implements a predefined rule set to eliminate the need for project-specific configuration. The project covers a broad range of static analysis capabilities, including support for experimental language syntax a
This project is a static analysis linter, code quality tool, and language auditor for Rust. It functions as an automated refactoring system designed to identify common mistakes and suggest idiomatic improvements for Rust source code. The tool identifies non-idiomatic patterns, performance bottlenecks, and code smells to improve the overall correctness and quality of the code. It specifically audits memory safety by flagging suspicious use of unsafe blocks and pointer manipulations and detects inefficient operations to optimize execution speed. The analysis surface covers coding style enforce
ESTree is a formal schema and set of object interfaces used to represent JavaScript source code as a standardized abstract syntax tree. It serves as a common tree format and parser standard to ensure interoperability between different JavaScript parsers and transformation tools. The specification provides a consistent way to model language constructs, including statements, expressions, and module declarations. It includes detailed representations for modern language features such as classes, private identifiers, and short-circuiting logic like nullish coalescing and optional chaining. The pr
Catch2 is a comprehensive framework for C++ software validation, providing an environment for unit testing, integration verification, and performance analysis. It enables developers to define and execute automated test suites and micro-benchmarks directly within their applications. The framework is distinguished by its header-only distribution, which allows for integration into existing build systems without requiring complex external dependencies. It utilizes a hierarchical section-based execution model that supports behavior-driven testing, allowing for shared setup and teardown logic acros
Luau is a high-performance programming language evolved from Lua 5.1. It consists of a bytecode virtual machine, an embeddable scripting engine, and a static code analyzer designed to provide a secure, sandboxed execution environment for host applications. The project is distinguished by its gradual typing system, which combines automatic type inference with optional manual annotations to detect bugs without requiring full static typing. It also features native vector mathematics for high-performance operations and a specialized debugging system that uses bytecode patching to minimize executi
This is a TC39 proposal to add declarative pattern matching syntax to the ECMAScript language. It introduces a match expression that allows developers to inspect and branch on data structures using patterns with destructuring, guards, and logical combinators. The proposal defines a custom matcher protocol via a well-known symbol, enabling objects to implement user-defined matching logic with arbitrary extraction and decomposition. The proposal supports matching against literal primitives using SameValue equality with special handling for signed zero and NaN, as well as relational comparison
Nim is a statically typed, compiled systems programming language designed for high performance and cross-platform development. It translates high-level source code into C, C++, or JavaScript, allowing developers to produce efficient native binaries or web-compatible scripts from a single codebase. The language emphasizes a clean, indentation-based syntax that simplifies code hierarchy while maintaining the power of a full-featured systems language. What distinguishes Nim is its robust metaprogramming framework, which allows developers to inspect, modify, and generate code structures during th
This is a C++ ranges library and extension to the Standard Template Library that provides a collection of composable algorithms and lazy views for processing data sequences. It functions as a lazy sequence processing framework and a template meta-programming library for manipulating type lists and performing compile-time type computations. The project enables functional programming patterns in C++ through the use of pipe syntax and partial application to create readable, left-to-right data transformation chains. It allows for the construction of lazy data pipelines that filter and transform e
Coconut is a functional programming language that compiles to Python. It functions as a source-to-source compiler, translating high-level functional syntax into compatible Python code to maintain runtime compatibility. The language introduces a logic system for pattern matching and destructuring complex data structures. It provides a mechanism for tail call optimization to prevent stack overflow errors during deep recursive function calls and employs a lazy evaluation engine to defer computations until results are explicitly required. The project includes support for algebraic data types, pi
Zig is a low-level systems programming language designed for writing high-performance software that interacts directly with hardware. It focuses on the transformation of source code into machine binaries for the execution of low-level operations. The project is distinguished by its native support for cross-compilation, allowing binaries for various operating systems and CPU architectures to be built from a single host. It provides direct interoperability with the C language, enabling the import of headers and function calls without a foreign function interface. The language utilizes manual m
Carp is a statically typed Lisp compiler that compiles Lisp-like syntax directly to C source code, enabling seamless integration with existing C libraries and low-level system programming. It manages memory deterministically at compile time using ownership tracking and linear types, eliminating garbage collection pauses and runtime overhead while ensuring type safety through an inferred static type system. The language distinguishes itself through compile-time macro expansion and metaprogramming capabilities, allowing code generation and transformation before final binary output. It enforces
Boost is a collection of portable, high-performance source libraries that extend the C++ standard library. It provides a wide range of reusable components, data structures, and algorithms designed to add capabilities to the base language across different platforms. The project is distinguished by its extensive focus on compile-time template metaprogramming and generic programming. It implements advanced architectural patterns such as policy-based design, concept-based type validation, and the use of SFINAE for conditional template resolution to minimize runtime overhead. The library covers a
This project is a comprehensive educational resource and tutorial series for learning Bash scripting and shell programming. It serves as a technical guide and reference manual for writing automation scripts and creating reusable tools within a Linux environment. The material focuses on DevOps and SysOps automation, covering the development of custom command-line tools, system administration automation, and the implementation of security automation such as random password generation and DDoS protection. The scope encompasses core language fundamentals including variables, loops, and condition
cppinsights is a C++ compiler visualization and static analysis tool that uses the Clang frontend to parse source code into an abstract syntax tree. It functions as a source-to-source transformer, rewriting C++ code to make implicit compiler behaviors and hidden operations explicit and visible. The tool specializes in unfolding complex language constructs, such as expanding the internal machinery of coroutines to visualize suspension and resumption logic. It also reveals the actual code generated during template instantiation and transforms implicit compiler actions, including structured bind
This project is a localized educational resource for learning the Rust programming language, providing a comprehensive guide and technical specifications translated into Simplified Chinese. It serves as an instructional tool for studying language idioms, memory management, and type systems. The repository focuses on software documentation localization, converting official guides into Simplified Chinese to increase accessibility for non-English speakers. It utilizes a markdown-based system to organize content and supports multi-format export to static HTML, PDF, and EPUB formats for both web a
Roc is a statically typed, functional programming language built around immutable-by-default semantics, exhaustive pattern matching on tag unions, and a type system that combines optional explicit annotations with full compile-time type inference. Its core identity centers on correctness and expressiveness, using tagged unions for error handling with a question-mark operator for early error propagation, and a trailing-bang naming convention that makes side-effect boundaries syntactically visible at every call site. The language distinguishes itself through a platform-based I/O abstraction tha
This project is a comprehensive educational resource consisting of a Bash programming tutorial, scripting reference, and Linux command line manual. It provides instructional materials for writing scripts, automating system tasks, and mastering terminal navigation and Unix system administration. The guides cover a wide range of shell environment customization, including prompt styling and the use of aliases. It also provides a shell environment guide for managing configuration files and initializing user environments. The materials detail a broad set of capabilities including control flow log
Crystal is a statically typed, compiled programming language designed for high performance and memory safety. It leverages an LLVM-based compiler to translate source code into optimized machine-executable binaries, while its type-inference-based static analysis enforces strict safety rules during the build process. The language distinguishes itself through a fiber-based concurrent runtime that manages lightweight execution units for asynchronous input and output without blocking the main process. It also features a powerful compile-time macro system that allows for the inspection and transfor
Highway is a portable C++ library and hardware abstraction layer designed for writing single instruction multiple data (SIMD) code. It provides a unified interface that maps data-parallel logic to various CPU instruction sets, enabling the development of high-performance software that runs across different processor architectures without requiring architecture-specific assembly. The project features a dynamic instruction dispatcher that selects the most efficient CPU instruction set at runtime based on detected hardware. It also supports static target specialization and extensible mechanisms
GSL is a Guidelines Support Library for C++ that provides a set of types and functions designed to implement the C++ Core Guidelines. It functions as a framework for improving code safety and portability across different platforms. The library provides a contract-based programming model to verify program invariants through precondition and postcondition assertions. It includes specialized wrappers for null-pointer safety and bounds-checked memory views to prevent buffer overflows and invalid memory access. The project also covers safe integer conversion to prevent data truncation and provide
Returns is a functional programming library for Python that provides type-safe containers for managing state, error handling, and optionality. It serves as a monadic container library and a type-safe error handling framework, replacing traditional try-catch blocks and null checks with Result and Optional containers to treat exceptions as data. The project is distinguished by its use of a specialized Mypy static analysis plugin to validate functional pipelines and emulate higher kinded types. It provides mechanisms for isolating side effects through IO containers and offers a framework for typ
Thrust is a C++ parallel algorithms library that provides a suite of standard-library-inspired interfaces for execution on multi-core and accelerator hardware. It serves as a CUDA-accelerated data library and a generic parallel programming interface designed to enable high-performance data processing across GPUs and CPUs. The project implements a portable abstraction layer that allows for heterogeneous computing workflows, enabling the same core algorithm logic to run on different hardware accelerators. This is achieved through a generic programming policy design and a backend-agnostic execut