u/rain5in r/ProgrammingLanguages • Recommends
PYCON UK 2017: What I learned building Forth in 64 bit Intel assembly
4.7K subscribers • 1 video on Hallway
Intermediate. Assumes working knowledge.
5.3K views8 years ago1 recommendation
Programming languagesSystems programmingCompilers and interpretersRetro computing
David Jones shares his experience and lessons learned from implementing a Forth system in 64-bit Intel assembly.
David Jones | Friday | Room L The computer programming language Forth was invented by Charles H. Moore in 1970. Forth is famous for being stack based and using reverse polish notation: the operators come after their operands. A Forth program to convert from Fahrenheit to Celsius (C = (F-32) × 5/9) is: 32 - 5 * 9 / On 23rd August 2016 I had an urge to write a Forth system in 64-bit Intel Assembly. This talk is about what happens next. In it I unpack what it means to implement a language. I dig a little into a lower-level description of typical computer hardware, and a little into 64-bit Intel Assembly. Compared to Python, Forth is a low-level language; compared to Assembly, Forth is a high-level language. I'll talk about how we can implement one language in terms of another, by building models, and how we can model languages and model computational processes. Forth is a tiny, but powerful, language. Moore's insight was to discover a language that was: - small; - sufficient; - easy to implement; - extensible. The result is that Forth implementations are typically composed of a tiny nucleus (typically in Assembly) surrounded by a larger amount of "Forth-in-Forth". Come. Let's implement a language. Link to slides: github.com/drj11/forth-pyconuk2017/blob/master/forth-pyconuk…u/rain5in r/ProgrammingLanguages • Recommends