Skip to content

refgift/first

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FIRST - A process language. Combine with pipes to create procedures.

  • Started June 2026, expect daily progress, maybe weekly.
  • Test programs to show translation to C programs that compile and run.
  • very simple subset of the ALGOL language without complexity.

Build

  • flex -8 first.l
  • cc lex.yy.c -o first -lfl
  • ./first < test.fst > test.c
  • cc test.c -o test
  • ./test

Combining With Pipes

  • UNIX and LINUX have the pipe operator, |, in the shell enviroment of the Terminal.
  • ls -s | sort -n for example

Developments

  • 2 datatypes: INTEGER, DENOTED
  • YIELD operator for CPU scheduling for goto loops that are too tight.
  • RANDOM operator for clean random from the CPU
  • INPUT and OUTPUT for standard input and output for literals and variables.
  • Basic math but soon isomorphic symbol ? returns TRUE or FALSE like traditional comparisons.
  • IN and OUT for CPU I/O

Examples

  • zdatest.fst prints random numbers assignment from word RANDOM works but on;y that.
  • ./first < zdatest.fst | cc -x c - -o zdatest
  • Other examples are similar

zda - A code complete proof of concept

  • zda.fst is the first source
  • The function is to eliminate the loud zero that bugs you.
  • ./first < zda.fst | cc -o zda -x c -

About

FIRST - a Process language

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors