HPL is a minimalistic specification language tailored for behavioural properties of message-based systems. Although it might be useful in other contexts, it was designed with the message-passing system of the Robot Operating System in mind. Since properties are message-based, the same language can be used to specify both individual nodes and full applications.
HPL was developed to be an integral part of the HAROS framework. HAROS is capable of defining and extracting architectural models of ROS systems (the ROS Computation Graph). Such models are, inherently, mostly concerned with the structure of the analysed system. This language is meant to annotate the architectural models, complementing them with behavioural information.
This repository contains a Python package, and the respective source code, to parse HPL specifications and convert them into Abstract Syntax Trees (AST).
Check the documentation.
To install this package, make sure that you have Python 2.7 or greater. Simply run the command:
pip install hpl-specs
Please use the issue tracker.
See CITING.
See CONTRIBUTING.
Until March 2021, this work was financed by the ERDF – European Regional Development Fund through the Operational Programme for Competitiveness and Internationalisation - COMPETE 2020 Programme and by National Funds through the Portuguese funding agency, FCT - Fundação para a Ciência e a Tecnologia within project PTDC/CCI-INF/29583/2017 (POCI-01-0145-FEDER-029583).