Последние посты

PascalABC.NET официальный канал
20 сент., 19:17изменён
RayTracer, поправленный ИИДавний пример, публиковался здесь. Попросил ИИ его ускорить. Ускорил в 10 разhttps://gist.github.com/miks1965/592a9ee7a812cafa89dde0440b8ee9a3Сейчас эта сцена рендерится за 0.3 сек.Чтож, спасибо, Claude!


PascalABC.NET официальный канал
19 сент., 19:10
Расширение PascalABC.NET для VS Code на Mac — работает! 🍎Доступна версия 0.5.1 расширения PascalABC.NET для Visual Studio Code.На macOS уже работают: ✅ запуск программ ✅ подсветка синтаксиса ✅ IntelliSense — автодополнение и информация о символахСкачать расширение можно здесь: https://pascalabc.net/vscode/


PascalABC.NET официальный канал
9 сент., 04:04изменён
PascalABC․NET + VS Code + .NET 10В PascalABC․NET 4.0 появился официальный плагин для Visual Studio Code.https://pascalabc.net/vscode/Он поддерживает: ◉ компиляцию и запуск программ; ◉ IntelliSense; ◉ диагностику ошибок; ◉ подсказки типов и параметров; ◉ .NET Framework 4.8 и .NET 10.С .NET 10 PascalABC․NET можно использовать в VS Code на Windows, Linux и macOS.На скриншоте — PascalABC․NET в VS Code с работающим IntelliSense и запуском программы под .NET 10.


PascalABC.NET официальный канал
6 сент., 04:21
🚀 Предварительная версия PascalABC․NET 4.0.1 уже доступнаНа странице скачивания PascalABC․NET появился новый раздел — «Предварительная версия». Сейчас в нём доступна PascalABC․NET 4.0.1 Beta. Именно эта версия будет постепенно накапливать новые возможности и последние исправления.По мере готовности она станет основной версией PascalABC․NET, а пока её можно использовать для знакомства с нововведениями и тестирования.Сейчас доступны: — StandardPack 4.0.1 Beta — консольный компилятор 4.0.1 Beta для .NET 10 — список изменений в 4.0.1Скачать предварительную версию: https://pascalabc.net/ssyilki-dlya-skachivaniya/


PascalABC.NET официальный канал
4 сент., 04:36
🎓 ML PascalABC․NET — машинное обучение без внешних зависимостейОдно из главных нововведений PascalABC.NET 4.0 — новая библиотека ML PascalABC․NET.Это уже не набор отдельных учебных алгоритмов, а целостная библиотека для анализа данных и классического машинного обучения.В ней есть всё необходимое для полного ML-процесса: ● работа с табличными данными (DataFrame), статистика и визуализация ● подготовка признаков: пропуски, кодирование категорий, масштабирование ● классификация и регрессия: Logistic Regression, kNN, Decision Tree, Random Forest, Gradient Boosting ● кластеризация: KMeans и DBSCAN ● метрики, разбиение выборок и кросс-валидация ● ML-конвейеры для объединения подготовки данных и моделей ● встроенные датасеты для обучения и экспериментовAPI библиотеки построен вокруг привычной современной схемы Fit / Transform / Predict. По организации работы и удобству

Channel photo updated
1 сент., 05:39

PascalABC.NET официальный канал
1 сент., 04:05
🎓 С Днём знаний!Поздравляем всех подписчиков канала PascalABC․NET с началом нового учебного года! К 1 сентября у PascalABC․NET сразу несколько важных обновлений.Новый сайт pascalabc.net. Современный дизайн, новая структура и удобный доступ к материалам о системе, документации и обучении.Заходите, смотрите и делитесь впечатлениями в комментариях!PascalABC․NET 4.0.● В новой версии появилась собственная библиотека ML PascalABC․NET для машинного обучения — без внешних зависимостей. Теперь задачи анализа данных и классического машинного обучения можно решать средствами самого PascalABC․NET. ● Ещё одно важное обновление — компилятор для .NET 10.0.С 1 сентября! Успешного и интересного учебного года!


PascalABC.NET официальный канал
24 авг., 14:23изменён
У официального канала PascalABC.NET появилось зеркало в MAX: https://max.ru/channel_pabc_officialОба канала заработают полным ходом с сентября.Появилась также группа для обсуждения в MAX вот с такой красивой пригласительной ссылкой https://max.ru/join/D28ks-E4Olzc7BN7mVlAqhNr-NXbgijzaRnGNQ9FXZQОна также полноценно заработает с сентября. Кому удобнее обсуждать в MAX - присоединяйтесь!Между тем, нашим основным каналом остается Телеграм.MAXPascalABC.NET Официальный каналОфициальный канал системы программирования PascalABC.NET Канал в Телеграм: https://t.me/pascalabc_official
PascalABC.NET официальный канал
10 авг., 04:15
Вычисление выражений с помощью EvalВ модуле Utils появилась стандартная функция Eval позволяющая вычислять арифметические выражения, заданные в виде строкиВыражение например можно ввести с клавиатурыuses Utils;begin Println(Eval('2 + 3 4')); Println(Eval('(2.4 + 3 % 2) 6 - 1')); Println(Eval('(5 > 3) and (2 < 4)')); Println(Eval('IIF(17 % 2 = 0, ''even'', ''odd'')')); Println(Eval('Len(''PascalABC.NET'')'));var i := EvalInt('2 + 3'); var x := EvalReal('10 / 4.0'); var b := EvalBool('(10 >= 5) and (3 <> 4)'); var s := EvalStr('''PascalABC'' + ''.NET''');


PascalABC.NET официальный канал
1 авг., 18:54изменён
Запомним этот день и часВсе тесты под .NET 10 прошли. Консольный компилятор работает!Собственно, огромное спасибо Codex!01.08.2026 г. 21.54


PascalABC.NET официальный канал
31 июл., 07:26
Понятно из-за чего - двумерные Generic-массивы.Попросил Codex разобраться.И тут - произошла потрясающая вещь!Codex нашел ошибку не в PascalABC.NET, а в Runtime .Net 9.0!Причем, Codex сам проверил, что на компьютере установлен Runtime .NET 10.0, откомпилировал пример под ней и убедился, что он работает!Программист пытался бы исправить ошибку, предполагая что она внутри PascalABC.NET, потратив на это безрезультатно неопределенное время...Даже не знаю, что еще говорить... Одни эмоции )Нет, знаю :)Следующим запросом я попросил перевести весь проект под .NET 10.0. Codex любезно согласился, попросил сделать коммит на Github от греха, пошуршал, ответил вот это:=============================== Проект переведён на .NET 10.


PascalABC.NET официальный канал
30 июл., 18:13изменён
PascalABC.NET под net 9 и CodexКак знают читатели нашего канала, мы давно пытаемся перевести консольный компилятор PascalABC.NET с .NET Framework под современный .NET. С версии .NET 9.0 это стало возможно - появилась возможность генерировать сборку и сохранять ее на диск.Примерно год назад нам удалось создать компилирующийся проект консольного компилятора - в нем проходило примерно 95% наших тестов. Но некоторые тесты падали из-за различий в NET Framework и .NET 9.0.Этот год мы собирались с духом чтобы начать их исправлять.И вот - возникла идея загрузить проект в Codex и пообщаться с ним, как можно исправить некоторые ошибки.В этом посте делюсь, как была исправлена одна.Вот этот код type Days = (Mon,Tue,Wed,Thi,Fri,Sat);begin var ld := new List<Days>;


PascalABC.NET официальный канал
17 июн., 19:44изменён
📌 ЕГЭ по информатике: задача №3 в новой версии PascalABC.NETВ преддверии ЕГЭ по информатике покажем, как можно решать задачу №3 из демо варианта с помощью новых возможностей PascalABC.NET. Задача №3 обычно связана с поиском данных в таблицах: нужно объединить несколько листов, отфильтровать строки по условиям и посчитать итоговую величину.В новой версии PascalABC.NET это можно сделать в стиле современных инструментов анализа данных — через DataFrame. uses MLABC;begin var movement := DataFrame.FromODS('DEMO_3.ods', 'Движение_товаров'); var goods := DataFrame.FromODS('DEMO_3.ods', 'Товар'); var shops := DataFrame.FromODS('DEMO_3.ods', 'Магазин');var d1 := new DateTime(2024, 10, 5); var d2 := new DateTime(2024, 10, 14);var df := movement .Join(goods, 'Артикул') .Join(shops, 'ID магазина');


PascalABC.NET официальный канал
15 июн., 08:08
В DataFrameABC появился тип DateTimeВ табличных данных часто встречаются столбцы с датами: дата регистрации, время создания заказа, момент события в логе и т.д.Теперь в DataFrameABC для таких данных есть отдельный тип столбца: ColumnType.ctDateTime Это значит, что дату и время можно хранить не как строку, а как полноценное значение DateTime. uses MLABC;begin var text := ''' id,created_at,name 1,2024-01-15,Alice 2,2024-01-16 12:30:00,Bob ''';var schema := new Dictionary<string, ColumnType>; schema['created_at'] := ColumnType.ctDateTime;var df1 := CsvLoader.LoadFromLines(


PascalABC.NET официальный канал
13 июн., 04:08
7 июня на мехмате ЮФУ состоялось награждение победителей и призёров олимпиады PascalABC.NET 2026.Поздравляем всех участников, победителей и призёров!Для школьников 10–11 классов эта олимпиада имеет и практическое значение: победители и призёры, поступающие на мехмат ЮФУ, получат дополнительно 10 баллов к суммарному баллу ЕГЭ.Отдельно отметим, что ряд задач был специально ориентирован на лаконичные решения на PascalABC.NET. Многие участники успешно воспользовались выразительными возможностями языка и показали, что короткая программа вполне может быть точной, понятной и эффективной.Желаем ребятам дальнейших успехов в программировании и ждём новых участников в следующем году!


PascalABC.NET официальный канал
31 мая, 04:55
Конкатенация DataFrame-ов в MLABCuses MLABC;begin var df1 := DataFrame.FromCsvText(''' id,name,age 1,Ann,10 2,Bob,12 ''');var df2 := DataFrame.FromCsvText(''' id,name,age 3,Cat,11 4,Dan,13 ''');var df := DataFrame.Concat(df1, df2); df.Print; end.
PascalABC.NET официальный канал
29 мая, 04:27
Олимпиада PascalABC.NET 202616 мая прошла олимпиада по программированию Мехмат - PascalABC.NET 2026В ней приняло участие 49 школьников Ростова и областиПриводим задачу C1 и ее решениеbegin var words := ReadString.ToWords; Print(words.GroupBy(w -> w.Order.JoinToString).Max(g -> g.Count)); end.


PascalABC.NET официальный канал
20 мая, 04:41
Простой текстовый редактор в GraphWPFuses GraphWPF;var (x,y) := (0.0,0.0);procedure KeyPress(c: char); begin if c = ' ' then c := Chr($A0); TextOut(x,y,c); x += TextWidth(c); end;procedure KeyDown(k: Key); begin case k of Key.Enter: begin x := 0; y += TextHeight('q');


PascalABC.NET официальный канал
12 мая, 04:43изменён
Табличная предобработка: Imputer и OrdinalEncoderОдин из важных этапов работы с табличными данными — предобработка: заполнение пропусков, кодирование категориальных признаков, масштабирование числовых данных и другие преобразования.Пример: сначала заполним пропуск в числовом столбце population средним значением, а затем закодируем категориальный столбец region числами. uses MLABC;begin var df := DataFrame.FromCsvText(''' city,population,region Ростов-на-Дону,1142,Юг Таганрог,NA,Юг Воронеж,1058,Центр Курск,452,Центр Белгород,392,Центр ''');Println('Исходные данные:'); df.Print; Println;


PascalABC.NET официальный канал
8 мая, 04:24изменён
Не надо слов, не надо паники(это мой последний день на Титанике 🚢)В новой библиотеке ML для PascalABC.NET появился встроенный датасет TitanicRu — классическая задача бинарной классификации: предсказать, выжил пассажир или нет.Причём поля датасета уже русифицированы:● Возраст ● Пол ● Класс ● ЦенаБилета ● ПортПосадки ● Выжили т.д.Ниже — полный пример ML pipeline:● загрузка датасета,

