プログラミング言語 Vala 0.54.0 のトランスレーターのリリース

プログラミング言語トランスレーターの新バージョン Vala 0.54.0 がリリースされました。 Vala 言語は、C# や Java に似た構文を提供するオブジェクト指向プログラミング言語です。 Vala コードは C プログラムに変換され、標準 C コンパイラによってバイナリ ファイルにコンパイルされ、ターゲット プラットフォームのオブジェクト コードにコンパイルされたアプリケーションの速度で実行されます。 スクリプトモードでプログラムを実行することが可能です。 この言語は、GNOME プロジェクトの後援の下で開発されています。 オブジェクトモデルには Gobject (Glib Object System) を使用します。 コンパイラ コードは、LGPLv2.1 ライセンスに基づいて配布されます。

この言語は、イントロスペクション、ラムダ関数、インターフェイス、デリゲートとクロージャ、シグナルとスロット、例外、プロパティ、非 null 型、ローカル変数 (var) の型推論をサポートしています。 メモリ管理は参照カウントに基づいて実行されます。 この言語用に汎用プログラミング ライブラリ libgee が開発されており、カスタム データ型のコレクションを作成する機能を提供します。 foreach ステートメントを使用したコレクション要素の列挙がサポートされています。 グラフィックス プログラムのプログラミングは、GTK グラフィックス ライブラリを使用して実行されます。

このキットには、C 言語のライブラリへの多数のバインディングが付属しています。Vala トランスレータは、同様の機能を提供する Genie 言語のサポートを提供しますが、構文は Python プログラミング言語からインスピレーションを得ています。 Geary 電子メール クライアント、Budgie グラフィカル シェル、Shotwell 写真およびビデオ ファイル整理プログラムなどのプログラムは、Vala 言語で書かれています。 この言語は、Elementary OS ディストリビューションの開発で積極的に使用されています。

主な革新:

  • 可変数のパラメーターを持つデリゲートのサポートが追加されました。
  • POSIX プロファイルと同義の LIBC プロファイルを追加しました。
  • POSIX プロファイル モードでの生成が改善されました。
  • 型推論 (var?) を使用して null 値を持つことができる変数を宣言する機能が追加されました。
  • 継承が禁止されたクラス (シール済み) を宣言する機能を追加しました。
  • null (a.?b.?c) にできるクラス フィールドに安全なアクセス演算子を追加しました。
  • 構造体の内容を null に初期化できるようになりました (const Foo[] BARS = { { "bar", 42 }, null };);
  • size() 操作は定数配列では禁止されています。
  • 関数呼び出しを void ((void)not_void_func();) にキャストしようとしたときの警告出力を追加しました。
  • GLib.Array 要素タイプの制限を削除しました。
  • foreach() ステートメントにおける「unowned var」所有権の継承を修正しました。
  • webkit2gtk-4.0 へのバインドがバージョン 2.33.3 に更新されました。
  • gstreamer へのバインドがバージョン 1.19.0 以降の git master に更新されました。
  • gtk4 へのバインドがバージョン 4.5.0~e681fdd9 に更新されました。
  • gtk+-3.0 のバインディングがバージョン 3.24.29+f9fe28ce に更新されました
  • gio-2.0、glib-2.0 へのバインディングがバージョン 2.69.0 に更新されました。
  • Linux の場合、SocketCAN へのバインディングが追加されました。
  • glib-2.0、gio-2.0、gstreamer-rtp-1.0、javascriptcoregtk-4.0、gobject-2.0、pango、linux、gsl、rest-0.7、libusb、libusb-1.0、pixman-1、webkit2gtk-web- のバインディングを修正しました。拡張機能-4.0、x11、zlib、gnutls;
  • gedit-2.20 および webkit-1.0 バインディングを削除しました。
  • GIR に基づいてバインディングを更新しました。
  • 生成された C コードをチェックする機能がテスト システムに追加されました。
  • girparser、girwriter、valadoc、libval​​adoc/grimporter を改良しました。
  • さまざまなコンパイラ コンポーネントの蓄積されたエラーと欠点が修正されました。

出所: オープンネット.ru

コメントを追加します