Skip to content
0:00 / 0:00

#forth#assembly#x86-64

PYCON UK 2017: What I learned building Forth in 64 bit Intel assembly

PYCON UK

4.7K subscribers • 1 video on Hallway

YouTube
  • Recommended by 1 person: 1 in engineering communities.
  • Presented by David Jones
  • Linked in the descriptiondrj11/forth-pyconuk2017

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…

Why it's here

1 person recommends this

u/rain5in r/ProgrammingLanguages • Recommends

PYCON UK 2017: What I learned building Forth in 64 bit Intel assembly