Pull to refresh

Задачи для курсовых

Reading time 2 min
Views 4.5K
На хабре часто возникают топики, в которых студенты CS специальностей просят помочь им с выбором тем курсовых и дипломных работ. Это не удивительно, так как обычно темы, которые предлагают научные руководители интересны только им самим, и получается ситуация, когда студент выполняет работу, но не видит в ней смысл. Мне кажется, что это очень ужасно, когда человек не заинтересован в своей работе.

Было бы намного лучше, если бы студент понимал, что он делает нужную вещь, за которую много людей будут ему благодарны. Один из способов достичь этого — участие в популярных open source проектах, связанных с его специальностью. Хорошими кандидатами являются проекты по созданию компиляторов/интерпретаторов языков программирования, так как это наукоемкие проекты (алгоритмы вывода типов, PEG, монады, теория типов...) и объективно полезные проекты (если язык достаточно популярен).

Как можно уже было догадаться, я предлагаю поучаствовать в разработке языка Nemerle. Это достаточно уникальный проект, так как он стоит в одним ряду с таким языком как scala, он поддерживается людьми из России, и он еще не такой популярный, что бы избегать всеми силами ломающих изменений.

Ниже я перечислил некоторые задачи, которые еще не реализованы, но которые есть в плане развития
  • Поддержка Coroutine через трансформацию исходного кода, как это сделано в scala с версии 2.8. Эту задачу можно реализовать целиком через макросы, не изменяя сам компилятор (подробности)
  • Добавить парсер C# файлов, чтобы можно было использовать Nemerle на существующих C# проектах и использовать уже существующие дизайнеры и автогенераторы


Я не разработчик Nemerle, но использую его в своей дипломной работе и заинтересован в его развитии. За всеми подробностями можно обращаться на форум, посвященный Nemerle на rsdn. Репозиторий Nemerle открыт на чтение, поэтому изучать его можно уже сейчас. Сам язык является простым, и человек, знающий C#, может быстро (несколько дней) разобраться в его основах.
Tags:
Hubs:
+3
Comments 16
Comments Comments 16

Articles