質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

Q&A

解決済

1回答

835閲覧

この構文は何ですか?

Watching

総合スコア56

Kotlin

Kotlinは、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、 静的型付けのオブジェクト指向プログラミング言語です。

0グッド

0クリップ

投稿2021/05/08 02:18

編集2021/05/08 02:24

まずこれを見てください。
https://guide.openrndr.org/#/03_Program_basics/C00_ApplicationProgram
OPENrndrというクリエイティブコーディングの為のKotlinライブラリです。
ここで何が起きているのか理解できないので、説明をお願いしたいです。

kotlin

1fun main() = application { 2 configure {// set Configuration options here 3 } 4 5 program { 6 // -- what is here is executed once 7 extend {// -- what is here is executed 'as often as possible' 8 } 9 } 10}

Kotlinは触ったことが無いので、そもそもこの構文の名前が何かわからずググることすらできません。
かろうじてmain関数を何か特殊な方法で定義しているということだけはわかります。

追記
勿論これをどのように使えば望む結果が得られるかはわかりますが、中の仕組みがどうなっているかに興味があります。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

機能としては高階関数(特にレシーバー付き)のものを使ってるだけですが、それを利用して特別な構文が使えるかのような設計にしてるものです。

kotlin DSL
でまとまった資料が出てくるので詳しくはそれで調べてください。

投稿2021/05/08 04:42

yudedako67

総合スコア2047

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Watching

2021/05/08 05:34

つまり、単純に関数にラムダ式を渡しているだけという認識で合っていますか? 本来なら application({}) と書くところを外に出しているのですね?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問