Commit graph

378 commits

Author SHA1 Message Date
Ivan Bondarev 577ae41cac fix pascalabcnet/pascalabcnetide#236 2022-04-15 15:04:36 +02: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
Ivan Bondarev dce5abc6b4 fix #2575 2021-12-24 14:52:33 +01:00
Mikhalkovich Stanislav 3ae478b8de fix #2580 2021-12-24 11:28:18 +03:00
Ivan Bondarev b845735c07 #2571 2021-12-12 14:46:43 +01:00
Ivan Bondarev e1368c0d19 #2546 2021-10-24 12:23:46 +02:00
Ivan Bondarev 3c6b191810 #2546 2021-10-24 12:18:52 +02:00
Ivan Bondarev d23856cd6f #2535 2021-10-17 14:46:34 +02:00
Ivan Bondarev 29a2fb4156 #2521 2021-10-10 09:53:41 +02: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 d385866907 3.8.0.2964 2021-08-13 19:31:29 +03:00
Mikhalkovich Stanislav 068e749af9 Распространены атрибуты функций на режимы ## м ### 2021-08-10 21:16:22 +03:00
Mikhalkovich Stanislav de55f99304 Различные ограничения на функции с параметром [Cache] 2021-08-09 22:37:53 +03:00
Mikhalkovich Stanislav 03f4fcba73 Убрал атрибуты у unit-library - они мешали атрибутам глобальных подпрограмм
Пока ошибка с атрибутами типов остается

System.Console.OutputEncoding := Encoding.UTF8;
2021-08-07 13:34:33 +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
Ivan Bondarev 5811692ca9 #1202 2021-04-05 12:38:58 +02:00
Ivan Bondarev f4558af026 #2145 2021-04-05 11:41:31 +02:00
Ivan Bondarev 772489a15e fix 2021-04-03 17:05:00 +02:00
Ivan Bondarev 9389c7e7c6 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.y
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
2021-04-03 17:02:56 +02:00
Ivan Bondarev 9cc4afcf8e #2038 2021-04-03 16:58:39 +02:00
Mikhalkovich Stanislav e8a2eb27fd Исправлена ошибка в грамматике 2021-04-03 07:36:13 +03:00
Ivan Bondarev 938f9328b1 update 2021-03-28 14:12:25 +02:00
Ivan Bondarev 18e948a328 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
2021-03-28 14:10:45 +02:00
Ivan Bondarev 31cf309e4e fix #2038
fix #2033
2021-03-28 14:08:47 +02:00
Mikhalkovich Stanislav f85758a059 Исправлена ошибка при распаковке параметров лямбд с несколькими параметрами
Divizors переименован в Divisors
2021-03-26 00:12:48 +03:00
Mikhalkovich Stanislav 86cacc72cf Исправлена непонятная ошибка с NET dll когда не распознавалось, что класс реализует интерфейс.
Происходило это в ситуации когда класс и интерфейс определены в разных dll и dll были как-то сложно связаны

Почему то при этом типы Type интерфейса были разными. Не представляю, как это возможно - dll всё равно одна, и версия Assembly идентична в дебаггере

Вообщем, проверил не ссылки, а AssemblyQualifiedName
2021-03-17 09:02:59 +03:00
Mikhalkovich Stanislav 91d96a8513 Вложенные \(\(a,b),y) завершены 2021-03-07 19:05:05 +03:00
Mikhalkovich Stanislav 65e7bb188b иСПРАВЛЕН S.ReadInteger(FROM) - теперь с нуля
function_lambda_definition - добавлено поле для неупакованных параметров \(x,y)
Добавлен сахарный визитор - пока для неупакованных параметрво в лямбде - идентификаторов
В грамматике добавлены lambda_unpacked_params
В StandardSyntaxConverter.cs добавлена UnpackLambdaParametersVisitor.New.ProcessNode(root);
2021-03-07 14:03:58 +03:00
Mikhalkovich Stanislav 8eadef3cf5 tkBackSlashRoundOpen 2021-03-02 22:46:43 +03:00
Mikhalkovich Stanislav 83526f7268 Сообщение "Срезы многомерных массивов разрешены только для массивов размерности < 5" 2021-03-02 16:23:15 +03:00
Mikhalkovich Stanislav a5c4033bbd ### и подпрограммы. Пока не форматируется 2021-02-28 00:49:56 +03:00
Mikhalkovich Stanislav c77b124cce Версия с неверно форматирующимся
##
{asg}
uses School;

procedure p := Print(1);

p;

Код с ### пока без процедур и функций
2021-02-27 23:44:07 +03:00
Mikhalkovich Stanislav 05f158875d Многомерные срезы - пока без семантического контроля
И интеллисенс a[1,:] неверно показывает тип
2021-02-24 18:41:51 +03:00
Mikhalkovich Stanislav 7c3273aae8 Многомерные срезы без семантических проверок
Разрешил a as array [,] of T
2021-02-24 00:47:39 +03:00
Mikhalkovich Stanislav b1323a6e0e slice-expr - подготовка к слайсам в многомерных массивах 2021-02-22 21:26:52 +03:00
Mikhalkovich Stanislav cf55d3ffd7 fix #2333 2021-01-18 18:43:39 +03:00
Mikhalkovich Stanislav 976afac8c0 Перегенерировал cs-файлы парсера 2021-01-17 19:21:48 +03:00
Mikhalkovich Stanislav a746b5c76c Незначительные изменения в именах параметров в стандартном модуле 2021-01-16 23:15:45 +03:00
Mikhalkovich Stanislav 6553f62573 fix #2376
Permutations Combinations Cartesian для последовательностей
2021-01-07 14:12:06 +03:00
Mikhalkovich Stanislav af071b1cef ### - убран uses School 2020-12-27 18:16:54 +03:00
Mikhalkovich Stanislav 1384d1671d School ДОБАВЛЕН В ### 2020-12-14 22:12:18 +03:00
Mikhalkovich Stanislav 390b4b8a95 расширенный foreach - семантика 2020-12-03 23:08:23 +03:00
Mikhalkovich Stanislav 02c92a378d Форматирование расширенного foreach 2020-11-28 13:07:03 +03:00
Mikhalkovich Stanislav ca6450d95c fix #2349 2020-11-25 21:21:10 +03:00
Mikhalkovich Stanislav 2a03f27e93 Небольшое изменение грамматики const_expr 2020-11-25 19:40:11 +03:00
Mikhalkovich Stanislav e3b59ae5a1 Константы 123bi
В модуле School - ToBase(BigInteger)
2020-11-20 14:23:49 +03:00
Mikhalkovich Stanislav cf7e002e92 'ab'?[2:].Println
SF - ряд сокращений
Form1 - раскомментировал Здоровье кода при запуске
2020-11-16 13:16:12 +03:00
Mikhalkovich Stanislav e959c17d07 Незначительные правки 2020-10-02 10:12:45 +03:00
Mikhalkovich Stanislav eeeb2563a2 Shift-F9
Справка
2020-09-18 16:04:17 +03:00
Mikhalkovich Stanislav b4c5ad785e -2**4 теперь возвращает -16
2**3**2 теперь работает
2020-09-14 21:14:08 +03:00
Mikhalkovich Stanislav d5f77542ec Merge 29/08 2020-08-29 15:45:01 +03:00
Mikhalkovich Stanislav c87fe31ff4 Версия 3.7
Интегрирован NUnit
2020-08-26 08:53:11 +03:00
Mikhalkovich Stanislav 490ddaa43a var q := (a,b: integer; c: real) -> begin
end;

теперь работает
2020-08-12 15:22:16 +03:00
Mikhalkovich Stanislav 15a9445216 x → x (стрелочка :))
|1,2,3|.Print
2020-07-29 11:29:51 +03:00
Бондарев Иван 0efe7b143b fix in formatter 2020-07-26 14:10:06 +02:00
Mikhalkovich Stanislav bdb87cb824 Исправление неточности форматирования ## 2020-07-26 09:43:15 +03:00
Mikhalkovich Stanislav c957f65eb4 Controls - доработки
Форматирование ## и ###
2020-07-24 22:00:21 +03:00
Mikhalkovich Stanislav 8d9ad8ddef |1,2..3| запрещено
|1,'v'| запрещено
## - коррекции в Intellisense
2020-07-06 21:43:26 +03:00
Mikhalkovich Stanislav 9ebe2fcd77 Parser recompiled 2020-07-04 22:53:33 +03:00
Mikhalkovich Stanislav 2794392e83 Короткие программы вида
##
Print(1)

Преддверие литеральных массивов в виде |1,2,3| - пока без форматирования

Rot Triangle 1.vertex.glsl
2020-07-04 22:49:42 +03:00
Mikhalkovich Stanislav 973e33d3ec SF дописки 2020-06-21 20:06:27 +03:00
Mikhalkovich Stanislav c9617a5afc fix #2253
ABCPascal.cs
ABCPascalYacc.cs вернул на место
2020-06-18 23:17:13 +03:00
Mikhalkovich Stanislav d4d80e1bb2 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.lst
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
2020-06-08 21:32:15 +03:00
Mikhalkovich Stanislav 67f5b8c00e fix #2248 2020-06-08 21:30:03 +03:00
Бондарев Иван 94142b84aa fix #2166 2020-06-01 10:02:56 +02:00
Александр Погорелов 0253a47bed -1 теперь корректное значение для параметра to в SystemSlice 2020-05-05 18:58:06 +03:00
Александр Погорелов adf85f831c Форматирование для index 2020-05-04 15:33:39 +03:00
Mikhalkovich Stanislav fcf04d7c99 fix #2223
TryRead с доппараметром - message
GraphWPF - DrawGraph - доппараметр - заголовок
2020-04-13 23:33:20 +03:00
Александр Погорелов 664a504301 fix #2185 2020-03-09 14:14:53 +03:00
Mikhalkovich Stanislav 1bec360fe3 Yacc Lex work 2020-03-09 13:01:26 +03:00
Mikhalkovich Stanislav 39ade48ce6 bug fix #2211 2020-03-09 12:57:00 +03:00
Mikhalkovich Stanislav 8545817173 fix #1053
Вложенные безымянные записи теперь снова разрешены, но запрещено захватывать имена из неглобального контекста
2020-03-08 09:28:11 +03:00
Александр Погорелов 750654fd9f fix #2164 2020-02-10 15:51:16 +03:00
Mikhalkovich Stanislav da4406700f Изменение грамматики - запрет условной операции как тела лямбды (во избежание конфликтов с условным оператором) 2020-01-13 02:01:52 +03:00
Mikhalkovich Stanislav d743cfd62e y lex cs 2020-01-12 19:05:51 +03:00
Mikhalkovich Stanislav 41290ad809 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
2020-01-12 19:05:32 +03:00
Mikhalkovich Stanislav 6200e3851d ReadInt64 2020-01-12 19:02:52 +03:00
Бондарев Иван 7dbf6197cb fix #2177 2020-01-12 12:16:43 +01:00
Mikhalkovich Stanislav a0fda1e045 if_expr_new узел для форматирования 2020-01-06 20:02:07 +03:00
Mikhalkovich Stanislav 17339ade0c min := if a<b then a else b; 2020-01-06 01:16:01 +03:00
Mikhalkovich Stanislav f2060d6b00 Оптимизация цикла по a.Indices - версия без проверки 2020-01-06 00:55:40 +03:00
Mikhalkovich Stanislav 838dddf8b1 foreach по a..b преобразуется в for - для эффективности 2020-01-05 22:46:12 +03:00
Mikhalkovich Stanislav 1c4b7b7636 Доделал форматирование a..b 2020-01-04 20:43:51 +03:00
Mikhalkovich Stanislav 15d20463d7 Новый Range в виде a..b 2020-01-04 12:19:36 +03:00
Mikhalkovich Stanislav ba6ac20ec9 Убраны лишние пробелы при генерации CodeTemplates
StructuredObjectToString - правильный вывод Dictionary
2020-01-03 11:03:46 +03:00
Александр Погорелов b1aebba362 fix #2159 2019-12-30 12:44:19 +03:00
Mikhalkovich Stanislav 1aeb653f85 Из PABCSystem убрана операция умножения последовательности на число как
дававшая неприятный эффект для множеств - множество умножать на число нельзя
2019-12-18 07:34:17 +03:00
Mikhalkovich Stanislav 88ff83f2c6 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
2019-12-08 21:07:50 +03:00
Mikhalkovich Stanislav 76710a8b2a Пара символов 2019-12-08 21:00:48 +03:00