@InProceedings{ertl21, author = {M. Anton Ertl}, title = {Practical Considerations in a Static Stack Checker}, crossref = {euroforth21}, pages = {5--12}, url = {http://www.euroforth.org/ef21/papers/ertl.pdf}, url-slides = {http://www.euroforth.org/ef21/papers/ertl-slides.pdf}, video = {https://www.youtube.com/watch?v=8WCT-f7A69g}, OPTnote = {refereed}, abstract = {One difficulty in applying static checking to existing Forth code (rather than accepting only programs written with the checker in mind) is how to deal with words with statically unknown stack effects, such as \code{execute}. The work described in this paper introduces the concept of an \emph{anchor} to represent the basis of the stack depth for a position in the code. A new anchor is introduced after a word with an unknown stack effect. Two anchors are synchronized (if still unrelated) on control-flow joins (e.g., \code{then}), without reporting a stack imbalance (which would probably be a false positive). For previously synchronized anchors, such control flow words can compare the stack depth and report a stack imbalance (probably a mistake) if they do not match. The introduction of anchors also allows to perform the analysis in a single pass.} } @InProceedings{knaggs21, author = {Peter Knaggs}, title = {Using Test Driven Development to build a new Forth interpreter}, crossref = {euroforth21}, pages = {13--30}, url = {http://www.euroforth.org/ef21/papers/knaggs.pdf}, video = {https://www.youtube.com/watch?v=Gaf6RqGm8G4}, OPTnote = {not refereed}, abstract = {This paper presents a method for developing new Forth interpreter using using a Test Driven Development approach and the John Hayes test suite.} } @InProceedings{schleisiek-linguistics21, author = {Klaus Scheisiek}, title = {The Linguistics of Forth}, crossref = {euroforth21}, pages = {31}, url = {http://www.euroforth.org/ef21/papers/schleisiek-linguistics.pdf}, video = {https://www.youtube.com/watch?v=SGxzohSBw0g}, OPTnote = {not refereed}, abstract = {} } @InProceedings{hoffmann21, author = {Ulrich Hoffmann}, title = {Taming the IoT --- Forth's Role in the Internet of Things}, crossref = {euroforth21}, pages = {32--37}, url = {http://www.euroforth.org/ef21/papers/hoffmann.pdf}, url-slides = {http://www.euroforth.org/ef21/papers/hoffmann-slides.pdf}, video = {https://www.youtube.com/watch?v=z7ATUprkfnI}, OPTnote = {presentation slides}, abstract = {} } @InProceedings{myneni21, author = {Krishna Myneni}, title = {simulation of the Einstein-Podolsky-Rosen experiment in forth}, crossref = {euroforth21}, pages = {38--45}, url = {http://www.euroforth.org/ef21/papers/myneni.pdf}, url-slides = {http://www.euroforth.org/ef21/papers/myneni-slides.pdf}, video = {https://www.youtube.com/watch?v=uHcBdmfhTws}, OPTnote = {presentation slides}, abstract = {} } @InProceedings{paysan21, author = {Bernd Paysan}, title = {net2o Progress Report --- Decentralized Censorship}, crossref = {euroforth21}, pages = {46--47}, url = {http://www.euroforth.org/ef21/papers/paysan.pdf}, video = {https://www.youtube.com/watch?v=BwtB1-nYaic}, OPTnote = {presentation slides}, abstract = {} } @InProceedings{rodriguez21, author = {Brad Rodriguez}, title = {The case for \texttt{