The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning. Learn more →
Top 23 pattern-matching Open-Source Projects
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
Fastest_Image_Pattern_Matching
C++ implementation of a ScienceDirect paper "An accelerating cpu-based correlation-based image alignment for real-time automatic optical inspection"
-
matchit.cpp
match(it): A lightweight single-header pattern-matching library for C++17 with macro-free APIs.
-
defun
A macro to define clojure functions with parameter pattern matching just like erlang or elixir.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
ts-pattern has been a decent band-aid for the lack of native pattern matching, but obviously has downsides that could be avoided if it was built into the language.
https://github.com/gvergnaud/ts-pattern
CAF
Project mention: Show HN: Next-token prediction in JavaScript – build fast LLMs from scratch | news.ycombinator.com | 2024-04-10This is awesome, thanks. I've been messing with wink's NLP library (https://winkjs.org/wink-nlp/) to transform user queries and format responses so I can make a proper chat bot - will see what I can learn from these!
Author of other.nvim here, thanks for the mention :)
I've used it. :)
https://github.com/guicho271828/trivia/issues/108
Project mention: Removing Garbage Collection from the Rust Language (2013) | news.ycombinator.com | 2023-09-11This comment is misleading &| misinformed.
Sum types are built-in [1] for formal parameters. `nil` is only for `ref|ptr` types. In much code you can just use stack allocated value types and there is neither GC concern nor nil concern, but there is also a mode to help: https://nim-lang.github.io/Nim/manual_experimental_strictnot...
Nim has an easy-ish to use Lisp-like syntax macro system where you just receive & process an AST. So, to do the rest you can make libraries adding the feature without relying upon upstream compiler: such as https://github.com/beef331/sumtypes for variables with sum types or pattern matching libs like https://andreaferretti.github.io/patty/ | https://github.com/alehander92/gara.
Project mention: The Sage Compiler, Operating System, and Web-Demonstration | news.ycombinator.com | 2024-01-02Hello, yes, I'll go back and add some text examples as well.
I put all the example programs in text on the web-demo, though, if you want to see more there! You can copy, read, or modify them there!
https://adam-mcdaniel.net/sage
Project mention: Matcheroni, a tiny C++20 header library for building lexers/parsers | /r/regex | 2023-07-06
pattern-matching related posts
- You Don't Need React
- Compiling Pattern Matching
- Pattern matching and exhaustiveness checking algorithms implemented in Rust
- Pattern Matching in Rust
- Pattern matching and exhaustiveness checking algorithms implemented in Rust
- Stop nesting ternaries
- A decade of developing a programming language
-
A note from our sponsor - WorkOS
workos.com | 25 Apr 2024
Index
What are some of the best open-source pattern-matching projects? This list will help you:
Project | Stars | |
---|---|---|
1 | ts-pattern | 10,882 |
2 | pampy | 3,503 |
3 | C++ Actor Framework | 3,095 |
4 | stumpy | 2,984 |
5 | Mach7 | 1,270 |
6 | wink-nlp | 1,143 |
7 | meander | 910 |
8 | egison | 900 |
9 | datatype99 | 791 |
10 | Fastest_Image_Pattern_Matching | 663 |
11 | matchit.cpp | 519 |
12 | SymbolicUtils.jl | 499 |
13 | defun | 465 |
14 | MLStyle.jl | 388 |
15 | fpGo | 340 |
16 | other.nvim | 336 |
17 | trivia | 321 |
18 | patty | 263 |
19 | sage | 259 |
20 | zeallot | 249 |
21 | pattern-match | 236 |
22 | lispy | 209 |
23 | matcheroni | 193 |
Sponsored