1 / 13

MASC

MASC. A browser manipulation language by Michael M asullo, Christos A ngelopoulos, Vaibhav S aharan, and Kristina C hodorow. MASC overview and goals Tutorial Implementing MASC Lessons Learned. Outline. MASC Overview and goals. What is MASC and Why make it.

Download Presentation

MASC

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. MASC A browser manipulation language by Michael Masullo, Christos Angelopoulos, Vaibhav Saharan, and Kristina Chodorow

  2. MASC overview and goals • Tutorial • Implementing MASC • Lessons Learned Outline

  3. MASC Overview and goals What is MASC and Why make it

  4. Browser-based webpage manipulation • Uses the MASC Browser, a fully functional graphical web browser • Contains the MASC Shell, where commands are given and results displayed What is MASC?

  5. Great for organizing information • Simple, clean web browser • Easy access to shell Why make MASC?

  6. Tutorial Putting on the MASC

  7. (: display user's bookmarks : add the current page as a bookmark : redisplay list :) bkmrks_file = "/home/"+USER+"/.bookmarks" shell(echo "Old bookmark list:") (: create bookmarks file if it doesn't exist :) touch bkmrks_file shell(cat bkmrks_file | sort) shell(echo "------------") echo -n "Current page: " :/ (: append current page's address to the list :) echo :/ >> bkmrks_file (: redisplay :) echo "New bookmark list:" cat bkmrks_file | sort echo "------------" Example 1: Bookmark file

  8. array goodLinks[5] j=0 while (j<5){ goodLinks[j]="" j=j+1 } j=0 newSite="www.televisionwithoutpity.com" while(j<5){ if(goodLinks[j]==¡¡){ goodLinks[j]=newSite j=0 break else { if(goodLinks[j]==newSite) { echo "Already Entered" j=0 break else {j=j+1} }}} Example 2: “Bookmark” Array

  9. Implementation Making the language: MASC

  10. ANTLR • Eclipse (with plug-ins) • Subversion • Lobo Tools Used

  11. Webpage Browser .html .java Masc .java MascAntlrLexer grammar .java MascAntlrParser .g .java walker MascAntlrWalker .g .java Masc Backend Files .java Language Diagram

  12. Lessons Learned What to do and what to be wary of when designing a compiler

  13. Don’t bother programming anything in or for Windows. It’s not worth it. • Making a Firefox plug-in for the MASC shell would have been easy…if we wrote everything in JavaScript. • A lot of things are funnier at 3 in the morning. Lessons Learned

More Related