SaaSHub helps you find the best software and product alternatives Learn more →
Exhaustive Alternatives
Similar projects and alternatives to exhaustive
-
-
-
InfluxDB
Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises.
-
-
lo
💥 A Lodash-style Go library based on Go 1.18+ Generics (map, filter, contains, find...)
-
-
-
js-proposal-algebraic-effects
📐Let there be algebraic effects in JS
-
SonarQube
Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.
-
-
-
-
mkcert
A simple zero-config tool to make locally trusted development certificates with any names you'd like.
-
v
Simple, fast, safe, compiled language for developing maintainable software. Compiles itself in <1s with zero library dependencies. Supports automatic C => V translation. https://vlang.io
-
-
-
-
-
ZIO
ZIO — A type-safe, composable library for async and concurrent programming in Scala
-
-
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
exhaustive reviews and mentions
-
Supporting the Use of Rust in the Chromium Project
And in Go you'd use a linter, like this one.
-
Blog on enums in Go: benchmarks; issues; assembly
this is AST go vet analyzer that performs just that: https://github.com/nishanths/exhaustive (too bad it can not do struct based enums..)
-
Rust Is Hard, Or: The Misery of Mainstream Programming
>> the main thing missing from Go is ADT's. After using these in Rust and Swift, a programming language doesn't really feel complete without them
What are the differences between an ADT (plus pattern matching i’d reckon?) in Rust/Swift vs the equiv in Go (tagged interfaces + switch statement)?
One has exhaustive matching at compile time, the other has a default clause (non exhaustive matching), although there’s an important nub here with respect to developer experience; it would be idiomatic in Go to use static analysis tooling (e.g. Rob Pike is on record saying that various checks - inc this one - don’t belong in the compiler and should live in go vet). I’ve been playing with Go in a side project and using golint-ci which invokes https://github.com/nishanths/exhaustive - net result, in both go and rust, i get a red line of text annotated at the switch in vscode if i miss a case.
Taking a step back, there isn’t a problem you can solve with one that you can’t solve with the other, or is there?
To take a step further back, why incomplete?
-
Why are enums not a thing in Go?
Use a linter.
-
1.18 is released
For an exhaustive linter, were you referring to this? It looks pretty nice. If it's possible to check this with static analysis, is it something that could be in the compiler itself in the future?
-
Go Replaces Interface{} with 'Any'
https://github.com/nishanths/exhaustive
here, have fun. You’re gonna write some tests, make new types to satisfy interfaces for testing, and then wind up with branches for your test paths in your live code, but go for it, I guess. You know everything! I am but a simple blubbite, too dim, too dim to get it.
-
Notes on the Go Translation of Reposurgeon
> Able to have the confidence that we're checking for every situation that could occur on an enum type across the codebase is one less thing I need to worry about.
golangci-lint is an absolute must, and it includes https://github.com/nishanths/exhaustive which will check this for you.
-
A note from our sponsor - #<SponsorshipServiceOld:0x00007fea5923f528>
www.saashub.com | 5 Feb 2023
Stats
nishanths/exhaustive is an open source project licensed under BSD 2-clause "Simplified" License which is an OSI approved license.