1 to 2 - новый оператор в стиле Котлина для пары Ключ-Значение
Pair - синоним KV. KV - не запоминается
Теперь:
d := Dict(1 to 2, 3 to 4)
или
d := Dict(Pair(1,2),Pair(3,4)
Кроме того
Новые конструкторы
d := Dict(d1) - копия
d := Dict(keys,values)
d.Update(d1)
d + d1
d += d1
d + pair
d - Seq(ключ)
d -= Seq(ключ)
* Return Parsers folder with standard parsers and move SyntaxTreeConverters back to Core
* Rename PascalLanguage project to PascalABCLanguageInfo
* Fix pascal dll loading
* Implement first version of languages interfaces and classes
ParsersController заменен на LanguageProvider.
* Update ParserTools.csproj
* Update RemoteCompiler.cs
* Update TestRunner
* Rename LanguageIntegrator project to Languages
* Update TestRunner
* Rename Parsers folder
* Rename PascalABCParser.dll to PascalABCLanguage.dll
* Reorganise LanguageIntegrator and rename DocTagsParser
* Update Release Generators
* Update language loading messages
* Update linux version
* Move BaseParser fields to ILanguage interface
* Revert "Update Release Generators"
This reverts commit 26a991c71b81e643d9fbd9a815ddca222768dda9.
* Revert "Rename PascalABCParser.dll to PascalABCLanguage.dll"
* Clean the mess in parser folders
* Organize namespaces properly
* Revert "Rename LanguageIntegrator project to Languages"
* Add new enclosing folders for standard languages
* Organize namespaces of LanguageIntegrator properly
* Rename StandardLanguages to Languages
* Comment the rest of Visual basic source code
* Update OutputPath in pascal parser project
* Move BaseParser methods to IParser
* Restore Pascal parser project initial structure
* Add PascalLanguage project
* Move SyntaxTreeConverters project to Languages\Pascal folder
* Rename SemanticRules in parser project
* Rename Errors1 to Errors in parser project
* Delete LambdaConverter dll from installer
* Update language integrator to load *Language.dll files
* Move lambda converter project to pascal lanuage dir
* Revert "Delete LambdaConverter dll from installer"
This reverts commit dd56f559ebe4f8c4c5c33752d44e6953001b96a5.
* Switch off VBNETParser building
* Delete syntax tree converters controller
* Delete lambda converter dll from repository
* Reorganize syntax tree to semantic tree conversion stage
* Add BaseLanguage class to make language initialization more neat
* Delete syntax tree post processors entity from ILanguage and refactor ABCStatistics calls
* Add new IDocParser interface for documentation comments parser
* Clean up folders
* Add helper data structures to reduce parameters amount in CompileInterface and CompileImplementation
* Add documentation to language classes
* Move Union struct in global namespace and project (ParserTools)
* Add more comments and a safe select language method
* Rename SemanticRules class
* Fix directives format null bug
* Add System.Linq ref to LanguageIntegrator
* Delete SyntaxToSemanticTreeConverter interface
* Add BaseSyntaxTreeConverter
* Call safe select language method in intellisence
* Delete source files providers from parsers
* Rename GetSyntaxTree method
* Change Prebuild tree to be virtual - not abstract
* Refresh documentation a bit
* Add temporary language check for ABCHealth button
* Add parser reference to parser tools
* Move current compilation unit assigning higher to avoid bug with unit check
* Delete null DirectiveInfo's and refactor directives' code
* Add a few more comments
if (System.Environment.OSVersion.Version.Major >= 6) and (System.Environment.OSVersion.Version.Minor >= 2) then System.Console.OutputEncoding := Encoding.UTF8;
School - таблица истинности - доп. параметр
function_lambda_definition - добавлено поле для неупакованных параметров \(x,y)
Добавлен сахарный визитор - пока для неупакованных параметрво в лямбде - идентификаторов
В грамматике добавлены lambda_unpacked_params
В StandardSyntaxConverter.cs добавлена UnpackLambdaParametersVisitor.New.ProcessNode(root);
В принципе, чтобы вернуть - в трёх visit восстановить вначале AddError и включить синтаксический визитор AssignVarTuple
Ещё - ABCStatisticsVisitors.cs - когда откатим - не удалять