A JavaScript Mode for Yi

dc.contributor.authorDogan, Deniz
dc.contributor.departmentChalmers tekniska högskola / Institutionen för data- och informationsteknik (Chalmers)sv
dc.contributor.departmentChalmers University of Technology / Department of Computer Science and Engineering (Chalmers)en
dc.date.accessioned2019-07-03T12:17:30Z
dc.date.available2019-07-03T12:17:30Z
dc.date.issued2009
dc.description.abstractYi is a text editor written in the lazy functional programming language Haskell, which makes it possible to define precise editing modes using an abstract syntax tree provided online using the lazy and incremental parser library in Yi. We have developed a JavaScript mode for this editor using this parser library to accurately point out possible errors in the source code. The mode accurately highlights syntactical errors as the user types and provides a verifier to check the semantics of the source code. It supports most of the syntax from JavaScript 1.8 and can readily be extended with more functionality. The mode can also be used as a starting point for future developers of C-like modes for Yi. Writing a responsive parser for Yi proved non-trivial, because of the trade-off between parser performance and accuracy. This report describes how to write a mode for Yi and the different problems encountered during the working process of the JavaScript mode. It also describes in what ways the problems were solved. Sammanfattning Yi är en textredigerare skriven i det lata funktionella programspråket Haskell, som gör det möjligt att definiera noggranna redigeringslägen med hjälp av ett abstrakt syntaxträd som tillhandahålls av det lata och inkrementella parsningsbiblioteket i Yi. Vi har utvecklat ett JavaScript-läge till denna redigerare med hjälp av detta parsningsbibliotek för att exakt utpeka möjliga fel i källkoden. Läget markerar syntaktiska fel medan användaren skriver och tillhandahåller en verifierare för att kontrollera semantiken i källkoden. Det stödjer större delen av syntaxen i JavaScript 1.8 och kan enkelt utökas med mer funktionalitet. Läget kan även användas som en utgångspunkt för framtida utvecklare av C-lika lägen till Yi. Det visade sig att det inte är trivialt att skriva en parser till Yi p.g.a. avvägningen mellan prestanda och noggrannhet. Denna rapport beskriver hur lägen till Yi skrivs och de olika problemen vi stötte på under utvecklingen av JavaScript-läget. Den beskriver även hur vi löste problemen.
dc.identifier.urihttps://hdl.handle.net/20.500.12380/112284
dc.language.isoeng
dc.setspec.uppsokTechnology
dc.subjectProgramvaruteknik
dc.subjectSoftware Engineering
dc.titleA JavaScript Mode for Yi
dc.type.degreeExamensarbete för masterexamensv
dc.type.degreeMaster Thesisen
dc.type.uppsokH
Ladda ner
Original bundle
Visar 1 - 1 av 1
Hämtar...
Bild (thumbnail)
Namn:
112284.pdf
Storlek:
638.08 KB
Format:
Adobe Portable Document Format
Beskrivning:
Fulltext