Flepp, Jann M. (2024) HSL Interpreter Rewrite. Other thesis, OST Ostschweizer Fachhochschule.
Full text not available from this repository.Abstract
Hamilton Bonaduz AG is a leading provider of laboratory automation solutions, including liquid handling robots. Customers can program these robots through a domain-specific language called HSL (Hamilton Standard Language). The interpreter for this language is getting increasingly difficult to maintain and extend because it has continuously evolved over the years and is based on out-of-fashion technologies like Lex & Yacc. This thesis presents an architecture and prototype for a new HSL interpreter that can be used as a foundation for a complete rewrite of the existing interpreter.
The new interpreter is written in C# and leverages the ANTLR parser generator in combination with a custom AST (Abstract Syntax Tree) transformer. A recursive-descent parsing approach has been evaluated and detailed as an alternative. Preprocessor directives are parsed as part of the grammar and evaluated on the AST instead of in a dedicated preprocessor.
Replicating the existing interpreter's COM interface has been a critical requirement for the new design. This thesis suggests reusing the existing COM definitions by generating .NET interop assemblies. The prototype demonstrates the feasibility of this approach.
The interpreter can be extended with new features and instrument bindings through plugins. Based on .NET assemblies, this plugin system allows to extend HSL built-in functions without modifying the interpreter's source code.
Item Type: | Thesis (Other) |
---|---|
Subjects: | Metatags > IFS (Institute for Software) |
Divisions: | Bachelor of Science FHO in Informatik > Bachelor Thesis |
Depositing User: | OST Deposit User |
Contributors: | Contribution Name Email Thesis advisor Kramer, Philipp UNSPECIFIED Expert Marrocco, Christian UNSPECIFIED |
Date Deposited: | 04 Oct 2024 05:48 |
Last Modified: | 04 Oct 2024 05:48 |
URI: | https://eprints.ost.ch/id/eprint/1216 |