Skip to content

A programming language based from using the pseudocode

Notifications You must be signed in to change notification settings

genielvn/Yassou

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Yassou

Yassou is a beginner-friendly, general-purpose programming language coined after the Greek word meaning "Hello." This language is simple and easy to understand as it uses natural syntax for better readability and writability. It serves as the bridge between pseudocode and other general-purpose programming languages, which helps programmers and readers simulate the logic of the code to spot errors and inconsistencies before the actual programming process.

Developing

Compile the Yassou Interpreter using the Makefile first.

If you are running Windows and have gcc on your machine without make, run compile.bat instead.

To run a (.yass) file:

./yassou [FILE] [-d] 
./yassou.exe [FILE] [-d]

Checklist

Lexical Analyzer

  • Open file
  • Check file extension, reject file if not .ppf
  • Integer and Decimal Checking
  • String Checking
  • Comment Checking
  • Identifier Checking
  • Keyword Checking
  • Indentation Checking
    • Conditional Keywords
      • IF
      • ELSE
      • THEN
    • Iterative Keywords
      • FOR
      • TO
      • BY
      • DO
      • WHILE
    • I/O Keywords
      • INPUT
      • OUTPUT
    • Data Type Keywords
      • INTEGER
      • DECIMAL
      • STRING
      • BOOLEAN
    • Declaration/Assignment Keywords
      • SET
      • AS
  • Reserved Words
    • Boolean Values
      • TRUE
      • FALSE
  • Operators
    • Arithmetic Operators
      • +
      • -
      • *
      • /
      • //
      • %
      • ^
    • Boolean Operators
      • <
      • >
      • <=
      • >=
      • =
      • =/=
    • Logical Operators
    • !!
    • &&
    • ||
  • Delimiters and Brackets
  • Error Checking
  • Indent and Dedent Checkings
  • Output: text file containing the symbol table

Syntactic Analyzer

  • Implement Bottom-Up Parsing ...

Semantic Analyzer

  • Conversion from INTEGER to DECIMAL when division results to a floating number
  • Unique ID for IDENTIFIERs ...

About

A programming language based from using the pseudocode

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages