Skip to content

Releases: rasteric/z3s5-lisp

Maintenance release

27 May 08:56
Compare
Choose a tag to compare

This release removes the replacement directives in the main go.mod file and switches to an internal workspace for all of my packages. This should alleviate compile problems on remote systems. I'm planning to switch development to a development branch soon. For the time being, bear in mind that there can still be API and language changes, though not substantial ones.

Note that z3ui.RunGUI takes an ID string as argument now. As it turns out, some Fyne methods panic when the preferences system is accessed and no app ID is set, so this is now prevented. Use an arbitrary ID like in z3g.go if necessary, but of course you'll need to set the app ID to a repeatable value if you want to use the preferences.

Interim release with improved GUI support

24 May 16:15
Compare
Choose a tag to compare

This version supports a larger subset of Fyne GUI methods and adds experimental support for the zedit editor that will later enable the graphical executable to become closer to an IDE.

Version 2.4 with basic GUI support

24 Sep 15:01
Compare
Choose a tag to compare

This version incorporates a number of larger changes, including initial support for the Fyne GUI library and the z3g graphical GUI sample implementation. See the GUI section in the manual and the 'gui topic in the help system and reference for more information.

If you use the non-graphical z3 executable or embed the Lisp interpreter without using the https://github.com/rasteric/z3s5-lisp/gui library, not much has changed. See cmd/z3/z3.go for how to initialize the interpreter for non-graphical Lisp and cmd/z3g/z3g.go for the graphical Lisp (which uses a normal command-line repl at this time). Example GUI programs are in cmd/z3g/demo.lisp.

Better action support

30 Oct 16:24
Compare
Choose a tag to compare

Action support is more stable in this release, but the API might still change. This release has support for fileio, db, and sound tags. DB support requires fileio and the FTS5 tag, so building should use --tags "fileio db fts5.

Version 2.3.10 with OOP and actions (plugin system)

04 Oct 15:21
Compare
Choose a tag to compare

This release fixes a number of bugs and a problem with the OOP implementation. It also offers the first experimental support for actions, which are instances of the action class that can interface with the host system. To interface with Go, you have to implement (within Go) some functions starting with 'action. and can then define action instances that implement plugin functionality. This requires some kind of management for these actions on the Go side, of course, and the interfacing is quite minimal.

OOP with updated User Manual

26 Aug 17:35
Compare
Choose a tag to compare

Fixed OOP bugs in Reference Manual, updated User Manual with section for how to use the (very simplistic) object-oriented programming facilities.

Object-oriented programming extension

25 Aug 10:17
Compare
Choose a tag to compare

Version with embedded very simple, lightweight object-system with multiple inheritance. More tests and various smaller bugs have been fixed.

Key-value database, images, updated manuals.

22 Aug 15:56
Compare
Choose a tag to compare

This is a maintenance release recompiled with Go 1.19, with updated manuals and Release Notes. It has support for zimages, key-value databases, Sqlite3 databases and file access.

Release with key-value database and zimages

22 Aug 15:26
Compare
Choose a tag to compare

Added kvdb and remember, recall, forget functions for persistence. The release notes mention a problem with zimages but so far I couldn't repeat this problem. The shutdown hook is active but no other hooks are available. As mentioned in the Release Notes, if you use the remember system with init-remember when using Z3S5 Lisp in a Go program, then you need to make sure to call the shutdown hook at an appropriate time manually in order to close the remember database.

Version 2.3.4 with support for zimages

05 Aug 11:05
Compare
Choose a tag to compare

This release fixes a few minor bugs, updated the documentation, and adds module zimage. This module is written in Lisp and allows writing the system to disk, reading Lisp images from disk, and running images by executing an entry point after loading the image. An image replaces all toplevel symbols that it defines unless they have been declared as volatile. The updated User Manual and Reference Manual describe the process in more detail.