Luan / ドキュメント - reactionary software by fschmidt

Luanを学ぶ

Luanの背後にあるアイデアを理解するには、Ousterhoutの論文を読む必要があります。この論文の観点から、Luanはスクリプト言語であり、Javaはシステムプログラミング言語です。つまり、これらの2つの言語は一緒に機能するツールのペアです。Luanはアプリケーションを書くためのツールであり、Javaはライブラリを書くためのツールです。

他の現代のスクリプト言語(Tclを除く)はこのモデルに従っていません。これは、スクリプト言語が提供する機能に制限されることを意味します。現代のスクリプト言語の中で、Pythonだけがライブラリを通じて本当に十分な機能を持っています。しかし、小さなLuanは、Javaで利用可能なすべての機能にアクセスできるため、Pythonと同じくらいの機能を持っています。

LuanとJavaの緊密な統合がこれを可能にしています。しばしば、Javaの関数をLuanで利用可能にするのは次のように簡単です:

Luan_table.luan_function = JavaClass.javaFunction

他の場合では、LuanとJavaの間に非常に薄い層があります。そして、Javaを知っていれば、このコードは読みやすいです。これは、Luanのソースコードが実際にLuan APIの完璧なドキュメントであることを意味します。もし私がLuan APIのすべてを文書化するなら、実際にはほとんどJava APIドキュメントを複製することになります。したがって、Luanリファレンスマニュアルを拡張し続けますが、これは私の最優先事項ではありません。Luanを使用するには、ソースを取得し、luan/src/luan/modulesにあるAPIの基本的な理解を得る必要があります。

Luanを学ぶための私の提案するステップは次のとおりです:

  1. リアクショナリープログラミングを学ぶコースをJava 8まで含めて進めてください。
  2. Luaプログラミングを読みます。実際に優れた本であり、広範なLuanチュートリアルを書く必要がないことを意味します。その後、LuanがLuaとどのように異なるかを読みます。
  3. 次に短いLuanチュートリアルを読みます。

次に何をするかは、ウェブ開発を行うかデスクトップ開発を行うかによります。

ウェブ開発の場合、luan/examples/blogの例を見てください。これは最小限のウェブサイトです。次にLuan Chatを見てください。ソースを取得します。これはサーバー送信イベントを使用しており、LuanではHttp.pushで実装されています。Luan Chatは完全に機能しており、私が人々とチャットするために使用しています。したがって、このコードは完全なウェブサイトの例です。

デスクトップ開発の場合、SwingMigLayoutFlatLaf、および2Dグラフィックスを含む関連するJavaツールを学ぶ必要があります。その後、luan/src/luan/modules/swing/examplesの例を見てください。そしてLuanエディタを取得します。これは完全に機能するテキストエディタです。LuanでSwingを使用する方法を示します。

人気のあるプログラミング言語では、ChatGPTから助けを得ることができます。しかし、ChatGPTはLuanを知りません。ChatGPTはJavaを理解するのに役立ちますが、それだけです。したがって、Luanの質問については、私に連絡してください。