質問
" で説明したように、汎用スクリプト言語としてのLuaですか? "現在、Luaはおそらくデスクトップ環境に最適なスクリプト言語ではありません。
しかし、あなたは将来についてどう思いますか? Luaは非常に人気があり、すぐにPython、Rubyなどのようなライブラリを使用するのに十分なライブラリがあるでしょうか?
それとも単にすごいニッチにとどまるのですか?
解決
これには素晴らしい未来があると思います。多くのプロジェクトがそのシンプルさと有用性のために採用し始めています。
例: Awesome WM (ウィンドウマネージャー)
プロジェクトは最近、バージョン3をリリースしました。完全にLuaで記述された新しい構成システムが組み込まれています。設定ファイルをプログラム、ループ、ブール値、データ構造として文字通り書き込むことができます。 個人的には、このようなシステムの構文と柔軟性が大好きで、大きな可能性があると思います。
将来人気が出ても驚かないでしょう。
ブライアンG
他のヒント
答えは「使用方法によって異なります...」で始まると思います。
一般的なビジネスアプリを作成している場合(データベースからデータを取得し、Webページまたはウィンドウにデータを表示し、データベースにデータを保存します)、Luaには既に必要なものがあります。
Keplerプロジェクトには、Web開発のための便利な機能が含まれています。 モジュールをチェックして、利用可能なライブラリを確認してください-ネットワーク、MVC、DBMSアクセス、 XML、zip、WSAPI、ドキュメント...
Webアプリの例として、 Sputnik をご覧ください。
デスクトップUIには、 wxLua があります- wxWidgets 。
ORMは著しく欠落していますが、ORMが利用可能になる前に他の言語で開発することを妨げませんでした。
特殊なライブラリ(科学、マルチメディア、セキュリティ)を探している場合は、 LuaForge 。
結局のところ、Luaの設計には、汎用的な使用を妨げるものは何もありません。それはたまたま小さく、高速で、埋め込みが簡単なため...人々がそうします。
え?代わりに、WoWはLuaエコシステムのニッチです... Luaの世界はWoWを中心に展開していません。Luaを使用する多くのアプリケーションがあります。 p>
Luaは当初、最初の意味でのスクリプト言語です。スクリプトを作成するためにアプリケーションに埋め込まれました。しかし、拡張可能な言語としても設計されているため、さまざまな目的のためにさまざまなライブラリのバインディングが徐々に増えています。
しかし、PythonやPerlのようなバッテリーが含まれた公式の大きなディストリビューションは決して得られません。なぜなら、それは著者の哲学ではないからです。
他の人がすぐに使える多くの機能を含む配布を行うことを妨げません(特にWindowsの場合、ソフトウェアのビルドが困難な場合)。
多くの人が既に一般的なシステムレベルのスクリプト作成、デスクトップアプリケーションなどに使用しています。
Lua用のライブラリが増えています。
Windowsユーザーの場合は、 Lua for Windows をご覧ください。 「付属のバッテリー」が付属しています。 (wxLua、LuaCURL、LuaUnit、getopt、LuaXML、LPeg ...)。
非常に便利!
埋め込み言語としては本当に気に入っています。それは小さく、非常に使いやすく、組み込みが簡単で、ほとんど必要なことをすぐに実行できます。また、ほとんどの言語と十分に似ているため、実際に問題になったことはありません。また、アプリケーションのニーズに合わせて、基本関数とキーワードを再定義して言語に追加するのが簡単であることも気に入っています。
WoW領域で使用しましたが、データベーストリガーのタイプなど、私が取り組んできたさまざまなアプリケーションの汎用スクリプト言語としても有用であることがわかりました。私はRubyとPythonやその他のフル機能のスクリプト言語が好きですが、小さなアプリケーションに埋め込み、環境をカスタマイズするためのオプションをユーザーに提供するにはあまり便利ではありません。
Luaの大きな特徴は、非常に簡単に拡張できることだと思います。 Luaインタープリターを独自のプログラム(C、C ++、Obj-Cなどで作成されたもの)に追加するのは非常に簡単で、ほんの数行のコードで、考えられるあらゆるシステムリソースにLuaからアクセスできます。 。例えば。 Luaはxxxを実行する機能を提供しません。作成して、Luaで使用できるようにします。しかし、その逆も可能です。選択した言語(コンパイル可能な言語)で独自のLua拡張機能を作成し、ネイティブライブラリにコンパイルし、Lua内にライブラリをロードすると、関数を使用できます。
つまり、スタンドアロンのクロスプラットフォーム言語としてLuaは最良の選択ではないかもしれません。しかし、Luaは、クロスプラットフォームの方法でアプリケーションにスクリプトサポートを追加するのに最適な言語です(アプリがクロスプラットフォームである場合、より優れています!)。 Luaには未来があると思うし、この言語が長期的には常に人気を得ると期待できると思う。
この質問が最初に聞かれてから9年後の2017年であり、luaは Torch
ライブラリにより機械学習の分野で頻繁に使用されています。
シェル言語として快適であることは、優れた汎用言語であることとは関係ありません。
iは、たとえば、他のアプリケーションに埋め込まれたものを使用しないでください。アプリケーションをLuaで作成しますが、「余分な」ものはすべてLuaまたはCのいずれかの専用ライブラリです。
また、「人気」であることはそれほど重要ではありません。 Lua-usersリストには、「LuaはXを実行しない限り人気がありません」と言う人が定期的に表示され、通常の答えは「素晴らしい!拒否"。
Warhammer OnlineとWorld of Warcraftは、私が信じているアドオン言語にそれを使用しています。
暑いと思います!私はそれが得意ではありません!