A JavaScript Mode for Yi

Examensarbete för masterexamen

Please use this identifier to cite or link to this item: https://hdl.handle.net/20.500.12380/112284
Download file(s):
File Description SizeFormat 
112284.pdfFulltext638.08 kBAdobe PDFView/Open
Full metadata record
DC FieldValueLanguage
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.identifier.urihttps://hdl.handle.net/20.500.12380/112284-
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.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
Collection:Examensarbeten för masterexamen // Master Theses



Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.