all repos — min @ 34e5a54d1442bc2f19c53b568a02f3cb5e8ce1c3

A small but practical concatenative programming language.

site/contents/news/v0.47.0.md

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
-----
content-type: "post"
title: "Version 0.47.0 released"
slug: v0.47.0
date: 2026-05-22
-----
{@ _defs_.md || 0 @}

This release addresses quite a few bugs related to the recent _dot notation_ support, removes the concept of "auto quoting" values, and introduces _lambda keys_ for dictionaries.

### New Features

* No longer auto-quoting values. Now keeping track of whether quotations are meant to be data or operators internally.
* Introduced the concept of _lambda keys_ (`^`-prefixed) for dictionaries, for storing executable quotations. Essentially, you now can store executable quotations inside dictionaries as follows:

      {4 :value (stack.dup *) ^square} :test
  
  Which can then be accessed via dot-notation, like this:

      test.value test.square puts! ; outputs 16      
* Added `dict.lambda` symbol store operators in dictionaries.

### Fixes and Improvements

* Various minor documentation fixes.
* `sys.ls-r` now returns directories and symlinks as well.
* Fixed compilation of dictionary literals (Closes #194).
* Displaying hint message in case of unhandled exceptions if `-d` is not specified (Closes #196).
* Updated vendor library paths to include architecture information as well.
* Fixed resolution of static libraries based on min sources rather than current project.
* Upgraded OpenSSL to version 4.0.0.