-
Notifications
You must be signed in to change notification settings - Fork 0
Sem is an interpreter and a debugger for the SIMPLESEM language.
License
dfa1/sem
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Sem, an abstract semantic processor =================================== What's sem? ----------- Sem is an interpreter and a debugger for the SIMPLESEM language. "We said that in this book we will use an operational approach to semantics. To do so, we introduce a simple abstract processor called SIMPLESEM, and we show constructs can be executed by sequences of operations of the abstract processor." PP. 69, "An abstract semantic processor" Programming language concepts, Third Edition Carlo Ghezzi, Politecnico di Milano Mehdi Jazayeri, Technische Universitat Wien John Wiley & Sons License information ------------------- This program is free software, released under the GNU Public License, which gives you, from the user point of view, a great degree of liberty, which proprietary software just doesn't. Follows a little list of the advantages free software has: o it's free; o the complete source code is available; o you are allowed to copy, modify and redistribute. For more info about this subject refer to the COPYING file. Build instructions ------------------ Requirements: - C99 compiler (such as gcc or clang) - make Building sem: $ ./configure $ make This creates an executable 'src/sem'. In order to install it type: $ make install By default installation directory is /usr/local, so 'sem' is installed in /usr/local/bin/sem. Developers need also: - GNU autoconf (tested with version 2.69) - GNU automake (tested with version 1.12.4) - GNU bison (tested with version 2.5.1) - GNU flex (tested with verstion 2.5.37) - GNU indent (tested with 2.2.10) How to use misc/sem.vim? ------------------------ The file sem.vim is a Vim syntax file. It enables Vim to show parts of the text in another font or color for your .sem files. It has been tested with vim 72. Copy the file misc/sem.vim in ~/.vim/syntax/sem/sem.vim. Then put the following line in your filetype.vim (e.g. ~/.vim/filetype.vim): au! BufNewFile,BufRead *.sem setf sem Distribution structure ---------------------- AUTHORS Authors and contributors ChangeLog History of changes COPYING Licensing information README The file you're reading now TODO To-do list, ideas, bugs doc/QUICKREF Language reference examples/comp.sem Compare two numbers examples/fact.sem The factorial examples/gcd.sem Greatest Common Divisor examples/hello.sem Hello World, in SIMPLESEM this time examples/pow.sem The power examples/rfact.sem Recursive version of fact.sem examples/sum.sem Sum two numbers misc/sem.vim VIM syntax file src/sem.h Sem C interface src/compiler.y The compiler (GNU bison input) src/compiler.c The compiler (generated from compiler.y) src/tokens.h Tokens interface between scanner and compiler) src/vm.c The interpreter src/debugger.c The debugger src/scanner.c The lexical scanner (generated from scanner.l) src/scanner.h The lexical scanner interface src/scanner.l The lexical scanner (GNU flex input) src/main.c The main() for interpreter and debugger Contact Information ------------------- Email: davide.angelocola@gmail.com URL: http://bitbucket.org/dfa/sem
About
Sem is an interpreter and a debugger for the SIMPLESEM language.
Topics
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published