<div class="csl-bib-body">
<div class="csl-entry">Ertl, M. A. (2025). How to Implement Words (Efficiently). In M. A. Ertl (Ed.), <i>40th EuroForth Conference</i> (pp. 43–52). https://doi.org/10.34726/8723</div>
</div>
-
dc.identifier.uri
http://hdl.handle.net/20.500.12708/211926
-
dc.identifier.uri
https://doi.org/10.34726/8723
-
dc.description.abstract
The implementation of Forth words has to satisfy the following requirements: 1) A word must be represented by a single cell (for execute). 2) A word may represent a combination of code and data (for, e.g., does>). In addition, on some hardware, keeping executed native code and (written) data close together results in slowness and therefore should be avoided; moreover, failing to pair up calls with returns results in (slow) branch mispredictions. The present work describes how various Forth systems over the decades have satisfied the requirements, and how many systems run into performance pitfalls in various situations. This paper also discusses how to avoid this slowness, including in native-code systems.
en
dc.language.iso
en
-
dc.rights.uri
http://creativecommons.org/licenses/by-sa/4.0/
-
dc.subject
Forth
en
dc.subject
programming language implementation
en
dc.subject
performance pitfalls
en
dc.subject
false sharing
en
dc.subject
branch prediction
en
dc.subject
return-address stack
en
dc.title
How to Implement Words (Efficiently)
en
dc.type
Inproceedings
en
dc.type
Konferenzbeitrag
de
dc.rights.license
Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 4.0 International
de
dc.rights.license
Creative Commons Attribution-ShareAlike 4.0 International