Skip to content

ProteusLab/Protea

Repository files navigation

Protea: An Architecture Description Language based on Ruby for Learning and Research

Protea (named after Proteus, the Greek sea god known for his ability to change shape) is an architecture description language (ADL) designed for teaching at ITMO and MIPT. It is built on top of the Ruby programming language, leveraging its flexibility and expressiveness to allow users to easily define and manipulate architectural components.

ProteaIR (Protea Intermediate Representation) doesn't have canonical textual or binary representation. Instead, it is possible to serialize and deserialize it using JSON, YAML, or any other format.

Usage

It is a monorepo managed by Bundler. To install dependencies, run:

bundle install

So every ruby tool or script can be run using bundle exec, for example:

bundle exec ruby tools/some_tool.rb

Tests

About

Domain Specific Language based on Ruby

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •