G>Интересен синтаксический анализ, алгоритмы...
Если нужно что-то быстрое и при этом полезное — попробуй написать интерпретатор скриптового языка.
Свой язык изобретать не нужно, воспользуйся форматом
INI-файлов — функции
GetPrivateProfileString(),
GetPrivateProfileInt(),
GetPrivateProfileSection() и т.д.
В этом случае у тебя будет синтаксические анализ не самого языка как такового, а отдельных элементов.
Это значительно проще.
Например, напиши что-то вроде
Windows Automated Tasks.
Пусть софтинка твоя висит в трее и выполняет заданные операции в заданное время.
Как-то так:
Имя файла:
tasks.ini
Содержимое файла:
[Task1]
Type = 1 ; запуск программы
Time = 1426575654 ; timestamp времени, когда задача должна быть выполнена
Path = c:\windows\system32\notepad.exe
[Task2]
Type = 2 ; выключение компьютера
Time = sun ; выключать каждое воскресение
[Task3]
...
Как я понял, это — в сфере твоих интересов.
Время реализации — один день.
Если при этом пить пиво — два дня.
Если преподаватель хотя бы попробует заикнуться о том, что это слишком просто и не подходит для диплома, — намекни ему, что лицензия на использование более сложной программы стоит приличных денег, которые он, преподаватель, должен будет заплатить тебе, студенту, из собственного кармана.
Если сорриться с преподавателем ну никак нельзя (хотя мне трудно это представить) — всегда можно усложнить программу, наворотив кучу (без-)полезных фич.
G>Вообще-то я затянул с темой, поэтому уже не до интересов.
Быстрее всего ты сможешь реализовать именно то, что тебе действительно интересно.