nowfound

Dev tools · alternatives · 2026

24 alternatives to Curious Namespace Trick – Limited static polymorphism in C++

Wiki:. Contribute to dchichkov/curious-namespace-trick development by creating an account on GitHub.

Curious Namespace Trick is a C++ development technique that enables static polymorphism for functions and template types without using weak linking, CRTP, or traits. Developers can define multiple implementations of… Below are 24 products that do a similar job, ranked by how close each is in meaning and then by launch-day votes. Curious Namespace Trick – Limited static polymorphism in C++ launched in 2016; newer entries below may have overtaken it.

  1. 1

    A functional programming language with static memory management - vekatze/neut

    2020 · github.com · its alternatives →

  2. 2GI

    Hi all! I'm going into my freshman year, and figured that the best way to prepare for the intro to programming Racket course would be to implement my own garbage-collected, dynamically typed, functional programming language in C ;) Anyways... here's the repo: https://github.com/liam-ilan/crumb I started learning C over the summer, so I still have a whole lot to learn... Any feedback would be greatly appreciated! :D

    2023 · its alternatives →

  3. 3

    A dbg(…) macro for C++. Contribute to sharkdp/dbg-macro development by creating an account on GitHub.

    2019 · github.com · its alternatives →

  4. 4

    I've created cppmatch, a lightweight, header-only C++ library that brings Rust-inspired pattern matching and error handling to C++. It tries to imitate the functionality of the questionmark (?) operator in C++ by using a macro that uses the gcc extension https://gcc.gnu.org/onlinedocs/gcc/Statement-Exprs.html This allows to create exceptionless code with non-intrusive error-as-value that unlike Exceptions, makes it clear which kinds of error a function can generate and forces you to handle (or ignore) them. The ? operator translates to *expect* To handle the errors I…

    2025 · github.com · its alternatives →

  5. 5

    An approach for runtime detection inside a constexpr function - SaadAhmad/in_constexpr

    2017 · github.com · its alternatives →

  6. 6AI

    I built this software to help users who need to do static code analysis for C/C++ codebase. This can help you to explore the ASTs interactively. It can replace the Clang ast dump completely and also you can search the code/ASTs in a structual way. For example you can search a function which matches specific name or number of paremeters.

    May 2026 · uvic-aurora.github.io · its alternatives →

  7. 7

    Meta programming utilities for C++14. Merged in matt-42/lithium - matt-42/iod

    2014 · github.com · its alternatives →

  8. 8

    Wrapper library to fix inconsistencies in PHP's core functions - nkkollaw/zubr

    2017 · github.com · its alternatives →

  9. 9

    Hi HN! Korean high school senior here, about to start CS in college. I built a browser engine from scratch in C++ to understand how browsers work. First time using C++, 8 weeks of development, lots of debugging—but it works! Features: - HTML parsing with error correction - CSS cascade and inheritance - Block/inline layout engine - Async image loading + caching - Link navigation + history Hardest parts: - String parsing(html, css) - Rendering - Image Caching & Layout Reflowing What I learned (beyond code): - Systematic debugging is crucial - Ship with known bugs rather than chase…

    Jan 2026 · github.com · its alternatives →

  10. 10

    Next-level syntax for C-like languages :). Contribute to kiselgra/c-mera development by creating an account on GitHub.

    2018 · github.com · its alternatives →

  11. 11

    We all know Rust's trait system is Turing complete, so tell me, why aren't we exploiting this??? - cofibrant/trait-eval

    2020 · github.com · its alternatives →

  12. 12

    A C++ HTML template engine that uses compile time HTML parsing - rep-movsd/see-phit

    2017 · github.com · its alternatives →

  13. 13FS

    Hi HN! I've been working on the fuse programming language, it's a statically typed purely functional language with higher-kinder types and ad-hoc polymorphism. It compiles to the GRIN whole-program optimizer, producing LLVM-generated native code. Fuse supports ADTs, Generics, Type Methods, Traits, Pattern matching etc. all in a functional style with no mutations. I’ve been developing the language for 5 years, with code written in Scala. I’ve started coding the language from the base of System F that was implemented as part of the book: Types and Programming Languages (tapl). And then…

    Aug 2026 · fuselang.org · its alternatives →

  14. 14

    Contribute to tylerhou/fiber development by creating an account on GitHub.

    2021 · github.com · its alternatives →

  15. 15

    A lisp dialect based on pattern matching and term rewriting - abuseofnotation/termlisp

    2024 · github.com · its alternatives →

  16. 16

    2012 · github.com · its alternatives →

  17. 17

    Modified C++ Inspired by the paper "Some Were Meant for C" by Stephen Kell, I decided to show that it's possible to iterate C++ to be safer, more explicit, and less error-prone. Here's a possible starting point: I didn't invent a new language or compiler, but took the world's best compiler, clang, and modified it to begin iterating towards a new furture of C++. Naming things is hard, so I call this 'Modified C++'. Some of the following could be implemented as tooling in a linter or checker, but the idea is to update the compiler directly. I also wanted to learn more about clang. This…

    2022 · github.com · its alternatives →

  18. 18

    Long-simmering side project that is finally ready to see the light. HAMTs are a cool persistent data structure and implementing one has been a lot of fun. Beyond the code, there is likely some value in the extensive and largely complete implementation docs; basic benchmarks are linked in the README, too. Kind of aiming to be "the libavl for HAMTs". That is obviously a high and aspirational bar but a distinct possibility if it stirs up a little interest and/or contribution. Anyways, it's time for this to go out, collect feedback and maybe even some use outside of toy projects. Let me…

    2023 · github.com · its alternatives →

  19. 19

    Try it on Compiler Explorer: https://godbolt.org/z/91dj5jeGW Check out the source code: https://github.com/RyanJK5/rjk-duck

    Jul 2026 · ryanjk5.github.io · its alternatives →

  20. 20

    C++14: bringing in those expressions that you wish you had, Lazily evaluated, compossible generators, maps, filters, ranges and more... - GitHub - SaadAttieh/lazyCode: C++14: bringing in those expressions that you wish you had, Lazily evaluated, compossible generators, maps, filters, ranges and more

    2018 · github.com · its alternatives →

  21. 21

    While helping one of my students create and iterate on a game in C using raylib, I realized there was quite a lot of time spent on experimenting with level design and colors, how the player moves, gravity, etc. and a lot of time was wasted making a change, exiting the game, recompiling, running the game, deciding his change wasn't right, and going through the whole cycle over and over. I could tell it was demotivating, and this process was creating a barrier that prevented him from experimenting to his heart's content. I started this project to solve this problem by giving a simple gui to a…

    2024 · github.com · its alternatives →

  22. 22

    A C++ library for debugging purposes that can print any variable, even user-defined types. - philip82148/cpp-dump

    2023 · github.com · its alternatives →

  23. 23

    Nameof operator for modern C++, simply obtain the name of a variable, type, function, macro, and enum - Neargye/nameof

    2019 · github.com · its alternatives →

  24. 24

    hspp: An experimental library to bring Haskell Style Programming to C++. - BowenFu/hspp

    2022 · github.com · its alternatives →

Also compare

Ranked by how close each launch is in meaning, then by votes. Prices were read from each product’s own site when checked and can change. Refine with your own description →