Guided Script Editor

Leimgruber, Stefan and Stojkovic, Slobodan (2013) Guided Script Editor. Student Research Project thesis, HSR Hochschule für Technik Rapperswil.

[img]
Preview
Text
GuidedScriptEditor.pdf - Supplemental Material

Download (15MB) | Preview

Abstract

Ausgangslage Eaton Automation ist der Hersteller eines grafischen Programmiersystems namens Galileo, welches in der Automationsbranche dazu eingesetzt wird, um interaktive Benutzeroberflächen zu entwickeln. Diese Benutzeroberflächen beinhalten verschiedene grafische Komponenten wie Knöpfe, Listen, Fehlerlisten, Rezepteditor und einiges mehr. Galileo bietet zudem eine einfache Script-Sprache, mit welcher Benutzer Automations-Abläufe selber programmieren können. Dazu soll nun ein moderner Editor im Sinne einer integrierten Entwicklungsumgebung realisiert werden, welcher den Benutzer bei der Programmierung der Automation-Scripts interaktiv unterstützt. Aufgabenstellung Die Aufgabe teilt sich grundsätzlich in zwei Teile: Als erster Teil gilt es, die aktuelle Script-Sprache zu analysieren und Vorschläge zur Vereinfachung und Vereinheitlichung der Funktionsaufrufe in dem Programmiermodell zu unterbreiten. Im zweiten Teil soll schliesslich der definierte Sprachumfang der Script-Sprache für den Editor implementiert werden. Hierbei soll auf Erweiterbarkeit geachtet werden, insbesondere dafür, dass Eaton die Sprache in Zukunft erweitern oder ändern kann. Vorgehen In diesem Projekt wurde zuerst der Sprachumfang definiert und die Grammatik der Script-Sprache formalisiert. Danach wurden verschiedene Verarbeitungsschritte eines Compilers umgesetzt: Mit dem Lexer wird der Source-Text in einen Symbol-Strom zerlegt. Diese Information dient dem Syntax-Highlighting im Editor. Danach wird mit dem Parser der Symbol-Strom in einen abstrakten Syntax- Baum abgebildet und währenddessen die syntaktische Korrektheit des Scripts überprüft. Zuletzt folgt der semantische Checker, welcher die semantischen Regeln auf dem Syntax-Baum überprüft. Ergebnisse Die Lösung wurde im Visual Studio 2010 mit C# und dem .NET Framework 4.5 entwickelt. Die gesamte Syntax der Sprache wurde umgesetzt, wobei die spezifischen Funktionsdefinitionen jedoch konfigurierbar sind. Das Resultat ist gelungen: Es ist ein voll funktionsfähiger Programmier-Editor, der Eaton Scripts mit dem gesamten Komfort von Auto-Completion, Syntax-Highlighting sowie automatischer Markierung der Syntax- und Semantik-Fehler unterstützt.

Item Type: Thesis (Student Research Project)
Subjects: Area of Application > Business oriented
Area of Application > Development Tools
Technologies > Programming Languages > C#
Technologies > Frameworks and Libraries > .NET
Divisions: Bachelor of Science FHO in Informatik > Student Research Project
Creators:
CreatorsEmail
Leimgruber, StefanUNSPECIFIED
Stojkovic, SlobodanUNSPECIFIED
Contributors:
ContributionNameEmail
Thesis advisorBläser, LucUNSPECIFIED
Depositing User: HSR Deposit User
Date Deposited: 23 Apr 2014 13:44
Last Modified: 23 Apr 2014 13:44
URI: http://eprints.hsr.ch/id/eprint/347

Actions (login required)

View Item View Item