@InProceedings{baranov17, author = {Sergey N. Baranov}, title = {A Formal Language Processor Implemented in {Forth}}, crossref = {euroforth17}, pages = {5--10}, url = {http://www.euroforth.org/ef17/papers/baranov.pdf}, video = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:flp.mp4}, OPTnote = {refereed}, abstract = {The structure of a Forth program is described which implements a language processor for an ALGOL-like programming language with its context-free component belonging to the class LL(1). It allows to check that a program in the given formal language is syntactically correct as well as to convert a correct program into a pseudo-code for a simple interpreter to interpret it and thus simulate the program behavior in a certain environment. The ultimate goal of this work is to build a tool for running experiments with programs in the Yard language which formally describes the behavior of multi-layer artificial neural networks on the principles of a machine with dynamic architecture (MDA) and due to that has a number of specific language constructs. The tool is assumed to run on a PC under MS Windows and is based on the system VFX Forth for Windows IA32 which implements the Forth standard Forth 200x of November 2014 (the so called Forth 2014).} } @InProceedings{stoddart17, author = {Bill Stoddart}, title = {Halting misconceived?}, crossref = {euroforth17}, pages = {11--24}, url = {http://www.euroforth.org/ef17/papers/stoddart.pdf}, video = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:halting.mp4}, OPTnote = {refereed}, abstract = {The halting problem is considered to be an essential part of the theoretical background to computing. That halting is not in general computable has been proved in many text books and taught on many computer science courses, and is supposed to illustrate the limits of computation. However, there is a dissenting view that these proofs are misconceived. In this paper we look at what is perhaps the simplest such proof, based on a program that interrogates its own halting behaviour and then decides to thwart it. This leads to a contradiction that is generally held to show that a halting function cannot be implemented. The dissenting view agrees with the conclusion that the halting function, as described, cannot be implemented, but suggests that this is because its specication is inconsistent. Our paper uses Forth to illustrate complex abstract arguments.} } @InProceedings{ertl17, author = {M. Anton Ertl}, title = {SIMD and Vectors}, crossref = {euroforth17}, pages = {25--36}, url = {http://www.euroforth.org/ef17/papers/ertl.pdf}, video = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:simd-vectors.mp4}, OPTnote = {refereed}, abstract = {Many programs have parts with significant data parallelism, and many CPUs provide SIMD instructions for processing data-parallel parts faster. The weak link in this chain is the programming language. We propose a vector wordset so that Forth programmers can make use of SIMD instructions to speed up the data-parallel parts of their applications. The vector wordset uses a separate vector stack containing opaque vectors with run-time determined length. Preliminary results using one benchmark show a factor~8 speedup of a simple vector implementation over scalar Gforth code, a smaller (factor 1.8) speedup over scalar VFX code; another factor of 3 is possible on this benchmark with a more sophisticated implementation. However, vectors have an overhead; this overhead is amortized in this benchmark at vector lengths between 3 and 250 (depending on which variants we compare).} } @InProceedings{pelc17, author = {Stephen Pelc}, title = {Special Words in {Forth}}, crossref = {euroforth17}, pages = {37--45}, url = {http://www.euroforth.org/ef17/papers/pelc.pdf}, video = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:special-words.mp4}, OPTnote = {not refereed}, abstract = {Over the last few years, I have become convinced that I do not understand the ANS Forth description of compilation and how this situation came about. The Forth 2012 description of compilation is the same as that of ANS. This paper describes the process of understanding that leads to being able to make a few proposals to make use of a new description of compilation. In essence, we are going to have to regard IMMEDIATE as a special case of our new situation. The model also allows us to build words that would previously have had to be state-smart.} } @InProceedings{aaron17, author = {Ron Aaron}, title = {Security Considerations in a {Forth} Derived Language}, crossref = {euroforth17}, pages = {46--49}, url = {http://www.euroforth.org/ef17/papers/aaron.pdf}, OPTnote = {not refereed}, abstract = {Of major concern in modern application development is how to increase the robustness of program code while maintaining the programmers' productivity. Time-to-market directly affects ROI, but so do security problems arising from coding practices and tools. Our "8th" language, a Forth derivative, was conceived in part to address these issues.} } @InProceedings{read17, author = {Andrew Read and Ulrich Hoffmann}, title = {Forth: A New Synthesis}, crossref = {euroforth17}, pages = {50--55}, url = {http://www.euroforth.org/ef17/papers/read.pdf}, video = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:synthesis.mp4}, OPTnote = {not refereed} } @InProceedings{nelson17, author = {Nick J. Nelson}, title = {In Cahoots --- {Forth}, {GTK} and {Glade} working secretly together}, crossref = {euroforth17}, pages = {56--61}, url = {http://www.euroforth.org/ef17/papers/nelson.pdf}, video = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:gtk-glade.mp4}, OPTnote = {not refereed}, abstract = {Forth is a very good language for working with other tools and libraries. In this paper we will introduce some techniques to make GTK and Glade work with Forth as seamlessly as possible.} } @InProceedings{oakford17, author = {Howerd Oakford}, title = {cryptoColorForth}, crossref = {euroforth17}, pages = {62--63}, url = {http://www.euroforth.org/ef17/papers/oakford.pdf}, video = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:cryptocolorforth.mp4}, OPTnote = {not refereed} } @InProceedings{haley17, author = {Andrew Haley}, title = {A multi-tasking wordset for Standard {Forth}}, crossref = {euroforth17}, pages = {64--67}, url = {http://www.euroforth.org/ef17/papers/haley.pdf}, url-slides = {http://www.euroforth.org/ef17/papers/haley-slides.pdf}, video = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:multitasking.mp4}, OPTnote = {presentation slides} } @InProceedings{paysan17, author = {Bernd Paysan}, title = {{MINOS2} --- {A} {GUI} for net2o}, crossref = {euroforth17}, pages = {68}, url = {http://www.euroforth.org/ef17/papers/paysan.pdf}, video = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:minos2.mp4}, OPTnote = {presentation slides} } @InProceedings{hoffmann17, author = {Ulrich Hoffmann}, title = {A Recognizer Influenced Handler Based Outer Interpreter Structure}, crossref = {euroforth17}, pages = {69--71}, url = {http://www.euroforth.org/ef17/papers/hoffmann.pdf}, url-slides = {http://www.euroforth.org/ef17/papers/hoffmann-slides.pdf}, video = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:recognizer.mp4}, OPTnote = {presentation slides} } @Misc{ef2017:compondemand, author = {Klaus Schleisiek}, title = {Compilation on Demand}, howpublished = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:compondemand.mp4}, year = {2017}, note = {Video of otherwise unpublished talk at EuroForth 2017} } @Misc{ef2017:farmbot, author = {Rick Carlino}, title = {Farmbot}, howpublished = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:farmbot.mp4}, year = {2017}, note = {Video of otherwise unpublished talk at EuroForth 2017} } @Misc{ef2017:f, author = {Gerald Wodni}, title = {F --- news from the package manager}, howpublished = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:f.mp4}, year = {2017}, note = {Video of otherwise unpublished talk at EuroForth 2017} } @Misc{ef2017:cosy, author = {Bob Armstrong}, title = {CoSy : {Iverson}'s {APL} alive in {Moore}'s {Forth}}, howpublished = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:cosy.mp4}, year = {2017}, note = {Video of otherwise unpublished talk at EuroForth 2017} } @Misc{ef2017:opendiscussion, author = {Paul E. Bennett}, title = {Open discussion}, howpublished = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:opendiscussion.mp4}, year = {2017}, note = {Video of otherwise unpublished talk at EuroForth 2017} } @Misc{ef2017:9thbit, author = {Klaus Schleisiek}, title = {Use the 9th bit of {FPGA} block {RAM}}, howpublished = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:9thbit.mp4}, year = {2017}, note = {Video of otherwise unpublished talk at EuroForth 2017} } @Misc{ef2017:reversible, author = {Bill Stoddard}, title = {A new test construct using reversible computation}, howpublished = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:reversible.mp4}, year = {2017}, note = {Video of otherwise unpublished talk at EuroForth 2017} } @Misc{ef2017:gforth-header, author = {Anton Ertl}, title = {The new {Gforth} header}, howpublished = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:gforth-header.mp4}, year = {2017}, note = {Video of otherwise unpublished talk at EuroForth 2017} } @Misc{ef2017:sattrack, author = {Leon Wagner}, title = {Satellite tracking project}, howpublished = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:sattrack.mp4}, year = {2017}, note = {Video of otherwise unpublished talk at EuroForth 2017} } @Misc{ef2017:sergey, author = {Sergey Baranov}, title = {Publish on IEEE}, howpublished = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:sergey.mp4}, year = {2017}, note = {Video of otherwise unpublished talk at EuroForth 2017} } @Misc{ef2017:literate-md, author = {Ulrich Hoffmann}, title = {Literate Programming with {Markdown}}, howpublished = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:literate-md.mp4}, year = {2017}, note = {Video of otherwise unpublished talk at EuroForth 2017} } @Misc{ef2017:colorforth2, author = {Howerd Oakford}, title = {More on {ColorForth}}, howpublished = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:colorforth2.mp4}, year = {2017}, note = {Video of otherwise unpublished talk at EuroForth 2017} } @Misc{ef2017:swd, author = {Stephen Pelc}, title = {SWD file to {Forth}}, howpublished = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:swd.mp4}, year = {2017}, note = {Video of otherwise unpublished talk at EuroForth 2017} } @Misc{ef2017:ef2018, author = {Paul E. Bennett}, title = {EuroForth 2018 in {Edinburgh}, {Scotland}}, howpublished = {https://wiki.forth-ev.de/lib/exe/fetch.php/events:ef2017:ef2018.mp4}, year = {2017}, note = {Video of otherwise unpublished talk at EuroForth 2017} } @Proceedings{euroforth17, title = {33rd EuroForth Conference}, booktitle = {33rd EuroForth Conference}, year = {2017}, key = {EuroForth'17}, url = {http://www.complang.tuwien.ac.at/anton/euroforth/ef17/papers/proceedings.pdf} }