| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| Confluence source code.tar.gz | 2026-09-18 | 62.1 MB | |
| Confluence source code.zip | 2026-09-18 | 62.5 MB | |
| README.md | 2026-09-18 | 7.7 kB | |
| Totals: 3 Items | 124.6 MB | 0 | |
Release Notes
Summary of Major Highlights
This release introduces major distributed networking capabilities, rich internet and desktop applications, enhanced system resilience, and runtime refinements:
-
Zero-Configuration Network Discovery: Automatic peer discovery and cluster joining over LAN via UDP beacons (
link -a), backed by host UDP bindings and the@Netservice. -
New Desktop Applications & CLI Tools: Rich GUI additions including
Weather,Crypto,World Sun Clock, andNews(Hacker News reader), alongside the newcurlHTTP client CLI andclustermonitoring command. -
Three-Tier Service Scopes & Persistent System Identity: Clear scoping with
*(Global across bridges),@(System-wide on single machine), and local (per-node) prefixes, anchored by(system-id). -
Resilient Timeouts & Clean Teardown: Standardized
mail-read-timeoutacross all RPC client interfaces to prevent deadlocks, graceful GUI exit down to a pristine state via(pii-exit), and stable network settlement with(net-quiet). -
Core Language & Build Enhancements: Multi-branch implicit
prognforif/ifnelse bodies, modernizedvp-rdef/vp-fdefregister binding, streamlined asynchronous CPM pipelines, and quiet builds (*build_verb*).
Desktop Applications & GUI
-
Weather App (
apps/desktop/weather/app.lisp):-
Desktop weather forecasting tool consuming
wttr.inendpoints throughlib/net/http.incandlib/net/json.inc. -
Performs asynchronous, non-blocking data acquisition on worker tasks.
-
Displays 2D procedural vector weather icons, weather metric cards, a 3-day forecast view, and quick city buttons with persistent state.
-
-
Crypto Ticker (
apps/desktop/crypto/app.lisp):-
Live cryptocurrency market monitoring consuming Coinranking endpoints.
-
Features real-time 24-hour procedural vector sparkline graphs with smooth curve interpolation and area shading.
-
Calculates 24-hour high/low spreads and persists user settings in
crypto.tre.
-
-
World Sun Clock (
apps/desktop/sunclock/app.lisp):-
Visualizes spherical solar ephemeris and cartography on an equirectangular world map.
-
Renders subsolar zenith positioning, solar terminator curves with twilight bands, and day/night state across global continents.
-
Provides sunrise, sunset, solar noon, and day length calculations across world cities.
-
Supports interactive time navigation (
-1h,+1h,-1d,+1d,Now) and automated daylight progression animation.
-
-
News Reader (
apps/desktop/news/app.lisp):-
Live Hacker News feed reader with category filtering across Top, Newest, Show HN, Ask HN, and Jobs.
-
Uses master-detail navigation with feed parsing via
node-hnapi.herokuapp.com. -
Renders story summaries and nested discussions using ChrysaLisp's native
MdMarkdown formatting component.
-
-
Interactive Terminal in GUI Mode:
-
Running
./run.sh -flaunches Node 0 with a background TUI terminal beneath the GUI compositor. -
Integrates native EOF stream termination in PII and TUI layers to enable direct command piping from the host shell (e.g.
echo "tests" | ./run.sh -f).
-
-
Multi-Screen Session Configuration:
- Launch scripts now accept
-g <count>to specify the number of GUI sessions, defaulting to 1.
- Launch scripts now accept
-
Graceful GUI Teardown:
- Selecting
Quitin theLogoutapplication cleanly tears down the GUI service via RPC and terminates Node 0, leaving the host pristine.
- Selecting
-
Clock & Canvas Enhancements:
-
Updated
Clockand reviewed underlying date routines inlib/date/date.inc. -
Expanded
Canvasdemo capabilities and added theOpcodecanvas demo.
-
Networking & Distributed Services
-
Zero-Configuration Link Auto-Discovery (
link -a):-
Servers started with
link -l [port] -abroadcast periodic UDP beacons on port 3334 announcing their TCP listening port. -
Clients started with
link -alisten for peer beacons and automatically negotiate TCP links to join the cluster. -
Servers run without
-aoperate in standard manual mode without broadcasting beacons.
-
-
Host UDP Socket Interface:
-
Added non-blocking UDP socket bindings in host PII (
host_net_udp_bind,host_net_udp_send,host_net_udp_recv) supporting port reuse and broadcast delivery. -
Exposed via the Node 0
@Netservice through(net-beacon-rpc)and(net-discover-rpc).
-
-
Hierarchical Service Scoping:
-
Service names now follow a three-tier naming convention:
-
*Prefix: Global cluster services across link bridges. -
@Prefix: System-wide services shared across nodes on a single host. -
No Prefix: Node-local services.
-
-
-
Cluster Inspection Tool (
cmd/cluster.lisp):-
New command inspecting cluster topology, node task counts, memory allocation, stack watermarks, host architectures (
cpu/os/abi), and declared services. -
Supports
-v(--verbose) for live probe status and-t(--timeout) for custom probe timeouts.
-
-
HTTP Client CLI (
cmd/curl.lisp):- Command-line HTTP client supporting request methods (
-X), custom headers (-H), request payloads (-d), response headers (-i), head requests (-I), and silent execution (-s).
- Command-line HTTP client supporting request methods (
-
Network Link Fragment Unification:
-
Introduced
:sys_link :in_fragfor shared handling of incoming fragments. -
Unified
:host_net :into share:sys_mail :inparcel assembly routines.
-
-
Network Settlement Helper:
- Added
(net-quiet [delay_us] [stable_count] [last_cnt]) -> (node_id ...)to verify that node count remains constant across successive intervals before proceeding with distributed tasks.
- Added
Kernel & System Infrastructure
-
Bounded RPC Mailbox Reads:
-
Introduced
(mail-read-timeout mbox [timeout_us]) -> msg | :nil(aliased asmail-timeout-read) insys/lisp.incwith architecture-scaled defaults. -
Updated all system client
*-rpcfunctions to use timeouts to prevent unbounded blocking on unresponsive tasks.
-
-
Host Machine Identification:
- Added
(system-id) -> nodeidkernel primitive retrieving the persistent unique host machine identifier.
- Added
-
PII Process Termination:
- Added
(pii-exit)to allow cooperative shutdown of the host process.
- Added
-
Bridge Node Cleanup:
-
Removed legacy
(lisp-node?)and(cpp-node?)checks in favor of self-hosted system-to-system bridging. -
Purged obsolete machine-specific cluster test scripts.
-
Language, Compiler & Build System
-
Control Flow Syntax Simplification:
-
ifandifnnow support implicitprognevaluation in else branches:(if tst form [else_form ...])and(ifn tst form [else_form ...]). -
Updated
whenandunlessmacros to leverage this behavior, ensuring both evaluate strictly to:nilwhen their condition is not met.
-
-
Register Binding Macro Cleanup:
vp-rdefandvp-fdefnow expand cleanly to standardbindforms with&ignoresupport, simplifying register extraction.
-
Orthogonal CPM Asynchronous Pipeline:
- Restructured the asynchronous CPM image loading/saving pipeline into a streamlined, composable stage-based model.
-
Quiet Compilation Mode:
-
Added the
*build_verb*configuration setting (defaulting to 0) to suppress compilation output. -
Verbose diagnostic output can be enabled using
make -v 1.
-