高階関数による関数型プログラミングの実践

関数型プログラミングは、数学における関数の概念を模倣した宣言的なプログラミングパラダイムであり、その中核を成すのが「純粋関数(Pure Function)」である。純粋関数は、同じ入力に対して常に同じ出力を返し、副作用を持たないという特性を持つ。 このような関数型の考え方に基づき、「高階関数(Higher-Order Function)」という重要な概念が存在する。高階関数とは ...

7月31日 17:32 投稿

Kotlinにおける関数型とラムダ式

関数型 val functionCall = func() と書くと関数を呼び出してその戻り値を取得しますが、 val functionCall = ::func と書くと関数そのものを参照します。 ラムダ 構文形式を確認する 関数をデータ型として扱う 戻り値の型を指定しなければ、コンパイラは自動的に Unit を戻り値とみなします。 Kotlinでは、すべての関数は何かを返す必要があります。戻り値を指定しな ...

7月10日 16:21 投稿

Python関数の定義と引数の扱い

関数の基本構文 Pythonでは、defキーワードを使って関数を定義します。関数はコードの再利用性を高め、ロジックをモジュール化するのに役立ちます。 def 関数名(パラメータリスト): # 関数本体 return 戻り値 # 省略可能(その場合 None を返す) 例として、学生情報を出力する関数を定義できます: def show_student(name, age, gender): print(f"氏名: {n ...

6月29日 18:24 投稿

async/awaitの高度な活用方法

async/awaitと高階関数 配列内の要素に対して非同期処理を実行する必要がある場合、async/awaitとmapやfilterなどの高階関数を組み合わせることで、効率的な実装が可能になります。 // 非同期フィルター関数 async function asyncFilter(collection, predicate) { const results = await Promise.all(collection.map(predicate)); return collection.filter((_item ...

5月13日 15:29 投稿