Giter Club home page Giter Club logo

eq's Introduction

Eq is a stream-based functional language designed for solving numerical tasks.
The syntax of the Eq programming language is based on a document preparation
system LaTeX. It follows that source files of the Eq can be interpreted by any
LaTeX conversion tool (i.e. pdflatex, latex2html, etc.).
The current version uses Python as a backend language.

Version: 0.1.1

Contribution:
Pavel Zaichenkov <[email protected]>
Artem Shinkarov  <[email protected]>

In order to build the compiler do the following:
  $ cd build/
  $ cmake ..
  $ make

CMake cache variables can be defined:
  -DBUILD_LEXER=[ON|<OFF>]	      = Select either to build the lexer only.
  -DBACKEND_LANG=[<python>|sac]	      = Select compiler's backend.
  -DFIRST_CLASS_FUNCTIONS=[<ON>|OFF]  = Enable or disable functions as
					a first-class objects.
  -DCFG_OUTPUT=[<ON>|OFF]	      = Enable a flow graph output in
					graphviz notation.
  -DRELEASE=[<ON>|<OFF>]              = Build  compiler with highest
                                        optimisations enabled.

In case you want to run a test bundle:
  $ ctest
or
  $ make test

A verbose output of the build is supported:
  $ make VERBOSE=1

It's possible to execute tests separately:
  $ ctest -R run_test		| Tests compilation of a correct syntax on
				| different stages (parser, type checking 
				| and code generating).
  $ ctest -R error_test		| Tests invalid syntax processing and error
				| handing.
  $ ctest -R cfg_test		| Validates a cfg tree generated by the
				| compiler. Needs -DCFG_OUTPUT option to be
				| turned on.
  $ ctest -R exec_test		| Validates the output of the compiler.
  $ ctest -R memory_test	| Looks for memory leaks in the compiler.

eq's People

Contributors

ashinkarov avatar imgbotapp avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.