質問

一部の言語と比較して、PHPの構文は少し長いです(たとえば、Javaでは、PHP( - >)の代わりにオブジェクトのメソッドが期間(。)で行われます)。

私はいつも自分の言語を書きたいと思っていましたが、私は初年度の学生の学生であり、Java VMなどの何かをバイトコードに変換するパーサーを書くほど知識が豊富ではありません。

その代わりに、私は自分の構文をPHPコードに変換するPHPでパーサーを書くことを考えています。その後、Regexなどを使用してそれを実行します。

その理由:PHPはWebサイトの安定した言語です(私の構文はWeb開発者に適しています)私はすでにプロのレベルでPHPを知っています(または少なくとも私はそうだと思います)私はすでに似たようなものの実装を見ています: http://tetraboy.com/lolcode/lol_core.phpsこれにより、lolcodeをPHPに変換します。そして、私はそれがただの冗談であることを知っていますが、それでもそれは行われました

だから私はその可能性があることを証明しているので。私の質問は、実際に将来のプロジェクトに使用できるものを作ることができますか?たとえば、PHPと同じくらい速く、またはほぼ同じくらい速くすることができますか?

PHPと言語のまとめについてもう少し学ぶ目的のために、どちらにしても試してみますが、実際に最終結果を気にする価値のあるものに変えることができるかどうか疑問に思います。

役に立ちましたか?

解決

どちらかといえば、これは非常に楽しい学習プロジェクトです。

他の言語でも同じアイデアを持っていた他の人がいます。たとえば、見てください coffeescript, 、基本的に同じアイデアですが、JavaScriptの場合です。

この作業を行うことはできますが、変換プロセスを考慮する必要があります。あなたがパフォーマンスを探しているなら、あなたはこれをやりたくない リアルタイム 各リクエストで。複雑さのレイヤーを追加すると、コードが遅くなるだけだからです。たとえそれがほんの少しだけであっても。注目に値するために、このcoffeescriptは、プレコンパイル用のコマンドライン「コンパイラ」を提供しますが、怠zyなロード状況も可能にします。これは、開発目的でうまく機能します。そのようなセットアップはあなたのためにも機能するかもしれません。

あなたは見たいと思うでしょう PHP_LEXERGENERATORPHP_PARSERGENERATOR パーサーを実装するため。後者がもはや維持されていなくても:)

幸運を! ;)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top