About: Ragel     Goto   Sponge   NotDistinct   Permalink

An Entity of Type : yago:Software106566077, within Data Space : dbpedia.demo.openlinksw.com associated with source document(s)
QRcode icon
http://dbpedia.demo.openlinksw.com/c/8M7L22Emph

Ragel is a finite-state machine compiler and a parser generator. Initially Ragel supported output for C, C++ and Assembly source code, and was expanded to support several other languages including Objective C, D, Go, Ruby, and Java. Additional language support is also in development. It supports the generation of table or control flow driven state machines from regular expressions and/or state charts and can also build lexical analysers via the longest-match method. Ragel specifically targets text parsing and input validation.

AttributesValues
rdf:type
rdfs:label
  • Ragel (de)
  • Ragel (fr)
  • Ragel (en)
  • Ragel (ru)
rdfs:comment
  • Ragel est un compilateur d'automates finis générant ses sorties en code source dans les langages suivants : C, C++, Objective-C, Java, Go et Ruby. Il supporte la génération de machines à états basées sur des tableaux ou sur des structures de contrôle. Ragel permet également de visualiser les machines générées sous forme de graphe par l'utilisation de Graphviz. (fr)
  • Ragel is a finite-state machine compiler and a parser generator. Initially Ragel supported output for C, C++ and Assembly source code, and was expanded to support several other languages including Objective C, D, Go, Ruby, and Java. Additional language support is also in development. It supports the generation of table or control flow driven state machines from regular expressions and/or state charts and can also build lexical analysers via the longest-match method. Ragel specifically targets text parsing and input validation. (en)
  • Ragel — компилятор конечных автоматов, производящий исходный код на C, C++, C#, Objective-C, D, Java, OCaml, Go и Ruby. (ru)
  • Ragel ist ein von Adrian D. Thurston entwickelter State-Machine Compiler. Er übersetzt Definitionen von Finite-State-Machines (FSM, auch Endlicher Automat genannt) in ausführbaren Programmcode. Dazu können Nichtdeterministische endliche Automaten in der Ragel-eigenen Sprache, deren Operatoren vor allem aus standardisierten regulären Ausdrücken bestehen (ähnlich Konkatenation oder auch Kleenesche und positive Hülle), beschrieben werden. Diese Definitionen werden in den Code der Zielsprache eingebettet. Der Compiler wandelt diese zunächst in deterministische endliche Automaten um, minimiert sie und übersetzt sie anschließend in die Zielsprache. (de)
foaf:name
  • Ragel (en)
foaf:homepage
name
  • Ragel (en)
foaf:depiction
  • http://commons.wikimedia.org/wiki/Special:FilePath/Visualisierung_Ragel.png
dcterms:subject
Wikipage page ID
Wikipage revision ID
Link from a Wikipage to another Wikipage
Link from a Wikipage to an external page
sameAs
dbp:wikiPageUsesTemplate
thumbnail
developer
  • Adrian Thurston (en)
genre
latest release date
latest release version
license
  • "Ragel 6 remains under GPL v2 [generated code] covered by the MIT ". (en)
  • Ragel 7: MIT License (en)
operating system
programming language
website
has abstract
  • Ragel ist ein von Adrian D. Thurston entwickelter State-Machine Compiler. Er übersetzt Definitionen von Finite-State-Machines (FSM, auch Endlicher Automat genannt) in ausführbaren Programmcode. Dazu können Nichtdeterministische endliche Automaten in der Ragel-eigenen Sprache, deren Operatoren vor allem aus standardisierten regulären Ausdrücken bestehen (ähnlich Konkatenation oder auch Kleenesche und positive Hülle), beschrieben werden. Diese Definitionen werden in den Code der Zielsprache eingebettet. Der Compiler wandelt diese zunächst in deterministische endliche Automaten um, minimiert sie und übersetzt sie anschließend in die Zielsprache. Ragel unterstützt eine Vielzahl von Zielsprachen: C, C++, Assemblersprache, D, Go, Java, Ruby und C#. Der Compiler bietet darüber hinaus verschiedene Optionen um den erzeugten Code zu beeinflussen. Zur Umsetzungen der Übergangstabelle kann z. B. ein Array (table-driven) verwendet werden oder die Zustände werden direkt in Programm code übersetzt (control flow driven). Das Herausstellungsmerkmal Ragels ist, dass es erlaubt Code in der Zielsprache mit Zustandsübergängen zu verknüpfen. Dieser wird vom erzeugten Code automatisch ausgeführt, sobald der entsprechende Übergang stattfindet. Ragel bietet dafür eine Vielzahl von Operatoren, die es ermöglichen Code an verschiedene Übergänge anzuhängen. Dies ermöglicht es neben der reinen Verifizierung bzw. Falsifizierung auch zusätzliche Aufgaben (z. B. das Umwandeln von Zahlen im Dezimalformat in eine Binärform) auszuführen. Ragel ermöglicht zudem eine Visualisierung der Übergangstabelle durch Graphviz: (de)
  • Ragel est un compilateur d'automates finis générant ses sorties en code source dans les langages suivants : C, C++, Objective-C, Java, Go et Ruby. Il supporte la génération de machines à états basées sur des tableaux ou sur des structures de contrôle. Ragel permet également de visualiser les machines générées sous forme de graphe par l'utilisation de Graphviz. (fr)
  • Ragel is a finite-state machine compiler and a parser generator. Initially Ragel supported output for C, C++ and Assembly source code, and was expanded to support several other languages including Objective C, D, Go, Ruby, and Java. Additional language support is also in development. It supports the generation of table or control flow driven state machines from regular expressions and/or state charts and can also build lexical analysers via the longest-match method. Ragel specifically targets text parsing and input validation. (en)
  • Ragel — компилятор конечных автоматов, производящий исходный код на C, C++, C#, Objective-C, D, Java, OCaml, Go и Ruby. (ru)
latest preview date
latest preview version
Faceted Search & Find service v1.17_git147 as of Sep 06 2024


Alternative Linked Data Documents: ODE     Content Formats:   [cxml] [csv]     RDF   [text] [turtle] [ld+json] [rdf+json] [rdf+xml]     ODATA   [atom+xml] [odata+json]     Microdata   [microdata+json] [html]    About   
This material is Open Knowledge   W3C Semantic Web Technology [RDF Data] Valid XHTML + RDFa
OpenLink Virtuoso version 08.03.3332 as of Dec 5 2024, on Linux (x86_64-generic-linux-glibc212), Single-Server Edition (378 GB total memory, 60 GB memory in use)
Data on this page belongs to its respective rights holders.
Virtuoso Faceted Browser Copyright © 2009-2025 OpenLink Software