Excelの数式をベースにしたプログラミング言語「Microsoft Power Fx」登場。オープンソースで公開予定。Microsoft Ignite 2021

今回は「Excelの数式をベースにしたプログラミング言語「Microsoft Power Fx」登場。オープンソースで公開予定。Microsoft Ignite 2021」についてご紹介します。

関連ワード (デバッグ、動作、条件等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


マイクロソフトは、Excelの数式をベースとしたプログラミング言語「Microsoft Power Fx」(以下、Power Fx)を発表しました。

Power Fxは、Power AppsやPower Automate、Power BI、Power Virtual Agentsなどから構成される同社のローコード/ノーコードツール群「Power Platform」のロジックの記述に用いられます。

Power Fxはマイクロソフトにとって初めてのローコード開発向けのプログラミング言語です。Excelの数式の知識をプログラミングに使えるため、多くの人にとってプログラミングのハードルを下げることになると説明されています。

また今年後半にはオープンソースとしてGitHubで公開され、誰でも利用や実装が可能になる予定です。

Excelには、文字列の長さを得るLen関数や文字列の一部を取り出すRight関数やLeft関数、条件判定を行うIf関数、条件に合致するデータを取り出すLookup関数など、さまざまな機能を備えた関数があります。

Power Fxでは主にこうした関数を用いて、必要な値を取得したり、アプリケーションの動作を変化させることになります。

下記の画面では、Power Fxによるif関数がアプリケーション画面に関連付けられており、if関数内で取得するスライドバーの値によってif関数の戻り値がホワイトもしくはブラックとなり、それによって画面の色が変化する、という動作が実現されます。

fig

例えば、データベースにある「Employee」テーブルの「First Name」フィールドから、ある値に一致するデータをLookup関数を用いて取得する、といったことがPower Fxで次のように記述できることが示されています。

ここではドット「.」によってLookup関数が拡張され、データベースのテーブルからフィールドへとデータソースをドリルダウンできるようになっています。

この数式を画面上の特定のフィールドに張り付ければ、そのフィールドにデータベースから選択された名前が表示される、ということになります。

Power Fxでは、このようにExcelと同様の関数を利用するだけでなく、Excelのセルに数式を入力すればすぐに結果が表示され、さまざまな数式が自動的に計算、再計算されるように、その動作もリアルタイムかつ非同期に行われるようになっています。

Power Fxのコードは、アプリケーション画面上の各コントロールのプロパティのように、コントロールに対してコードとなる数式を紐づけられるだけでなく、全体のコードをまとめてVisual Studio Codeなどの開発環境で通常のプログラミング言語のように編集することもできます。

これによりノンプログラマはExcelでセルに数式を書き込むように、画面上のコントロールに数式を書き込むことで開発を進められる一方、プログラミングに慣れているプログラマは、Visual StudioやVisual Studio CodeとGitHubなどを用いて効率的に開発やデバッグを進めることができるようになっています。

fig2

Power Fxはすでに、Power Appsで画面レイアウトを優先したアプリケーション開発を行う「キャンバスアプリ」の開発においてロジックの記述に使われており、今後Power Apps以外のPower Platformのツールなどでも使えるようになるとのこと。

Excelの数式は過去半年のあいだに強化が行われ、一般にプログラミング言語として満たすべき条件とされる「チューリング完全」になったことが示されていました。

参考:Excelの新機能「Lambda関数」によって「Excelの数式がチューリング完全になった」とナデラCEO。プログラミング言語としてのExcel数式であらゆる計算が可能に

これはPower Fx登場の伏線だったのかもしれません。

参考:Microsoft Power Fx overview

デバッグとは - コトバンク

ASCII.jpデジタル用語辞典 - デバッグの用語解説 - プログラムのミスや欠陥をチェックして、修正する作業のこと。プログラムの欠陥をバグ(虫)といい、直訳すると「バグの除去」。デバッグするための専用のソフトウェアをデバッガーという。ほとんどのソフトウェア開発ツールは、デバッガーの...

デバッグ - Wikipedia

デバッグ(debug)とは、コンピュータプログラムや電気機器中のバグ・欠陥を発見および修正し、動作を仕様通りのものとするための作業である。

デバッグとは - IT用語辞典 e-Words

デバッグ【debug】とは、コンピュータプログラムに潜む欠陥を探し出して取り除くこと。プログラムが仕様や開発者の意図に照らして誤った動作をする際に、そのような動作を引き起こすプログラム上の欠陥、誤りをバグ(bug:虫)という。テストなどによって発見された誤作動・不具合について、その原因やプログラム上での位置を探索・特定し、意図したとおり動作するように修正する作業のことをデバッグという。

デバッグとは?デバッグの基礎や仕事内容を初心者向けに解説 ...

デバッグとは、 プログラム中の間違っている点や不具合がある点(バグ)を見つけ出して、修正する一連の流れ のことです。

デバッグとは?その基本と身につけておきたい必要な知識の ...

デバッグはプログラミングを学び始めた方にとって、最初の関門といえる重要な作業です。自分でバグの原因を突きとめて処理できるようになれば、一人前のプログラマーに近づくことができます。 今回は、デバッグの基本的な知識から、簡単な対処法、デバッグ業務に関する求人について詳しく解説しています。IT技術系業務に関心のある

英語「debug」の意味・使い方・読み方 | Weblio英和辞書

1000万語収録!Weblio辞書 - debug とは【意味】害虫を除く,欠陥を直す... 【例文】debug (IMAP4_stream attribute)... 「debug」の意味・例文・用例ならWeblio英和・和英辞書

デバックとは|「分かりそう」で「分からない」でも「分かっ ...

デバッグは「バグの原因を探して取り除く作業」です。 あるいは、プログラムに限らず「原因は分からないけど、なんか、おかしい」な状況に対する原因の究明や不具合の解消を指して「デバッグ」と表現することもあります。

【C#】デバッグの手順とは?デバッガ・Debugクラスの使い方 …

C#でデバッグする方法が知りたい。 デバッグって何? どうやってやるの? debugクラスを使ってログを出してみたい こんにちは。文系出身で今年現役8年目エンジニアになる佐藤です。

【超初心者向け】エクセルVBAでデバッグをする方法を解説し …

エクセルVBAでマクロを作ると、思い通りに動かないことがとても多いです。 そういうときには、何がおかしいのか原因を探って修正する「デバッグ」作業が必要になります。 このページでは「デバッグ」をする基本...

【初心者向け】Eclipseでのデバッグ方法 - Qiita

 · バグの原因を調査し、修正するのが「デバッグ」。. プログラムにバグがあったときにの原因調査のために利用するツールが「デバッガ (debugger)」。. デバッガは、. - 「ブレークポイント」でプログラムを一時停止し. - その時点の変数などの値を見たり、1行ずつなど動かして、プログラムの動作を見て. - どこで想定と違う動きとなるか、といった調査を行う ...

COMMENTS


Recommended

TITLE
CATEGORY
DATE
NEC、製造DXの新パートナープログラムを始動–世界での復権めざす
IT関連
2023-12-09 09:07
“洋服の青山”がAIスナックママ「よしこ」公開 若者の悩みに答えるチャットbot
ネットトピック
2021-07-08 19:35
あつ森に「コメダ島」誕生 巨大カツパンがそびえ立つ
くらテク
2021-01-22 18:08
「ゲーミフィケーション」って何? 生活改善・人材育成にゲーム要素
IT関連
2021-07-17 14:13
Twitter、返信に「反対票」(dislikeではない)をつけるテストを開始
アプリ・Web
2021-07-23 08:45
横河とNTT Com、熟練者に学んだAIによるプラント自動運転に成功
IT関連
2023-02-01 12:43
グーグル、「ChatGPT」に対抗する独自のAIチャットボット「Bard」を公開
IT関連
2023-02-08 00:18
技術者ではないチームに専門知識不要のデータ探索機能を提供するCanvas
IT関連
2022-01-31 21:17
Spotify、フォローするアーティストの新着情報を知らせる「What’s New」機能
アプリ・Web
2021-07-28 02:27
変化が激しい時代こそ技術の本質がより重要に–LPI-Japanの鈴木理事長
IT関連
2023-10-25 19:16
エアコン使い始めの臭い、発生のメカニズムと対策
くらテク
2021-06-04 07:05
3CXのソフトウェア製品に改ざん、連鎖型サプライチェーン攻撃を確認
IT関連
2023-04-26 22:06
米IT企業への大規模ランサムウェア攻撃、78億円の身代金要求か
IT関連
2021-07-07 09:49
オラクル、2025年までに全世界のオペレーションを100%再生可能エネルギーで行うと表明
IT関連
2021-07-01 21:00