Ворчалки о программировании – Telegram
Ворчалки о программировании
158 subscribers
24 photos
2 videos
6 files
77 links
Канал, посвященный технологиям программирования, технологическому суверенитету (в области ПО) и созданию языков программирования.
Download Telegram
О магическом программировании

Свежая новость: TypeScript вырвался на первое место в рейтинге языков программирования (легко находится в сети). На мой взгляд, эта новость говорит нам о победе магического программирования, надеюсь временной.

Что я называю магическим программированием?

Вспомним, как магичят обычные маги. Как правило, они совершают некоторые действия, которые не имеют отношения или имеют только косвенное отношение к тому результату, который они хотят получить. Вариант: маг обращается к 3-ей силе, используя джина, демона или ангела для решения задачи. При этом, то, как эта третья сила достигает результата, вообще не имеет значения.

Как мы знаем из анекдотов, джины часто выполняют заказ формально. Напомню известный анекдот: хочу быть белым, и чтобы рядом все время были женщины…

Вернемся к программированию. Современный продвинутый программист или пишет нечто, что магическим образом выполняет задачу (dynamic typing, type inference, smart casting, templates, generic types, gradual typing…) или обращается к некому демону, который выдает решение некоторой задачи. Вопрос о соответствии результата поставленной задачи, как правило, не стоит. В первую очередь потому, что постановке задачи вообще не уделяется особого внимания. Мы что-то хотели и что-то получили. Ура!

В чем причина перехода к магическому программированию? На мой взгляд, это воплощение мечты больших корпораций: им нужны дешевые идиоты, не важно кожаные или электронные, которые будут выдавать много того, что будет продаваться. Правда, для этого надо еще и покупателей сделать идиотами, но это процесс тоже активно происходит.

Что для нас, ув. коллеги это значит? Нам надо готовится к тому, что вся эта гора магического софта рухнет, и вместе с эпохой возрождения придет потребность в точных, математических инструментах. Желательно, чтобы эти инструменты у нас были.
👍15🤔4😁1
Мне было очень интересно, да и текст от Richard Gabriel - ссылка в начале страницы, я тоже с интересом пролистал.

https://tutorial.ponylang.io/#the-pony-philosophy-get-stuff-done
1👍1🤔1
Алексей Недоря
Продолжение про лекцию/телемост - переносим на средину ноября, загрузка сейчас слишком большая. https://news.1rj.ru/str/vorchalki_o_prog/185
Я дозрел до лекции, точнее нескольких лекций на тему "Разработка языков программирования: Зачем, почему и как?". Первая лекция 26.11 в 19:00 МСК.

Для Москвы - можно прийти в Онтосеть/Аврору, послушать и позадавать вопросы. Остальные - онлайн. Явки и пароли - позже.

Лекций будет 2 или 3:
1) История, почему и зачем
2) Как и какие сложности
3) В зависимости от того, как пройдут первые две и какие вопросы будут задавать.
👍16👀3🔥2
Дорогое друзья!

В эту среду (26 ноября) в 19:00 по МСК состоится первая лекция Алексея Евгеньевича Недоря "Разработка языков программирования: Зачем, почему и как?".

Мы будем рады всех желающих принять у нас в помещении Онтосети, расположенной по адресу г. Москва, ул. Макаренко 2/21с2 (метро Чистые Пруды) для того, чтобы прослушать лекцию и иметь возможность лично ее обсудить в небольшом кругу! Кофе и чай прилагаются! 😊

Дистанционное участие будет доступно по ссылке, подключение откроется за 15 минут до начала: https://us06web.zoom.us/j/81953912705

Адрес: https://yandex.ru/maps/-/CLFNBT8j
🔥9
Media is too big
VIEW IN TELEGRAM
Впервые в России на выставке "Электроника России" был представлен процессор "Иртыш" (Loongarch64)
Forwarded from Alexander Andrianov
Дистанционное участие будет доступно по ссылке, подключение откроется за 15 минут до начала: https://us06web.zoom.us/j/81953912705
Разработка_ЯП_1_История_Зачем_и_почему.pdf
1.2 MB
Ликбез. Разработка языков программирования. Лекция-1
Запись и презентация

https://disk.yandex.ru/i/WrhbS-DFRvVt2g
👍10🔥6
В рамках лекции Алексея возник вопрос о дальнейшем развитии Тривиля.

Тут, что называется, "критикуешь — предлагай!"

Попробую накидать перечень доработок, которые вижу я.
Предлагаю в комментариях дополнять этот список. Далее эту информацию объединим и из нее уже составим план действий.

Итак, возможные доработки (без приоритетов):

- инсталлятор(ы) (*.msi, *.deb, *.pkg) (Windows, Linux, FreeBSD, Haiku?)
- внешние модули (импорт внешней библиотеки, вроде SDL, приводит к правильным #include и link path и не должен заноситься непосредственно в рантайм)
- дополнение числовых типов цел8, цел16 и т.д.
- описание правил конверсии между типами (цел8 -> цел16 и т.д.)
- формирование языкового тестового набора (compliance test suite)
- соответственно, создание юнит-тестирования
- language server (мне не надо, но многие пользуются)
- плагин для OpenIDE
- плагин для VS code
- подсветка для Far Manager
- документация в виде HTML
- сайт (возможно на GitHub/SourceCraft?)
- составление перечня требуемых библиотек в рантайме (время, SHA-??, сеть?, ...) (некий базовый минимум, без которого совсем плохо)
- "песочница"/playground
- линтер?
- создание фреймворка для бенчмарков
- man pages
- подключение GC (MPS, Boehm, свой?)
- импорт Unicode Standard
3👍2🤔1
Лекция 2. Как разрабатывать языки программирования.

17.12.25, 19:00.

Будет две лекции на эту тему.
👍7