,
Ian Piumarta
Creative Commons Attribution 4.0 International license
Agent-based and distributed computing systems play an important role in many fields. Programming these systems can be annoying because of the complexity of managing multiple asynchronous processes and state transitions, sometimes hidden inter-dependencies between program elements, and (often) unnecessarily terse, un-intuitive syntax. In this paper we describe the design and implementation of Shica, an experimental language designed for physical computing that is fun to program. Shica unifies state-based, event-based, and distributed programming along with some elements of context-oriented. We informally evaluate Shica’s characteristics including its suitability for deployment on resource-constrained, embedded devices and its contribution to improving the quality of the programming experience by maximizing scope, economy, and elegance of expression.
@InProceedings{shikada_et_al:OASIcs.Programming.2025.10,
author = {Shikada, Hiroto and Piumarta, Ian},
title = {{Shica - Improving the Programming Experience for Agent-Based, Distributed, Physical Computing Systems}},
booktitle = {Companion Proceedings of the 9th International Conference on the Art, Science, and Engineering of Programming (Programming 2025)},
pages = {10:1--10:22},
series = {Open Access Series in Informatics (OASIcs)},
ISBN = {978-3-95977-382-9},
ISSN = {2190-6807},
year = {2025},
volume = {134},
editor = {Edwards, Jonathan and Perera, Roly and Petricek, Tomas},
publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
address = {Dagstuhl, Germany},
URL = {https://drops.dagstuhl.de/entities/document/10.4230/OASIcs.Programming.2025.10},
URN = {urn:nbn:de:0030-drops-242948},
doi = {10.4230/OASIcs.Programming.2025.10},
annote = {Keywords: Programming Languages, run-time Systems, agent-based Programming}
}