Releases: funlearnstudio/SE
Release list
SE 0.7.1
SE 0.7.1
SE 0.7.1 refreshes the prebuilt CLI packages from the current source so installations receive the expanded standard-library modules and runtime fixes. It also verifies release downloads before installing them.
Quick install
macOS / Linux:
curl -fsSL https://raw.githubusercontent.com/funlearnstudio/SE/main/install.sh | shWindows PowerShell:
irm https://raw.githubusercontent.com/funlearnstudio/SE/main/install.ps1 | iexBoth installers resolve the latest GitHub Release automatically when SE_VERSION is not explicitly set. The Unix installer validates the requested version, verifies the package checksum, checks archive paths, and reports optional Python module dependencies.
Standard library additions
The refreshed CLI packages include the current expansion APIs, including:
- data and math:
url,encoding,series,matrix,linear,dataset,table,probability,fraction,complex,calculus,units - content and security:
toml,yaml,xml,markdown,crypto,jwt,session,auth,cookie,cors,template - service and network:
http_server,router,dns,ftp,smtp,imap,ssh,websocket,ai,embedding - machine learning and media:
ml,tensor,image,audio,video,camera,gui,canvas,sprite,physics,sound,animation,scene,collision,tilemap - existing standard-library modules including
statistics,iter,itertools,regex,decimal,csv,datetime,hashlib,sqlite3, andfunctools
The new APIs are registered with the type checker and runtime, included in VS Code completion, and exercised by a dedicated standard-library smoke test.
Installation improvements
The Unix installer checks optional host tools required by specific modules:
sqlite3forsqlite/sqlite3zipandunzipfor archive helperssha256sumorshasumfor SHA-256 hashing
To let the Unix installer attempt installation of those optional tools:
curl -fsSL https://raw.githubusercontent.com/funlearnstudio/SE/main/install.sh | SE_INSTALL_STDLIB_DEPS=1 shSupported package managers include Homebrew, apt, dnf, yum, pacman, apk and zypper.
Compatibility notes
pickleintentionally uses safe JSON serialization rather than Python's executable pickle format.threadinguses SE's managed Task model.decimalcurrently uses long-double-backed textual decimal operations and is not arbitrary-precision Python Decimal parity.- ZIP and SQLite helpers rely on host command-line tools.
se buildstill requires a C++20 compiler; interpreted workflows do not.
Distribution
The release workflow builds and verifies packages for:
- Linux x64
- macOS Intel
- macOS Apple Silicon
- Windows x64
- VS Code extension
Release assets include SHA-256 checksums.
Version
SE 0.7.1
SE 0.7.0
SE 0.7.0
SE 0.7.0 expands the standard library substantially and improves installation so the prebuilt packages can be used immediately across supported platforms.
Quick install
macOS / Linux:
curl -fsSL https://raw.githubusercontent.com/funlearnstudio/SE/main/install.sh | shWindows PowerShell:
irm https://raw.githubusercontent.com/funlearnstudio/SE/main/install.ps1 | iexBoth installers now resolve the latest GitHub Release automatically when SE_VERSION is not explicitly set.
Standard library additions
SE 0.7.0 adds Python-inspired modules and aliases while keeping SE syntax and runtime behavior:
statisticsiter/itertoolsregex/redecimalcsvdatetimeplus additionaltimehelpershash/hashlibbase64uuid- safe
pickle-style JSON serialization args/argparselog/loggingshutilplus additionalfileoperationsglobzip/zipfilesubprocesssocketthreadingqueuesqlite/sqlite3functoolsplus additionalfunctionhelpersoperatorcopyenumtyping
The new APIs are registered with the type checker and runtime, included in VS Code completion, and exercised by a dedicated standard-library smoke test.
Installation improvements
The Unix installer checks optional host tools required by specific modules:
sqlite3forsqlite/sqlite3zipandunzipfor archive helperssha256sumorshasumfor SHA-256 hashing
To let the Unix installer attempt installation of those optional tools:
curl -fsSL https://raw.githubusercontent.com/funlearnstudio/SE/main/install.sh | SE_INSTALL_STDLIB_DEPS=1 shSupported package managers include Homebrew, apt, dnf, yum, pacman, apk and zypper.
Compatibility notes
pickleintentionally uses safe JSON serialization rather than Python's executable pickle format.threadinguses SE's managed Task model.decimalcurrently uses long-double-backed textual decimal operations and is not arbitrary-precision Python Decimal parity.- ZIP and SQLite helpers rely on host command-line tools.
se buildstill requires a C++20 compiler; interpreted workflows do not.
Distribution
The release workflow builds and verifies packages for:
- Linux x64
- macOS Intel
- macOS Apple Silicon
- Windows x64
- VS Code extension
Release assets include SHA-256 checksums.
Version
SE 0.7.0
SE 0.6.0
SE 0.6.0
SE 0.6.0 is the first SE release designed for quick public installation with prebuilt packages. Normal users can download SE and immediately use se run, se check, se test, the REPL, modules and the interpreter without installing CMake, Git or a C++ compiler.
Quick install
macOS / Linux:
curl -fsSL https://raw.githubusercontent.com/funlearnstudio/SE/main/install.sh | shWindows PowerShell:
irm https://raw.githubusercontent.com/funlearnstudio/SE/main/install.ps1 | iexGitHub Releases also provides downloadable archives for macOS Apple Silicon, macOS Intel, Linux x64 and Windows x64.
Language and runtime
- Low-punctuation SE syntax with indentation-based blocks.
- Static checking and type inference.
- Functions, lexical closures and simplified function helpers.
- User-defined types, fields and methods.
- Generic functions.
- Value-based
match/case. - List, Map and Set collections.
filter,map,reduce, slicing and sorting helpers.- Option and Result helpers.
- Managed Task-style async / await.
- File, path, time, math, random and OS support.
- JSON, HTTP, web routing, process execution and lightweight persistent DB APIs.
- HTTPS client support through system
curl. - C ABI native interoperability and binding generation.
Core conversions
SE 0.6.0 includes beginner-friendly conversion names:
int "123"
integer "123"
num "3.14"
double "3.14"
float "3.14"
text 123
string 123
bool "true"
boolean "false"
char "A"
char 65
The canonical SE runtime types remain Int, Num, Text and Bool; familiar names such as string, double and float are conversion aliases rather than duplicate runtime types. char currently produces one-character Unicode Text.
Distribution
The release pipeline builds and verifies precompiled SE packages on supported GitHub-hosted platforms and publishes SHA-256 checksums with the release assets.
A prebuilt SE installation does not require CMake or a C++ compiler for normal interpreted workflows such as:
se run file.se
se check file.se
se check-all .
se test .se build is different: it currently emits C++20 and invokes a system C++ compiler to produce a native executable, so native compilation still requires a C++20 compiler. This limitation is intentionally documented rather than hidden.
Version
SE 0.6.0
S 0.2.0
S 0.2.0
S 0.2.0 expands the existing S 0.1 language and compiler without breaking S 0.1 syntax compatibility.
Core language
- User-defined
typedeclarations with fields and methods. - Modules and
useimports. - List, Map, and Set collection support.
- Recoverable errors with
try,fail, and structured Error values. - File, path, time, and Duration runtime support.
Native interoperability
- C ABI support for Int, Num, Bool, Text, and Bytes.
- Binary-safe byte buffers through
SBytesViewwith S-owned lifetime semantics. - Native errors mapped to S
NativeError. - Opaque native handles with automatic deleters and resource cleanup.
s bindbaseline binding generator producing.snativemetadata, C declarations, and C++ wrappers.
Validation
The release candidate was validated on Ubuntu GCC and macOS AppleClang with warnings treated as errors (-Wall -Wextra -Wpedantic -Werror).
The final validation suite includes:
- S 0.1 regression coverage.
- S 0.2 core tests.
- 11/11 CTest passing on Ubuntu and macOS.
s check,s run, ands buildsmoke tests.- Interpreter/native output parity.
- C ABI scalar, Text, and Bytes tests.
- Binary Bytes regression using non-text bytes including
0x00and0xFF. - Opaque-handle automatic cleanup tests.
- Binding-generator end-to-end generation, compilation, S execution, native build, and parity validation.
Version
S 0.2.0