Object-oriented • JIT-compiled • AI-native • Network-complete
Modern programming language — from HTTP/3 to GPT-4, it's all standard library
Built for modern development:
- 🚀 JIT-compiled for performance (ARM64/AMD64)
- 🤖 AI-native: OpenAI, Gemini, Ollama, ONNX, OpenCV — no third-party packages
- 🌐 Network-complete: HTTP/1.1 · HTTP/2 · HTTP/3/QUIC · WebSocket · DTLS — all standard library
- 💻 Developer-friendly: REPL shell, LSP plugins for VSCode/Sublime/Kate, DAP debugger
- 🌍 Cross-platform: Linux, macOS, Windows (x64 + ARM64/RPI)
- 🔧 Full-featured: Threads, generics, closures, reflection, serialization
Perfect for: AI/ML prototyping • Computer vision • Web services • Real-time applications • Game development
No installation needed - write, compile, and run Objeck code directly in your browser:
👉🏽 Interactive playground with 33 demo programs across 7 categories with Monaco editor and syntax highlighting.
# Install (example for macOS/Linux)
curl -LO https://github.com/objeck/objeck-lang/releases/download/v2026.5.0/objeck-linux-x64_2026.5.0.tgz
tar xzf objeck-linux-x64_2026.5.0.tgz
export PATH=$PATH:./objeck-lang/bin
export OBJECK_LIB_PATH=./objeck-lang/lib
# Hello World
echo 'class Hello {
function : Main(args : String[]) ~ Nil {
"Hello World"->PrintLine();
}
}' > hello.obs
# Compile and run (modern syntax)
obc hello && obr hello📖 Full docs: objeck.org 💡 Examples: github.com/objeck/objeck-lang/programs
Web Playground — Try Objeck in your browser. Code runs in sandboxed Docker containers on a dedicated server. Includes 33 demos covering the language basics, OOP, algorithms, collections, data processing, and more.
v2026.5.1
- HTTP/2 client —
Http2Clientwith persistent TLS connections, custom headers, GET/POST/PUT/DELETE, andQuickGet/QuickPostone-liners (nghttp2 + ALPN) - HTTP/3 / QUIC client —
Http3Clientover UDP with connection reuse and the sameQuick*API (ngtcp2 + nghttp3 + GnuTLS) - HTTP/1.1 improvements — PATCH method, redirect handling fixes, retry parity across
HttpClient/HttpsClient - OpenAI Moderation —
Moderation->Check()returns per-category flags and confidence scores - OpenAI Batch —
Batch->Create()/Get()for async 50%-cost batch requests (up to 50k at a time) - Gemini Files API — upload, list, get, and delete files via
FileManager - Gemini Context Caching —
CachedContent->Create()for server-side prompt caching with configurable TTL - Gemini Search Grounding —
Model->GenerateContentWithGrounding()anchors responses in live Google Search results - Gemini Batch Embeddings —
Model->BatchEmbedContent()embeds multiple texts in one round-trip - WebSocket hardening — 8 bug fixes + bulk
ReadBufferI/O replacing per-byte reads - MCP server fixes — hang on shutdown and crash-on-stop resolved; regression tests added
- Socket reliability —
SO_REUSEADDRonTCPSocketServer::Bind()survives TIME_WAIT;IPSocket::Open()falls through to next address onsocket()failure - Security hardening — LSP concurrent-request mutex; scrfd tensor bounds check;
conf_thresholdNaN/range guard;WinWriteWideDWORD truncation guard - MSVC optimizations — Release build improvements for VM and compiler
v2026.5.0 ✅
- Face recognition — new
FaceSessionAPI with SCRFD 10G-KPS detector + ArcFace R50 512-dim embeddings (InsightFace buffalo_l). Cross-platform: DirectML (Windows), CPU/CUDA (Linux), CoreML (macOS). No extra native libs required. - Windows emoji — full Unicode supplementary plane output (emoji and other non-BMP characters) now works correctly in cmd.exe and Windows Terminal via
WriteConsoleW - LSP enhancements — typeHierarchy, selectionRange, workspace/symbol, foldingRange, documentHighlight, go-to-type-definition; hover correctness and non-determinism fixes
- ARM64 JIT — fixed EXT_LIB_FUNC_CALL crash; macOS ONNX build and CodeQL fixes
OBJECK_JIT_DISABLE— new boolean env var for cleanly disabling auto-JIT at startup
v2026.4.3 ✅
- DAP debugger hover — hovering an object shows
ClassName { field=val, ... }with one-level instance field expansion viaFormatObjectForDap - DAP instance/class variable scopes — Variables pane now shows separate Locals, Instance, and Class scopes with correct memory mapping
- DAP stepping + crash fixes — fixed step-into crash, step-over/step-out scoping, stdout corruption, disconnect access violation, and variable display
- Editor setup refresh — updated VS Code, Sublime Text, and gvim/Vim DAP+LSP setup for Windows, Linux, and macOS
- LSP crash fixes — null guards for
textDocument/codeActionwith inferred locals, hover position fix (1-based to 0-based) - Configurable JIT threshold — auto-JIT invocation count can now be tuned
- Fixed JIT S2F callback param count causing segfault on
String:ToFloat - Hardened HTTPS client against null
ReadLineon connection failures
v2026.4.2
- JIT local variable register cache (AMD64 + ARM64) — keeps values in registers after store, avoids redundant reloads, evicts on demand when register pool is exhausted
- Hardened JSON, JSON stream, and XML parsers against malformed input
- DTLS (Datagram TLS) support — new
DTLSSocketandDTLSSocketServerclasses for secure UDP communication (IoT, VoIP, gaming) - Link-time optimization — added
-flto=autoacross all GCC Makefiles (AMD64 and ARM64) - ARM64 native CPU tuning —
-mcpu=nativeauto-detects RPi5 (Cortex-A76) and Jetson Orin (Cortex-A78AE) - Fixed all MSVC and GCC compiler warnings
- Fixed doc generator error on
@hiddentag
📋 Full changelog • 🗺️ Roadmap • 📝 Editor & IDE setup
Latest Release: v2026.5.0
| Platform | Architecture | Download |
|---|---|---|
| Windows | x64 | MSI Installer / ZIP |
| Windows | ARM64 | MSI Installer / ZIP |
| Linux | x64 | TGZ Archive |
| Linux | ARM64 | TGZ Archive |
| macOS | ARM64 (M1/M2/M3) | TGZ Archive |
| LSP | All platforms | ZIP Archive |
📦 Alternative: Sourceforge • 📚 API Docs: objeck.org/api/latest
Note: All Windows installers are digitally signed. Releases are fully automated via CI/CD and built on GitHub Actions runners.
use Web.HTTP;
# Persistent connection — multiple requests share one TLS session
client := Http2Client->New("httpbin.org");
resp := client->Get("/get");
"Status: {$resp->GetCode()}"->PrintLine(); # Status: 200
body := "{\"lang\":\"objeck\"}"->ToByteArray();
resp2 := client->Post("/post", body, "application/json");
client->Close();
# One-liner for quick requests
resp := Http2Client->QuickGet(Url->New("https://httpbin.org/get"));use Web.HTTP;
# QUIC over UDP — zero round-trip connection on repeat visits
client := Http3Client->New("quic.nginx.org");
resp := client->Get("/");
"Status: {$resp->GetCode()}"->PrintLine(); # Status: 200
client->Close();
# One-liner
resp := Http3Client->QuickGet(Url->New("https://quic.nginx.org/"));# OpenAI Realtime API - get text AND audio
response := Realtime->Respond("How many James Bond movies?",
"gpt-4o-realtime-preview", token);
text := response->GetFirst();
audio := response->GetSecond();
Mixer->PlayPcm(audio->Get(), 22050, AudioFormat->SDL_AUDIO_S16LSB, 1);# SCRFD detector + ArcFace R50 embeddings (InsightFace buffalo_l)
session := FaceSession->New("det_10g.onnx", "w600k_r50.onnx");
r1 := session->Recognize(img1_bytes, 0.5);
r2 := session->Recognize(img2_bytes, 0.5);
faces1 := r1->GetResults(); faces2 := r2->GetResults();
sim := FaceSession->Compare(faces1[0]->GetEmbedding(), faces2[0]->GetEmbedding());
"Same person: {$(sim > 0.35)}"->PrintLine();# OpenCV face detection
detector := FaceDetector->New("haarcascade_frontalface_default.xml");
faces := detector->Detect(image);
faces->Size()->PrintLine(); # "5 faces detected"# Sentiment analysis and TF-IDF
text := "This product is absolutely wonderful!";
sentiment := SentimentAnalyzer->Classify(text); # "positive"
# Train TF-IDF on documents
docs := ["cats are pets", "dogs are pets", "birds can fly"];
tfidf := TF_IDF->New();
tfidf->Fit(docs);
vector := tfidf->Transform("cats and dogs"); # [0.47, 0.0, 0.47, ...]Object-Oriented
- Inheritance, interfaces, generics
- Type inference and boxing
- Reflection and dependency injection
- See OOP examples →
Functional
- Closures and lambda expressions
- First-class functions
- See functional examples →
Platform Support
- Unicode, file I/O, sockets, named pipes
- Threading with mutexes
- See platform features →
AI & Machine Learning — 📖 Full AI Guide
- OpenAI, Gemini, Ollama
- NLP (tokenization, TF-IDF, text similarity, sentiment analysis)
- OpenCV (computer vision)
- ONNX Runtime (cross-platform ML inference — YOLO, ResNet, DeepLab, OpenPose, Phi-3, face recognition)
- Face Recognition (SCRFD detector + ArcFace R50 embeddings, InsightFace buffalo_l)
- Phi-3 / Phi-3 Vision (local SLM text and vision inference)
Web & Networking
- HTTP/1.1 server/client, OAuth
- HTTP/2 — multiplexed TLS client via nghttp2
- HTTP/3 / QUIC — UDP-based client via ngtcp2 + nghttp3
- RSS
Data
- JSON (hierarchical + streaming), XML, CSV
- SQL/ODBC, In-memory queries
- Collections
Other
Modern tooling and practices:
- 🤖 Claude Code for pair programming, debugging, and refactoring
- 🔄 CI/CD: Fully automated build, test, sign, and release pipeline (GitHub Actions)
- ✅ Every push triggers multi-platform builds (Windows, Linux, macOS)
- ✅ Automated code signing for Windows installers
- ✅ One-tag releases:
git tag v2026.2.1→ automated distribution in 60 minutes - ✅ Parallel builds across 6 platforms (x64/ARM64)
- 📖 Release Process Documentation • CI/CD Architecture • System Architecture
- 🔍 Quality: Coverity static analysis + CodeQL security scanning
- 🧪 Testing: 350+ tests across 3 suites (regression, comprehensive, deploy)
- Regression suite: 10 focused tests for critical functionality
- Comprehensive suite: 323+ tests for full language validation
- Deploy suite: 17 real-world usage examples
- Full cross-platform coverage (Windows/Linux/macOS, x64/ARM64)
Editor Support:
- LSP plugins for VSCode, Sublime, Kate, and more
- REPL for interactive development
- API docs at objeck.org
📚 Testing Documentation • 🧪 Regression Tests • 📊 Performance & Benchmarks
- 🌐 Web Playground — try Objeck in your browser
- 📖 Documentation
- 🏗️ Architecture — Mermaid diagrams covering compiler, VM, JIT, libraries, and CI/CD
- 🎯 Examples
- 💬 Discussions
- 🐛 Issues
