-
libraries
ASL libraries will be migrated here in the stlab namespace, new libraries will be created here.
-
zig
General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
-
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.
-
ixy-languages
A high-speed network driver written in C, Rust, C++, Go, C#, Java, OCaml, Haskell, Swift, Javascript, and Python
I don’t know about that, but I am using stlab::copy_on_write in production and it’s amazing. It’s like a cross among a T, a unique_ptr, and a shared_ptr. https://github.com/stlab/libraries/blob/main/stlab/copy_on_w...
You might be interested in [Zig](https://ziglang.org). Allocation is manual. Standard library containers and functions require an allocator to be passed to them, so nothing allocates on the heap unless it's explicitly told to. Cleanup can be done at end of scope via defer / errdefer.
Seamless interop with C, even when cross compiling which Zig handles natively: the standard install of Zig comes with a "zig cc" wrapper around clang that allows you to cross compile C and zig code for any number of target architectures (it includes C standard library headers and code for them).
Zig is the only language I've come across which functions perfectly as a better C.
Not really, only marketing makes RC seem better than tracing GC.
https://github.com/ixy-languages/ixy-languages
https://forums.swift.org/t/swift-performance/28776
RC also has pauses, pretty lengthy ones with cascade deletions, and can even lead to stack overflows.
"CppCon 2016: Herb Sutter “Leak-Freedom in C++... By Default""
https://youtu.be/JfmTagWcqoE
Which is why as GC algorithm reference counting is only for toy implementations.
Any reference counting implementation that cares about performance in multicore environments is almost indistinguishable from a tracing GC implementation.
In fact, C++/WinRT, uses background threads to diminish the performance impact of calling destructor and cascading deletions.
https://devblogs.microsoft.com/oldnewthing/20191018-00/?p=10...