Commit graph

227 commits

Author SHA1 Message Date
Mikhalkovich Stanislav a7b113e6f8 В конструкторах разрешены именованные аргументы.
Интересно, почему раньше были запрещены

ML - первая версия GradientBoostingClassifier
2026-02-22 21:01:14 +03:00
Mikhalkovich Stanislav 819a87ed40 ArrRandomInteger(n: integer; range: IntRange)
и для матрицы
2025-11-08 21:55:40 +03:00
Mikhalkovich Stanislav b4a77bfbbb fix #3342 2025-10-07 11:16:35 +03:00
Mikhalkovich Stanislav 4c56298bfb exit(param) 2025-05-08 22:53:34 +03:00
Mikhalkovich Stanislav 0848a1b796 Исправление автоформатирования [] 2025-01-04 22:54:38 +03:00
Mikhalkovich Stanislav 8a9788e6f9 Перенес проверку set array на уровень парсера
Немного поправил Intellisense по наведению для NewSet

По точке там что то другое работает
2024-12-17 15:06:57 +03:00
Mikhalkovich Stanislav a53dcd9ed2 SF Prm Cmb для строк 2024-12-14 15:25:16 +03:00
Mikhalkovich Stanislav a8b7dc8be7 Пока закомментировал превращение множеств в массивы 2024-07-19 13:01:43 +03:00
Mikhalkovich Stanislav 84205f86bf SetOf на замену [1,2,3]
Преобразование массивов стандартных типов к множествам того же типа
2024-07-19 11:30:18 +03:00
Mikhalkovich Stanislav b8fec95599 Большое изменение в Dictionaries
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(ключ)
2024-07-15 13:50:11 +03:00
AlexanderZemlyak d5e9994ff2
Revert pascal language moving to language plugins (#3175)
* Return Parsers folder with standard parsers and move SyntaxTreeConverters back to Core

* Rename PascalLanguage project to PascalABCLanguageInfo

* Fix pascal dll loading
2024-07-02 16:10:50 +03:00
AlexanderZemlyak 342375501b
New languages engine (#3120)
* 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
2024-05-25 12:26:32 +03:00
Mikhalkovich Stanislav 38c4901787 DrawMan исправления падения при запуске 2024-05-08 23:44:49 +03:00
Mikhalkovich Stanislav 443ed6d3d7 ObjectToString - убрал подчеркивание
TypeName - убрал артефакты реализации в implementation и тесты, это использующие
2024-05-07 12:19:23 +03:00
Mikhalkovich Stanislav 27fc10ab0f Странные комментарии к TypeName
LightPT - SetMessagesOn
2024-05-05 23:51:09 +03:00
Mikhalkovich Stanislav c56442339e ! Hidden 2024-04-07 21:42:57 +03:00
Mikhalkovich Stanislav 6d96161be1 Директива HiddenParams для скрытых модулей 2024-04-04 14:00:54 +03:00
Mikhalkovich Stanislav c66bfa7d92 Многострочные строковые литералы 2024-03-21 21:21:59 +03:00
Mikhalkovich Stanislav a868d9106f Подготовка к for как foreach 2024-01-07 17:16:29 +03:00
Mikhalkovich Stanislav 30668e650a function f(n: integer): integer;
begin
  if n = 0 then Result := 1
  else Result := n*f(n-1);
end;

begin
  var a := (var b := f(5)) + b;
  Print(a,b);
end.
2023-12-31 21:56:13 +03:00
Mikhalkovich Stanislav 771e1f799c первая версия async в грамматике 2023-12-08 19:37:39 +03:00
Mikhalkovich Stanislav b33efb5915 Разделители _ в числовых константах 2023-09-13 11:16:18 +03:00
Mikhalkovich Stanislav 10ed6b670a Исправлена ошибка с отсутствующим do после step 2023-06-23 13:41:47 +03:00
Mikhalkovich Stanislav af9b6acb91 Ликвидация зависимости проектов PascalABCSaushkinParser и SyntaxVisitors от
проекта TreeConverter, то есть, от семантического уровня

Необходимо применить эти изменения и перекомпилировать в ОС РОСА
2023-05-31 14:04:04 +03:00
Mikhalkovich Stanislav 522b744236 Примеры для 3.9.0
CartesianPower(Self: string
Некоторые проверки именованных аргументов
2023-05-08 20:05:55 +03:00
Mikhalkovich Stanislav 932e59a39d Исправление ошибки с именованными параметрами в грамматике 2023-05-05 17:02:12 +03:00
Mikhalkovich Stanislav 19999eb0ca Комментарии к select_function
proc_func_call узел в грамматике - давно пора
2023-05-03 23:25:59 +03:00
Mikhalkovich Stanislav 009f6b4d77 DrawMan проверка исправлена
Парсер - добавлен синтаксис именованных параметров при вызове и комментарии для их реализации
2023-05-03 11:59:45 +03:00
Mikhalkovich Stanislav 16b45eaa14 Graph3D LocalAxisX Y Z, MoveByLocal
Turtle - цвет
pt4pabc.dll новая
2022-10-19 15:05:42 +03:00
Mikhalkovich Stanislav c50caf192c fix #2670 2022-05-23 08:21:56 +03:00
Mikhalkovich Stanislav 75425d6d2e Подготовка к созданию плагина учительского контроля 2022-05-17 16:02:14 +03:00
Mikhalkovich Stanislav 8b60c3ced5 Убрал слово packed. Захламляет грамматику 2022-05-08 20:44:14 +03:00
Mikhalkovich Stanislav 3240593d2e Реализован foreach index
Исправлена ошибка for step
Дополнена справка по for step и foreach index
J,yjdkty ntrcnjdsq htlfrnjh? gjlcdtxbdf.obq ыеуз b штвуч rjyntrcnyj d hfvrf[ jlyjq cnhjrb
2022-02-26 12:33:53 +03:00
Mikhalkovich Stanislav aece73f33c for var i:=1 to 5 step 2 do 2022-02-21 17:03:34 +03:00
Mikhalkovich Stanislav 2ecc622a3f fix #2617 2022-01-29 18:30:35 +03:00
Mikhalkovich Stanislav e6aa9e838f fix #2554 2021-12-28 19:09:27 +03:00
Mikhalkovich Stanislav 0f25d86303 fix #2586 2021-12-25 22:08:55 +03:00
Mikhalkovich Stanislav 3ae478b8de fix #2580 2021-12-24 11:28:18 +03:00
Mikhalkovich Stanislav 70576addb0 not in
if (System.Environment.OSVersion.Version.Major >= 6) and (System.Environment.OSVersion.Version.Minor >= 2) then System.Console.OutputEncoding := Encoding.UTF8;

School - таблица истинности - доп. параметр
2021-09-23 18:29:37 +03:00
Mikhalkovich Stanislav edcb611778 Убраны константы, ошибочно оказавшиеся в грамматике в разделе описания процедур
Ошибок не давало, но...
2021-08-21 18:00:35 +03:00
Mikhalkovich Stanislav 068e749af9 Распространены атрибуты функций на режимы ## м ### 2021-08-10 21:16:22 +03:00
Mikhalkovich Stanislav 03f4fcba73 Убрал атрибуты у unit-library - они мешали атрибутам глобальных подпрограмм
Пока ошибка с атрибутами типов остается

System.Console.OutputEncoding := Encoding.UTF8;
2021-08-07 13:34:33 +03:00
Mikhalkovich Stanislav 85c13a6a21 Подправлена первая страница справки 2021-08-07 09:58:35 +03:00
Mikhalkovich Stanislav 34f6ca8e8b Permutations Cartesian Combinations в модуле School для строк 2021-08-01 17:08:16 +03:00
Mikhalkovich Stanislav 2f96b742d8 x -> (sum += x) 2021-07-15 22:37:44 +03:00
Mikhalkovich Stanislav d61b231059 Добавлены константы в режимы ## и ###
a.EachCount - без GroupBy можно
2021-07-08 11:51:22 +03:00
Mikhalkovich Stanislav 1438b620ab Новsй узел expression_with_let_semantic, expression_with_let_semantic
для конструкции вида
procedure p(b: integer := (var x := b*b; x*x+x-1));
2021-06-29 12:02:42 +03:00
Mikhalkovich Stanislav 450e629598 IsDataClass поле 2021-05-29 14:31:26 +03:00
Mikhalkovich Stanislav f4c198cf9b Исправлена ошибка со считыванием строк после
Assign(input,'a.txt');
2021-05-17 11:59:01 +03:00
Mikhalkovich Stanislav 46c439e99e fix #2366 2021-04-24 08:52:13 +03:00