Skip to content

l3r8yJ/milan

Repository files navigation

Based on logo

EO principles respected here DevOps By Rultor.com We recommend IntelliJ IDEA

codecov

Milan is a very simple programming language designed to teach students at Volzhskiy Polytechnic Institute.

Current version of language – JVM based.

Grammar

Terminals Values
Keywords BEGIN DO ELSE END ENDDO ENDIF IF OUTPUT READ THEN WHILE
Operands + - * / = > < <= >= <>
Numbers [0-9]
Letters [a-zA-Z]
Assignment character :=
Separator ;
Construction ( )

Progress

Current version of Milan grammar supports expressions like:

BEGIN
    a1 := 1;
    WHILE a1 < 10 DO
        b1 := (a1 / 2) * 2;
        OUTPUT(b1);
        IF a1 == 9 THEN
            WHILE b1 <> 1 DO
                OUTPUT(b1);
                b1 := b1 - 1;
            ENDDO;
        ENDIF;
        a1 := a1 + 1;
    ENDDO;
    OUTPUT(a1);
    OUTPUT(b1);
    c101 := (a1 - 30) * (b1 + 2);
    OUTPUT(c101);
    OUTPUT(65433214);
END

How to Contribute

Fork repository, make changes, send us a pull request. We will review your changes and apply them to the master branch shortly, provided they don't violate our quality standards. To avoid frustration, before sending us your pull request please run full Maven build:

$ mvn clean install

You will need Maven 3.3+ and Java 17+.

About

JVM based programming language

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •