今注目のニュース
爪切りが嫌すぎて気絶した……!? スーッと倒れる演技派ワンコの動画が話題
スッ…と立ち上がり、水をすくって飲む猫。まるで人間のような洗練された所作に「お上品だ」「可愛い」の声
就活で本当にアピールできる"学生時代に力を入れたこと"は? ただ長期インターンをしているだけではダメ

関数型言語単語

カンスウガタゲンゴ

掲示板をみる(14)
  • twitter
  • facebook
  • はてな
  • LINE

関数型言語とはプログラミング言語の一カテゴリ。書き込みできるメモリを持たず、全ては関数で作られるという世界観を持つ。 

広い意味では、関数世界観を基調としつつ、時々ズルしてメモリを使う言も含む。

 概要

チューリングマシン系の言(手続き型言語)では、プログラム関数メモリ間だが、関数型言語は本当に関数しか使わない。でもちゃんとチューリング完全

CとかJavaとかしか知らない人間から見ると摩訶不思議だが、単にメモリメモリに見えないというだけで、持続的な記憶自体は「実行文脈」という形で存続している。

ピュア関数としてはHaskellが有名。Lisp、MLなんかはズルするクチ。

一覧

関数型言語というのは、「数学的」関数を扱う言であり、数学関数とは副作用を認めず、必然的に参照透過となる。しかし、それでは実行結果の表示すらすることができないので、何らかの妥協が必要になる。この妥協の仕方で純関数型言語と非純関数型言語に分かれる。

純粋関数型言語

関数型言語は、副作用が混じらず純である。副作用モナドなどの機構を用いて純部分から分離されている。

非純粋関数型言語

一方、非純関数型言語では、多少の制約を受けるものの厳密な分離を行わなくても副作用を扱うことができるようになっている。

Lispは関数型言語の元祖だが、後続の言べると厳密さを欠いているため、関数型言語の分類から相対的に外されることもある。

関数型プログラミング可能な言語

後付けで関数型プログラミングが可になった言や、関数型プログラミングが最重要視されない言まで関数型言語と呼ぶべきかどうかは人によって意見が異なるところではある。

関連項目

関連リンク

掲示板

急上昇ワード

最終更新:2019/09/18(水) 01:00

ほめられた記事

最終更新:2019/09/18(水) 01:00

☆オススメの関連コンテンツ

動画

この記事名で動画を検索

静画(イラスト)

この記事名で静画を検索

ニュース

この記事名でニュースを検索

ウォッチリストに追加しました!

すでにウォッチリストに
入っています。

OK

追加に失敗しました。

OK

追加にはログインが必要です。

       

ほめた!

すでにほめています。

すでにほめています。

ほめるを取消しました。

OK

ほめるに失敗しました。

OK

ほめるの取消しに失敗しました。

OK

ほめるにはログインが必要です。

TOP