Commit graph

514 commits

Author SHA1 Message Date
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 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
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 4a96036947 work 2021-03-24 12:10:55 +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
Ivan Bondarev b4ced27c06 fix #1237 2021-01-08 12:14:40 +01:00
Ivan Bondarev 25cf7c0414 fix #2074 2021-01-08 11:53:15 +01:00
Mikhalkovich Stanislav 6553f62573 fix #2376
Permutations Combinations Cartesian для последовательностей
2021-01-07 14:12:06 +03:00
Kotov f97323dc6b 2020 to 2021 2021-01-05 06:50:21 +05: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 2eddbb8f15 Попытка частично заставить работать одновременно #2277 и #2265 2020-07-11 17:11:27 +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 1b9bb78095 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
2020-07-04 22:52:32 +03:00
Mikhalkovich Stanislav 2794392e83 Короткие программы вида
##
Print(1)

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

Rot Triangle 1.vertex.glsl
2020-07-04 22:49:42 +03:00
Александр Погорелов e8e70ff33d a is [collection], a is (tuple) теперь нелегальны. Починил вложенный матчинг 2020-07-03 06:45:23 +03:00
Mikhalkovich Stanislav 41656ca6aa fix #1682 2020-06-21 21:46:50 +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
Александр Погорелов 4b74153395 merge master 2020-05-02 12:08:32 +03:00
Александр Погорелов 985d35ef5e SystemSlice 2020-05-02 11:44:20 +03:00
Mikhalkovich Stanislav fcf04d7c99 fix #2223
TryRead с доппараметром - message
GraphWPF - DrawGraph - доппараметр - заголовок
2020-04-13 23:33:20 +03:00
Александр Погорелов 7f4a8cec42 ^ для индексера 2020-04-03 11:48:15 +03:00
Александр Погорелов 9cf75580a5 merge master 2020-03-19 12:46:21 +03:00
Александр Погорелов ea2871d13b Фиксы для срезов на присваивание 2020-03-19 12:43:07 +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
Александр Погорелов 3abae412a2 Правки для slice_expr_question 2020-03-05 11:55:40 +03:00
Александр Погорелов 5800d5626c merge master[2] 2020-02-24 16:44:21 +03:00
Александр Погорелов 2400e62b33 merge master 2020-02-24 16:20:41 +03:00
Александр Погорелов 750654fd9f fix #2164 2020-02-10 15:51:16 +03:00
Александр Погорелов c476301284 Срезы на запись для string 2020-02-10 14:35:45 +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
Mikhalkovich Stanislav 87124bcf59
Merge pull request #2165 from AIexandrKotov/copyright_update
Copyright update
2020-01-01 01:30:16 +03:00
Александр Погорелов b1aebba362 fix #2159 2019-12-30 12:44:19 +03:00
Александр Погорелов 9223b2114f Срезы на запись для списков и массивов 2019-12-27 10:23:08 +03:00
Бондарев Иван b4ec2405a4 fix pascalabcnet/pascalabcnetide#14 2019-12-25 12:27:01 +01:00
Kotov 61e8b4773c 2020 in copyrights
С наступающим!)
2019-12-25 13:37:51 +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
Александр Погорелов 52e9e82897 "when" при матчинге таплов 2019-12-08 14:11:44 +03:00
Mikhalkovich Stanislav 6d94497a24 PABCSystem.pas исправлена Numerate и добавлена Reverse для строки 2019-12-01 23:38:06 +03:00
Mikhalkovich Stanislav f183403a08 fix #2151 2019-11-23 19:23:04 +03:00
Бондарев Иван 443736a641 fix #2076 2019-08-18 13:40:45 +02:00
Mikhalkovich Stanislav a025a00826 Локальный school.pct 2019-08-04 12:14:14 +03:00
Mikhalkovich Stanislav da8b3cc81f fix #1386
- неожиданно само
school.pct - коррекции
RobotZadan - RBps1-3
tkUnknown - пока не получается
2019-07-29 15:52:45 +03:00
Mikhalkovich Stanislav e603b1fd6d Mikhalkovich в Copyright
Заготовка для школьного плагина образцов кода
2019-07-28 23:53:15 +03:00
Mikhalkovich Stanislav e6d19d0d5d Вернул назад неверное исправление if then else 2019-07-25 13:16:10 +03:00
Mikhalkovich Stanislav 5eec60e885 Уточненная ошибка "Перед else нельзя ставить точку с запятой" 2019-07-24 22:13:11 +03:00
Mikhalkovich Stanislav 32a5606ac0 fix #2028 2019-07-14 11:55:23 +03:00
Mikhalkovich Stanislav dddd90f710 fix #2041 2019-07-11 16:53:00 +03:00
Бондарев Иван da613b74f4 fixed formatting of namespaces 2019-06-30 11:25:44 +02:00
Mikhalkovich Stanislav 7c6c67a2e6 fix #793 2019-06-30 08:41:59 +03:00
Александр Погорелов 37b4d894af fix #1953 2019-06-29 10:25:24 +03:00
Александр Погорелов 01f2797722 fix #2023 2019-06-28 08:54:19 +03:00
Mikhalkovich Stanislav 5f15134dab fix #1989 2019-06-24 15:43:25 +03:00
Kotov a646615d8e
Copyright changes 2019-06-24 10:58:25 +03:00
Mikhalkovich Stanislav fe54b731c8 fix #1996 2019-06-19 14:41:20 +03:00
Александр Погорелов d6bef4694d Разрешены reduce/reduce конфликты связанные с паттерн матчингом 2019-06-19 11:24:03 +03:00
Mikhalkovich Stanislav aa3242524a bug fix #1526
and
bug fix #1533
2019-06-18 16:02:15 +03:00
Александр Погорелов 5c89b74e85 fix #902, fix #1306 2019-06-15 12:15:21 +03:00
Александр Погорелов a6f59b0aaa fix #1953 2019-05-25 17:19:29 +03:00
Александр Погорелов 4f9ebdb5ae fix #1953, fix #1954, fix #1955 2019-05-25 12:30:15 +03:00
Александр Погорелов 0eabf5a39e fix #1950, #1951 2019-05-25 09:35:52 +03:00
Alexandr Pogorelov 8a432eee6e
Улучшение паттерн матчинга (#1949)
Матчинг констант, таплов, коллекций. Улучшение матчинга по типам.
2019-05-24 10:04:17 +03:00
Mikhalkovich Stanislav 26f6937c31 bug fix #1886 2019-03-27 21:56:13 +03:00
Бондарев Иван 8438ed5fc0 fix #1859 2019-03-22 13:49:10 +01:00
Mikhalkovich Stanislav cebaa93fa9 fix #1829 2019-03-07 17:51:00 +03:00
Mikhalkovich Stanislav a8367a8a10 fix #1831
and
fix #1818
2019-03-07 17:32:38 +03:00
Mikhalkovich Stanislav d3ffb2c93c fix #1761 2019-02-22 19:11:56 +03:00
Александр Погорелов 8887bfaa8e fix #1657, fix #1670 2019-01-25 11:01:43 +03:00
Александр Погорелов 17fe2c3df0 fix #1605 2019-01-20 16:47:43 +03:00
Бондарев Иван c2941c9926 fix #1628 2018-12-30 20:09:10 +01:00
Бондарев Иван 416fc5836f fix #1609 2018-12-30 12:29:13 +01:00
Mikhalkovich Stanislav c2ff9744fb bug fix #1616 2018-12-29 11:50:22 +03:00
Voloshin Bogdan 9ba7308c1a Remove typeclasses 2018-12-25 23:18:49 +03:00
Mikhalkovich Stanislav 7b5014e43b fix #1585 2018-12-15 17:04:35 +03:00
Mikhalkovich Stanislav b417531af6 auto static стертые по ошибке 2018-12-09 08:21:38 +03:00
Mikhalkovich Stanislav a0fcbb6a04 Work 2018-12-08 23:37:34 +03:00
Mikhalkovich Stanislav fbe6c252c4 Запретили вложенные записи окончательно 2018-12-08 23:32:52 +03:00
Mikhalkovich Stanislav f5cb7bc816 bug fix #1053 2018-12-08 11:41:26 +03:00
Mikhalkovich Stanislav 753f4f219e bug fix #1570 2018-12-06 21:14:33 +03:00
Mikhalkovich Stanislav 7364b10b3f Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet 2018-12-05 20:48:47 +03:00
Mikhalkovich Stanislav 334c881540 Рабочие изменения 2018-12-05 20:47:38 +03:00
Александр Погорелов 6f9c2b726d auto properties + extended indexed properties 2018-12-05 11:36:45 +03:00