Skip to content

💻 Compiler developed in C# for the Deep Lingo programming language that generates a Win32 executable file.

License

Notifications You must be signed in to change notification settings

EngineerIT14/Deep-Lingo-Compiler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Deep Lingo compiler, version 0.5

  • IRVIN TRUJILLO
  • LUIS ESPINOSA

This program is free software. You may redistribute it under the terms of the GNU General Public License version 3 or later. See license.txt for details. This compiler is based on the Buttercup compiler, version 0.5 made by Ariel Ortiz.

Included in this release:

  • Lexical analysis.
  • Syntactic analysis.
  • AST construction.
  • Semantic analysis.
  • CIL Code generation.

Deep Lingo Programming Language Description Read document.

To build, use the terminal and go to the directory where the MakeFile is and type the following

*Linux:    make
*Windows:  NMAKE

If you are using windows and NMAKE is unrecognized, then go to this link in order to install it.

install wine if you are using Linux

apt-get install wine

Generate il file that will contain the CIL(Common Intermediate Language) code that represents the deeplingo code.

* Using Linux: wine ./deeplingo.exe ./TestPrograms/<file_name> ./il/<file_name>.il
* Using Windows: deeplingo.exe ./TestPrograms/<file_name> ./il/<file_name>.il

Move to the il directory and then generate the executable with the following command

ilasm <file_name>.il

Run the executable

* Using Linux: wine <file_name>.exe
* Using Windows: <file_name>.exe

<file_name> is the name of a Deeplingo source file. You can try with these files:

* arrays.deep
* binary.deep
* factorial.deep
* literals.deep
* next_day.deep
* palindrome.deep
* ultimate.deep

About

💻 Compiler developed in C# for the Deep Lingo programming language that generates a Win32 executable file.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published