ロゴ
ユニオンペディア
コミュニケーション
Google Play で手に入れよう
新しい! あなたのAndroid™デバイスでユニオンペディアをダウンロードしてください!
無料
ブラウザよりも高速アクセス!
 

Haskell

索引 Haskell

Haskell(ハスケル)は非正格な評価を特徴とする純粋関数型プログラミング言語である。名称は数学者であり論理学者であるハスケル・カリーに由来する。.

109 関係: Association for Computing Machinery参照透過性変数定義定数二分木代数的データ型引数依存型依存性の注入例外処理圏論マサチューセッツ工科大学ネイピア数ハードウェア記述言語ハスケル・カリーバックドアポリモーフィズムポートランド (オレゴン州)メタプログラミングモナド (プログラミング)モジュールライブラリリストリスト (抽象データ型)ボディマス指数トランププログラミング言語パーサー (曖昧さ回避)パブリックドメインパターンマッチングデータ型デファクトスタンダードフラグ (コンピュータ)ファイル (コンピュータ)フィボナッチ数インタプリタエラーエラーメッセージエコー (コンピュータ)オープンソースオブジェクト指向オフサイドルールカリー化ガード (プログラミング)ガベージコレクショングラフィカルユーザインタフェースグラスゴー大学コマンドラインインタプリタコンパイラ...コンパイラコンパイラコンピュータ・アーキテクチャスペーススートゼロ除算ソートソフトウェアテストタプル再帰円周率先行評価副作用 (プログラム)Clean第一級関数等号糖衣構文素数無限Elm (プログラミング言語)階乗Extensible Markup Language遅延評価静的型付け高階関数論理学者関数型言語配列逆ポーランド記法FactorGHCHello worldJavaScript Object NotationLinspireMirandaOpenGLPortable Document FormatQuickCheckYacc投機的実行束縛 (情報工学)正の数と負の数正規表現演算子の優先順位文字列数学数学者教科書手続き型プログラミング1985年1987年1990年1997年1999年2001年2002年2003年2004年2005年2006年 インデックスを展開 (59 もっと) »

Association for Computing Machinery

Association for Computing Machinery (ACM) は、ニューヨークに本部のあるコンピュータ科学分野の国際学会。1947年設立。IEEEとともに、この分野で最も影響力の強い学会であり、IEEEがその名と由来や歴史からエレクトロニクスや通信分野の工学に強いのに対し、数学的な理論計算機科学のような分野もカバーする。日本語に訳して「計算機械学会」とされることもあるが、こんにちこの訳語が用いられることはほとんどなく、通常は単に"ACM"という略称で呼ばれるのがもっぱらである。ACMの「A」は Association (学会、団体) の頭文字であるが、アメリカ数学会 (AMS) と混同して「米国計算機学会」と誤訳されることがある。 数多くの国際会議を開催しており、人目を惹くデモ映像のSIGGRAPHやSIGMODなどはよく知られている。他の多くの学会と同様にすぐれた業績などへの表彰もおこなっているが、チューリング賞は、特にこの分野の最高の賞とみなされており、物理や化学といった分野におけるノーベル賞に匹敵するものと扱われることもある(他の賞についても時折「~のノーベル賞」といったような表現が使われることがあるが、この分野の全てを対象とした世界トップクラスの賞という位置づけにあるのはチューリング賞をおいて他にない)。.

新しい!!: HaskellとAssociation for Computing Machinery · 続きを見る »

参照透過性

参照透過性(さんしょうとうかせい、Referential transparency)は、計算機言語の概念の一種である。ある式が参照透過であるとは、その式をその式の値に置き換えてもプログラムの振る舞いが変わらない(言い換えれば、同じ入力に対して同じ作用と同じ出力とを持つプログラムになる)ことを言う。具体的には変数の値は最初に定義した値と常に同じであり、関数は同じ変数を引数として与えられれば同じ値を返すということになる。当然変数に値を割り当てなおす演算である代入 (Assignment) を行う式は存在しない。このように参照透過性が成り立っている場合、ある式の値、例えば関数値、変数値についてどこに記憶されている値を参照しているかということは考慮する必要がない、即ち参照について透過的であるといえる。 参照透過性が成り立つ言語は式の値がプログラムのテキストから定まるという特徴から宣言型言語 (Declarative language) と呼ばれたり、関数の数学的性質が保たれるという特徴から純粋関数型言語 (Pure functional language) と呼ばれたりする。一方変数の値の変更が認められているような参照透過的でない言語を手続き型言語と呼ぶ。ただ、手続き型言語は機械語プログラミングとの繋がりという歴史的な事情により手続きが式でなく命令列で表現されたことから命令型言語と呼ばれることもあり、そのような場合との対比で単に式(例えば関数や変数の組み合わせ)でプログラムが表現されているだけの言語、あるいは高階関数の仕組みを備えた言語をひっくるめて、代入が可能であるかないかを問わず、関数型言語と呼ぶことも多い。結局現状では単に関数型言語という場合は参照透過的な言語(即ち純粋関数型言語)とそうでない関数型言語を両方とも含むということになっている。 また以上に関連して分散処理を記述する場合に、あるデータがどのノード上にあるかを意識せず透過的にアクセスできるという性質も参照透過性と呼ばれる。.

新しい!!: Haskellと参照透過性 · 続きを見る »

変数

変数(variable).

新しい!!: Haskellと変数 · 続きを見る »

定義

定義(ていぎ)は、一般にコミュニケーションを円滑に行うために、ある言葉の正確な意味や用法について、人々の間で共通認識を抱くために行われる作業。一般的にそれは「○○とは・・・・・である」という言い換えの形で行われる。基本的に定義が決められる場合は1つである。これは、複数の場合、矛盾が生じるからである。.

新しい!!: Haskellと定義 · 続きを見る »

定数

数学における定数(ていすう、じょうすう、constant; 常数)あるいは定項 (constant term) は、二つの異なる意味を示し得る。そのひとつは固定 (fix) され、矛盾なく定義された数(またはもっとほかの数学的対象)であり、この意味で言う定数であることをはっきりさせるために「数学定数」(あるいは「物理定数」もそうだが)という語を用いることもある。もう一つの意味は、定数函数またはその(これらはふつうたがいに同一視される)を指し示すもので、この意味での「定数」は扱う問題における主変数に依存しない変数という形で表されるのが普通である。後者の意味での例として、は、与えられた函数の原始函数をすべて得るために特定の原始函数に加えられる、任意の(積分変数に依存しないという意味での)定数函数を言う。 例えば、一般の二次函数はふつう を定数(あるいはパラメタ)として のようにあらわされる。ここに変数 は考えている函数の引数のプレースホルダとなるものである。より明示的に のように書けば がこの函数の引数であることが明瞭で、しかも暗黙の裡に が定数であることを提示できる。この例では、定数 はこの多項式の係数と呼ばれる。 の項は を含まないからと呼ばれ(これを の係数と考えることができる)、多項式において次数が零の任意の項または式は定数である。.

新しい!!: Haskellと定数 · 続きを見る »

二分木

二分木(binary tree; 二進木、バイナリツリー)は、データ構造の1つである。根付き木構造の中で、あるノード(節点 node)が持つ子の数が高々2であるものをいう。典型的には2つの子はそれぞれ「左」「右」と呼ばれる。 たとえば、二分探索や二分ヒープを実装するために使われる。 簡単な二分木。大きさ9、深さ3、根は値2を持つ 以後、括弧の中は英語表記。.

新しい!!: Haskellと二分木 · 続きを見る »

代数的データ型

代数的データ型(Algebraic data type)とはプログラミング、特に関数型プログラミングや型システムにおいて使われるデータ型である。それぞれの代数的データ型の値には、1個以上のコンストラクタがあり、各コンストラクタには0個以上の引数がある。 代数的データ型の値(データ)の感覚的な説明としては、引数で与えられた他のデータ型の値を、コンストラクタで包んだようなもの、である。コンストラクタに引数がある代数データ型は複合型(他のデータ型を組み合わせて形成する型)である。.

新しい!!: Haskellと代数的データ型 · 続きを見る »

引数

引数(ひきすう)は、数学における関数やコンピュータプログラムにおける手続きにおいて、その外部と値をやりとりするための特別な変数、あるいはその変数の値のことである。 数学や最適化問題に関するそれ(「パラメータ」とカタカナで表現されることが多い)については「媒介変数」の記事を参照のこと。以下は専らコンピュータプログラミングに関して説明する。 関数・サブルーチン・メソッド等を定義する時に、外部から値を渡される特別な変数として指定されるのが仮引数。関数(等)を呼出す式において、仮引数に対応する式(あるいはその値)が実引数である。実行時には、実引数の値を仮引数が受け取る。 「引数」を「いんすう」と読む読み方もあるが、術語としては変則的に湯桶読みして「ひきすう」としている。数学分野で因数との取違えを防ぐためといった理由もある。.

新しい!!: Haskellと引数 · 続きを見る »

依存型

計算機科学と論理学において、依存型 (dependent type) とは値に依存する型のことである。数学の型理論の表現形式と計算機科学における型システムの特徴を併せ持つ。直観主義的型理論においては、全称量化子や存在量化子のような論理学における量化子をエンコードするために依存型が用いられている。ATS (プログラミング言語)、Agda、Idris、Epigramなどのいくつかの関数型プログラミング言語では、依存型を使った非常に表現力の強い型によって、バグを防止している。 依存型の中でも、依存関数と依存ペアは特によく使われている。依存関数の戻り値の型は、引数の型だけではなく引数の値に応じて変化する。例えば、整数"n"を引数に取る依存関数は長さ"n"の配列を返すことができる。 (これは、型そのものを引数として取ることができるというポリモーフィズムとは別の概念である。) 依存ペアでは、2番目の型が1番目の値に応じて変化する。依存ペアを使うと、2番目の値が1番目の値よりも大きいような整数の対をエンコードすることができる。 依存型を入れた型システムは、より複雑になる。プログラム中に出現する2つの依存型が等しいかどうかを判定するとき、プログラムの一部を実行する必要があるかもしれない。特に、依存型に任意の式を含めることが許される場合、型の同値性判定は任意に与えられた2個のプログラムが同じ結果をもたらすかどうかを判定する問題を含んでしまう。したがって、この場合は型検査は決定不能となってしまう。.

新しい!!: Haskellと依存型 · 続きを見る »

依存性の注入

依存性の注入(いそんせいのちゅうにゅう、Dependency injection)とは、コンポーネント間の依存関係をプログラムのソースコードから排除し、外部の設定ファイルなどで注入できるようにするソフトウェアパターンである。英語の頭文字からDIと略される。.

新しい!!: Haskellと依存性の注入 · 続きを見る »

例外処理

例外処理(れいがいしょり)とは、プログラムの上位の処理から呼び出されている下位の処理で継続不能、または継続すれば支障をきたす異常事態に陥ったとき、制御を呼び出し元の上位の処理に返し安全な状態になるよう回復処理をすること。その際に発生した異常のことを例外と呼ぶ。 継続不能や継続すると問題になる様な状態としては、次のようなものが挙げられる。.

新しい!!: Haskellと例外処理 · 続きを見る »

圏論

圏論(けんろん、category theory)は、数学的構造とその間の関係を抽象的に扱う数学理論の 1 つである。 考えている種類の「構造」を持った対象とその構造を反映するような対象間の射の集まりからなる圏が基本的な考察の対象になる。 数学の多くの分野、また計算機科学や数理物理学のいくつかの分野で導入される一連の対象は、しばしば適当な圏の対象たちだと考えることができる。圏論的な定式化によって同種のほかの対象たちとの、内部の構造に言及しないような形式的な関係性や、別の種類の数学的な対象への関連づけなどが統一的に記述される。.

新しい!!: Haskellと圏論 · 続きを見る »

マサチューセッツ工科大学

マサチューセッツ工科大学(英語: Massachusetts Institute of Technology)は、アメリカ合衆国マサチューセッツ州ケンブリッジに本部を置く私立工科大学である。1865年に設置された。通称はMIT(エム・アイ・ティー。「ミット」は誤用で主に日本、欧州の極めて一部で用いられる)。 全米屈指のエリート名門校の1つとされ、ノーベル賞受賞者を多数(2014年までの間に1年以上在籍しMITが公式発表したノーベル賞受賞者は81名で、この数はハーバード大学の公式発表受賞者48名を上回る)輩出している。最も古く権威ある世界大学評価機関の英国Quacquarelli Symonds(QS)による世界大学ランキングでは、2012年以来2017年まで、ハーバード大学及びケンブリッジ大学を抑えて6年連続で世界第一位である。 同じくケンブリッジ市にあるハーバード大学とはライバル校であるが、学生達がそれぞれの学校の授業を卒業単位に組み込める単位互換制度(Cross-registration system)が確立されている。このため、ケンブリッジ市は「世界最高の学びのテーマパーク」とさえも称されている。物理学や生物学などの共同研究組織を立ち上げるなど、ハーバード大学との共同研究も盛んである。 MITはランドグラント大学でもある。1865年から1900年の間に約19万4千ドル(これは2008年時点の生活水準でいうところの380万ドルに相当)のグラントを得、また同時期にマサチューセッツ州から更なる約36万ドル(2008年時点の生活水準で換算して700万ドルに相当)の資金を獲得しているD.

新しい!!: Haskellとマサチューセッツ工科大学 · 続きを見る »

ネイピア数

1.

新しい!!: Haskellとネイピア数 · 続きを見る »

ハードウェア記述言語

ハードウェア記述言語(ハードウェアきじゅつげんご、hardware description language、HDL)は、デジタル回路、特に集積回路を設計するためのコンピュータ言語ないしドメイン固有言語(DSL)である。回路の設計、構成を記述する。処理を検証するための試験(テストベンチ)記述ができ、シミュレーションできる開発環境もある。 プログラミング言語との類似性が見られる機能がある言語もあることから、プログラミング言語の一種などとする誤解が非常に多いが、間違いである。また、プログラマブルロジックコントローラの記述に用いられるラダー言語は別のものと扱われている。.

新しい!!: Haskellとハードウェア記述言語 · 続きを見る »

ハスケル・カリー

ハスケル・ブルックス・カリー(Haskell Brooks Curry、1900年9月12日 - 1982年9月1日)はアメリカの数学者、論理学者。.

新しい!!: Haskellとハスケル・カリー · 続きを見る »

バックドア

バックドア(backdoor)とは、直訳すれば「裏口」または「勝手口」のこと。防犯・犯罪学などでは、「正規の手続きを踏まずに内部に入ることが可能な侵入口」を指している。この記事では、主にコンピュータセキュリティの用語としてのバックドアについて述べる。.

新しい!!: Haskellとバックドア · 続きを見る »

ポリモーフィズム

ポリモーフィズム()とは、プログラミング言語の型システムの性質を表すもので、プログラミング言語の各要素(定数、変数、式、オブジェクト、関数、メソッドなど)についてそれらが複数の型に属することを許すという性質を指す。ポリモルフィズム、多態性、多相性、多様性とも呼ばれる。対義語はモノモーフィズム(Monomorphism)、単態性、単相性で、プログラミング言語の各要素が唯一つの型に属するという性質を指す。 ポリモーフィズムは次のようないくつかの種類に分けられる。.

新しい!!: Haskellとポリモーフィズム · 続きを見る »

ポートランド (オレゴン州)

ポートランド()は、アメリカ合衆国オレゴン州北西部マルトノマ郡にある都市。同州最大の都市かつ同郡の郡庁所在地である。太平洋岸北西部ではワシントン州シアトル、カナダブリティッシュコロンビア州バンクーバーに次いで3番目に人口が多い。 ポートランドは環境に優しい都市であるとされ、その評価は全米第1位、世界で見てもアイスランドのレイキャヴィークに次いで第2位と言われる。 2009年10月にフォーブス誌は、ポートランドを全米で3番目に安全な都市にランクした。しかし治安については、犯罪発生率で殺人を除く全カテゴリーで全米平均を上回っている。 また、強力な土地利用計画を行っていることで有名で、オレゴン地域政府「メトロ」がサポートするライトレールシステムへの投資でもよく知られる。そして、地ビールや蒸留酒を生産する小規模な醸造所(マイクロブルワリー)や蒸留所(マイクロディスティラリー)が数多く存在し、コーヒーの消費も非常に盛んである。 温暖な気候によりバラの栽培に非常によく適しているため、市内には国際バラ試験農園を筆頭として多くのバラ園が散在し、ポートランドは100年以上に渡り「バラの町」(The City of Roses)の異名で知られ、最も一般的な愛称ともなっており.

新しい!!: Haskellとポートランド (オレゴン州) · 続きを見る »

メタプログラミング

メタプログラミング (metaprogramming) とはプログラミング技法の一種で、ロジックを直接コーディングするのではなく、あるパターンをもったロジックを生成する高位ロジックによってプログラミングを行う方法、またその高位ロジックを定義する方法のこと。主に対象言語に埋め込まれたマクロ言語によって行われる。.

新しい!!: Haskellとメタプログラミング · 続きを見る »

モナド (プログラミング)

関数型プログラミングにおいて、モナド(monad)は計算を表現する構造であり、計算ステップの列からなる。つまり、型がモナド構造をもつというのは、命令を繋げるやり方、言い換えるとその型をもつ関数をネストさせる規則が定まっていることをいう。これはプログラマがパイプラインを作ることを可能にする。パイプラインでは入力データを1ステップずつ処理するが、モナドは各アクションに追加の処理規則を上乗せすることができるO'Sullivan, Bryan; Goerzen, John; Stewart, Don.

新しい!!: Haskellとモナド (プログラミング) · 続きを見る »

モジュール

モジュール(module)とは、工学などにおける設計上の概念で、システムを構成する要素となるもの。いくつかの部品的機能を集め、まとまりのある機能を持った部品のこと。モジュールに従っているものをモジュラー (modular)という。 入出力を絞り込み、標準化することで、システム開発を「すり合わせ」から「モジュールの組合わせ」にすることができる。.

新しい!!: Haskellとモジュール · 続きを見る »

ライブラリ

ライブラリ()は、汎用性の高い複数のプログラムを再利用可能な形でひとまとまりにしたものである。ライブラリと呼ぶ時は、それ単体ではプログラムとして作動させることはできない実行ファイルではない場合がある。ライブラリは他のプログラムに何らかの機能を提供するコードの集まりと言うことができる。ソースコードの場合と、オブジェクトコード、あるいは専用の形式を用いる場合とがある。たとえば、UNIXのライブラリはオブジェクトコードをarと呼ばれるアーカイバでひとまとめにして利用する。図書館()と同様にプログラム(算譜)の書庫であるので、索引方法が重要である。 また、ソフトウェア以外の再利用可能なものの集合について使われることもある。.

新しい!!: Haskellとライブラリ · 続きを見る »

リスト

リスト.

新しい!!: Haskellとリスト · 続きを見る »

リスト (抽象データ型)

抽象データ型としてのリスト(list)は、順序つきのデータコンテナとして定義される。 リストはたいてい配列や連結リストを使って実装される。これは配列や連結リストと似た特性を持っているからである。また連結リストのことを単にリストと呼ぶこともある。順序を持つ点を強調してシーケンス(列; sequence)と呼び、連結リストと区別することもある。.

新しい!!: Haskellとリスト (抽象データ型) · 続きを見る »

ボディマス指数

ボディマス指数(ボティマスしすう)とは、体重と身長の関係から算出される、ヒトの肥満度を表す体格指数である。一般にBMI と呼ばれる。 ケトレー指数 とも呼ぶ。カウプ指数 とも呼び、主に乳幼児に対して呼ばれる。 体重がwkg、身長がhm(cmではないことに注意)の人のBMIは、 で表される。例えば身長160cm (1.6m)、体重50kgの場合、 となる。単位は“kg/m2”。.

新しい!!: Haskellとボディマス指数 · 続きを見る »

トランプ

cœur ロワ・ド・クール(=ハートのキング)が1枚見せてある。フランスのカードは、王などに具体的な人物像があてはめられていて、絵が1枚1枚異なっている。 ジョーカーが加わる。英語圏で普及。明治以降の日本でも普及した。 トランプは、日本ではカードを使用した室内用の玩具を指すために用いられている用語で、もっぱら4種各13枚の計52枚(+α)を1セットとするタイプのものを指して言うことが多い。「プレイング・カード」「西洋かるた」とも。多種多様なゲームに用いられるほか、占いの道具としても手品(マジック)の小道具としてもよく用いられる。 起源についてははっきりしておらず諸説あるが、中国など東方で発生したものがイスラーム圏に、そしてヨーロッパに伝えられた、とするのが、ひとつの有力な説である(→#歴史)。日本では16世紀にポルトガルからラテン・スートのタイプが伝来し普及したが、明治以降の日本では英米式のカードが普及している(→#日本への伝来、#日本で一般的なカード)。.

新しい!!: Haskellとトランプ · 続きを見る »

プログラミング言語

プログラミング言語(プログラミングげんご、programming language)とは、コンピュータプログラムを記述するための形式言語である。なお、コンピュータ以外にもプログラマブルなものがあることを考慮するならば、この記事で扱っている内容については、「コンピュータプログラミング言語」(computer programming language)に限定されている。.

新しい!!: Haskellとプログラミング言語 · 続きを見る »

パーサー (曖昧さ回避)

パーサー.

新しい!!: Haskellとパーサー (曖昧さ回避) · 続きを見る »

パブリックドメイン

パブリックドメイン(public domain)とは、著作物や発明などの知的創作物について、知的財産権が発生していない状態または消滅した状態のことをいう。日本語訳として公有という語が使われることがある。 パブリックドメインに帰した知的創作物については、その知的財産権を行使しうる者が存在しないことになるため、知的財産権の侵害を根拠として利用の差止めや損害賠償請求などを求められることはないことになる。その結果、知的創作物を誰でも自由に利用できると説かれることが多い。しかし、知的財産権を侵害しなくても、利用が所有権や人格権などの侵害を伴う場合は、その限りにおいて自由に利用できるわけではない。また、ある種の知的財産権が消滅したとしても、別の知的財産権が消滅しているとは限らない場合もある(著作物を商標として利用している者がいる場合、量産可能な美術工芸品のように著作権と意匠権によって重畳的に保護される場合など)。また、各法域により法の内容が異なるため、一つの法域で権利が消滅しても、別の法域で権利が消滅しているとは限らない。したがって、特定の知的創作物がパブリックドメインであると言われる場合は、どの法域でどのような権利が不発生あるいは消滅したのかを、具体的に検討する必要がある。.

新しい!!: Haskellとパブリックドメイン · 続きを見る »

パターンマッチング

パターンマッチング (Pattern matching、パターン照合) とは、データを検索する場合に、特定のパターンが出現するかどうか、またどこに出現するかを特定する手法のことである。 文字列のパターンマッチングには、固定されたパターンの検索ではKMP法やBM法など各種の文字列探索アルゴリズムがある。また正規表現を利用する手法も多数提案されている。 画像や動画に対するパターンマッチングの研究も行われている。だが、パターンマッチングはあらかじめ人が打っておかなくてはいけないため人工知能とは別で機械が自分で考えているわけではない(そもそも「考える」ということを形式的に定義することは不可能なので、この段落の後半の「だが、」以降は、単にどこかの誰かの考える「人工知能」という語に関する主観の表明に過ぎず、意味があることを何も述べてはいない)。 いくつかの高水準プログラミング言語には、多分岐の一種で、場合分けと同時に構成要素の取り出しのできる言語機能があり、パターンマッチと呼ばれている。Haskellでの例を示す。 listSumCase lst.

新しい!!: Haskellとパターンマッチング · 続きを見る »

データ型

データ型(データがた、)とは、(コンピュータにおける)データ(値)の種類に関する分類である。データタイプとも。 具体的にいうと、たとえば 0, 1, 2, -42 といったような値は整数型であり、"foo", "Hello" といったような値は文字列型である。プログラミングなどにおいて、まずデータオブジェクトや関数などの「値」について、またさらに、それらに関連付け(束縛)される変数や定数、リテラル、それらを組合せる演算子、さらにそれらからなる式といった構文上の要素の型が、データ型の議論の対象となる。.

新しい!!: Haskellとデータ型 · 続きを見る »

デファクトスタンダード

デファクトスタンダード()とは、「事実上の標準」を指す用語である。de factoはラテン語で「事実上、実際には」を意味する。.

新しい!!: Haskellとデファクトスタンダード · 続きを見る »

フラグ (コンピュータ)

ンピュータ関係でいうフラグ(flag)とは、真か偽か・0か1か・マイナスが付くか付かないか、などといった情報量が1ビットの値(情報)を状態として保持する、レジスタや変数などのことである。.

新しい!!: Haskellとフラグ (コンピュータ) · 続きを見る »

ファイル (コンピュータ)

ンピュータにおけるファイル(file)は、コンピュータでデータを扱いやすくするための仕組み。場合によってはデータセット(data set)とも呼ばれる。.

新しい!!: Haskellとファイル (コンピュータ) · 続きを見る »

フィボナッチ数

フィボナッチ数列の各項を一辺とする正方形 メインページ(2007年〜2012年)で使われていたイメージ画像もフィボナッチ数列を利用している フィボナッチ数(フィボナッチすう、Fibonacci number)は、イタリアの数学者レオナルド・フィボナッチ(ピサのレオナルド)にちなんで名付けられた数である。.

新しい!!: Haskellとフィボナッチ数 · 続きを見る »

インタプリタ

インタプリタ(interpreter)とは、プログラミング言語で書かれたソースコードないし中間表現を逐次解釈しながらするプログラムのこと。.

新しい!!: Haskellとインタプリタ · 続きを見る »

エラー

ラー (error) は、コンピュータにおいて、プログラムがそれらの実行が正常な動作でないと判断し、処理を中断または停止させる状態。.

新しい!!: Haskellとエラー · 続きを見る »

エラーメッセージ

ラーメッセージの例。フロッピーディスクにアクセスしようとし失敗したときに表示される。 エラーメッセージ(Error message)は、予期しない状態が発生したとき表示されるメッセージであり、コンピュータなどの機器で見られる。.

新しい!!: Haskellとエラーメッセージ · 続きを見る »

エコー (コンピュータ)

ー(英: echo)とは、やまびこ・こだまといったような反響現象や反響そのもののことであるが、コンピュータ関連でもやはり「こちらから送った入力をそのまま返してくるもの」を指す語として使われている。.

新しい!!: Haskellとエコー (コンピュータ) · 続きを見る »

オープンソース

ープンソース (open source) とは、言葉通りのソースコードへのアクセスが開かれている(ソースコードが公開されている)ことを意味するのではなく、ソースコードを商用、非商用の目的を問わず利用、修正、頒布することを許し、それを利用する個人や団体の努力や利益を遮ることがないソフトウェア開発の手法を意味する。オープンソース・イニシアティブ は、「オープンソース」と名乗るための要件として「オープンソースの定義」を掲げている。.

新しい!!: Haskellとオープンソース · 続きを見る »

オブジェクト指向

ブジェクト指向(オブジェクトしこう)とは、オブジェクト同士の相互作用として、システムの振る舞いをとらえる考え方である。英語の object-oriented (直訳は、「対象物志向の」「目的重視の」という意味の形容詞) の日本語訳である。 オブジェクト指向の枠組みが持つ道具立ては、一般的で強力な記述能力を持つ。複雑なシステム記述、巨大なライブラリ(特に部品間で緊密で複雑な相互関係を持つもの)の記述においては、オブジェクト指向の考え方は必須である。.

新しい!!: Haskellとオブジェクト指向 · 続きを見る »

オフサイドルール

フサイドルール(Off-side Rule)とは、一部のプログラミング言語において字下げによって文などのかたまりの範囲(ブロック)を示す規則である。すなわち、そのような言語ではブロックは字下げによって形成され識別される。この用語と考え方は Peter J. Landin によるもので、ここでのoff-sideは「(左端)側から離れる」という意味だが、これはサッカーなどの球技におけるオフサイド規則 (offside law) のもじりと考えられる。 レイアウト・ルールと呼ぶこともある。.

新しい!!: Haskellとオフサイドルール · 続きを見る »

カリー化

リー化 (currying, カリー化された.

新しい!!: Haskellとカリー化 · 続きを見る »

ガード (プログラミング)

ード (Guard) とは、コンピュータ・プログラミング言語において、条件式ないし条件分岐のような意味を持つもので、ある分岐で処理を続けるために真 (true) と評価されなければならない式である。偽の場合は残りの処理のほうに進む。パターンマッチングのある言語の、パターンマッチングの能力をより強化したものと見ることもできる。すなわち、パターンマッチングとして構造がマッチしていても、その構造の中身の値を評価した結果によってはスキップさせることが可能なパターンのようなもの、である。.

新しい!!: Haskellとガード (プログラミング) · 続きを見る »

ガベージコレクション

ベージコレクション(garbage collection; GC)とは、プログラムが動的に確保したメモリ領域のうち、不要になった領域を自動的に解放する機能である。「ガベージコレクション」を直訳すれば「ゴミ集め」「ごみ拾い」となる。1959年ごろ、LISPにおける問題を解決するためジョン・マッカーシーによって発明された。 メモリの断片化を解消する機能はコンパクションと呼ばれ、実現方法によってはガベージコレクションと共にコンパクションも行う仕組みになっている。そのためコンパクションを含めてガベージコレクションと呼ぶ場合もあるが、厳密には区別される。 また、ガベージコレクションを行う主体はガベージコレクタと呼ばれる。ガベージコレクタはタスクやスレッドとして実装される場合が多い。 参照カウント方式のガベージコレクションは通常煩雑なコーディングを必要とするが、それを必要なく実装したライブラリとしがある。.

新しい!!: Haskellとガベージコレクション · 続きを見る »

グラフィカルユーザインタフェース

GUIを提供するソフトウェアの1つ、GNOME グラフィカルユーザインタフェース('''G'''raphical '''U'''ser '''I'''nterface、GUI)は、コンピュータグラフィックスとポインティングデバイスなどを用いる、グラフィカル(ビジュアル)であることを特徴とするユーザインタフェース。キャラクタユーザインタフェース (CUI) やテキストユーザインタフェース (TUI) と対比して語られることが多い。.

新しい!!: Haskellとグラフィカルユーザインタフェース · 続きを見る »

グラスゴー大学

ラスゴー大学(英語:The University of Glasgow、ラテン語:Universitas Glasguensis)は、スコットランドのグラスゴー市に本部を置くイギリスの大学である。1451年に設置された。500年以上の歴史を有する英語圏最古の大学の一つであり、オックスフォード大学、ケンブリッジ大学と並ぶアンシャン・ユニヴァシティー(古代の大学)に属する大学。 中世から高位聖職者を輩出し、近世では、蒸気機関の発明や電力単位のワット(W)で知られるジェームズ・ワット、経済学の祖であり国富論を著したアダム・スミス、物理学者のウィリアム・トムソン(ケルヴィン卿)など歴史上の重要人物も多く輩出している。また、日本の産業発展に貢献すべく創設された工部大学校(東京大学工学部の前身)で教鞭を執ったヘンリー・ダイアーも本学の出身である。近代に入ると、世界各国からエリート層が留学して来るようになり、母国で政治家や科学者となって国家に貢献した卒業生も多い。日本からの留学生も帰国後に名声を得たものが多く、著名人としては化学者の高峰譲吉、ニッカの竹鶴政孝(ドラマ「マッサン」モデル)、男爵いもの川田龍吉男爵、三菱財閥の岩崎隆弥、物理学者の田中舘愛橘が挙げられる。 大学は英国のアイビー・リーグとも言われているラッセル・グループの一員で、また国際的に重要な大学から組織されているウニベルジタツ21の創立メンバーの一員でもある。医学、歯学、獣医学の分野では、英国最高峰に位置し、特に医学部はGlasgow Coma Scaleの研究で世界に知られている。また、工学部は英国で最初に設置された工学部(1840年)であり、産業革命で大きな役割を果たした。2007年現在、同大学に関係するノーベル賞受賞者は7名に上る。.

新しい!!: Haskellとグラスゴー大学 · 続きを見る »

コマンドラインインタプリタ

マンドラインインタプリタ は、コンピュータのコマンドライン、すなわち、ユーザによりキーボードなどから入力される文字列の行(ライン)のコマンドを解釈し、オペレーティングシステム(以下、OS)やプログラミング言語処理系などに渡す、コマンドラインインタフェースであり、キャラクタユーザインタフェースを構成する要素である。OSの標準ユーティリティとしてはコマンドラインシェルがあり、いくつかのプログラミング言語処理系が持つそれに関しては:en:Read–eval–print loopも参照。.

新しい!!: Haskellとコマンドラインインタプリタ · 続きを見る »

コンパイラ

ンパイラ(英:compiler)とは、コンピュータ・プログラミング言語の処理系(言語処理系)の一種で、高水準言語によるソースコードから、機械語に(あるいは、元のプログラムよりも低い水準のコードに)変換するプログラムである。.

新しい!!: Haskellとコンパイラ · 続きを見る »

コンパイラコンパイラ

ンパイラコンパイラ.

新しい!!: Haskellとコンパイラコンパイラ · 続きを見る »

コンピュータ・アーキテクチャ

ンピュータ・アーキテクチャ(computer architecture)は、コンピュータ(特にハードウェア)における基本設計や設計思想などを意味する。アーキテクチャ(建築)には、単に「建築物」以外に、設計や様式という意味があるが、それから転じて、コンピュータ分野においても使われるようになった。「設計思想」などと意訳されることもある。技術者や研究者の用語としては(企業ごとの用語の違いにもよるが)「方式」という語が使われることもある。 1964年のSystem/360で最初に使われた用語で、その際の意味としては、入出力インタフェースを含むコンピュータシステムのハードウェア全体(周辺機器自体は含まない)の、ユーザー(プログラマ、OSを設計するプログラマも含む)から見たインタフェースの定義であり、具体的には使用できるレジスタの構成、命令セット、入出力(チャネルコントロールワード)などであり、実装は含まない。このアーキテクチャが同一のコンピュータ間や、上位互換のアーキテクチャを持つコンピュータへの移行や、上位互換の周辺機器への移行などは、ソフトウェアの互換性が原則として保証される。またハードウェアの内部設計や実装は、定義されたアーキテクチャを守る限り、技術の進歩に応じて自由に更新できる。この結果、コンピュータ・ファミリー(シリーズ)が形成可能となる。現在で言えばレイヤー定義であり仮想化の一種でもある。 また、システムアーキテクチャ、エンタープライズアーキテクチャ、ソフトウェアアーキテクチャ、ARMアーキテクチャなどの用語も増えている。.

新しい!!: Haskellとコンピュータ・アーキテクチャ · 続きを見る »

スペース

ペース(space)は、ラテン文字、ギリシア文字、キリル文字などにおいて、語と語の区切りを表すために空ける空白、またその他の字間の空白のことである。 ヘブライ語やアラブ語においては、早い時期から単語の区切りを表すのに空白が置かれていた。ラテン文字で最初に使われたのはアイルランド語で、時期は600年から800年頃と考えられている。それまでラテン文字では中黒が使われていた。.

新しい!!: Haskellとスペース · 続きを見る »

スート

ート(suit)とは、トランプ、あるいはタロットの小アルカナに書かれているマークの事。スーツとも呼ぶ。近代以前の日本で行われた天正かるた・うんすんカルタなどでは「紋標(もんじるし)」と呼ばれることがある。.

新しい!!: Haskellとスート · 続きを見る »

ゼロ除算

算(ゼロじょざん、division by zero)は、0で除す割り算のことである。このような除算は除される数を a とするならば、形式上は と書くことができるが、数学において、この式と何らかの意味のある値とが結び付けられるかどうかは、数学的な設定にまったく依存している話である。少なくとも通常の実数の体系とその算術においては、意味のある式ではない。 コンピュータなど計算機においても、ゼロ除算に対するふるまいは様々である。たとえば浮動小数点数の扱いに関する標準であるIEEE 754では、数とは異なる無限大を表現するものが結果となる。 しかし、浮動小数点以外の数値型(整数型など)においては多くの場合無限大に相当する値は定義されておらず、またいくつかの除算アルゴリズムの単純な実装(取尽し法など)においては無限ループに陥りかねないなど演算処理の中でも特異なふるまいとなるため、演算前にゼロ除算例外を発生させることで計算そのものを行わせないか、便宜上型が表現できる最大の数値、あるいはゼロを返すなどの特殊な処理とされる場合が多い(後述) 計算尺では、対数尺には0に相当する位置が存在しない(無限の彼方である)ため計算不可能である。.

新しい!!: Haskellとゼロ除算 · 続きを見る »

ソート

ート は、データの集合を一定の規則に従って並べること。日本語では整列(せいれつ)と訳される。(以前はその原義から分類という訳語が充てられていたが、もう使われていない) 主にコンピュータソフトにおけるリストに表示するデータに対し、全順序関係によって一列に並べることを指す。また、単に「ソート」といった場合、値の小さい方から大きい方へ順に並べる昇順(しょうじゅん、)を指すことが多い。その反対に値を大きい方から小さい方へ順に並べることを降順(こうじゅん、)という。 対象となるデータのデータ構造や必要な出力によって、使われるアルゴリズムは異なる。.

新しい!!: Haskellとソート · 続きを見る »

ソフトウェアテスト

フトウェアテスト()は、コンピュータのプログラムから仕様にない振舞または欠陥(バグ)を見つけ出す作業のことである。ソフトウェアテストで見つかったプログラム中の欠陥を修正する作業をデバッグという。ソフトウェアテストに成功するとは、テストで欠陥が発見されるか、規定した試験項目にすべて合格するか、規定した品質目標に到達することである。目標とした品質には、規定した試験項目にすべて合格することもある。例えば、OS, プログラミング言語では、仕様を満たしているかどうかの適合試験を規定している。ソフトウェアテストでは、欠陥が存在することを示すことはできるが、欠陥が存在しないことは証明できない。ソフトウェアに仕様にない振舞がないことを保証する作業を証明といい、証明用のシステム、証明しやすい言語も多数存在している。本項では動的なソフトウェアテストを中心に扱う。.

新しい!!: Haskellとソフトウェアテスト · 続きを見る »

タプル

タプルまたはチュープル(tuple)とは、複数の構成要素からなる組を総称する一般概念。 数学や計算機科学などでは通常、順序付けられた対象の並びを表すために用いられる。個別的には、n 個でできた組を英語で「n-tuple」と書き、日本語に訳す場合は通常「n 組」としている。タプルの概念そのものも組と呼ばれる場合がある。なお、 n-tuple は数学のタプルを意味するほか、同様に double、triple などの拡張として倍数詞の表現にも利用される(詳細は「倍#西洋数学における n 倍を表す表現」を参照)。.

新しい!!: Haskellとタプル · 続きを見る »

再帰

再帰(さいき)は、あるものについて記述する際に、記述しているものそれ自身への参照が、その記述中にあらわれることをいう。定義において、再帰があらわれているものを再帰的定義という。 主に英語のrecursionとその派生語の訳にあてられる。他にrecurrenceの訳(回帰#物理学及び再帰性を参照のこと)や、reflexiveの訳として「再帰」が使われることがある。数学的帰納法との原理的な共通性から、recursionの訳として数学では「帰納」を使うことがある。.

新しい!!: Haskellと再帰 · 続きを見る »

円周率

円周率(えんしゅうりつ)は、円の周長の直径に対する比率として定義される数学定数である。通常、ギリシア文字 (パイ、ピー、ラテン文字表記: )で表される。数学をはじめ、物理学、工学といった様々な科学分野に出現し、最も重要な数学定数とも言われる。 円周率は無理数であり、その小数展開は循環しない。円周率は、無理数であるのみならず、超越数でもある。 円周率の計算において功績のあったルドルフ・ファン・コーレンに因み、ルドルフ数とも呼ばれる。ルドルフは、小数点以下35桁までを計算した。小数点以下35桁までの値は次の通りである。.

新しい!!: Haskellと円周率 · 続きを見る »

先行評価

先行評価(せんこうひょうか、eager evaluation)、正格評価(せいかくひょうか、strict evaluation)、厳密評価とは、プログラミング言語における評価戦略の一種であり、多くの言語処理系で標準的に使われている戦略である。.

新しい!!: Haskellと先行評価 · 続きを見る »

副作用 (プログラム)

プログラミングにおける副作用(ふくさよう)とは、ある機能がコンピュータの(論理的な)状態を変化させ、それ以降で得られる結果に影響を与えることをいう。代表的な例は変数への値の代入である。 例えば与えられた数字を二倍して返す機能"double"があるとする。 このような機能では次のことが成立する。.

新しい!!: Haskellと副作用 (プログラム) · 続きを見る »

Clean

Clean(クリーン)は、プログラミング言語の一つで、純粋関数型言語である。Haskell とよく似ている。 により、参照透過性を保ちつつ、ファイルの破壊的な更新などができる。これは、参照透過性を保つためには値を複製した上で結果として返す必要があるが、その後複製元を二度と使用しない(参照しない)ことが保証できるのであれば、わざわざ複製せずとも直接破壊的に値を更新しても構わない、という考え方に基づく。例えば、変数aに1を加算するには a.

新しい!!: HaskellとClean · 続きを見る »

第一級関数

計算機科学において、第一級関数(だいいっきゅうかんすう、first-class function、ファーストクラスファンクション), by Michael Lee Scott, section 11.2 "Functional Programming".

新しい!!: Haskellと第一級関数 · 続きを見る »

等号

等号(とうごう)は.

新しい!!: Haskellと等号 · 続きを見る »

糖衣構文

糖衣構文(とういこうぶん、)は、プログラミング言語において、読み書きのしやすさのために導入される書き方であり、複雑でわかりにくい書き方と全く同じ意味になるものを、よりシンプルでわかりやすい書き方で書くことができるもののことである。構文上の書換えとして定義できるものであるとも言える。 の直訳に近い構文糖(こうぶんとう)とも言い、糖衣構文あるいは構文糖衣とするのは少々意訳的だがよく言われている。.

新しい!!: Haskellと糖衣構文 · 続きを見る »

素数

素数(そすう、prime number)とは、 より大きい自然数で、正の約数が と自分自身のみであるもののことである。正の約数の個数が である自然数と言い換えることもできる。 より大きい自然数で素数でないものは合成数と呼ばれる。 一般には、素数は代数体の整数環の素元として定義される(そこでは反数などの同伴なものも素数に含まれる)。このため、有理整数環 \mathbb Z での素数は有理素数(ゆうりそすう、rational prime)と呼ばれることもある。 最小の素数は である。素数は無数に存在する。したがって、素数からなる無限数列が得られる。 素数が無数に存在することは、紀元前3世紀頃のユークリッドの著書『原論』で既に証明されていた。 自然数あるいは実数の中での素数の分布の様子は高度に非自明で、リーマン予想などの現代数学の重要な問題との興味深い結び付きが発見されている。 分散コンピューティング・プロジェクト GIMPS により、史上最大の素数の探求が行われている。2018年1月現在で知られている最大の素数は、2017年12月に発見された、それまでに分かっている中で50番目のメルセンヌ素数 であり、十進法で表記したときの桁数は2324万9425桁に及ぶ。.

新しい!!: Haskellと素数 · 続きを見る »

無限

無限(むげん、infinity、∞)とは、限りの無いことである。 直感的には「限界を持たない」というだけの単純に理解できそうな概念である一方で、直感的には有限な世界しか知りえないと思われる人間にとって、無限というものが一体どういうことであるのかを厳密に理解することは非常に難しい問題を含んでいる。このことから、しばしば哲学、論理学や自然科学などの一部の分野において考察の対象として無限という概念が取り上げられ、そして深い考察が得られている。 本項では、数学などの学問分野において、無限がどのように捉えられ、どのように扱われるのかを記述する。.

新しい!!: Haskellと無限 · 続きを見る »

Elm (プログラミング言語)

Elmはウェブブラウザベースのグラフィカルユーザインタフェースを宣言的に作成するためのドメイン固有プログラミング言語である。Elmは純粋関数型言語であり、ユーザビリティ・パフォーマンス・堅牢性を重視して開発されている。静的かつ強力な型検査によって「事実上一切の実行時例外が起こらない」ことを売りにしている。.

新しい!!: HaskellとElm (プログラミング言語) · 続きを見る »

階乗

数学において非負整数 の階乗(かいじょう、factorial) は、1 から までのすべての整数の積である。例えば、 である。空積の規約のもと と定義する。 階乗は数学の様々な場面に出現するが、特に組合せ論、代数学、解析学などが著しい。階乗の最も基本的な出自は 個の相異なる対象を一列に並べる方法(対象の置換)の総数が 通りであるという事実である。この事実は少なくとも12世紀にはインドの学者によって知られていた。は1677年にへの応用として階乗を記述した。再帰的な手法による記述の後、Stedman は(独自の言葉を用いて)階乗に関しての記述を与えている: 感嘆符(!)を用いた、この "" という表記は1808年にによって発明された。 階乗の定義は、最も重要な性質を残したまま、非整数を引数とする函数に拡張することができる。そうすれば解析学における著しい手法などの進んだ数学を利用できるようになる。.

新しい!!: Haskellと階乗 · 続きを見る »

Extensible Markup Language

Extensible Markup Language(エクステンシブル マークアップ ランゲージ)は、基本的な構文規則を共通とすることで、任意の用途向けの言語に拡張することを容易としたことが特徴のマークアップ言語の総称である。一般的にXML(エックスエムエル)と略称で呼ばれる。JISによる訳語は「拡張可能なマーク付け言語」。 SGMLからの移行を目的として開発された。文法はSGMLの構文解析器と互換性を保つようにSGMLのサブセットに定められシンプルになり、機能はSGMLに無いものが追加されている。 XML の仕様は、World Wide Web Consortium (W3C) により策定・勧告されている。1998年2月に XML 1.0 が勧告された。2010年4月現在、XML 1.0 と XML 1.1 の2つのバージョンが勧告されている(#バージョン)。 ちなみに、「eXtensible Markup Language の略である」と書かれることがあるが、これは間違いであり、XはExの発音を表している。.

新しい!!: HaskellとExtensible Markup Language · 続きを見る »

遅延評価

遅延評価(ちえんひょうか、lazy evaluation)や必要呼び(ひつようよび、call-by-need)は評価戦略の一種類であり、非正格な関数型言語で使用もされる。対義語は先行評価(eager evaluation)。.

新しい!!: Haskellと遅延評価 · 続きを見る »

静的型付け

静的型付け(せいてきかたづけ、static typing)とは、プログラミング言語で書かれたプログラムにおいて、変数や、サブルーチンの引数や返り値などの値について、その型が、コンパイル時など、そのプログラムの実行よりも前にあらかじめ決められている、という型システムの性質のことである。 また、そのような性質の言語を、静的型付き言語(せいてきかたつきげんご、statically typed language)という。これに対し、型は実行時の実際の値による、というのが動的型付けである。型推論を利用していて、構文上は型の記述が省略可能な言語もあるが、そういった言語も静的型付けである(MLなど)。 一口に静的型と言ってもその実体は言語により様々である。手続き型のオブジェクト指向言語の多くでは、静的に型が付いていても、キャストなどによりインスタンスの妥当性は保証されない。より制限の強い言語であっても、ミュータブルな値により不正参照などのリスクが残されている。また静的型でもリフレクションを多用する設計を行なうと、実質的に動的型とほとんど変わらないスタイルになることから、静的と動的の境目は必ずしも明確でない場合があるといえる。 一般的な傾向として、大規模プログラミングやシステム記述用の言語は静的な型付けを行なうものが多い。.

新しい!!: Haskellと静的型付け · 続きを見る »

高階関数

階関数(こうかいかんすう、higher-order function)とは、第一級関数をサポートしているプログラミング言語において、関数(手続き)を引数にしたり、あるいは関数(手続き)を戻り値とするような関数のことである。.

新しい!!: Haskellと高階関数 · 続きを見る »

論理学者

論理学者(ろんりがくしゃ)とは、論理学を専門に研究する人のことである。.

新しい!!: Haskellと論理学者 · 続きを見る »

関数型言語

関数型言語(かんすうがたげんご、functional language)は、以下に述べる関数型プログラミングを基本スタイルとして推奨する機能を持つプログラミング言語、関数型プログラミング言語の略称である。.

新しい!!: Haskellと関数型言語 · 続きを見る »

配列

この記事では、コンピュータ・プログラムにおいて配列(はいれつ、array)と呼ばれているデータ構造およびデータ型について説明する。計算科学方面ではベクトルという場合もある。また、リストも参照。一般に、添え字で個々の要素を区別する。.

新しい!!: Haskellと配列 · 続きを見る »

逆ポーランド記法

逆ポーランド記法(ぎゃくポーランドきほう、)は、数式やプログラムの記法の一種。演算子を被演算子の後にすることから、後置記法 (Postfix Notation) とも言う。 その他の記法として、演算子を被演算子の中間に記述する中置記法、前に記述する前置記法(ポーランド記法)がある。 逆ポーランド記法でも、演算子早出し逆ポーランド記法 ERP(early-operator reverse Polish notation)と、演算子遅出し(late-operator)逆ポーランド記法 LRP の分類があり、特に演算子早出し逆ポーランド記法は「その記号の配列順を些かも崩さずに和文に移せる」という特徴がある。 名称の由来は、演算子と被演算子の順序がポーランド記法の逆になっていることによる(「ポーランド記法」自体の由来についてはポーランド記法の記事を参照のこと)。.

新しい!!: Haskellと逆ポーランド記法 · 続きを見る »

Factor

Factor は、動的型付けの連鎖性(concatenative)プログラミング言語であり、が設計と実装を行った。Factor に影響を与えた言語として、、Forth、LISP、Self がある。2014年11月現在の最新バージョンは 0.97。.

新しい!!: HaskellとFactor · 続きを見る »

GHC

GHC.

新しい!!: HaskellとGHC · 続きを見る »

Hello world

Hello world(ハロー・ワールド)は、画面に「Hello, World!」に類する文字列を表示するプログラムの通称である。多くのプログラミング言語において非常に単純なプログラムであり、プログラミング言語の入門書で、プログラムを動かすためのプログラミング言語の基本文法の解説例として提示される。.

新しい!!: HaskellとHello world · 続きを見る »

JavaScript Object Notation

JSON(ジェイソン、JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptにおけるオブジェクトの表記法をベースとしているが、JSONはJavaScript専用のデータ形式では決してなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しに使えるよう設計されている。.

新しい!!: HaskellとJavaScript Object Notation · 続きを見る »

Linspire

Linspire(リンスパイア)は、アメリカLinspire社のLinuxディストリビューションである。 ディストリビューションの系列としてはDebian/GNU Linuxから派生している。Debian系は元々aptコマンドを利用することによって簡単にソフトウェアパッケージを追加できる。Linspireはこれをグラフィカルユーザインタフェース (GUI) 化し、CNR(旧・Click-N-Run)として特徴付けた。専用のWebサイトからソフトウェアを選択し、インストールボタンを押すだけでソフトウエアを追加できるというものである。全体にコマンドラインを使わなくてもすむように、GUIに特化しているのが特徴である。GUIのベースとしてはKDEを採用している。CD-ROMからブートしてハードディスクにインストールせずにそのまま利用できるタイプの製品もある。.

新しい!!: HaskellとLinspire · 続きを見る »

Miranda

Mirandaは、遅延評価方式の純粋関数型プログラミング言語である。作者デビッド・ターナー(David Turner)による以前の言語SASLやKRCの後継でもあり、またMLやHopeの影響も受けている。イギリスのリサーチ・ソフトウェア社(Research Software Ltd.)が販売しており、同社の商標でもある。研究目的ではない商用を目指した最初の純粋関数型言語であった。 よくある例題を解くプログラムに関して言えば、Mirandaのコードは(APLなどを別とすれば)ほとんどの主流のプログラミング言語よりも簡単で短く表現でき、他の関数型言語と同様、信頼性の高いプログラムの開発が命令型言語に比べて短期間で可能になったという報告がある。 1985年に登場した。処理系の実装としてはUnix系向けのC言語で実装されたもののみがある。後発のHaskellは多くの面でMirandaの影響を受けている。.

新しい!!: HaskellとMiranda · 続きを見る »

OpenGL

OpenGL(オープンジーエル、Open Graphics Library)は、クロノス・グループ (Khronos Group) が策定している、グラフィックスハードウェア向けの2次元/3次元コンピュータグラフィックスライブラリである。SGI社内で自社のCGワークステーション向けにクローズドに策定されたAPI仕様が改良されて公開され、後に大きなシェアを持つに至った。現在は多様な描画デバイスを包括するグラフィックスAPIのオープン標準規格として策定が行なわれている。.

新しい!!: HaskellとOpenGL · 続きを見る »

Portable Document Format

Portable Document Format(ポータブル・ドキュメント・フォーマット、略称:PDF)は、アドビシステムズが開発および提唱する、電子上の文書に関するファイルフォーマットである。1993年に発売されたAdobe Acrobatで採用された。 特定の環境に左右されずに全ての環境でほぼ同様の状態で文章や画像等を閲覧できる特性を持っている。 アドビシステムズはPDF仕様を1993年より無償で公開していたが、それでもPDF規格はAdobeが策定するプロプライエタリなフォーマットであった。2008年7月には国際標準化機構によってISO 32000-1として標準化された。アドビはISO 32000-1 についての特許を無償で利用できるようにしたが、XFA (Adobe XML Forms Architecture) やAdobe JavaScriptなどはアドビのプロプライエタリな部分として残っている。.

新しい!!: HaskellとPortable Document Format · 続きを見る »

QuickCheck

QuickCheck(クイックチェック)は、テストスイート用のテストケースを生成してソフトウェアテストを行うための、Haskellで書かれたコンビネータライブラリである。GHCコンパイラとHugsインタプリタに対応している。 QuickCheckではプログラマは関数が満たすべき論理的性質をアサーションとして書く。テストは関数の引数の型が取り得る値をランダムに関数に与えることで、アサーションが失敗する条件を探そうと試みる。プロジェクトは2000年に始まった。QuickCheckは通常のプログラムのテストに加え、関数仕様の策定、関数がするべき挙動をドキュメントとして示す、コンパイラの実装をテストする、といったことにも有用である。 QuickCheckの実装はHaskell以外にも多数の言語に移植されている(C, C++, Chicken Scheme, Clojure, Common Lisp, D, Erlang, F#, Factor, Io, Java, JavaScript, Node.js, Objective C, OCaml, Perl, Python, Ruby, Scala, Scheme, Smalltalk, Standard ML)。 Category:ソフトウェアテスティング.

新しい!!: HaskellとQuickCheck · 続きを見る »

Yacc

Yacc(yet another compiler compiler、ヤック)はパーサジェネレータの一つである。1970年代にAT&TでUNIX用にスティーヴン・カーティス・ジョンソンが開発した。.

新しい!!: HaskellとYacc · 続きを見る »

投機的実行

投機的実行(とうきてきじっこう、)とは、コンピュータに必要としないかもしれない仕事をさせることである。この性能最適化技法は、パイプライン化されたプロセッサなどのシステムで使われている Butler Lampson Microsoft Research OPODIS, Bordeaux, France 12 December 2006。.

新しい!!: Haskellと投機的実行 · 続きを見る »

束縛 (情報工学)

束縛またはバインディング(Binding)は一般に、参照 (情報工学) の集合である。コンピュータ関連で「束縛」という語が使われるものはいくつかあり、それぞれ具体的な内容は異なるので、以下いくつかの例を示す。.

新しい!!: Haskellと束縛 (情報工学) · 続きを見る »

正の数と負の数

正の数(せいのすう、positive number)とは、0より大きい実数である。負の数(ふのすう、negative number)とは、0より小さい実数である。.

新しい!!: Haskellと正の数と負の数 · 続きを見る »

正規表現

正規表現(せいきひょうげん、regular expression)とは、文字列の集合を一つの文字列で表現する方法の一つである。正則表現(せいそくひょうげん)とも呼ばれ、形式言語理論の分野では比較的こちらの訳語の方が使われる。まれに正規式と呼ばれることもある。 もともと正規表現は形式言語理論において正規言語を表すための手段として導入された。形式言語理論では、形式言語が正規言語であることと正規表現によって表せることは同値である。 その後正規表現はテキストエディタ、ワードプロセッサなどのアプリケーションで(ないし、そもそもそれ以前に単機能の文字列探索ツールの)、マッチさせるべき対象を表すために使用されるようになり、表せるパターンの種類を増やすために本来の正規表現にはないさまざまな記法が新たに付け加えられた。このような拡張された正規表現には正規言語ではない文字列も表せるものも多く、ゆえに正規表現という名前は実態に即していない面もあるが、伝統的に正規表現と呼ばれ続けている。 この記事では主にこのような正規表現を用いたパターンマッチングについて説明している。以下、誤解のない限り、アプリケーションやプログラミングにおいて正規表現を用いた文字列のパターンマッチングを行う機能のことを、単に正規表現という。 ほとんどのプログラミング言語では、ライブラリによって正規表現を使うことができる他、一部の言語では正規表現のリテラルもある。「正規表現によるマッチ」を意味する(専用の)演算子がある言語なども一部ある。具体例として、grep、AWK、sed、Perl、Tcl、lexなどがある。 それぞれの言語やアプリケーションで細部の仕様が異なっている、といったように思われることも多いが(また、古い実装では実際にそういうことも多いが)、近年は同じライブラリを使っていれば同じということも多い。またPOSIXなど標準もある。.

新しい!!: Haskellと正規表現 · 続きを見る »

演算子の優先順位

演算子の優先順位とは、数学およびコンピュータプログラミングにおいて、数式のどの部分から先に計算すべきかを明確化する規則である。 例えば、数学や多くのコンピュータ言語では乗法は加法より先に行われる。2 + 3 × 4 という式の計算結果は14になる。(と)、、 といった括弧には計算順序の混乱を防ぐ独自の規則が適用され、例えば先の式は 2 + (3 × 4) とも書けるが、括弧がなくとも乗法が優先されるという規則だけで式の値は一意に定まる。 代数学的記法が導入された際、乗法が加法より優先されるようになった。したがって、3 + 4 × 5.

新しい!!: Haskellと演算子の優先順位 · 続きを見る »

文字列

文字列(もじれつ)は、単語や文章のような、文字の連なったもの。ストリング (string)、テキスト (text) という場合もある。コンピュータ、特にプログラミングの分野で用いることが多い。.

新しい!!: Haskellと文字列 · 続きを見る »

数学

数学(すうがく、μαθηματικά, mathematica, math)は、量(数)、構造、空間、変化について研究する学問である。数学の範囲と定義については、数学者や哲学者の間で様々な見解がある。.

新しい!!: Haskellと数学 · 続きを見る »

数学者

数学者(すうがくしゃ、mathematician)とは、数学に属する分野の事柄を第一に、調査および研究する者を指していう呼称である。.

新しい!!: Haskellと数学者 · 続きを見る »

教科書

教科書(きょうかしょ、textbook; schoolbook).

新しい!!: Haskellと教科書 · 続きを見る »

手続き型プログラミング

手続き型プログラミング(てつづきがたプログラミング、Procedural programming)は、「手続き呼び出し」の概念に基づくプログラミングパラダイムの一種。命令型プログラミングと同義に扱われることが多い。「手続き」はプロシージャ、ルーチン、サブルーチン、メソッド、関数(数学の関数とは異なる。)など様々な呼称があるが、実行すべき一連の計算ステップを持つものと定義できる。手続きはプログラム実行中の任意の時点で呼び出すことができ、他の手続きからの呼び出しも、自分自身からの呼び出し(再帰呼び出し)も含まれる。 手続き型プログラミングは単純な逐次型プログラミングや非構造化プログラミングよりも多くの場合よりよい選択である。非構造化プログラミングでは複雑なコードを組むことは困難であり、保守性が悪い。手続き型プログラミングには、以下のような利点がある.

新しい!!: Haskellと手続き型プログラミング · 続きを見る »

1985年

この項目では、国際的な視点に基づいた1985年について記載する。.

新しい!!: Haskellと1985年 · 続きを見る »

1987年

この項目では、国際的な視点に基づいた1987年について記載する。.

新しい!!: Haskellと1987年 · 続きを見る »

1990年

この項目では、国際的な視点に基づいた1990年について記載する。.

新しい!!: Haskellと1990年 · 続きを見る »

1997年

この項目では、国際的な視点に基づいた1997年について記載する。.

新しい!!: Haskellと1997年 · 続きを見る »

1999年

1990年代最後の年であり、1000の位が1になる最後の年でもある。 この項目では、国際的な視点に基づいた1999年について記載する。.

新しい!!: Haskellと1999年 · 続きを見る »

2001年

また、21世紀および3千年紀における最初の年でもある。この項目では、国際的な視点に基づいた2001年について記載する。.

新しい!!: Haskellと2001年 · 続きを見る »

2002年

この項目では、国際的な視点に基づいた2002年について記載する。.

新しい!!: Haskellと2002年 · 続きを見る »

2003年

この項目では、国際的な視点に基づいた2003年について記載する。.

新しい!!: Haskellと2003年 · 続きを見る »

2004年

この項目では、国際的な視点に基づいた2004年について記載する。.

新しい!!: Haskellと2004年 · 続きを見る »

2005年

この項目では、国際的な視点に基づいた2005年について記載する。.

新しい!!: Haskellと2005年 · 続きを見る »

2006年

この項目では、国際的な視点に基づいた2006年について記載する。.

新しい!!: Haskellと2006年 · 続きを見る »

出ていきます入ってきます
ヘイ!私たちは今、Facebook上です! »