Commit graph

284 commits

Author SHA1 Message Date
Alexander Zakharenko cc21d473f1 Recursive patterns - resugaring example 2018-05-13 20:49:08 +03:00
Alexander Zakharenko 8be0622eeb Add keywords to parser 2018-05-12 18:10:37 +03:00
Alexander Zakharenko d257bbd52f Add else case and tests 2018-05-11 19:26:55 +03:00
Alexander Zakharenko f5cf7d8179 Re-generate parser & run tests 2018-05-11 14:11:56 +03:00
Alexander Zakharenko a078dac5eb Merge branch 'master' into features/patterns
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
#	TestSuite/CompilationSamples/PABCSystem.pas
#	bin/Lib/PABCSystem.pas
2018-05-11 13:58:19 +03:00
Alexander Zakharenko ec44408a75 Code formatting for match with pattern 2018-05-11 13:46:59 +03:00
Бондарев Иван aa1b0f043b fix #796 2018-05-07 21:43:25 +02:00
Voloshin Bogdan 74f8834449 Merge branch 'master' into features/typeclasses-another-approach
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
2018-05-04 08:19:34 +03:00
Бондарев Иван af346c7eb7 bug fix #777 2018-05-02 20:43:45 +02:00
Voloshin Bogdan 3c00e075e7 Merge branch 'master' into features/typeclasses-another-approach 2018-05-02 13:04:01 +03:00
Alexander Zakharenko 17cb96a479 Refactor nodes 2018-05-01 19:51:24 +03:00
Alexander Zakharenko 5aff52feeb Add deconstruct pattern to grammar 2018-05-01 19:29:39 +03:00
Бондарев Иван 20476b7b1c Merge branch 'master' of github.com:pascalabcnet/pascalabcnet 2018-04-29 14:38:00 +02:00
Бондарев Иван 11faec72f0 fix #787 2018-04-29 14:34:03 +02:00
miks1965 b99f025512 BuildTreeInExprMode - поставил лишнюю проверку. Пользователи продолжают жаловаться, что падает 2018-04-29 11:02:40 +03:00
Bogdan Voloshin 6886c9cd66 Merge branch 'master' into features/typeclasses-another-approach 2018-04-19 16:26:17 +03:00
Бондарев Иван 3239b99ddf bug fix 2018-04-18 20:26:42 +02:00
Bogdan Voloshin dc26158d0a Add typeclass param list 2018-04-18 19:08:07 +03:00
Bogdan Voloshin c4e3ad1b21 Merge branch 'master' into features/typeclasses-another-approach 2018-04-17 18:12:28 +03:00
Бондарев Иван 9e3ccf8bcc bug fix #769 2018-04-15 14:37:22 +02:00
Bogdan Voloshin fdfae3b9fd Add where_type_class_constraint 2018-04-10 18:07:31 +03:00
Bogdan Voloshin 95cf30dba5 Merge branch 'master' into features/typeclasses-another-approach
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
2018-04-10 17:25:40 +03:00
Бондарев Иван ecffe6748f bug fix #752 2018-04-08 16:16:33 +02:00
Alexander Zakharenko 3f93bfa24b Merge 'master' into 'features/patterns' 2018-04-08 13:42:32 +03:00
Bogdan Voloshin 4444cf2689 Add grammar rules and syntax nodes 2018-04-05 20:02:37 +03:00
Бондарев Иван 66c62ce37d bug fix #742 2018-03-25 18:55:26 +02:00
Бондарев Иван be304b03b8 bug fix #732 2018-03-23 18:29:25 +01:00
Бондарев Иван ebc181d9e5 update for #285 2018-03-22 21:34:42 +01:00
Бондарев Иван 1e648d5a43 Форматные строки (#285) 2018-03-21 21:01:54 +01:00
Бондарев Иван 748669aaec bug fix #725 2018-03-18 11:51:40 +01:00
Бондарев Иван 7039ad3c4f bug fix #682 2018-02-20 20:53:51 +01:00
miks1965 47abf90efa .NET 4.7.1
pabcworknet.ini - добавлен BOM
i.Print для стандартных типов
f.Seek(i) сделана функцией
Подчистка в Graph3D.pas
2018-01-26 23:37:04 +03:00
miks1965 bb93625420 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
2018-01-12 11:44:27 +03:00
miks1965 650fcb4f2d Object.Print (экспериментально) 2018-01-12 11:42:02 +03:00
Бондарев Иван 97425e8b87 update to #575 2018-01-08 21:23:40 +01:00
miks1965 a39fb76e04 Короткие определения конструкторов.
Пример Chess3D
2018-01-08 22:12:33 +03:00
miks1965 a08322e1c1 bug fix #641 2018-01-06 00:29:19 +03:00
Бондарев Иван 12c97a26ab copyright 2005-2018 2018-01-01 13:14:03 +01:00
miks1965 d185cd8de6 bug fix #613 2017-12-30 11:39:02 +03:00
Бондарев Иван f59c462fe7 power operator (#169) 2017-12-29 22:31:00 +01:00
Бондарев Иван 7e7eedc35a bug fix #451 2017-12-29 17:51:33 +01:00
Alexander Zakharenko 0b25c36990 Add 'var' keyword to pattern's variable 2017-12-11 18:45:13 +03:00
miks1965 f40d226f67 Множественные изменения в Graph3D.pas
Функция InRange - как синоним Between
2017-12-09 14:10:03 +03:00
miks1965 2150c80de7 Graph3D.pas
Правка грамматики в связи с :
2017-12-02 20:29:52 +03:00
Бондарев Иван 17b9e02eba bug fix #560 2017-11-19 18:08:26 +01:00
miks1965 881fe86c71 Новая PT4pabc.dll 2017-11-04 22:00:51 +03:00
miks1965 48cd0913c4 bug fix #484 2017-11-03 22:21:03 +03:00
Бондарев Иван c3bb2ed953 bug fix #524 2017-10-15 15:08:57 +02:00
Alexander Zakharenko 35d2cd6d18 End merge
Fix namespace visit, run tests
2017-10-05 19:44:28 +03:00
Alexander Zakharenko 597ef862bc Merge branch 'master' into features/patterns
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
#	Parsers/PascalABCParserNewSaushkin/Keywords.cs
#	SyntaxTree/tree/AbstractVisitor.cs
#	SyntaxTreeConverters/StandardSyntaxConverter.cs
#	TestSuite/CompilationSamples/PABCSystem.pas
#	TestSuite/intellisense_tests/PABCSystem.pas
#	bin/Lib/PABCSystem.pas
2017-10-05 18:48:57 +03:00
miks1965 429d47271a SetStandardCoords с параметрами 2017-09-29 20:49:56 +03:00
miks1965 8f9d8367ef Yacc Lex 2017-09-28 08:51:25 +03:00
miks1965 13ca616f0e Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
2017-09-28 08:50:22 +03:00
miks1965 57a455a05f Комментарии в GraphWPF 2017-09-28 08:48:33 +03:00
Бондарев Иван d48c84f28d namespaces (alpha) 2017-09-24 12:12:27 +02:00
miks1965 04861bc23f bug fix #469
GraphWPF
Samples on GraphWPF
2017-08-26 00:30:33 +03:00
Voloshin Bogdan 84e19e2f7c Move dll's from bin to Libraries 2017-08-11 05:55:16 +03:00
miks1965 1d00487702 property virtual override синтаксис 2017-08-06 22:51:12 +03:00
Alexander Zakharenko 89f239636a Regenerate parser 2017-07-23 22:32:08 +03:00
Alexander Zakharenko 11f69bbf44 Merge branch 'master' into features/patterns
# Conflicts:
#	CodeCompletion/CodeFormatter.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.y
#	SyntaxTree/tree/AbstractVisitor.cs
#	SyntaxTree/tree/HierarchyVisitor.cs
#	SyntaxTree/tree/SyntaxTreeStreamReader.cs
#	SyntaxTree/tree/SyntaxTreeStreamWriter.cs
#	SyntaxTree/tree/Tree.cs
#	SyntaxTree/tree/Visitor.cs
#	SyntaxTree/tree/tree.xml
#	SyntaxVisitors/SyntaxVisitors.csproj
#	TestSuite/CompilationSamples/PABCSystem.pas
#	bin/Lib/PABCSystem.pas
2017-07-23 22:29:24 +03:00
Бондарев Иван ecb2661b4b bug fix #441 2017-07-06 21:07:00 +02:00
miks1965 c1640a161c Мелкие правки в PABCSystem. Доп. функции Random2.
string[256] теперь нее компилируется
2017-07-02 15:39:44 +03:00
miks1965 389e9d27b2 Удалил коммит со step 2017-06-21 21:19:38 +03:00
miks1965 4a448b38eb Небольшие изменения в Роботе и Чертежнике
Заготовка для step в for
2017-06-20 20:29:43 +03:00
miks1965 00646f89a5 loop 5 do
write(1)
2017-06-08 17:56:17 +03:00
miks1965 eb1280ebdc Merge 2017-06-06 05:26:13 +03:00
miks1965 0ba89df68a Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
2017-06-06 05:25:25 +03:00
miks1965 2f3b2294ba class_body -> class_body_list 2017-06-06 05:24:32 +03:00
Бондарев Иван 2b60ecbcd7 bug fix #415 2017-06-04 14:13:46 +02:00
janise93 d6fd84b935 Add: ??, integer? and semantic checks for ?. 2017-06-03 10:19:52 +03:00
miks1965 eedb09752e Minor changes in ABCPascal.y 2017-06-01 21:54:52 +03:00
miks1965 38842c45e7 bug fix #411
var (a,b) := (1,2)
2017-06-01 13:14:49 +03:00
miks1965 ecf1cd2955 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet
# Conflicts:
#	Configuration/GlobalAssemblyInfo.cs
#	Configuration/Version.defs
#	ReleaseGenerators/PascalABCNET_version.nsh
#	bin/Lib/PABCRtl.dll
2017-05-31 22:32:13 +03:00
miks1965 d98f460e79 Working changes 2017-05-31 22:31:11 +03:00
Бондарев Иван d423b906ac added missing copyrights 2017-05-27 20:06:12 +02:00
miks1965 356fef909c Working changes 2017-05-22 21:02:50 +03:00
Бондарев Иван 6d0abe9841 Merge branch 'master' of github.com:pascalabcnet/pascalabcnet
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
2017-05-09 19:42:55 +02:00
Бондарев Иван fc1cc9db18 bug fix #393 2017-05-09 19:37:50 +02:00
miks1965 8c70f44b94 ?. первая версия. Пока нет проверки ошибок и оборачивания Nullable для размерных типов 2017-05-08 22:59:52 +03:00
Alexander Zakharenko d386dce8d9 Merge branch 'master' into features/patterns
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
#	bin/Lib/PABCRtl.dll
2017-04-15 15:31:41 +03:00
miks1965 a8ee800840 work 2017-03-08 00:30:47 +03:00
Alexander Zakharenko a45199256d Add Match...with construction 2017-02-20 13:57:13 +03:00
Alexander Zakharenko c015d16514 Merge branch 'master' into features/patterns
# Conflicts:
#	Parsers/PascalABCParserNewSaushkin/ABCPascal.cs
#	Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs
#	SyntaxTreeConverters/StandardSyntaxConverter.cs
#	bin/Lib/PABCRtl.dll
2017-02-19 17:29:54 +03:00
Бондарев Иван 65a2566223 bug fix #347
add missing copyrights
change year in copyright
2017-02-19 14:29:24 +01:00
miks1965 faeedd04d8 Working changes 2017-02-15 08:54:25 +03:00
Alexander Zakharenko 5c11c87960 Add type_pattern 2017-02-12 19:52:59 +03:00
miks1965 f189fd7160 Небольшой рефакторинг синтаксического сахара 2017-01-26 15:47:13 +03:00
miks1965 6aee6c9add Рефакторинг 2017-01-22 20:54:13 +03:00
miks1965 32cc3ed88f a?[2:10:2] 2017-01-10 08:49:49 +03:00
Бондарев Иван ff58e3ea80 bug fix #319 2016-12-18 14:53:56 +01:00
miks1965 d676ba3267 bug fix #318 #317 2016-12-12 21:57:41 +03:00
miks1965 3e420dba5e Небольшие изменения в грамматике 2016-12-04 18:08:29 +03:00
miks1965 33d748adf0 Лямбды перенесены в грамматике на верхний уровень везде.
Некоторые переносы Replace между визиторами и присваивания Parent
2016-12-01 23:46:54 +03:00
miks1965 40d2ec71b6 Sort(a,cmp) 2016-11-24 02:26:46 +03:00
miks1965 a05b51fd16 Лямбды перенесены в грамматике на верхний уровень. Конфликтов с кортежами нет! 2016-11-21 18:39:01 +03:00
miks1965 b3c33a133d Русские команды в Роботе и Чертежнике
a.RowCount a.ColCount
2016-11-20 23:43:57 +03:00
miks1965 e644e4ef7a Перегенерация грамматики 2016-11-20 08:30:49 +03:00
miks1965 1dbd724756 Исправление var a, var b, var c 2016-10-21 09:45:25 +03:00
miks1965 2fbdeaaa2c (var a, var b) := (1,2); 2016-10-17 13:28:50 +03:00
miks1965 c22f8c0e71 Релиз с исправленной ошибкой Чертежника 2016-10-08 18:31:13 +03:00
Бондарев Иван f171b0f658 Предупреждение при использовании overload 2016-09-22 21:56:07 +02:00
Бондарев Иван 2aa4944b17 bug fix #256 2016-09-20 19:13:47 +02:00
Бондарев Иван 5226b50d32 Параметр цикла foreach должен описываться в заголовке цикла 2016-09-18 12:31:07 +02:00
Бондарев Иван 003c3c9983 Добавлено предупреждение: Использование нелокальной переменной в качестве счетчика цикла 2016-09-15 20:13:02 +02:00
miks1965 d9872e09d3 Keywords.cs 2016-08-28 20:25:38 +03:00
miks1965 79883887d5 Всякая всячина 2016-08-27 11:14:39 +03:00
miks1965 09ef7fcb3b Все последние изменения :) 2016-07-19 21:16:08 +03:00
Бондарев Иван 6ccd4448d4 #159 2016-05-26 13:16:32 +02:00
Бондарев Иван d8f195656c fix #158 2016-05-26 11:43:49 +02:00
miks1965 50c7311468 Вернул название TreeConverter 2016-05-01 11:44:54 +03:00
miks1965 2e70409001 Проект SyntaxTreeChanger
Немного изменил примеры
2016-05-01 11:13:16 +03:00
miks1965 0ae748f2c0 fix #115 2016-04-25 14:25:11 +03:00
miks1965 924785706c Доделал x->begin Result := Print(x) end; Теперь выдается ошибка 2016-04-23 10:28:39 +03:00
miks1965 2771314915 bug fix #139 2016-04-19 13:10:35 +03:00
miks1965 d10563ad7d fix #138 2016-04-18 15:15:49 +03:00
miks1965 194b4fde0b event и yield теперь не требуют экранирования & в a.event, b.yield
Убрал также подсказку по Iterate  и Repeat, расширяющих ЛЮБОЙ класс
2016-04-14 22:11:30 +03:00
miks1965 db628c6815 format (a,b):=(1,2) 1 2016-04-09 22:24:36 +03:00
miks1965 2c5e9a53e5 bug fix #91 2016-04-04 21:38:03 +03:00
miks1965 9adbd4d727 bug fix #90
Some adds to GraphABC
2016-04-04 20:02:29 +03:00
miks1965 c13a976a2b Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet
Conflicts:
	ReleaseGenerators/PascalABCNET_version.nsh
2016-04-03 22:07:37 +03:00
miks1965 75836746bf Исправления конфликтов в грамматике ::
Исправлен баг #99
2016-04-03 22:04:35 +03:00
Бондарев Иван 272ca3d9fa Удалил файлы GoldParser-а (с непонятной лицензией) 2016-04-03 19:02:46 +02:00
miks1965 2b4502783f Исправление неточностей в справке 2016-03-20 20:55:54 +03:00
miks1965 2983529171 Working commit 2016-03-14 13:05:49 +03:00
miks1965 01c82f5863 Слайсы 2016-03-11 00:33:35 +03:00
miks1965 bbe2b15590 Исправлено сообщение об ошибке Нельзя наследовать от типа ... 2016-03-09 23:55:18 +03:00
miks1965 cabc8fe3c1 TYPE_NAME_EXPECTED=Ожидалось имя типа 2016-02-20 21:46:02 +03:00
Бондарев Иван faaf52e695 Merge branch 'master' of https://github.com/pascalabcnet/pascalabcnet 2016-02-12 16:49:33 +01:00
Бондарев Иван 75d63c2163 Запретил описание без реализации метода, реализующего явно интерфейс 2016-02-12 16:49:02 +01:00
miks1965 e8cf5f6274 Добавление кодировки к Reset Rewrite... 2016-02-11 22:49:12 +03:00
miks1965 978d22acc0 Упростил грамматику. Убрал вызов NewVariable в правиле variable 2016-02-11 15:59:27 +03:00
miks1965 5ff52a07a1 Восстанавливаюсь после ошибки с типами в ?: 2016-02-11 15:15:12 +03:00
miks1965 85b512952c Исправлен выбор типа в операции ?: Выбирается теперь самый общий тип 2016-02-11 08:52:23 +03:00
miks1965 b435cbf7fe foreach по многомерным массивам теперь возвращает правильный тип элемента.
Вернул короткие определения функций - ошибочно запрещал
2016-02-02 02:28:54 +03:00
miks1965 288c9a0606 OnMouseDown := procedure(x,y,mb) -> if mb=1 then Circle(x,y,5) 2016-01-30 02:15:19 +03:00
miks1965 f7c37251b5 var a: 0..integer.MaxValue; - теперь точки в диапазонном типе работают 2016-01-30 00:14:23 +03:00
miks1965 b4cc443595 Sequence of (T,T) 2016-01-24 23:06:01 +03:00
miks1965 68c8ead5cd Work 2016-01-23 08:21:09 +03:00
miks1965 bbae062980 Сделал &System для генерации синтаксических узлов на семантическом уровне чтобы пропускать поиск в модулях и искать сразу в .NET 2016-01-21 15:57:06 +03:00
miks1965 3e844d597b Множественные uses 2016-01-20 20:31:39 +03:00
miks1965 d933ae1f2c Поправил контекст тьюплов для автоформатирования 2016-01-19 23:21:24 +03:00
miks1965 1226bee7ea build_tree_for_formatter 2016-01-18 08:12:50 +03:00
miks1965 711cba9c11 Типы (integer,real) теперь работают и не конкурируют с перечислимыми типами!!!!!
Пришлось запретить скобки в range-типе - иначе были конфликты.
Пока не проверяю неправильность записи (integer = 1, integer = 1) - надо обязательно выдавать ошибку
2016-01-15 22:06:39 +03:00
miks1965 937c990181 (a,b) := (b,a+b) и прочие прелести в связи с этим. Круто - надо выпускать 3.1 2016-01-14 22:58:45 +03:00
miks1965 5817de29b6 Добавлено: Количество элементов кортежа не должно быть больше 7 2016-01-13 22:34:03 +03:00
miks1965 5ce19c217e (a,b) как кортеж - кажется, получилось 2016-01-13 21:30:17 +03:00
Бондарев Иван 321d8a48fe удалены старые парсеры на базе GoldParser
обновлен год в копирайтах
2016-01-07 22:01:36 +01:00
Бондарев Иван b64dc75b94 Привел в соответствие копирайты в окне About 2016-01-06 11:34:18 +01:00
Artem Pelenitsyn 49378a6750 change encoding for all *.pas and *.cs files: cp1251 -> utf-8 2015-12-28 14:25:15 +03:00
miks1965 8b3e964efc Исправил генерируемые yacc файлы 2015-12-27 21:41:54 +03:00