zilf merge requestshttps://foss.heptapod.net/zilf/zilf/-/merge_requests2020-08-10T23:22:36Zhttps://foss.heptapod.net/zilf/zilf/-/merge_requests/6ZILF-219: Fix infinite loop in NewParserVocabFormat.BuildLateSyntaxTables2020-08-10T23:22:36ZTara McGrewZILF-219: Fix infinite loop in NewParserVocabFormat.BuildLateSyntaxTablesFix infinite loop in NewParserVocabFormat.BuildLateSyntaxTables when WORD-FLAGS-LIST contains duplicate entries.Fix infinite loop in NewParserVocabFormat.BuildLateSyntaxTables when WORD-FLAGS-LIST contains duplicate entries.https://foss.heptapod.net/zilf/zilf/-/merge_requests/7ZILF-209: Fix AGAIN after KLUDGEBIT actions.2020-09-01T00:13:18ZTara McGrewZILF-209: Fix AGAIN after KLUDGEBIT actions.Invoking `AGAIN` calls `STILL-VISIBLE-CHECK`, which fails when one of the objects is `ROOMS`. This fix skips the check for `ROOMS`.
Fixes https://vaporware.atlassian.net/projects/ZILF/issues/ZILF-209.Invoking `AGAIN` calls `STILL-VISIBLE-CHECK`, which fails when one of the objects is `ROOMS`. This fix skips the check for `ROOMS`.
Fixes https://vaporware.atlassian.net/projects/ZILF/issues/ZILF-209.https://foss.heptapod.net/zilf/zilf/-/merge_requests/8Fix build/test pipeline2020-09-20T05:57:36ZTara McGrewFix build/test pipeline* Add the .sln filename to fix 'dotnet restore' and 'dotnet test' commands.
* Ignore .nuget directory.
* Fix platform-specific assumptions that caused some test to fail.
* Exclude the Roslyn code analyzer from CI builds and test runs.* Add the .sln filename to fix 'dotnet restore' and 'dotnet test' commands.
* Ignore .nuget directory.
* Fix platform-specific assumptions that caused some test to fail.
* Exclude the Roslyn code analyzer from CI builds and test runs.0.10Tara McGrewTara McGrewhttps://foss.heptapod.net/zilf/zilf/-/merge_requests/9Update projects to .NET Core 3.12020-10-13T22:48:16ZTara McGrewUpdate projects to .NET Core 3.1This updates the projects to .NET Core 3.1 (.NET Standard 2.1), including various C# language improvements.
It also updates the build scripts to resolve the packaging bug ZILF-217, which reproduced more reliably after updating to .NET C...This updates the projects to .NET Core 3.1 (.NET Standard 2.1), including various C# language improvements.
It also updates the build scripts to resolve the packaging bug ZILF-217, which reproduced more reliably after updating to .NET Core 3.1.0.10Tara McGrewTara McGrewhttps://foss.heptapod.net/zilf/zilf/-/merge_requests/11Change ZilForm.ExactlyEquals so that two empty FORMs are considered ==?.2020-10-30T19:46:07ZTara McGrewChange ZilForm.ExactlyEquals so that two empty FORMs are considered ==?.(h/t Roman Bartke) [ZILF-206](h/t Roman Bartke) [ZILF-206]0.10Tara McGrewTara McGrewhttps://foss.heptapod.net/zilf/zilf/-/merge_requests/12Fix handling of local variables in GO routine2020-10-30T22:28:34ZTara McGrewFix handling of local variables in GO routineAllow "OPT" and "AUX" variables in V6 GO routines, and give better diagnostic messages for the disallowed cases (required arguments in V6; any local variables in other versions).
Fixes ZILF-210.Allow "OPT" and "AUX" variables in V6 GO routines, and give better diagnostic messages for the disallowed cases (required arguments in V6; any local variables in other versions).
Fixes ZILF-210.0.10Tara McGrewTara McGrewhttps://foss.heptapod.net/zilf/zilf/-/merge_requests/13Use TranslateString instead of ToStringContext for the DESC pseudo-property.2020-10-30T22:39:24ZTara McGrewUse TranslateString instead of ToStringContext for the DESC pseudo-property.Fixes ZILF-222.Fixes ZILF-222.0.10Tara McGrewTara McGrewhttps://foss.heptapod.net/zilf/zilf/-/merge_requests/14Update to .NET 5 RC2020-11-07T07:05:15ZTara McGrewUpdate to .NET 5 RCC# 9 will be released next week as part of .NET 5. This merge request updates the ZILF projects to take advantage of new language features and build under the latest .NET 5 RC.
* The CI pipeline now runs on the .NET 5.0 SDK image instea...C# 9 will be released next week as part of .NET 5. This merge request updates the ZILF projects to take advantage of new language features and build under the latest .NET 5 RC.
* The CI pipeline now runs on the .NET 5.0 SDK image instead of .NET Core 3.1 SDK.
* ZilfAnalyzers.Vsix was removed: it was blocking the analyzers from using .NET Core-only language features, and analyzers don't need to be built as VS packages anyway.
* JetBrains.Annotations was removed, and the annotations were migrated to .NET nullability contract attributes where applicable.0.10Tara McGrewTara McGrewhttps://foss.heptapod.net/zilf/zilf/-/merge_requests/10Fixed ZILF-2292020-12-08T21:48:46ZAlex ProudfootFixed ZILF-229Tara McGrewTara McGrewhttps://foss.heptapod.net/zilf/zilf/-/merge_requests/15Speed up abbreviation search using a Generalized Suffix Tree2020-12-29T18:33:55ZTara McGrewSpeed up abbreviation search using a Generalized Suffix TreeThis is based on the approach described by Matthew Russotto at <https://intfiction.org/t/highly-optimized-abbreviations-computed-efficiently/48753>.
Fixes ZILF-231.This is based on the approach described by Matthew Russotto at <https://intfiction.org/t/highly-optimized-abbreviations-computed-efficiently/48753>.
Fixes ZILF-231.0.10Tara McGrewTara McGrewhttps://foss.heptapod.net/zilf/zilf/-/merge_requests/16Add quasiquoting and reader prefix macros2021-01-20T08:51:49ZTara McGrewAdd quasiquoting and reader prefix macrosThis adds a new `QQ` package to the standard library, which when `USE`d, changes the backtick character <kbd>\`</kbd> to a "quasiquote" as seen in more modern Lisp derivatives.
```zil
`<FOO ~.BAR>
```
is equivalent to
```zil
<FORM FOO...This adds a new `QQ` package to the standard library, which when `USE`d, changes the backtick character <kbd>\`</kbd> to a "quasiquote" as seen in more modern Lisp derivatives.
```zil
`<FOO ~.BAR>
```
is equivalent to
```zil
<FORM FOO .BAR>
```
and
```zil
`<FOO ~!.BAR>
```
is equivalent to
```zil
<FORM FOO !.BAR>
```
The <kbd>\`</kbd> and <kbd>~</kbd> prefixes are implemented with another new package, `READER-MACROS`, which is built into ZILF. We still don't have a full implementation of read tables, but `READER-MACROS` could be changed to use read tables if they're added someday.https://foss.heptapod.net/zilf/zilf/-/merge_requests/17Merge Blazor playground work into trunk2021-02-27T23:10:07ZTara McGrewMerge Blazor playground work into trunkThe Blazor playground is still a work in progress, but it has led to some refactoring in ZILF which should be merged sooner rather than later, and having the WIP code in trunk won't hurt anything.The Blazor playground is still a work in progress, but it has led to some refactoring in ZILF which should be merged sooner rather than later, and having the WIP code in trunk won't hurt anything.https://foss.heptapod.net/zilf/zilf/-/merge_requests/18Zilf.Emit.Zap: Write real abbreviations when the frequent words file is missing2021-03-07T03:13:30ZTara McGrewZilf.Emit.Zap: Write real abbreviations when the frequent words file is missingRecent improvements to the abbreviation finder have made it fast enough to run by default, even on single-threaded systems. This changes ZILF to generate abbreviations when the frequent words file is missing, instead of writing a placeho...Recent improvements to the abbreviation finder have made it fast enough to run by default, even on single-threaded systems. This changes ZILF to generate abbreviations when the frequent words file is missing, instead of writing a placeholder file.
Fixes ZILF-201.0.10https://foss.heptapod.net/zilf/zilf/-/merge_requests/19Fixed the FORM inside a SEGMENT not having its source line set during parsing.2021-06-15T12:07:55ZTara McGrewFixed the FORM inside a SEGMENT not having its source line set during parsing.[ZILF-117][ZILF-117]https://foss.heptapod.net/zilf/zilf/-/merge_requests/20Fixed debug line info being missing from local variable initializers. [ZILF-4]2021-06-16T03:23:42ZTara McGrewFixed debug line info being missing from local variable initializers. [ZILF-4]https://foss.heptapod.net/zilf/zilf/-/merge_requests/21Added compiler warnings for unused object flags (ZIL0211) and properties (ZIL...2021-07-05T00:14:44ZTara McGrewAdded compiler warnings for unused object flags (ZIL0211) and properties (ZIL0212).These are likely to be typos, or dead code at best. [ZILF-157]These are likely to be typos, or dead code at best. [ZILF-157]https://foss.heptapod.net/zilf/zilf/-/merge_requests/22Changed MIN and MAX to allow 0 args. [ZILF-202]2021-07-07T08:59:54ZTara McGrewChanged MIN and MAX to allow 0 args. [ZILF-202]<MIN> returns int.MaxValue, and <MAX> returns int.MinValue.<MIN> returns int.MaxValue, and <MAX> returns int.MinValue.0.10https://foss.heptapod.net/zilf/zilf/-/merge_requests/23Fixed "=" showing up as "Eq" in printed form of ComplexPropDef. [ZILF-207]2021-07-07T09:11:29ZTara McGrewFixed "=" showing up as "Eq" in printed form of ComplexPropDef. [ZILF-207]0.10https://foss.heptapod.net/zilf/zilf/-/merge_requests/24Prioritize abbreviations in StringEncoder to reduce encoded text size2021-07-09T19:50:21ZTara McGrewPrioritize abbreviations in StringEncoder to reduce encoded text sizeCurrently, StringEncoder applies abbreviations in a predetermined order, replacing every occurrence of one abbreviation before moving on to the next. This change, based on Matthew Russotto's implementation of R. A. Wagner's optimal parse...Currently, StringEncoder applies abbreviations in a predetermined order, replacing every occurrence of one abbreviation before moving on to the next. This change, based on Matthew Russotto's implementation of R. A. Wagner's optimal parse algorithm, instead analyzes each plaintext string and applies abbreviations in a dynamic order that minimizes the length of the encoded string. [ZILF-236]0.10https://foss.heptapod.net/zilf/zilf/-/merge_requests/25Issue warning ZIL0310 when the vocab resolution limit causes words to be merged.2021-07-11T13:47:17ZTara McGrewIssue warning ZIL0310 when the vocab resolution limit causes words to be merged.Info ZIL0311 is also added if the cause is specifically V3's lower resolution.
[ZILF-71]Info ZIL0311 is also added if the cause is specifically V3's lower resolution.
[ZILF-71]0.10