Size: a a a

Compiler Development

2020 April 07

Т8

Т-34 85 in Compiler Development
Alexander Tchitchigin
Теоретиков и практиков обучения программированию? 😉
Возможно, он хотел сказать не "теоретиков", а "академиков". "Есть разделение на академиков и практиков"
источник

AT

Alexander Tchitchigin in Compiler Development
Т-34 85
Возможно, он хотел сказать не "теоретиков", а "академиков". "Есть разделение на академиков и практиков"
Возможно. Но я намекнул именно на этот аспект вопроса. 😊
источник

PS

Peter Sovietov in Compiler Development
@Sergey_Sverdlov Добавлено, спасибо!
источник

VS

Vasily Shapenko in Compiler Development
К сожалению, учитывая историю академического образования, знания академические слабо применимы к рабочим вопросам обычно
источник

IJ

Igor 🐱 Jirkov in Compiler Development
Alexander Tchitchigin
А советовать научиться говнокодить людям, которые даже не понимают чего на самом деле хотят - считаю морально недопустимым.
Можно сразу дать выбор. Годами ботать и потом быть специалистом по чему-то нетривиальному, или выучить джаваскрипт и "шлепать круды" :)
источник

EM

Evgenii Moiseenko in Compiler Development
Если тот, кто спрашивал совета как обучиться программированию еще здесь, то я бы посоветовал такую последовательность: изучить понятия операционной, денатоционной и аксиоматической семантики, почитать статьи Гордона Плоткина и Гленна Винскеля. Затем перейти к лямбда исчислению. Затем уже можно изучить какой-нибудь функциональный язык вроде Хаскеля (уже понимая, что многие вещи являются синтаксическим сахаром).
Затем нужно погрузиться в мат.логику: proof theory, model theory и в конце category theory. Понимая как это все устроено, можно устраиваться на работу и приобретать промышленный опыт.
источник

SS

Sergey Sverdlov in Compiler Development
polunin.ai
Лекции будут продолжаться до лета? планируется охватить все части компилятора?
Лекции будут продолжаться, как минимум, до окончания карантина. Возможно, что и до лета. Частей компилятора осталось... одна - генератор кода. Плюс еще виртуальная машина. Но это уже не компилятор, а интерпретатор. Лекционный курс кроме написания компилятора предполагает еще ряд тем.
источник

AT

Alexander Tchitchigin in Compiler Development
Igor 🐱 Jirkov
Можно сразу дать выбор. Годами ботать и потом быть специалистом по чему-то нетривиальному, или выучить джаваскрипт и "шлепать круды" :)
Если серьёзно, то это мнимый выбор для человека, который ещё не представляет как это вообще ощущается — "шлепать круды" или "быть специалистом по чему-то нетривиальному". 😞
источник

AT

Alexander Tchitchigin in Compiler Development
Evgenii Moiseenko
Если тот, кто спрашивал совета как обучиться программированию еще здесь, то я бы посоветовал такую последовательность: изучить понятия операционной, денатоционной и аксиоматической семантики, почитать статьи Гордона Плоткина и Гленна Винскеля. Затем перейти к лямбда исчислению. Затем уже можно изучить какой-нибудь функциональный язык вроде Хаскеля (уже понимая, что многие вещи являются синтаксическим сахаром).
Затем нужно погрузиться в мат.логику: proof theory, model theory и в конце category theory. Понимая как это все устроено, можно устраиваться на работу и приобретать промышленный опыт.
Неплохо написано, я оценил. 👍
Но на всякий случай поясню для непосвящённых: это был сарказм.
источник

SS

Sergey Sverdlov in Compiler Development
Sergey Sverdlov
Фронт-енд компилятора языка "О" одним файлом
В телеграм-канале, откуда этот перепост, студентам предлагается тестировать фронт-енд. Приглашаю к участию.
источник

IJ

Igor 🐱 Jirkov in Compiler Development
Alexander Tchitchigin
Если серьёзно, то это мнимый выбор для человека, который ещё не представляет как это вообще ощущается — "шлепать круды" или "быть специалистом по чему-то нетривиальному". 😞
это достаточно фундаментальная разница, на мой взгляд, в стиле жизни. В одном случае, как правило, программист работает за деньги, в другом — программирует даже если его никто не просит (и я не хочу сказать, что одно лучше другого).
источник

IJ

Igor 🐱 Jirkov in Compiler Development
Я согласен с Петром, давайте к компиляторам.
источник

AT

Alexander Tchitchigin in Compiler Development
Igor 🐱 Jirkov
это достаточно фундаментальная разница, на мой взгляд, в стиле жизни. В одном случае, как правило, программист работает за деньги, в другом — программирует даже если его никто не просит (и я не хочу сказать, что одно лучше другого).
Да, но пока ты сам не попробовал ни то, ни другое — ты не можешь "примерить на себя" и сделать осознанный выбор.
источник

MM

Mikhail Maltsev in Compiler Development
Вообще если вспоминать как нас в школе учили программированию, то это было примерно так (где-то 2001-2003 г):
1. Управление роботом в лабиринте. У робота примитивные команды типа шаг влево/вправо/вверх/вниз/закрасить клетку и проверки типа "закрашена ли клетка снизу?" или "свободна ли клетка справа?". Код вводился в IDE, которая предотвращает синтаксические ошибки (т.е. не даёт редактировать текст, а позволяет выбирать нужные команды из меню). Разработано в самой школе.
2. Очень простой функциональный язык (настолько простой, что функция не является объектом первого рода, нет глобального state) - тоже разработан внутри школы
3. Паскаль с довеском в виде разных коллекций (структур данных) и framework-а для модульного тестирования (т.е. писать предлагалось не всю программу, а только функции, которые фреймворк будет вызывать). Надстройка тоже написана внутри школы
4. Немного C++
5. Курсовой проект
источник

АЕ

Артур Ефимов in Compiler Development
Mikhail Maltsev
> на языке Си, Java, Питон
У этих языков есть весомое преимущество перед Обероном: они используются в production. Т.е. знания о самом языке полученные в ходе изучения основ программирования не обязательно будет выбрасывать в помойку
Цель изучения программирования — изучить программирование. Любой язык затем можно изучить за две недели.
источник

А

Алексей in Compiler Development
Артур Ефимов
Цель изучения программирования — изучить программирование. Любой язык затем можно изучить за две недели.
ну или за 21 день, если это C++
источник

PS

Peter Sovietov in Compiler Development
Чтобы не требовалось "индустрии" все больше и больше ремесленников, владеющих сиюминутными "технологиями", проявить себя должны те, кого называют tool makers. То есть это наша с вами задача -- автоматизировать нелегкий, рутинный, ручной труд кодеров, а профессию программиста заставить рассматривать в качестве творческой. Поэтому — компиляторы. Примерно так надо выводить любую тему в ontopic :)
источник

RS

Rifat S in Compiler Development
Да, основы любого языка можно изучить за 2 недели. Стать хорошим специалистом на C++ можно за 3 года (при том, что обучение астронавтов NASA занимает 18 месяцев).
источник

IJ

Igor 🐱 Jirkov in Compiler Development
Артур Ефимов
Цель изучения программирования — изучить программирование. Любой язык затем можно изучить за две недели.
нет, это правда только если ограничиться одним набором идей, например, императивным программированием.
источник

AK

Andrei Kurosh in Compiler Development
Igor 🐱 Jirkov
Я согласен с Петром, давайте к компиляторам.
+1

Господа, обучение программированию - увлекательная тема, но давайте оффтоп плавно сворачивать
источник