Repository navigation
slang v0.2.2
Runtime, database, and networking updates:
- Improve generational garbage collection with page-ordered sweeping, parallel sweep and marking, and less work for pointer-free containers and long-idle tasks. Fix tracing of value structs and opt/result payloads.
- Reduce PostgreSQL overhead with reusable query buffers, binary result decoding, FIFO pool waiters, and per-connection prepared statements.
- Bound Redis replies and improve pool waiter wakeups.
- Add bounded, deadline-aware DNS SRV/TXT lookup APIs for DNS seed-list clients such as MongoDB Atlas.
- Add little-endian binary64 conversion helpers and improve compiler diagnostics and fatal-signal reporting.
Install
From a tarball (relocatable: unpack anywhere and run in place). Pick
the one for your platform below; each was unpacked outside the source tree
and used to build and run a new project before this release was published.
tar -xzf slang-0.2.2-darwin-arm64.tar.gz
./slang-0.2.2-darwin-arm64/bin/slangc --version # slangc 0.2.2From source:
git clone https://github.com/dolphlabs/slang && cd slang
git checkout v0.2.2
sudo make install # PREFIX=/usr/local, or ~/.local
slangc new hello && cd hello && slangc main.sl --runUpgrading a source install: run sudo make uninstall from the old
checkout first. make install overwrites the binary but never deletes
stale runtime files.
Requirements
slangc compiles to C, so every platform needs a C compiler (cc).
| you import | you need |
|---|---|
| anything | a C compiler |
net with TLS, crypto, httpc over https |
OpenSSL (macOS: brew install openssl; Debian/Ubuntu: apt install libssl-dev) |
sql |
SQLite (Debian/Ubuntu: apt install libsqlite3-dev; ships with macOS) |
compress, httpc |
zlib (Debian/Ubuntu: apt install zlib1g-dev; ships with macOS) |
The Linux tarballs are built on Ubuntu 24.04 and need glibc 2.39 or later;
on an older distribution, build from source.
SHA-256
fdb20eb7ab35aad071e244d61596dea204e180f290f24e94dca19feaaf7231f9 slang-0.2.2-darwin-arm64.tar.gz
62ee922f85288e72dc3dd49eede2433515342f01ab9777dd3815392d452e0e6d slang-0.2.2-darwin-x86_64.tar.gz
df97ac0d523d133b5ba59fecbf42813dd89cfa703834cd8f8590b72ddbe56fdc slang-0.2.2-linux-aarch64.tar.gz
b4525b08ff69cda6c817e69186359ecb6d4d353b223512d0a0a4b1d887f28d66 slang-0.2.2-linux-x86_64.tar.gz