gram news
Аватар канала PascalABC.NET официальный канал

PascalABC.NET официальный канал

@pascalabc_official

Официальный канал языка и системы программирования PascalABC.NET

1,870подписчиков

Открыть канал

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

  • PascalABC.NET официальный канал

    20 сент., 19:17изменён

    RayTracer, поправленный ИИДавний пример, публиковался здесь. Попросил ИИ его ускорить. Ускорил в 10 разhttps://gist.github.com/miks1965/592a9ee7a812cafa89dde0440b8ee9a3Сейчас эта сцена рендерится за 0.3 сек.Чтож, спасибо, Claude!
    Иллюстрация к посту канала PascalABC.NET официальный каналИллюстрация к посту канала PascalABC.NET официальный канал
  • 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 официальный каналИллюстрация к посту канала PascalABC.NET официальный канал
  • 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 официальный каналИллюстрация к посту канала PascalABC.NET официальный канал
    65711633Открыть в Telegram
  • 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 официальный каналИллюстрация к посту канала PascalABC.NET официальный канал
  • 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. По организации работы и удобству
    Иллюстрация к посту канала PascalABC.NET официальный каналИллюстрация к посту канала PascalABC.NET официальный канал
    662141Открыть в Telegram
  • 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 официальный каналИллюстрация к посту канала PascalABC.NET официальный канал
  • 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
    7961831Открыть в Telegram
  • 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 официальный каналИллюстрация к посту канала PascalABC.NET официальный канал
  • PascalABC.NET официальный канал

    1 авг., 18:54изменён

    Запомним этот день и часВсе тесты под .NET 10 прошли. Консольный компилятор работает!Собственно, огромное спасибо Codex!01.08.2026 г. 21.54
    Иллюстрация к посту канала PascalABC.NET официальный каналИллюстрация к посту канала PascalABC.NET официальный канал
    1,0701851Открыть в Telegram
  • 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 официальный каналИллюстрация к посту канала PascalABC.NET официальный канал
  • 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 официальный каналИллюстрация к посту канала PascalABC.NET официальный канал
    61812441Открыть в Telegram
  • 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 официальный каналИллюстрация к посту канала PascalABC.NET официальный канал
    1,0501141111Открыть в Telegram
  • 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 официальный каналИллюстрация к посту канала PascalABC.NET официальный канал
  • PascalABC.NET официальный канал

    13 июн., 04:08

    7 июня на мехмате ЮФУ состоялось награждение победителей и призёров олимпиады PascalABC.NET 2026.Поздравляем всех участников, победителей и призёров!Для школьников 10–11 классов эта олимпиада имеет и практическое значение: победители и призёры, поступающие на мехмат ЮФУ, получат дополнительно 10 баллов к суммарному баллу ЕГЭ.Отдельно отметим, что ряд задач был специально ориентирован на лаконичные решения на PascalABC.NET. Многие участники успешно воспользовались выразительными возможностями языка и показали, что короткая программа вполне может быть точной, понятной и эффективной.Желаем ребятам дальнейших успехов в программировании и ждём новых участников в следующем году!
    Иллюстрация к посту канала PascalABC.NET официальный каналИллюстрация к посту канала 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 официальный каналИллюстрация к посту канала PascalABC.NET официальный канал
  • 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 официальный каналИллюстрация к посту канала PascalABC.NET официальный канал
    1,05066Открыть в Telegram
  • 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 официальный каналИллюстрация к посту канала PascalABC.NET официальный канал
    1,050621Открыть в Telegram
  • PascalABC.NET официальный канал

    8 мая, 04:24изменён

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