FLUTTER ECOSYSTEM

euler2dot7/interpreter

Software architecture of interpreter in Dart (Flutter)

Software architecture of interpreter in Dart project cover
Stars
2
Forks
2
Last push (UTC)
Dec 18, 2020
Project status
Active
euler2dot7 GitHub avatar
GITHUB User

euler2dot7 ↗

LanguagesDartCMakeC++HTMLCSwiftKotlinObjective-C

Related packages and examples

Dependencies used

Dependency list 7 items
  • flutter{"sdk":"flutter"}
  • cupertino_icons^1.0.0
  • provider^4.3.2+2
  • graphview^0.6.1
  • flutter_testDevelopment{"sdk":"flutter"}
  • flutter_driverDevelopment{"sdk":"flutter"}
  • testDevelopment^1.15.4

App categories

Original README

English project snapshot. Visit GitHub for the latest content.

Expand / collapse project README

Software architecture of interpreter in Dart (Flutter)

This project is a part of my tech talk about OOP design of interpreters.

Arithmetic expressions interpreter.

The software accept arithmetic expression in input and provide 3 interpretation:

  • Result of evaluation
  • Abstract Syntax Tree structure
  • Stack machine assembler representation
Demo Application
  • The web app is available here -> demo
Example:

Example

Software Architecture in UML

Domain model

Domain model of expression evaluator

Structure

Package diagram

Interaction

Interaction diagram

AST evaluator (Visitor Pattern)

Visitor Pattern

Build

I used Android Studio in order to build:

  • Web App
  • Mobile App
  • Desktop App

Presentation