UConn CSE 4100 - Semester Project (3 pages)

Previewing page 1 of 3 page document View the full content.
View Full Document

Semester Project



Previewing page 1 of actual document.

View the full content.
View Full Document
View Full Document

Semester Project

135 views


Pages:
3
School:
University Of Connecticut
Course:
Cse 4100 - Programming Language Translation
Unformatted text preview:

Semester Project Part 1 CSE4100 Fall 2011 Due Dates October 5 12 and 17 2011 The project for the Fall 2011 Semester will focus on the design and implementation of a Latex subset for text processing I recommend that you experiment and learn about Latex using the MikTex http miktex org software package The semester project will be subdivided into three parts 1 Part 1 Three tasks a Design and implement a lexical analyzer using the flex generator on the Linux boxes that is able to identify all lexical tokens for the latex subset b Design and develop a context free grammar CFG for a subset of Latex c Calculate FIRST and FOLLOW for a grammar provided after deliverable part 1b 2 Part 2 Two tasks a Analyze a provided context free grammar in Bison that has a number of shift reduce and reduce reduce errors and rewrite the grammar into a form that removes these errors b Design implement and test the common CFG which we will provide to you after you turn in part 2a using Flex and Bison 3 Part 3 Three tasks a Design implement and test a syntax directed translator based on Part 2 that automatically generates formatted ASCII text and or HTML XML from an input Latex source file for basic and advanced text processing b Design and implemented very advanced capabilities for nested blocks full blown verbatim and type and error checking c Provide documentation in Latex that is run through both MikTex and your Part 3 solution The three deliverables of Project Part 1 are due as follows Due Wednesday October 5 2011 at Start of Class Design and implement a lexical analyzer for Latex that recognizes all of its tokens To assist you in this process utilize the file latex all txt that enumerates the Latex subset that we will be utilizing for the course this semester You are to use the flex generator on the unix boxes and be able to recognize all of the Latex tokens As output from your lexical analyzer simply print out ALL of the tokens one per line Bring a hard copy of your lexical specification NOT THE GENERATED CODE to class and submit an electronic copy to me and the TA 1 Eugene Sanzi cse4100projects gmail com by email by 2 00pm on the due date The TA meed to schedule a demonstration of your code with test cases To assit you in this process the web site contains the following files An Overview of Latex Sample Latex Source Files A working Flex spcification The generated Lexical Analyzer Document for latex l and Output latex all txt latex in txt or projp1 tex latex l lex yy c doc tex output txt Due Wednesday October 12 2011 at Start of Class Design a CFG for the project that allows Latex programs e g text to be formatted to be recognized This will provide you with important language design experience Bring a hard copy of your context free grammmar to class and submit an electronic copy to me and the TA Eugene Sanzi cse4100projects gmail com by 2 00pm on the due date Due Monday October 17 2011 at Start of Class Calculate FIRST and FOLLOW for the Common Grammar that will be posted on the web page for all of the non terminals in the grammar Show your work on FOLLOW so that we know you are doing the calculation correctly The Common Grammar will be posted on the web site on Thursday October 12 2011 by 6 00pm Bring a hard copy of your FIRST and FOLLOW calculations to class and submit an electronic copy to me and the TA Eugene Sanzi cse4100projects gmail com by 2 00pm on the due date To provide a background for the semester project a detailed overview of the Latex subset that you ll be implementing along with a sample latex input file has been posted on the class web page In terms of building and compiling with latex the process is as follows on a Linux machine flex latex l gcc lex yy c lfl a out doc tex Use control C to exit To get you started on the second deliverable a partial latex context free gramms is provided below One other extension to Latex is the addition of the document keyword The document keyword is used with begin to delimit the start and end of the Latex document This fact is illustrated in the grammar segment In the grammar double quoted entries represent terminals or tokens while all other entries are non terminals latex statement start doc main body start doc begin end doc end main body main body main option main option main option text option latex options text option text option word latex options backs options begin end opts section options etc begin end opts begin options begin options begin end options end begin block WHAT ARE THE POSSIBILITIES begin end cmds center table options position epsilon position h section options section text option subsection text option end doc document document word backs options curlyb options begin block YOU NEED TO COMPLETE THIS beg end cmds beg end cmds t ETC TO BE COMPLETED BY YOU verbatim end options table options etc b


View Full Document

Access the best Study Guides, Lecture Notes and Practice Exams

Loading Unlocking...
Login

Join to view Semester Project and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Semester Project and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?