検索
ニュース

Apple、構成ファイルを生成するプログラミング言語「Pkl(ピックル)」を公開宣言的で読み書きが簡単、複雑な記述にも対応

Appleは、構成ファイルを生成するためのプログラミング言語「Pkl」をオープンソースとして公開した。

Share
Tweet
LINE
Hatena

 Appleは2024年2月1日(米国時間)、構成ファイルを生成するためのプログラミング言語「Pkl」(「ピックル」と発音)をオープンソースとして公開した。公開時点でのバージョンは0.25.1となっている。

AppleがPklを開発した理由

 構成ファイルの作成には、JSON、YAML、プロパティリストのような静的言語が利用されている。だが、構成が複雑になると、これらの言語では足りない部分が出てくると、Pklチームは指摘する。表現力が乏しいため、コードが繰り返されたり、独自の検証機能がないため、構成エラーが発生しやすかったりしているという。

 これらの問題に対処するために、特別なロジックを追加する補助ツールで、フォーマットが拡張されることもある。また、構成値を検証する新しい方法が作られることもある。だが、こうした場合、静的言語のフォーマットはやがてプログラミング言語のようになり、理解も作成もしにくくなると、Pklチームは述べている。

 一方、静的言語の代わりにKotlin、Ruby、JavaScriptのような汎用(はんよう)言語が、構成の記述に使われるかもしれない。だが、これらの言語は、データの定義や検証に主眼を置いているわけではないため、使いづらいことがある他、固有のエコシステムに縛られる傾向もあると、Pklチームは説明する。

 Pklチームは、「構成は、静的言語と汎用プログラミング言語の融合として表現するのがベスト」との認識から、宣言的で読み書きが簡単でありながら、汎用言語から借りた機能で強化された言語を提供する目的で、Pklを開発した。

Pklの特徴

 Pklでは、クラス、関数、ループ、条件式、ループ、型アノテーションといった言語機能を利用して、構成を記述できる。抽象化レイヤーを構築し、パッケージを作成、公開することで、コードを共有することも可能だ。

 「最も重要なのは、Pklを使って多種多様な構成ニーズを満たせることだ。任意のフォーマットの静的構成ファイルを作成したり、ライブラリとして他のアプリケーションランタイムに組み込んだりできる」(Pklチーム)

全てのデータをPklで定義し、JSON、YAML、プロパティリスト、その他の構成フォーマットで出力を生成できる(提供:Apple)
全てのデータをPklで定義し、JSON、YAML、プロパティリスト、その他の構成フォーマットで出力を生成できる(提供:Apple)

 Pklチームによると、Pklは以下の3つの包括的な目標を掲げて設計された。

  • デプロイ(展開)前に検証エラーを検出し、安全性を提供する
  • 単純なユースケースから複雑なユースケースまで拡張できる
  • クラス最高のIDE統合により、快適に記述できる
ランタイム構成のためにPklをアプリケーションに組み込み、Java、Kotlin、Swift、Goのコードを生成できる(提供:Apple)
ランタイム構成のためにPklをアプリケーションに組み込み、Java、Kotlin、Swift、Goのコードを生成できる(提供:Apple)
IDE(統合開発環境)を使って、Pklを静的型付け言語と同じように簡単に記述できる。IntelliJ、Visual Studio Code、Neovimのプラグインや拡張機能が提供されており、近いうちにLanguage Server Protocolもサポートされる(提供:Apple)
IDE(統合開発環境)を使って、Pklを静的型付け言語と同じように簡単に記述できる。IntelliJ、Visual Studio Code、Neovimのプラグインや拡張機能が提供されており、近いうちにLanguage Server Protocolもサポートされる(提供:Apple)
豊富な型と検証システムにより、アプリケーションを展開する前に構成エラーを検出できる(提供:Apple)
豊富な型と検証システムにより、アプリケーションを展開する前に構成エラーを検出できる(提供:Apple)

Copyright © ITmedia, Inc. All Rights Reserved.

[an error occurred while processing this directive]
ページトップに戻る