代数的データ型(だいすうてきデータがた、英: algebraic data type)とはプログラミング、特に関数型プログラミングや型システムにおいて使われるデータ型である。それぞれの代数的データ型の値には、1個以上のコンストラクタがあり、各コンストラクタには0個以上の引数がある。 代数的データ型の値(データ)の感覚的な説明としては、引数で与えられた他のデータ型の値を、コンストラクタで包んだようなもの、である。コンストラクタに引数がある代数データ型は複合型(他のデータ型を組み合わせて形成する型)である。
Pure function, a function that does not have side effects Purely functional data structure, a persistent data structure that does not rely on mutable state Purely functional programming, a programming paradigm that does not rely on mutable state
一般に再帰呼び出しが可能な言語では、サブルーチン呼び出しのたびにスタックに呼び出し先から戻るための情報を保存する。そのため再帰が深くなりすぎるとスタックオーバーフローでプログラムが異常終了する。 そのような場合、次のようにループに変換して回避する。 { 変換前 } function F (a1:T1, a2:T2, ..., an:Tn) : T0 begin P ; return func (b1, b2, ..., bn) ; end ; { 変換後 } function F (a1:T1, a2:T2, ..., an:Tn) : T0 begin loop P ; a1 := b1 ; a2 := b2 ; : an := bn ; end loop ; end ; { Ti は型、P は手続き、bi は値または a1~an に対する副作用を伴わない式である。 それ以外の識別子は変
Elixir does not provide loop constructs. Instead we leverage recursion and high-level functions for working with collections. This chapter will explore the former. Loops through recursionDue to immutability, loops in Elixir (as in any functional programming language) are written differently from imperative languages. For example, in an imperative language like C, one would write: for(i = 0; i < si
Why functional programming? Why Haskell? 1. Getting started 2. Types and functions 3. Defining types, streamlining functions 4. Functional programming 5. Writing a library: working with JSON data 6. Using typeclasses 7. Input and output 8. Efficient file processing, regular expressions, and file name matching 9. I/O case study: a library for searching the filesystem 10. Code case study: parsing a
タプル(英: tuple、英語発音: [tʌp(ə)l, tuːp(ə)l]、タプル、トゥープル)とは、複数の構成要素からなる組を総称する一般概念であり、カタカナ語としては主に計算機科学において順序付けられた対象の並びを表すために用いられる。n 個でできた組を英語で「n-tuple」と書くことに由来し、数学では日本語に訳す場合、通常「n 組」とし、タプルの概念そのものも組と呼ばれる。なお、 n-tuple は数学のタプルを意味するほか、同様に double、triple などの拡張として倍数詞の表現にも利用される(詳細は「倍#西洋数学における n 倍を表す表現」を参照)。 集合論では n 組 (n-tuple) とは n 個の対象 a1, a2, ..., an の順序づけられた組であり、普通、括弧でくくって (a1, a2, a3, ..., an) のように書かれる。 タプルが順序づけ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く