Skip to content

Latest commit

 

History

History
17 lines (14 loc) · 1.55 KB

Overview.md

File metadata and controls

17 lines (14 loc) · 1.55 KB

Overview

Pipeline

Transformation pipeline

Moniel

Parser

Moniel notation is defined as a Parsing Expression Grammar. The language consists of a grammar and semantics that are interpreted by Ohm/JS. Result is a Abstract Syntax Tree that is further processed by Moniel Runtime.

Runtime

Runtime constructs itermediate representaion of the computational graph from AST. This step includes node type resolution, managing scopes, etc. Intermediate representation graph is then used to produce JSON and ProtoBuf definitions.

Moniel IDE

Moniel IDE stands for (Integrated | Interactive) (Development | Design) (Environment | Experience), where user can interactively design model with immediate feedback. For now, this stage is limited to model definition only. However, user should be able to interactively inspect model training and model evaluation – these are partly covered by TensorBoard.

Editor

We use Ace editor customized for Moniel notation with proper syntax highlighting and basic code completion. Thanks to Fira Code font, various symbols in notation are damn gorgeous.

Visualization

To visualize computational graph we use Dagre to layout the graph and Dagre-D3 as a bridge to rendering with D3.