YREA-SLS/docs/slides/SLIDES.md

1.8 KiB

theme paginate backgroundColor backgroundImage style
default false url('./background.svg') section.lead { padding-bottom: 100px; } section { padding-bottom: 225px; } section.lead > h1 > strong { color: #375899; font-size: 64px; } section.lead > p:nth-child(3) { font-size: 16px; } h1 { color: #001847; padding-bottom: 0; margin-bottom: 0; } small { font-size: 16px; padding-left: 16px; }

bg left:50% 90%

YREA SLS

Kyler Olsen

Fall 2025
Snow College
SE 3250
sls.purplecello.org


RPL

HP Reverse Polish Lisp

  • Based on LISP and Forth
  • Stack-oriented language with post-fix notation
  • Created by HP for their calculators

bg right:35% 80%


Project

YREA SLS

  • Stack-oriented language with post-fix notation
  • C inspired Syntax
  • Can run on an embedded system

Language

The C Language

  • Systems Programming
  • Used for Python and PHP interpreters

Excellent fit for my project!


Language

The C Language

  • Manual memory management is difficult to get right.
  • C development in a Linux environment was fun and rewarding.
  • In the end I had a running program on a RP2040.

Port 1

Rust

  • Systems Programming (Again)
  • Included build system
  • Memory safe with the barrow checker

Port 1

Rust

  • Unlike previous projects in Rust, I didn't fight the barrow checker this time.
  • I added exporting and importing the interpreter state in the REPL.

Port 2

Python

  • My favorite programming language (maybe C is a close second now)
  • This port was very easy for me to do.
  • I did add a calculator app as an alternative to the REPL or file execution.

The End

You may clap now