2021-05-31

jurina

cat filename.jurina

print "Hello world";

という命令ファイルから受け取ったら

public class filename{

public static void main(String[] args){

System.out.println("Hello world");

}

}

と出力するプログラムをjurinaと名付けるとする

cat filename.jurina

int i=1;

print i;

public class filename{

public static void main(String[] args){

int i=1;

System.out.println(i);

}

}

ものすごく単純なPythonっぽい独自言語

Javaに置き換えて出力するだけのJava プリプロセッサである

さて、このJurina言語JAVA VMで動くと思うか?

   

言いたいことVMを解析して、OPコードを吐くコンパイラを作ろうとしていたが

そもそもコンパイラが作れるならJavaソースコードを吐いてしまえば良いことに気がついた

  • 独自言語を作ってJavaの中間コードを吐くのではなく 独自言語を作ってJavaのソースコードを吐き出せばいい これがJurina言語のコンセプトモデル

    • まるでAKBみたいな言語 それがJurina Pythonのような簡単な独自言語をパースして、Javaのコードを吐き出すだけのプログラム  ばかっぽいところがB  AK B っぽい言語

      • もっとも簡単なJurinaは print 1 一番最初の仕様はprint のあとに数字を1つ受け取って それを出力せよ scanf("%s %d",&name,&v);で処理できる内容とし char name[1024]; int v; 程度とする これ簡単...

        • コンセプトは 全部同じ エレキはコードで弾くもんじゃない シールでドを弾くもんなんだよ

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん