{"id":{"repo_id":"rowan","oai_identifier":"oai:rdw.rowan.edu:etd-2506"},"canonical_url":"https://search.dev.ndltd.org/etd/rowan/oai:rdw.rowan.edu:etd-2506","repository":{"repo_id":"rowan","name":"Rowan University","base_url":"https://rdw.rowan.edu/do/oai/"},"display":{"title":"A technique for converting NFA's and DFA's to regular expressions in Lex","abstract":"<p>In the design and creation of compilers, a compiler-writer is called upon to make assumptions and declarations about how their language's syntax performs and behaves. Lex is a software tool used to create grammar rules. A flat file is read as input to lex, and the corresponding C code is output. However, in order to properly format the flat file, the compiler-writer creates the lex expression either on a \"hunch,\" or based on some given set of criteria. Among these criteria are: case sensitivity, the introduction of special characters and symbols, the handling of a space character, and the handling of escape sequence characters, namely the tab, new-line, and carriage return symbols. Lex can create the code to perform such verification, but it is up to the compiler-writer to provide lex with the rules. Sometimes the rules can be seen more easily diagrammatically through an NFA or a DFA. Once the FA is created, it is just a matter of extracting the rules from the diagram. The following technique can be employed to create lex rules from the Finite Automata.</p>","abstract_html":"&lt;p&gt;In the design and creation of compilers, a compiler-writer is called upon to make assumptions and declarations about how their language&#x27;s syntax performs and behaves. Lex is a software tool used to create grammar rules. A flat file is read as input to lex, and the corresponding C code is output. However, in order to properly format the flat file, the compiler-writer creates the lex expression either on a &quot;hunch,&quot; or based on some given set of criteria. Among these criteria are: case sensitivity, the introduction of special characters and symbols, the handling of a space character, and the handling of escape sequence characters, namely the tab, new-line, and carriage return symbols. Lex can create the code to perform such verification, but it is up to the compiler-writer to provide lex with the rules. Sometimes the rules can be seen more easily diagrammatically through an NFA or a DFA. Once the FA is created, it is just a matter of extracting the rules from the diagram. The following technique can be employed to create lex rules from the Finite Automata.&lt;/p&gt;","abstract_has_math":false,"creators":["Safko, Gregory"],"institution":null,"degree_name":"M.A. in Higher Education","degree_level":"Thesis","degree_discipline":"Educational Services and Leadership","degree_department":null,"school":null,"contributors":["Bergmann, Seth"],"advisors":[],"committee_chairs":[],"committee_members":[],"year":2002,"date_issued":"2002-07-22T07:00:00Z","date_published":"2002-07-22T07:00:00Z","updated_at":"2026-07-24T04:14:32Z","subjects":["Compiling (Electronic computers); Computer programming","Higher Education"],"languages":[],"rights":[],"rights_urls":[],"identifier_entries":[]},"links":{"outbound_url":"https://rdw.rowan.edu/etd/1506","outbound_label":"Repository record","outbound_source":"dc:identifier"},"metadata_groups":[{"id":"people","label":"People","entries":[{"key":"dc:contributor","label":"Contributor","values":["Bergmann, Seth"]},{"key":"dc:creator","label":"Author","values":["Safko, Gregory"]}]},{"id":"academic_context","label":"Academic Context","entries":[{"key":"dc:date.available","label":"Dc Date Available","values":["2016-05-18T07:00:00Z"]},{"key":"thesis:degree_discipline","label":"Discipline","values":["Educational Services and Leadership"]},{"key":"thesis:degree_level","label":"Degree Level","values":["Thesis"]},{"key":"thesis:degree_name","label":"Degree Name","values":["M.A. in Higher Education"]}]},{"id":"subjects_keywords","label":"Subjects and Keywords","entries":[{"key":"dc:subject","label":"Dc Subject","values":["Compiling (Electronic computers); Computer programming","Higher Education"]}]},{"id":"identifiers","label":"Identifiers","entries":[{"key":"dc:identifier","label":"Identifier","values":["https://rdw.rowan.edu/etd/1506"]}]},{"id":"additional","label":"Additional Metadata","entries":[{"key":"dc:description.abstract","label":"Abstract","values":["<p>In the design and creation of compilers, a compiler-writer is called upon to make assumptions and declarations about how their language's syntax performs and behaves. Lex is a software tool used to create grammar rules. A flat file is read as input to lex, and the corresponding C code is output. However, in order to properly format the flat file, the compiler-writer creates the lex expression either on a \"hunch,\" or based on some given set of criteria. Among these criteria are: case sensitivity, the introduction of special characters and symbols, the handling of a space character, and the handling of escape sequence characters, namely the tab, new-line, and carriage return symbols. Lex can create the code to perform such verification, but it is up to the compiler-writer to provide lex with the rules. Sometimes the rules can be seen more easily diagrammatically through an NFA or a DFA. Once the FA is created, it is just a matter of extracting the rules from the diagram. The following technique can be employed to create lex rules from the Finite Automata.</p>"]},{"key":"dc:title","label":"Title","values":["A technique for converting NFA's and DFA's to regular expressions in Lex"]}]}],"canonical_facts":{"dc:contributor":["Bergmann, Seth"],"dc:creator":["Safko, Gregory"],"dc:date.available":["2016-05-18T07:00:00Z"],"dc:description.abstract":["<p>In the design and creation of compilers, a compiler-writer is called upon to make assumptions and declarations about how their language's syntax performs and behaves. Lex is a software tool used to create grammar rules. A flat file is read as input to lex, and the corresponding C code is output. However, in order to properly format the flat file, the compiler-writer creates the lex expression either on a \"hunch,\" or based on some given set of criteria. Among these criteria are: case sensitivity, the introduction of special characters and symbols, the handling of a space character, and the handling of escape sequence characters, namely the tab, new-line, and carriage return symbols. Lex can create the code to perform such verification, but it is up to the compiler-writer to provide lex with the rules. Sometimes the rules can be seen more easily diagrammatically through an NFA or a DFA. Once the FA is created, it is just a matter of extracting the rules from the diagram. The following technique can be employed to create lex rules from the Finite Automata.</p>"],"dc:identifier":["https://rdw.rowan.edu/etd/1506"],"dc:subject":["Compiling (Electronic computers); Computer programming","Higher Education"],"dc:title":["A technique for converting NFA's and DFA's to regular expressions in Lex"],"thesis:degree_discipline":["Educational Services and Leadership"],"thesis:degree_level":["Thesis"],"thesis:degree_name":["M.A. in Higher Education"]},"updated_at":"2026-07-24T04:14:32Z"}