From 826f6a4c0a4dc09e452d4b2e61202a0c94f819fe Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Tue, 3 May 2022 20:43:53 -0400 Subject: =?UTF-8?q?BREAKING:=20More=20consistent=20Under=20fill=20handling?= =?UTF-8?q?;=20don't=20retain=20fill=20with=20=E2=8C=BE=E2=8A=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- commentary/stability.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'commentary') diff --git a/commentary/stability.md b/commentary/stability.md index 8d433370..548dc7c5 100644 --- a/commentary/stability.md +++ b/commentary/stability.md @@ -6,7 +6,8 @@ The short answer is that code running online or in CBQN is unlikely to break. In I have thousands of lines of running BQN code including the self-hosted sources, website generator, and Singeli compiler. There are also now many BQN examples and REPL links [spread](../community/README.md) across the web which would be harder to change. So there is a strong reason to maintain compatibility for common or even moderately used features. Because BQN's been designed in a conservative way, avoiding fiddly decisions by keeping things simple, it seems that few compatibility breaks will be required. The history so far seems to bear this out. -Various edge cases were fixed when I first ran the primitive specifications through unit tests(!) in February 2021. Since then there has been a single compatibility break, that is, change from one intentional (i.e. excluding bugs) non-error behavior to a different behavior. +Various edge cases were fixed when I first ran the primitive specifications through unit tests(!) in February 2021. Since then there have been two compatibility breaks, that is, changes from one intentional (i.e. excluding bugs) non-error behavior to a different behavior. - 2021-08-07: Pick (`⊑`) of empty array and Reshape (`⥊`) of empty array to non-empty changed from using fill elements to errors. +- 2022-05-03: Don't always preserve fill of `𝕩` in structural Under, such as `arr⌾⊢