preprint Open access

Function is Class, and Call Frame is Instance. An Introduction to ago Programming Language

  • Zenodo (CERN European Organization for Nuclear Research)
  • European Organization for Nuclear Research
Research footprint

At a glance

Citations
0
References
0
Comments
0
Paper overview

Öz

Through systematic analysis of technologies such as animation systems, coroutines, and workflow engines, this paper identifies that they essentially attempt to formally represent "actions" in the real world. Traditional programming languages face significant limitations when describing persistent, asynchronous actions that can be suspended by external events; and this limitation is overcome by re‑conceptualising the Call Frame. By extracting CallFrame from low‑level machine mechanisms into an object‑oriented viewpoint, I find that an objectified CallFrame can serve as a complete representation of an action, it leads to the novel proposition: "Function is Class, and CallFrame is Instance.". Based on this idea, I design and implement the ago programming language (named after the Esperanto word Action). Its core idea treats actions as resumable, persistable CallFrames, with prototype verification completed in Java runtime. This paper elaborates on ago's architecture, and key designs including parameterized classes, type scalarization, extended boxing, and call-time overloading, and some common runspaces in real world.

Record transparency

Publication details

DOI
10.5281/zenodo.20919493
OpenAlex
W7166011560
Document type
preprint
Language
EN
Source
Zenodo (CERN European Organization for Nuclear Research)
Last metadata update
Community

Comments

Oturum Açın to join the discussion.

  1. No comments yet. Start the discussion.