-
SimpleLang 1.2.0 Stable
released this
2026-10-22 15:14:53 +02:00 | 0 commits to master since this releaseSimpleLang 1.2.0
Programs compiled with 1.0 or 1.1 keep running unchanged. The bytecode version is now 4, and the VM accepts any older version.
Language
breakandcontinueinwhileandforloops.- Array methods
arr.push(x),arr.insert(i, x)andarr.remove(i), checked against the element type when compiling. h == nilworks on handles.- Negative numbers are allowed in global initializers (
float QUIET = -45.0;). float_to_int, plus thestr.*,fs.*andsys.*helpers (split/join/trim/replace, read and write whole files, list folders,sys.script_directory(), and more).
Sound
- Sounds are held in memory and can be edited while they play: copy, erase, insert, append, paste over, mix, and resize.
- Built-in effects: gain, normalize, fades, reverse, silence, invert, DC removal, low and high pass, EQ, echo, radio, speed change, resampling, mono/stereo conversion, channel swap and pan.
- Measuring: peak, RMS, finding the first and last sound, and silent ranges.
- Saving to
.wav,.mp3,.flacand.ogg. Ogg files now load too. - Recording from an input device.
- Device lists and selection:
audio_output_devices(),audio_input_devices(),audio_set_output_device(i)andaudio_set_input_device(i).
Accessibility and GUI
screen_reader_speak,screen_reader_brailleand related natives speak through NVDA, JAWS, System Access or ZDSR, falling back to SAPI.- wx gains:
key_down,focusandactivateevents, with key and modifier queries- accessible names, roles and values
- a sound surface, status bars, custom dialogs, text-entry and confirm dialogs, and a save dialog with a suggested name
VST 3
plugin_*natives load VST 3 effects, set their parameters, process sounds offline, and open the plug-in's own editor window.
Inspector
simplelang.inspector.load(path)reads a.slcor.slcbundleand reports its bytecode version, functions, natives, and the modules and DLLs it loads.examples/inspect_demo.slis a GUI inspector built on it.
Libraries and installers
- vcpkg libraries are updated (wxWidgets 3.3.3, libffi 3.8.0), and FLAC and Vorbis are added. Every third-party library ships as a DLL beside
slvm.exe. - The installers remove old DLLs before installing, so no stale wxWidgets builds are left behind.
Docs
- The language reference covers everything above, plus the text-to-speech,
audio_convert,shuffle()and multi-line text controls that 1.1 shipped without documentation. - The bytecode spec describes the version history and how the new features compile. 1.2 adds no new opcodes.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
SimpleLang 1.1.1 Stable
released this
2026-10-22 13:16:44 +02:00 | 8 commits to master since this releaseFix: programs compiled with 1.0 work again
1.1.0 broke every
.slcand.slcbundlecompiled with 1.0. Compiled programs refer to built-in functions by their position in the VM's native table, and 1.1.0 inserted new natives in the middle of that table. That moved 37 existing natives, so old programs ended up calling the wrong functions. The music player example, for instance, failed at startup with a boguswx_timer_createerror.-
All 1.0 natives are back at their original positions, and everything added in 1.1 comes after them. Programs compiled with 1.0 run unchanged.
-
The native table is now append-only, and a test checks that every released native keeps its position.
-
The prebuilt music player bundle is rebuilt from current source and includes the volume slider.
If you compiled anything with 1.1.0, recompile it with 1.1.1. The stdlib files that ship with the installers aren't affected.
Also includes everything added in 1.1: calling into DLLs,
load()-ed modules that can do everything, text-to-speech, and MP3 export.Downloads
-
SimpleLangSDK-Setup.exe: compiler (
slc,slcmake), VM (slvm), docs, examples and stdlib. -
SimpleLangRuntime-Setup.exe: just the VM and stdlib, for running compiled programs.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-