Посоветуйте что-нибудь хорошее почитать по лексическом анализе входных последовательностей символов.
Конечная цель - писать подсветки кода на JS, разбор лямбда-выражений, live-editor(e.g.:
ace.c9.io/#nav=about ) и т.д.
Обучение подойдет в принципе на любом ЯП.