Ragel

Поделись знанием:
Перейти к: навигация, поиск
Ragel
Тип

компилятор конечных автоматов

Разработчик

Adrian Thurston[1]

Операционная система

Unix-like, Windows

Последняя версия

6.9 (2014-10-14)

Лицензия

GNU General Public License

Сайт

[www.complang.org/ragel/ plang.org/ragel/]

К:Википедия:Статьи без изображений (тип: не указан)

Ragel — компилятор конечных автоматов, производящий исходный код на C, C++, C#, Objective-C, D, Java, OCaml, Go и Ruby[2].





Особенности

Исходным текстом конечного автомата для Ragel служит расширенный язык регулярных выражений[3] и/или диаграмма состояний конечного автомата. Ragel хорошо подходит для построения лексических анализаторов и спецификации протоколов передачи данных[4].

Ragel позволяет внедрять в любой точке выполнения автомата определяемые пользователем действия. С целью разрешения недетерминизма предусмотрена система приоритетов для операторов регулярного языка.

Ragel поддерживает визуализацию генерируемого автомата с помощью graphviz.

Примеры применения

Зед Шоу[en] использовал Ragel для своего веб-сервера Mongrel при написании высокопроизводительного анализатора пользовательских HTTP-запросов[5].

См. также

Напишите отзыв о статье "Ragel"

Примечания

  1. [www.complang.org/thurston/ Dr. Adrian D. Thurston] at complang.org Last changed: Jul 14, 2013
  2. Adrian D. Thurston. «[www.complang.org/thurston/thurston_CIAA_06_sing_regex.pdf Parsing Computer Languages with an Automaton Compiled from a Single Regular Expression.]» In: 11th International Conference on Implementation and Application of Automata (CIAA 2006), Lecture Notes in Computer Science, volume 4094, p. 285—286, Taipei, Taiwan, August 2006.
  3. Liqun Chen, Chris J. Mitchell, Andrew Martin (2009) Trusted Computing: Second International Conference, Trust 2009 Oxford, UK, April 6-8, 2009, Proceedings. p. 111
  4. В. С. Гуров, М. А. Мазин, А. А. Шалыто [is.ifmo.ru/works/2008/Vestnik/53/23-textual-language-for-automata-based-programming.pdf Текстовый язык автоматного программирования] // Научно-технический вестник СПбГУ ИТМО. — 2008. — Вып. 53. — С. 258-263.
  5. [zedshaw.com/archive/ragel-state-charts/ Ragel State Charts] (en-US). Zed A. Shaw[en]. Проверено 12 марта 2016.

Литература

Ссылки

  • [www.colm.net/open-source/ragel/ m.net/open-source/ragel/] — официальный сайт Ragel

Отрывок, характеризующий Ragel

В том состоянии раскрытости душевной, в котором находилась Наташа, эта молитва сильно подействовала на нее. Она слушала каждое слово о победе Моисея на Амалика, и Гедеона на Мадиама, и Давида на Голиафа, и о разорении Иерусалима твоего и просила бога с той нежностью и размягченностью, которою было переполнено ее сердце; но не понимала хорошенько, о чем она просила бога в этой молитве. Она всей душой участвовала в прошении о духе правом, об укреплении сердца верою, надеждою и о воодушевлении их любовью. Но она не могла молиться о попрании под ноги врагов своих, когда она за несколько минут перед этим только желала иметь их больше, чтобы любить их, молиться за них. Но она тоже не могла сомневаться в правоте читаемой колено преклонной молитвы. Она ощущала в душе своей благоговейный и трепетный ужас перед наказанием, постигшим людей за их грехи, и в особенности за свои грехи, и просила бога о том, чтобы он простил их всех и ее и дал бы им всем и ей спокойствия и счастия в жизни. И ей казалось, что бог слышит ее молитву.


С того дня, как Пьер, уезжая от Ростовых и вспоминая благодарный взгляд Наташи, смотрел на комету, стоявшую на небе, и почувствовал, что для него открылось что то новое, – вечно мучивший его вопрос о тщете и безумности всего земного перестал представляться ему. Этот страшный вопрос: зачем? к чему? – который прежде представлялся ему в середине всякого занятия, теперь заменился для него не другим вопросом и не ответом на прежний вопрос, а представлением ее. Слышал ли он, и сам ли вел ничтожные разговоры, читал ли он, или узнавал про подлость и бессмысленность людскую, он не ужасался, как прежде; не спрашивал себя, из чего хлопочут люди, когда все так кратко и неизвестно, но вспоминал ее в том виде, в котором он видел ее в последний раз, и все сомнения его исчезали, не потому, что она отвечала на вопросы, которые представлялись ему, но потому, что представление о ней переносило его мгновенно в другую, светлую область душевной деятельности, в которой не могло быть правого или виноватого, в область красоты и любви, для которой стоило жить. Какая бы мерзость житейская ни представлялась ему, он говорил себе:
«Ну и пускай такой то обокрал государство и царя, а государство и царь воздают ему почести; а она вчера улыбнулась мне и просила приехать, и я люблю ее, и никто никогда не узнает этого», – думал он.