Как стать автором
Обновить

Комментарии 18

Ну написано же: из песочницы и появились. =)
Но сама история довольно странная, если не сказать большего. Думал, что просто естественным путём пришли из теории распознавания грамматик.
Странно то, что в статье вообще не упоминается Хомски и его иерархия формальных грамматик. Ноги то оттуда ростут. А именно иерархия Хомского была опубликованна в 1956 году. Так что возможно и не на работах Клини Томпсон делал свою реализацию конечного автомата.
В этой работе Хомского не было упоминания о регулярных выражениях. Хомский просто ввел способ описания синтаксической структуры предложений английского языка (порождающие или генеративные грамматики). В то время такие работы были популярны, одна из наиболее известных похожих работ — «Математическое исследование структуры предложения» Ламбека, опубликованная в 1958 году. Вообще, эту работу Хомского очень интересно почитать, там видно, насколько отличен язык научного изложения теории формальных грамматик того времени и сегодняшний язык. Вопросы поднимаются вроде бы одни и те же, а объекты изучения различные. В те времена еще были иллюзии, что естественный язык можно задать относительно небольшой формальной грамматикой, надо только придумать правильный принцип. Вот Хомский и предложил один из таких принципов. Уже потом порождающие грамматики стали использовать для анализа формальный языков, в том числе и для языков программирования.
А мне эта история показалась очень поучительной. В первую очередь как прекрасный пример того, как знания из одной области находят свое практическое применение в совершенно другой. А то в последнее время очень часто (в том числе и на хабре) можно встретить вопросы, мол «а зачем это все (учить|знать) программисту?»
Хороший пример, демонстрирующий взаимосвязь двух «не взаимосвязывающихся» вещей :)
Схемы сетей напомнили программирование в LabVIEW.
Друзья, буду благодарен, если Вы укажите мне на мою ошибку, так как сам я её найти, похоже, не в состоянии…
О! Спасибо, познавательно.

Кто бы еще рассказал, откуда растут ноги у дурацкого синтаксиса диапазонов {1,3} как «от 1 до 3» вместо «1 или 3» и отсутствия выражения {1-3} как того самого «от 1 до 3»?
Фридл не знает.
Может быть просто запись {1,} показалась красивее, чем {1-}?
Ну, вааще-то {1,} красиво изображается как + :)

Просто меня это каждый раз бесит, когда сталкиваюсь.
ну почему /#(?:[0-9A-F]{3}){1,2}/ а не /#[0-9A-F]{3,6}/ ????
Красота, как известно, понятие субъективное :)
Я правильно понимаю, что первый регэксп матчит либо 3, либо 6 символов, а второй — от 3 до 6?
Именно так.

Но хотелось бы, чтобы /#[0-9A-F]{3,6}/ матчил 3 или 6, а для диапазона было бы /#[0-9A-F]{3-6}/.

Мое OCD негодует :)
Сам Клини произносил свою фамилию как «Клейни», ошибочная транслитерация «Клини» утвердилась в Советском Союзе в связи с изданием переводов его книг именно под такой фамилией.
</зануда-mode>

Неправильное произношение его фамилии обыгрывается также в поговорке «Kleeneliness is next to Gödeliness», подражающей классической поговорке «Cleanliness is next to godliness».
Сам Литлвуд в «Математической смеси» пишет об этом так:
«Я прочел в гранках книги Харди о Раманужане: „кто-то сказал, что каждое положительное целое число было одним из его личных друзей“. Моей реакцией на это место было: „Интересно, кто это сказал; я бы хотел, чтобы это был я“. В верстке я уже прочитал (так, как это теперь напечатано) „Литлвуд сказал...“
У всех Томпсонов судьба автоматы придумывать?
Спасибо автору, сегодня пойду семинар в институте проводить, как раз по регуляркам. Расскажу часть Вашей статьи, если Вы не против.
Я совсем не против, наоборот, — за! Вообще, эту историю я включил в свой учебник по математической лингвистике, вышедший в 2010 году: В.А. Лапшин, «Лекции по математической лингвистике». Я на протяжении семи лет читал одноименный курс в РГГУ, в Институте Лингвистики, на кафедре Интеллектуальных систем в гуманитарной сфере. Учебник был для этого курса. В общем, не для рекламы, а пользы ради. Там стандартное изложение по регулярным языкам.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации