1 / 17

ChunText

ChunText. By Chun ping Wang. Why?. This project was done for fun. This project is to demonstrate the power of Eclipse. What is it?. A plugin for Eclipse. distributable A compiler. LALR(1) parsing. History.

nero-ryan
Download Presentation

ChunText

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ChunText By Chun ping Wang.

  2. Why? • This project was done for fun. • This project is to demonstrate the power of Eclipse.

  3. What is it? • A plugin for Eclipse. • distributable • A compiler. • LALR(1) parsing.

  4. History. June: Finish the rough compiler.July: Added For loop and concatenation (for String) in the language. Modify assignment operator. August: Finish the editor to be launch for eclipse. September: nothing. October: finish inputting plugin. November: made changes to the plugin to allow distribution, fixed lot of bugs.

  5. .c– language. Features: Simple math instructions. Complex branch instructions. While If for String, integer and real type. Complex comparison.

  6. .c– language. Lacks: Functions or subprogram. Error checking such as divide by zero. Complex math instructions. Type casting. No switch (case) statement.

  7. .c– language. 1. “=“ is := in c--. 2. All programs have this format. Program X; Declarations. begin; End; 3. All arithmetic expression are put in parenthesis.

  8. GUI DESIGN. (toolbar) a. b. c. Decrypt icons.

  9. GUI DESIGN (Menu) ChunText (compiling tools). Cs 201 to Cs 312. (Sample tools). Misc Math (Education tools). Security (encryption and decryption of your code). Sample GUI (bunch of random graphic programs).

  10. GUI DESIGN (views). • Console view • Exit button. • Clear button. • error message box view. • Help view.

  11. GUI DESIGN (picture).

  12. GUI DESGIN (picture).

  13. Tools used • JLex – lexical generator. • YACC – parsing table. • Font Chooser for com.Borland.

  14. Technological background. • Eclipse – an IDE. • JBuilder – an IDE. • Java JRE 1.5.0

  15. Coding design (Compiler). • Vector for Parser Table • Back patching with Stacks. • BinarySearchTree for Symbol Table.

  16. Coding design (GUI). • Org.eclipse.ui.IWorkbenchWindowActionDelegate for menu • Org.eclipse.ui.part.viewpart for views. • Java.awt for the awt console.

  17. Conclusion. • Project started as an extension to an existing project. • Compiles only .c– code.

More Related