Nim
go
Nim | go | |
---|---|---|
355 | 2,191 | |
16,707 | 124,987 | |
0.5% | 0.5% | |
9.9 | 10.0 | |
8 days ago | 6 days ago | |
Nim | Go | |
GNU General Public License v3.0 or later | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Nim
-
Zig's Comptime Is Bonkers Good
All these organizations[1] using nim in production must disagree with you then.
[1]: https://github.com/nim-lang/Nim/wiki/Organizations-using-Nim
-
Rust traits are a local maxima
With function overloading and templates
You just use a `hash` function in your library code and user has to implement a version of it that accepts the Foo type.
To resolve the scope problem, Nim uses templates[1] with `dirty` pragma (makes template unhygienic), but there is also a `mixin`[2] statement for later static binding.
0 - https://github.com/nim-lang/Nim/lib/pure/collections/tables....
1 - https://github.com/nim-lang/Nim/blob/78983f1876726a49c69d656...
2 - https://nim-lang.org/docs/manual.html#generics-mixin-stateme...
- Nim for Python Programmers
-
My first experience with Gleam Language
Check out Nim[0] - it's strongly typed, with good type inference, clean elegant syntax, memory management is automatic (optional gc, default is ARC + small footprint cycle collector), compiles to small single binaries (Hello World is less than 100 kb), has powerful metaprogramming and lsp support.
Nim compiles to C/C++ and then to native code, so performance is on the same level as Rust/C/C++. You can also compile Nim to js/wasm and run the same code in the web.
[0] - https://nim-lang.org
-
tohray - microblogging application in nim
Programming Language: Nim
-
Recent Performance Improvements in Function Calls in CPython
Take a look at Nim.
You get C performance, with the readability of Python.
https://nim-lang.org/
-
Nim 2.2 release candidate is available for testing
It’s not exhaustive/definitive yet (should be for the actual release), but this might be helpful:
https://github.com/nim-lang/Nim/blob/devel/changelog.md
- The search for easier safe systems programming
- 3 years of fulltime Rust game development, and why we're leaving Rust behind
-
Top Paying Programming Technologies 2024
22. Nim - $80,000
go
-
Why I'm learning Go in 2025
As a web developer, I learnt how to use NodeJS for my apps' back-end. But in 2025, I decided to learn Go, and I will detail in this post why.
-
Nearly All Binary Searches and Mergesorts Are
I think most of the language implementers know about it.
Here is a relevant line from Go, even with a comment that it's about overflow:
https://github.com/golang/go/blob/19e9231/src/sort/search.go...
- Curso de Golang Para Principiantes: Instalación y Configuración del Entorno de Desarrollo
-
Go Upgrade Checklist
If you're working at a large company and downtime is extremely expensive, this checklist is a good guide. Otherwise, if you have good test coverage, you can get by with something simpler. It's super rare to have a breaking change in go.
We do quarterly upgrades of all services in a monorepo (about 20-30). The steps are basically this:
- Upgrade all dependencies to their latest versions, fixing build and test breaks (I read release notes for Go, but not for dependencies)
- Look for deprecated packages and replace them
- Upgrade all toolchains, including CI/CD containers, go.mod, etc.
- Run all tests
- Deploy to the test environment and make sure everything is green
- Deploy to staging and do some sanity checks
- Deploy to prod, keeping an eye on metrics for an hour or two
We're on k8s and the state of all clusters (i.e. which images are running) is tracked in git, so a rollback is just git revert + apply.
In practice, after about four years of this, we've seen maybe a dozen build breaks, and I can only remember one regression caused by a breaking change in a library[1].
[1] https://github.com/golang/go/issues/24211
-
How to Get the Goroutine ID?
1. The Official Design of Not Having goid(https://github.com/golang/go/issues/22770)
-
Learn Golang in 2025, You Won't Regret It
For those who don't know, Golang (Go) is a programming language designed at Google in 2009. It is syntactically similar to C.
-
Mantis, a web framework written in V
Like Go, Deno, and Rust, V produces executables that run on Linux, Mac, and Windows.
- Go proposal: finite type set interface as union type
-
Good union types in Go would probably need types without a zero value
// handle unexported go stdlib error, XXX fix after https://github.com/golang/go/issues/35234
-
Weak pointers in Go: why they matter now
Go without concurrency is fully memory safe. However, once you start using goroutines there can be memory corruption and segfaults: https://github.com/golang/go/issues/37484. Note that these are not recoverable panics (such as "writing to a close channel"), but causes completely arbitrary behavior:
runtime: pointer 0xc00379ac60 to unused region of span span.base()=0xc001794000 span.limit=0xc001795e00 span.state=1
What are some alternatives?
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
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
Odin - Odin Programming Language
TinyGo - Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM.
rust - Empowering everyone to build reliable and efficient software.
crystal - The Crystal Programming Language
Angular - Deliver web apps with confidence 🚀
golang-developer-roadmap - Roadmap to becoming a Go developer in 2020
haxe - Haxe - The Cross-Platform Toolkit
RxGo - Reactive Extensions for the Go language.