Cc618 / Riddim

Interpreted language made in C++ designed for algorithms / data structures

Home Page:https://cc618.github.io/Riddim

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Riddim

Riddim is an interpreted language designed for algorithms and data structures.

Riddim is written in C++ and uses Flex / Bison for parsing. It provides also a standard library written in both C++ and Riddim. Furthermore, it includes a documentation generator fully written in Riddim.

Summary

Overview

Features

Riddim is designed for algorithms, the goal is to provide an easy and readable code.

  • It provides a modular standard library with powerful collections (vectors, maps, iterators, segment trees...) and algorithms (map, reduce, binary search...)
  • An auto documentation tool is included
  • Garbage collection is used for memory management
  • Error handling is easy with try / catch blocks
  • Lambdas can be used instead of functions
  • Internals like garbage collection / interpreter are inspired by Python
  • The syntax is inspired by multiple C-like languages (with a pinch of Python)

Configure / build / install

Here is the single command to install Riddim :

./configure.sh && sudo scripts/install.sh

Configuration

For more details about the configure script, check the config documentation.

The configure.sh script can be modified for a custom config (to install riddim in a custom directory / build in debug mode for example) :

./configure.sh

This will create the build folder with the Makefile.

Build

After the configuration, the Makefile is located in the build folder.

cd build && make -j 4

build/src/riddim is the output of the build.

Installation

After the configuration script executed, it is possible to build and install Riddim with the script scripts/install.sh.

Note that by default, the outputs will be copied to system directories so a root privilege may be necessary.

# You can omit sudo if you configured a non system directory
sudo scripts/install.sh

Uninstallation

There is also an uninstallation script. If you used a custom configuration, source it before uninstalling riddim.

# If you have a custom configuration
source configure.sh
# sudo may be useless if you have a custom configuration
sudo scripts/uninstall.sh

Documentation

The documentation can be seen on Github or via the Documentation Website.

License

Riddim is licensed under the MIT License

About

Interpreted language made in C++ designed for algorithms / data structures

https://cc618.github.io/Riddim

License:Other


Languages

Language:C++ 89.4%Language:Yacc 4.7%Language:Python 3.5%Language:LLVM 1.6%Language:Shell 0.5%Language:CMake 0.3%