Occam to Go translator

Publikation: Bidrag til bog/antologi/rapportKonferencebidrag i proceedingsForskningfagfællebedømt

Standard

Occam to Go translator. / Brolos, Matilde; Johnsen, Carl Johannes; Skovhede, Kenneth.

Proceedings - 2021 Concurrent Processes Architectures and Embedded Systems Conference, COPA 2021. IEEE, 2021.

Publikation: Bidrag til bog/antologi/rapportKonferencebidrag i proceedingsForskningfagfællebedømt

Harvard

Brolos, M, Johnsen, CJ & Skovhede, K 2021, Occam to Go translator. i Proceedings - 2021 Concurrent Processes Architectures and Embedded Systems Conference, COPA 2021. IEEE, 2021 Concurrent Processes Architectures and Embedded Systems Conference, COPA 2021, Virtual, San Diego, USA, 25/04/2021. https://doi.org/10.1109/COPA51043.2021.9541431

APA

Brolos, M., Johnsen, C. J., & Skovhede, K. (2021). Occam to Go translator. I Proceedings - 2021 Concurrent Processes Architectures and Embedded Systems Conference, COPA 2021 IEEE. https://doi.org/10.1109/COPA51043.2021.9541431

Vancouver

Brolos M, Johnsen CJ, Skovhede K. Occam to Go translator. I Proceedings - 2021 Concurrent Processes Architectures and Embedded Systems Conference, COPA 2021. IEEE. 2021 https://doi.org/10.1109/COPA51043.2021.9541431

Author

Brolos, Matilde ; Johnsen, Carl Johannes ; Skovhede, Kenneth. / Occam to Go translator. Proceedings - 2021 Concurrent Processes Architectures and Embedded Systems Conference, COPA 2021. IEEE, 2021.

Bibtex

@inproceedings{02434b18e4994268ba28a59df7a95963,
title = "Occam to Go translator",
abstract = "Occam is a programming language built on CSP, which for many years has been used for writing safety-critical systems used in space technology and at CERN among others. However, the language has not been developed or maintained for the last 25 years, which makes it difficult to maintain the programs which currently has a code base in Occam. As changing the entire code base for such systems will prove both expensive and time consuming, it is desirable to find an easy and secure way to translate Occam programs into another programming language.This paper lays the foundation of a transpiler from Occam to the newer programming language Go using Haskell. Go is a modern programming language which also implements many of the CSP principles found in Occam, making it a suitable target.The transpiler is implemented for a subset of Occam including only basic functionality, and is successful in translating simple programs from Occam to Go, showing that it is indeed possible to automatically translate Occam programs into Go.",
keywords = "CSP, Go, Occam, transpiler",
author = "Matilde Brolos and Johnsen, {Carl Johannes} and Kenneth Skovhede",
note = "Publisher Copyright: {\textcopyright} 2021 IEEE.; 2021 Concurrent Processes Architectures and Embedded Systems Conference, COPA 2021 ; Conference date: 25-04-2021 Through 28-04-2021",
year = "2021",
doi = "10.1109/COPA51043.2021.9541431",
language = "English",
booktitle = "Proceedings - 2021 Concurrent Processes Architectures and Embedded Systems Conference, COPA 2021",
publisher = "IEEE",

}

RIS

TY - GEN

T1 - Occam to Go translator

AU - Brolos, Matilde

AU - Johnsen, Carl Johannes

AU - Skovhede, Kenneth

N1 - Publisher Copyright: © 2021 IEEE.

PY - 2021

Y1 - 2021

N2 - Occam is a programming language built on CSP, which for many years has been used for writing safety-critical systems used in space technology and at CERN among others. However, the language has not been developed or maintained for the last 25 years, which makes it difficult to maintain the programs which currently has a code base in Occam. As changing the entire code base for such systems will prove both expensive and time consuming, it is desirable to find an easy and secure way to translate Occam programs into another programming language.This paper lays the foundation of a transpiler from Occam to the newer programming language Go using Haskell. Go is a modern programming language which also implements many of the CSP principles found in Occam, making it a suitable target.The transpiler is implemented for a subset of Occam including only basic functionality, and is successful in translating simple programs from Occam to Go, showing that it is indeed possible to automatically translate Occam programs into Go.

AB - Occam is a programming language built on CSP, which for many years has been used for writing safety-critical systems used in space technology and at CERN among others. However, the language has not been developed or maintained for the last 25 years, which makes it difficult to maintain the programs which currently has a code base in Occam. As changing the entire code base for such systems will prove both expensive and time consuming, it is desirable to find an easy and secure way to translate Occam programs into another programming language.This paper lays the foundation of a transpiler from Occam to the newer programming language Go using Haskell. Go is a modern programming language which also implements many of the CSP principles found in Occam, making it a suitable target.The transpiler is implemented for a subset of Occam including only basic functionality, and is successful in translating simple programs from Occam to Go, showing that it is indeed possible to automatically translate Occam programs into Go.

KW - CSP

KW - Go

KW - Occam

KW - transpiler

UR - http://www.scopus.com/inward/record.url?scp=85116550029&partnerID=8YFLogxK

U2 - 10.1109/COPA51043.2021.9541431

DO - 10.1109/COPA51043.2021.9541431

M3 - Article in proceedings

AN - SCOPUS:85116550029

BT - Proceedings - 2021 Concurrent Processes Architectures and Embedded Systems Conference, COPA 2021

PB - IEEE

T2 - 2021 Concurrent Processes Architectures and Embedded Systems Conference, COPA 2021

Y2 - 25 April 2021 through 28 April 2021

ER -

ID: 282096062