OSDev

для всех
Текущее время: 14 дек 2017, 01:32

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 30 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: C++ Grandmaster Certification
СообщениеДобавлено: 04 фев 2013, 19:15 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 938
Откуда: Дагоба
Прочитал на буржуйском форуме, дублирую здесь.
http://www.cppgm.org/
Учебный курс по созданию с нуля компилятора C++ (стандарт 2011) вместе со всем набором инструментов (линкер, ассемблер) под архитектуру x86-64. Всё это должно быть самодостаточным (self-hosted), то есть, весь набор должен уметь компилировать сам себя. По окончанию курса выдаётся сертификат (если, конечно, сумел закончить :D).

Применительно к ОСДеву помимо очевидных плюсов вижу ещё один неочевидный плюс в самодостаточности компилятора. Да, понятно, что можно портировать GCC. Но это же цельный и неделимый монстр! А карманных компиляторов с С++ нет, есть только с С.
Лично я вижу ещё один аспект. Я давно мечтаю реализовать собственный ЯВУ, в таком случае, высокоуровневые компоненты ОС можно именно на нём и писать.

Однако, одолевают некоторые сомнения. Этот курс создан впервые, до 15 февраля идёт первый набор. Не перегнули ли они палку со сложностью учебной задачи? Да, я читал их ответ в FAQ, но всё же...

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Grandmaster Certification
СообщениеДобавлено: 04 фев 2013, 20:25 
Аватара пользователя

Зарегистрирован: 28 май 2012, 23:44
Сообщения: 237
Откуда: Санкт-Петербург
Yoda писал(а):
Я давно мечтаю реализовать собственный ЯВУ, в таком случае, высокоуровневые компоненты ОС можно именно на нём и писать.

Если перестать мечтать и начать проектировать, пройдет еще столько же времени, сколько мечтал. Единственный способ ускорить -- бросить все и заниматься только языком.

Вообще же, как мне кажется, разработать язык сложнее, чем компилятор по готовой спецификации. Если, конечно, разработка языка не сводится к косметическим изменениям в каком-либо существующем языке. А при наличии проработанной спецификации разработку компилятора можно отдать на подряд.

Yoda писал(а):
Однако, одолевают некоторые сомнения.

Меня тоже. Выскажу осторожное предположение: либо курс окажется архисложным и до конца дойдут немногие -- реальные мастера, либо разработка будет в той или иной мере сведена к игре в конструктор из более-менее готовых компонентов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Grandmaster Certification
СообщениеДобавлено: 04 фев 2013, 20:55 
Аватара пользователя

Зарегистрирован: 16 май 2007, 23:46
Сообщения: 1057
Цитата:
Однако, одолевают некоторые сомнения. Этот курс создан впервые, до 15 февраля идёт первый набор. Не перегнули ли они палку со сложностью учебной задачи? Да, я читал их ответ в FAQ, но всё же...

Это не учебная задача. А тест на крутость. И для хорошего его прохождения ты уже должен был написать учебный компилятор. Ты уже должен знать как он пишется. А вот то что тесты тебе писать не придётся это плюс.

Тем более у тебя будет вся документация. И тесты.
Если кодить каждый день по 2 часа в день, то к концу года ты закончишь компилятор.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Grandmaster Certification
СообщениеДобавлено: 05 фев 2013, 01:24 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 938
Откуда: Дагоба
Freeman писал(а):
Вообще же, как мне кажется, разработать язык сложнее, чем компилятор по готовой спецификации.

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

Freeman писал(а):
Если, конечно, разработка языка не сводится к косметическим изменениям в каком-либо существующем языке.

По большому счёту, если не считать экстравагантные языки типа Forth, Prolog или Lisp, всё остальное, пожалуй, можно свести к косметическим изменениям друг друга.

Freeman писал(а):
А при наличии проработанной спецификации разработку компилятора можно отдать на подряд.

Так некому отдавать. Новыми языками, как и новыми операционными системами сейчас никого не заинтересуешь.

pavia писал(а):
Это не учебная задача. А тест на крутость.

Написано, что это учебный курс. То есть, конечно и тест, но основа - всё же курс. Учебные заготовки будут давать.

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Grandmaster Certification
СообщениеДобавлено: 06 фев 2013, 01:17 

Зарегистрирован: 26 мар 2012, 17:32
Сообщения: 208
> экстравагантные языки типа Forth, Prolog или Lisp
> экстравагантные
Ну-ну. Про то что хороших (идеологически и с т.з. лаконичности) и используемых в серьёзных задачах языков много - я промолчу, лишь скажу что "Новыми языками, как и новыми операционными системами сейчас никого не заинтересуешь" - неправда. Есть, конечно, нюансы, но суть в том что на "жабе и сишечке" жизнь остановилась лишь у тех кто сам себя ограничил.
Собственно, суть в чём:
> можно свести к косметическим изменениям друг друга.
можно, но не нужно. Многие языки позволяют существенно сократить код (не говоря уж про всякие идеи ООП и data-flow), а это важно как с точки зрения отлова ошибок, так и с т.з. того что жизнь коротка и написать можно лишь конечное число строк кода, так что это количество надо рациональнее использовать.

К слову, всем 10 минут доброго чтива на эту тему: http://erlang.org/pipermail/erlang-ques ... 71949.html


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Grandmaster Certification
СообщениеДобавлено: 06 фев 2013, 10:30 
Аватара пользователя

Зарегистрирован: 02 фев 2013, 13:39
Сообщения: 21
Откуда: Тула
Я бы записался! Но сейчас вообще не вариант... времени нет :cry:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Grandmaster Certification
СообщениеДобавлено: 06 фев 2013, 11:05 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 938
Откуда: Дагоба
Написал им запрос по поводу планируемой длительности курса и ожидаемой нагрузки.

pavia писал(а):
Если кодить каждый день по 2 часа в день, то к концу года ты закончишь компилятор.

Ты попал в точку :).
Ожидаемая нагрузка около 10 часов в неделю, т.е. по два часа в рабочий день при длительности курса больше 12 месяцев. Блин, это серьёзно. У меня на мой проект с загрузчиками не получается выделить столько времени. С другой стороны, для меня полноценный компилятор - необходимая работа. Да и работа в группе по расписанию всегда дисциплинирует.
Ладно, запишусь, а там видно будет. Если не потяну, в любой момент можно бросить.

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Grandmaster Certification
СообщениеДобавлено: 12 фев 2013, 01:45 

Зарегистрирован: 18 апр 2010, 15:59
Сообщения: 155
По моему опыту общения с компиляторостоением, написать компилятор С++ на С\С++ достаточно эпическая задача. Red Dragon Book вам в помощь! И поверть эта написаная в стиле Кнута книга вам ооочень пригодиться и мозг вы на ней сломаете конкрентно (стиль изложения там такой). НО! Но книга несомненно полезная.

Мое имхо. Если вы хотите забросить ОС и заняться разработкой компиляторов и языков, то оно того стоит. Два эпичных проекта единовременно не потянуть. Один из них вытянуть за уровень песочницы, уже требует неимоверных усилий и трудозатрат.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Grandmaster Certification
СообщениеДобавлено: 12 фев 2013, 01:48 

Зарегистрирован: 18 апр 2010, 15:59
Сообщения: 155
И еще пять копеек. Курсе на втором писал простенький (очень простенький) компилятор. Что запомнилось - это сам процесс разработки. Сначала недели пилишь модели диаграммы конечных автоматов, а потом по модели кодишь часа два-четыре и подругому никак. Теория и теоретическая проработка решает.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Grandmaster Certification
СообщениеДобавлено: 12 фев 2013, 10:21 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 938
Откуда: Дагоба
ZarathustrA писал(а):
Red Dragon Book вам в помощь!

Уже изучаю.

ZarathustrA писал(а):
И поверть эта написаная в стиле Кнута книга вам ооочень пригодиться и мозг вы на ней сломаете конкрентно (стиль изложения там такой).

Да не, пока всё понятно.

ZarathustrA писал(а):
Мое имхо. Если вы хотите забросить ОС и заняться разработкой компиляторов и языков, то оно того стоит. Два эпичных проекта единовременно не потянуть.

Об одновременности речь не идёт. Я хочу последовательно. Просто чем дальше в ОС, тем больше упираешься в необходимость компилятора с ЯВУ. На С работать не хочется, он очень сильно устарел. С++, несмотря на то, что это лучший на сегодня язык, многих проблем не решает, тянет за собой проблемы С (по совместимости) и добавляет малую толику новых. Java не годится для системного программирования. Другие языки ещё хуже.

На курс записался. Потом опишу здесь впечатления.

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 30 ]  На страницу 1, 2, 3  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB