!inside 魔法陣

!!何がしたいのか

- 図形をプログラミングしたい
- なるべく直感的にプログラミングしたい

!!イメージ

>> code bash
rect(1)
scale(0.5)
  circle()
  poly(5,2)  
<<

>> mce4
rect(1)
scale(0.5)
 circle()
 poly(5,2)  
<<

!!仕組み

!!!MCL
字句解析(gin.js)、構文解析
!!!MCE
実行 -> render中間表現
(fatなので直したい)
!!!Render
render中間表現 -> Canvas図形

!!組み込み関数

- if
- blockif
- not
- loop
- block
- addDescription
- getExternalVar
- write
- eval
- evalAllExtArgs
- evalExtArg
- extArgsLength



>> mce4
!choice = \(n)
 evalExtArg(n)

scale(0.1)
 grid(20,20)
   choice(floor(rand() * 2))
    lw(3)
     fs("#0f0")
      circle()
    lw(3)
     scale(0.1)
       rotate(0.25)
        rect()
<<
5643382
wiki
1460101110