見出し画像

AIによるなでしこ自動生成+なでしこ開発2023年上半期振り返り

今年の上半期も『日本語プログラミング言語「なでしこ」』の開発を支援してくださり、ありがとうございました。資金援助から不具合の報告、直接的にコードを書いて投げてくださった開発者の皆様、本当にありがとうございました。皆様の応援、本当に励みになっております。

2023年上半期の活動

2023年の上半期には次のような活動が行われました。(主なもののみ抜粋しています。)

- サーバーの大規模メンテナンス(1/3)
- なでしこ v3.4.5のバージョンアップ (2/13)
    - セキュリティアップデート
    - デバッグ機能の強化 / LINE送信命令の追加
- なでしこ v3.4.9のバージョンアップ(3/1)
    - 外部ファイル取り込みのスコープ 問題を修正など
- なでしこ v3.4.11のバージョンアップ(3/10)
    - べき乗演算子をサポート
    - 不具合の修正、話し終わる命令の追加など
- なでしこ v1.588 (3/13)
    - メンテナンスアップデート、バグ修正など
- なでしこ v3.4.14 (3/21)
    - DNCL2のための機能を追加
    - 「には」構文の非同期命令の問題修正など
- なでしこ v3.4.19 (4/10)
    - 競技プログラミング向け機能としてBigInt記法を追加
    - 「尋ねる」命令の問題を修正など、競技プログラミングユーザーからのフィードバックを反映
- なでしこ貯蔵庫のログイン方法を変更 (5/11)
    - Twitter社から突然のログイン認証の廃止を受けメール認証に変更
- なでしこ貯蔵庫の作品がGitHubにバックアップされるように機能追加 (6/25)

なでしこ貯蔵庫をメール認証に変更

この上半期の大きな変化としては、Twitter社が何の通達も猶予期間もなく、ログイン認証の機能を廃止したことにより、なでしこのプログラムを気軽に投稿できる掲示板「なでしこ貯蔵庫」のログインができなくなってしまったことです。それで、急遽、貯蔵庫にメール認証を追加しました。この事件から営利目的の企業の無責任さが身に染みました。

なでしこ開発コミュニティは、なでしこの開発開始から19年目(ひまわりから数えると20年)、引き続き、安心して長く皆さまに使ってもらえるプログラミング言語を目指して前進していきます。

ChatGPTの登場で変わるプログラミングの意義

今年、ChatGPTの登場で、「プログラミング」に関する意義が大きく変化しています。簡単な自然言語による指示で、本格的なプログラムが完成してしまうのです。これは圧巻であり、今後、プログラミングの自動生成により、仕事の生産性大きく向上することでしょう。

それでは、プログラミングを学ぶメリットは何でしょうか?

まず、プログラミングを学ぶ事により、論理的な思考能力や問題解決能力を鍛えることができます。これは、自動生成に頼り切っていては培うことのできない貴重な能力です。

次に、自動生成したプログラムの限界です。実際に、ChatGPTで仕事で使うプログラムを作ってみるとすぐに分かりますが、バグがあって動かなかったり、こちらの指示を正しく聞いてくれなかったり、作成されるプログラムが古い仕様の元に書かれていたり(つまり、将来性の改変に耐えられない仕様で作られたり)…と、いろいろな問題があります。こうした問題に正しく対処し、問題解決のためにAIにヒントを与える問題解決能力が必要です。

プログラムの自動生成は、今後もより高度なことが可能になっていきますが、最終的には、人間が正しく導かなければ解決できないのです。残念ながらAIはまだまだ万能のドラえもんの域には到達していません。それで、あくまでも人間を補助する道具です。そのため、引き続き、人間が開発方法を教え、細かなヒントを与える必要があるのです。そのためには、アルゴリズムを学び、プログラムを開発する能力を高めなければなりません。その意味で、プログラミングが不要になることはあり得ません。

ChatGPTはなでしこを知っている?!

現在も、ChatGPTに簡単なヒントを与えることで、「なでしこ」のプログラムの自動生成も可能です。(以前のバージョンでは、ほとんどヒントを与えることなく生成できた時もありましたが、今は次のようなヒントを与える必要がありました。)

ChatGPTになでしこのプログラムを生成させたところ

これが何を意味するでしょうか。今後は、なでしこのプログラムも半分自動で生成されるようになるということです!

ChatGPTはオープンソースを学習する - なでしこも然り

ChatGPTはオープンソースで公開されている、プログラミング言語のプログラムを学習して、自動生成を行います。なでしこはオープンソースです。現在でも多くのなでしこのプログラムを学習していると考えられます。

それで、先日実装した「なでしこハブ」が登場します。なでしこ貯蔵庫に投稿したプログラム(かつオープンソースのライセンスの投稿)が、ChatGPTなどの大規模言語モデルのデータとして学習してもらいます。

これにより、将来、よりスムーズになでしこのプログラムを生成するようになるでしょう!

画像生成AIが生成した、なでしこによるプログラミング風景

これからも、なでしこは、社会の変化に対応していきます。
今後とも応援のほど、どうぞよろしくお願いします。


この記事が気に入ったらサポートをしてみませんか?