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

Erlang

索引 Erlang

Erlang(アーラン)は、コンピュータにおいて汎用的な用途に使うことができる並行処理指向のプログラミング言語および実行環境。.

64 関係: Apache License変数 (プログラミング)実装並行計算並行性仮想機械式 (プログラミング)マルチパラダイムプログラミング言語ライブラリリアルタイムリスト (抽象データ型)ワードプラットフォーム (コンピューティング)プログラミング言語プログラマプログラム (コンピュータ)プロセスパターンマッチングデータ型データベースフォールトトレラント設計ドイツホットスワップベンチマーク分散コンピューティングアルゴリズムアクターモデルアグナー・アーランインタプリタエリクソンオペレーティングシステムオープンソースガード (プログラミング)キュー (コンピュータ)クイックソートコンパイラコンピュータシリアライズシェアード・ナッシング・アーキテクチャスレッド (コンピュータ)ソースコードタプルサーバサブルーチン再帰動的型付けClojureConcurrency and Coordination RuntimeElixir (プログラミング言語)複雑性...関数型言語MacOSMicrosoft WindowsPrologRiakScalaSmalltalkStrandUnix系Webサーバ浮動小数点数数学者整数1986年 インデックスを展開 (14 もっと) »

Apache License

Apache License(アパッチ・ライセンス)は、Apacheソフトウェア財団 (ASF) によるソフトウェア向けライセンス規定。1.1以前は、Apache Software License(ASL)と称していた。著作権表示と免責事項表示の保持を求めている。1.1以降のバージョンはOpen Source Initiativeがオープンソースライセンスと承認している。GNUプロジェクトは、1.1以前のバージョンをGPL非互換で非コピーレフトのフリーソフトウェアライセンス、バージョン2.0をGPLバージョン3互換(GPL2以前とは非互換)のフリーソフトウェアライセンスと判断している。ソースコードはフリーソフトウェアやオープンソースプロジェクトでの開発にも使え、プロプライエタリ・ソフトウェアやクローズドソースの開発にも使える。BSDライセンスをベースに作成されたBSDスタイルのライセンスの一つである。 ASFやそのサブプロジェクトが作成するソフトウェアは、すべてApache Licenseで提供されている。ASF以外のソフトウェアでもApache Licenseを使っているものがある。2010年6月現在、SourceForge.netにある5000以上のASF以外のプロジェクトがApache Licenseでリリースされている。.

新しい!!: ErlangとApache License · 続きを見る »

変数 (プログラミング)

プログラミングにおいて、変数(へんすう、variable)とは、プログラムのソースコードにおいて、扱われるデータを一定期間記憶し必要なときに利用できるようにするために、データに固有の名前を与えたものである。 一人一人の人間が異なる名前によって区別されるように、一つ一つの変数も名前によって区別される。これにより、複数のデータを容易に識別することができる。変数名は一般に(字句的には)識別子である、ないし、変数の識別子のことを変数名という。一般に、変数が表しているデータをその変数の値(あたい)という。.

新しい!!: Erlangと変数 (プログラミング) · 続きを見る »

実装

実装(じっそう、implementation)とは、何らかの機能(や仕様)を実現するための(具体的な)装備や方法のこと。.

新しい!!: Erlangと実装 · 続きを見る »

並行計算

並行計算(へいこうけいさん、concurrent computing)とは、コンピュータプログラムにおいて複数の相互作用を及ぼす計算タスクの(同時)並行的実行を指す。.

新しい!!: Erlangと並行計算 · 続きを見る »

並行性

並行性(へいこうせい、concurrency)とは、計算機科学において、時間的にオーバーラップして実行される計算を伴うシステムの属性であり、そのような計算ではリソースを共有することがある。並行計算は、同一チップ上の複数のコア、単一プロセッサ上のプリエンプションを伴うマルチスレッド、物理的に分離した複数プロセッサ上などで行われる。並行計算のための数学的モデルとして、ペトリネット、プロセス計算、並列ランダムアクセス機械モデル、アクターモデル、 などが開発された。.

新しい!!: Erlangと並行性 · 続きを見る »

仮想機械

仮想機械(かそうきかい、仮想マシン、バーチャルマシン、virtual machine、VM)とは、コンピュータの動作をエミュレートするソフトウェアやフレームワークである。また、エミュレートされた仮想のコンピュータそのものも仮想機械という。仮想機械によって、1つのコンピュータ上で複数のコンピュータやOSを動作させたり、別のアーキテクチャ用のソフトウェアを動作させることができる。.

新しい!!: Erlangと仮想機械 · 続きを見る »

式 (プログラミング)

式(しき、expression)とは、プログラミングにおいて、言語によって定められた優先順位や結びつきの規定に則って評価される値、変数、演算子、関数の組み合わせである。数学における式と同様、式は評価された値を持つ。 言語によっては式が副作用を持つこともあり、参照透過性がない場合もある。.

新しい!!: Erlangと式 (プログラミング) · 続きを見る »

マルチパラダイムプログラミング言語

マルチパラダイムプログラミング言語 (マルチパラダイムプログラミングげんご、multiparadigm programming language)は、複数のプログラミングパラダイムに対応するプログラミング言語の総称である。「1つのプログラムは複数のプログラミングパラダイムを使う」とビャーネ・ストロヴストルップは述べている。マルチパラダイムプログラミング言語の設計目標は、問題解決に当たって最良の道具になることである。たとえばOzでは、論理型、関数型、オブジェクト指向、データフローコンカレントなど、多数のパラダイムを内包している。Ozは10年かけて従来のプログラミングパラダイムが調和するよう設計されたのである。.

新しい!!: Erlangとマルチパラダイムプログラミング言語 · 続きを見る »

ライブラリ

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

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

リアルタイム

リアルタイム(Real time)とは、英語で「即時に」や「同時に」、「実時間」という意味の言葉である。.

新しい!!: Erlangとリアルタイム · 続きを見る »

リスト (抽象データ型)

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

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

ワード

ワード(word)は、データ量あるいは情報量の単位である。バイト同様に場合によりまちまちな単位であるが、1980年頃には8ビットに落ち着いたバイトと異なり、現在もまちまちに使われている。場合によってはサイズを固定せずに「データのひとかたまり」を意味していることもある(「可変長ワード」)。 たとえばコンピュータのプロセッサの場合、そのプロセッサの汎用レジスタのサイズをワードとし、その倍長を「ダブルワード」、半分を「ハーフワード」などと呼ぶものもある。System/360に始まる32ビットマシンの時代が長く続いたので32ビットを1ワードとする文化があり、あるいは32ビットはミニコンピュータのベストセラーVAXの文化でもある。一方でパーソナルコンピュータには、x86の初代である8086における1ワードである16ビットが最初に基準となったことによる命名規則による文化もある。近年はマイクロプロセッサも64ビット化し、あるいはSIMDなどで128ビットなどのワードも現れている。 歴史的には、System/360(バイトマシンの確立)より前のマシンでは、「オクテットの2倍か4倍のサイズをワードとする」という設計にする動機が薄く、12ビット~36ビット程度のワードの扱いを得意とする設計とした「ワードマシン」か、6ビット程度の「字」の扱いを得意とする「キャラクタマシン」の、どちらかの設計とすることが多かった。マイコン時代にも、東芝のTLCS-12Aという12ビットワードのマシンの例がある。.

新しい!!: Erlangとワード · 続きを見る »

プラットフォーム (コンピューティング)

プラットフォーム()とは、コンピュータにおいて、主に、オペレーティングシステム (OS) やハードウェアといった基礎部分を指す。 一般的なコンピューター・プログラム(アプリケーションソフトウェア)は、実行環境であるそれぞれのOSに依存し、Windows、macOS、Linuxなどの専用のプログラムとして動作する。さらに特定のハードウェアでしか動作しないプログラムもある(ネイティブコード)。例えば、PowerPCプロセッサ上のLinuxでは、PowerPCプロセッサ上のMac OS X用あるいはx86/x64プロセッサ上のLinux用のAdobe Readerは動作しない。 プラットフォーム非依存とは、それら特定のOS、ハードウェアに依存せずに動作するプログラムのこと。例えば、Javaは各プラットフォームにおいてJavaアプリケーションが動作する仮想のプラットフォームを実装することによって、プラットフォーム非依存を実現させている。ちょうど異なるプラットフォーム上に介在としてJavaプラットフォームという仮想化された共通プラットフォームがあり、共通プラットフォーム上でJavaアプリケーションが動作する。またプラットフォームの差異をミドルウェアで吸収し、複数のプラットフォームで動作するように設計したソフトウェアをクロスプラットフォームとよぶ。マイクロソフトの.NET FrameworkもJavaとよく似たアプリケーション開発・実行プラットフォームである。プログラムのソースコードを実行時に翻訳・解釈するスクリプト言語や動的プログラミング言語で書かれたソフトウェアもクロスプラットフォームであることが多い。.

新しい!!: Erlangとプラットフォーム (コンピューティング) · 続きを見る »

プログラミング言語

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

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

プログラマ

プログラマ(Programmer)とは、コンピューターのプログラムを作成する人全般を指す。プログラマーとも表記される(#プログラマに対する呼称参照)。.

新しい!!: Erlangとプログラマ · 続きを見る »

プログラム (コンピュータ)

ンピュータプログラム(英:computer programs)とは、コンピュータに対する命令(処理)を記述したものである。コンピュータが機能を実現するためには、CPUで実行するプログラムの命令が必要である。 コンピュータが、高度な処理を人間の手によらず遂行できているように見える場合でも、コンピュータは設計者の意図であるプログラムに従い、忠実に処理を行っている。実際には、外部からの割り込み、ノイズなどにより、設計者の意図しない動作をすることがある。また設計者が、外部からの割り込みの種類を網羅的に確認していない場合もある。.

新しい!!: Erlangとプログラム (コンピュータ) · 続きを見る »

プロセス

プロセスとは、情報処理においてプログラムの動作中のインスタンスを意味し、プログラムのコードおよび全ての変数やその他の状態を含む。オペレーティングシステム (OS) によっては、プロセスが複数のスレッドで構成される場合があり、命令を同時並行して実行する。.

新しい!!: Erlangとプロセス · 続きを見る »

パターンマッチング

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

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

データ型

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

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

データベース

データベース(database, DB)とは、検索や蓄積が容易にできるよう整理された情報の集まり。 通常はコンピュータによって実現されたものを指すが、紙の住所録などをデータベースと呼ぶ場合もある。コンピュータを使用したデータベース・システムでは、データベース管理用のソフトウェアであるデータベース管理システムを使用する場合も多い。.

新しい!!: Erlangとデータベース · 続きを見る »

フォールトトレラント設計

フォールトトレラント設計(障害許容設計)(フォールトトレラントせっけい、Fault tolerant design)は、システム設計の手法であり、システムの一部に問題が生じても全体が機能停止するということなく(たとえ機能を縮小しても)動作し続けるようなシステムを設計するものである。 この用語はハードウェアあるいはソフトウェアの障害があってもほとんど途切れることなく動作し続けるコンピュータシステムの設計を指して使われることが多い。 他の領域の例としては、自動車の設計でタイヤが一本パンクしても走行できるような設計を指す。.

新しい!!: Erlangとフォールトトレラント設計 · 続きを見る »

ドイツ

ドイツ連邦共和国(ドイツれんぽうきょうわこく、Bundesrepublik Deutschland)、通称ドイツ(Deutschland)は、ヨーロッパ中西部に位置する連邦制共和国である。もともと「ドイツ連邦共和国」という国は西欧に分類されているが、東ドイツ(ドイツ民主共和国)の民主化と東西ドイツの統一により、「中欧」または「中西欧」として再び分類されるようになっている。.

新しい!!: Erlangとドイツ · 続きを見る »

ホットスワップ

ホットスワップ(Hot swap)は、日本語で活線挿抜(かっせんそうばつ)または活性挿抜とも表記され、電源を投入したまま脱着を行える構造を備えた機器の仕組みを言う。 ホットスワップに対応しない機器では、ハードウェアやデバイスを新たに接続する場合や取り外す場合、電源を切断した状態で行わなければならなかった。通電中に脱着が可能な場合も、システム上で認識されるためには、脱着後に機器の再起動をしなければならなかった。ホットスワップに対応することによって、動作中のコンピュータにハードウェアやデバイスを接続すると、即座に認識し使用可能な状態になる。 本来は無停止コンピュータ等の為に開発された技術であるが、パーソナルコンピュータの周辺機器を接続する際に用いられるUSBやIEEE 1394、シリアルATA、サーバ機のRAID構成ストレージ、PCIボードやPCカード等にも実装されている。 実際にホットスワップが正常に動作するためには、デバイス、インタフェース、BIOS、デバイスドライバ、OSの全てがホットスワップに対応している必要がある。 稼動しているOS自体を格納したストレージ(システムパーティションとも言う)は、ほとんどの場合ホットスワップできず、無理に着脱するとOS稼動停止となる。.

新しい!!: Erlangとホットスワップ · 続きを見る »

ベンチマーク

ベンチマーク()とは、本来は測量において利用する水準点を示す語で、転じて金融、資産運用や株式投資における指標銘柄など、比較のために用いる指標を意味する。また、広く社会の物事のシステムのあり方や規範としての水準や基準などを意味する。またベンチマーキングとは自社の課題解決のために、競合他社などの優れた経営手法(ベストプラクティス)を持つ企業を分析するプロセスを指す。.

新しい!!: Erlangとベンチマーク · 続きを見る »

分散コンピューティング

分散コンピューティング(ぶんさんコンピューティング、英: Distributed computing)とは、プログラムの個々の部分が同時並行的に複数のコンピュータ上で実行され、各々がネットワークを介して互いに通信を行いながら全体として処理が進行する計算手法のことである。複雑な計算などをネットワークを介して複数のコンピュータを利用して行うことで、一台のコンピュータで計算するよりスループットを上げようとする取り組み、またはそれを実現する為の仕組みである。分散処理(ぶんさんしょり)ともいう。並列コンピューティングの一形態に分類されるが、一般に並列コンピューティングと言えば、同時並行に実行する主体は同じコンピュータシステム内のCPU群である。ただし、どちらもプログラムの分割(同時に実行できる部分にプログラムを分けること)が必須である。分散コンピューティングではさらに、それぞれの部分が異なる環境でも動作できるようにしなければならない。例えば、2台の異なるハードウェアを使ったコンピュータで、それぞれ異なるファイルシステム構成であっても動作するよう配慮する必要がある。 問題を複数の部分問題に分けて各コンピュータに実行させるのが基本であり、素数探索や数多く試してみる以外に解決できない問題の対処として用いられているものが多い。分散コンピューティングの例としてBOINCがある。これは、大きな問題を多数の小さな問題に分割し、多数のコンピュータに分配するフレームワークである。その後、それぞれの結果を集めて大きな解を得る。一般的に処理を分散すると一台のコンピュータで計算する場合と比べ、問題データの分配、収集、集計するためのネットワークの負荷が増加し、問題解決の為のボトルネックとなるため、部分問題間の依存関係を減らすことが重要な課題となる。 分散コンピューティングは、コンピュータ同士をネットワーク接続し、効率的に通信できるよう努力した結果として自然に生まれた。しかし、分散コンピューティングはコンピュータネットワークと同義ではない。単にコンピュータネットワークと言った場合、複数のコンピュータが互いにやり取りするが、単一のプログラムの処理を共有することはない。World Wide Web はコンピュータネットワークの例であるが、分散コンピューティングの例ではない。 分散処理を構築するための様々な技術や標準が存在し、一部はその目的に特化して設計されている。例えば、遠隔手続き呼出し (RPC)、Java Remote Method Invocation (Java RMI)、.NET Remoting などがある。.

新しい!!: Erlangと分散コンピューティング · 続きを見る »

アルゴリズム

フローチャートはアルゴリズムの視覚的表現としてよく使われる。これはランプがつかない時のフローチャート。 アルゴリズム(algorithm )とは、数学、コンピューティング、言語学、あるいは関連する分野において、問題を解くための手順を定式化した形で表現したものを言う。算法と訳されることもある。 「問題」はその「解」を持っているが、アルゴリズムは正しくその解を得るための具体的手順および根拠を与える。さらに多くの場合において効率性が重要となる。 コンピュータにアルゴリズムをソフトウェア的に実装するものがコンピュータプログラムである。人間より速く大量に計算ができるのがコンピュータの強みであるが、その計算が正しく効率的であるためには、正しく効率的なアルゴリズムに基づいたものでなければならない。.

新しい!!: Erlangとアルゴリズム · 続きを見る »

アクターモデル

アクターモデル(actor model)とは、1973年、カール・ヒューイット、Peter Bishop、Richard Steiger が発表した並行計算の数学的モデルの一種Carl Hewitt(1973年), "A Universal Modular Actor Formalism for Artificial Intelligence".

新しい!!: Erlangとアクターモデル · 続きを見る »

アグナー・アーラン

アグナー・クラルプ・アーラン(Agner Krarup Erlang、1878年1月1日 - 1929年2月3日)は、デンマークの数学者・統計家・技術者。通信トラヒック工学および待ち行列理論の開祖である。.

新しい!!: Erlangとアグナー・アーラン · 続きを見る »

インタプリタ

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

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

エリクソン

リクソン(Telefonaktiebolaget LM Ericsson)は、スウェーデンの通信機器メーカー。世界最大の移動体通信(携帯電話)地上固定設備のメーカーとして知られるほか、スウェーデン国産戦闘機JAS 39 グリペンの電子機器を手がける。本社はスウェーデンのストックホルム。.

新しい!!: Erlangとエリクソン · 続きを見る »

オペレーティングシステム

ペレーティングシステム(Operating System、OS、オーエス)とは、コンピュータのオペレーション(操作・運用・運転)のために、ソフトウェアの中でも基本的、中核的位置づけのシステムソフトウェアである。通常、OSメーカーが組み上げたコンピュータプログラムの集合として、作成され提供されている。 オペレーティングシステムは通常、ユーザーやアプリケーションプログラムとハードウェアの中間に位置し、ユーザーやアプリケーションプログラムに対して標準的なインターフェースを提供すると同時に、ハードウェアなどの各リソースに対して効率的な管理を行う。現代のオペレーティングシステムの主な機能は、ファイルシステムなどの補助記憶装置管理、仮想記憶などのメモリ管理、マルチタスクなどのプロセス管理、更にはGUIなどのユーザインタフェース、TCP/IPなどのネットワーク、などがある。オペレーティングシステムは、パーソナルコンピュータからスーパーコンピュータまでの各種のコンピュータや、更にはスマートフォンやゲーム機などを含む各種の組み込みシステムで、内部的に使用されている。 製品としてのOSには、デスクトップ環境やウィンドウシステムなど、あるいはデータベース管理システム (DBMS) などのミドルウェア、ファイル管理ソフトウェアやエディタや各種設定ツールなどのユーティリティ、基本的なアプリケーションソフトウェア(ウェブブラウザや時計などのアクセサリ)が、マーケティング上の理由などから一緒に含められていることもある。 OSの中で、タスク管理やメモリ管理など特に中核的な機能の部分をカーネル、カーネル以外の部分(シェルなど)をユーザランドと呼ぶ事もある。 現代の主なOSには、Microsoft Windows、Windows Phone、IBM z/OS、Android、macOS(OS X)、iOS、Linux、FreeBSD などがある。.

新しい!!: Erlangとオペレーティングシステム · 続きを見る »

オープンソース

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

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

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

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

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

キュー (コンピュータ)

ュー(queue)、あるいは待ち行列はコンピュータの基本的なデータ構造の一つ。データを先入れ先出しのリスト構造で保持するものである。キューからデータを取り出すときには、先に入れられたデータから順に取り出される。キューにデータを入れることをエンキュー、取り出すことをデキューという。 プリンタへの出力処理や、ウィンドウシステムのメッセージハンドラ、プロセスの管理など、データを入力された順番通りに処理する必要がある処理に用いられる。 キューの変形として、先頭と末尾の両端から入出力を行えるものを両端キューという。 キューとは逆に後入れ先出しのリスト構造を持つデータバッファをスタックと呼ぶ。.

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

クイックソート

イックソート (quicksort) は、1960年にアントニー・ホーアが開発したソートのアルゴリズム。分割統治法の一種。 n個のデータをソートする際の最良計算量および平均計算量はO(n\log n)である。他のソート法と比べて、一般的に最も高速だといわれているが対象のデータの並びやデータの数によっては必ずしも速いわけではなく、最悪の計算量はO(n^2)である。また数々の変種がある。 安定ソートではない。.

新しい!!: Erlangとクイックソート · 続きを見る »

コンパイラ

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

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

コンピュータ

ンピュータ(Computer)とは、自動計算機、とくに計算開始後は人手を介さずに計算終了まで動作する電子式汎用計算機。実際の対象は文字の置き換えなど数値計算に限らず、情報処理やコンピューティングと呼ばれる幅広い分野で応用される。現代ではプログラム内蔵方式のディジタルコンピュータを指す場合が多く、特にパーソナルコンピュータやメインフレーム、スーパーコンピュータなどを含めた汎用的なシステムを指すことが多いが、ディジタルコンピュータは特定の機能を実現するために機械や装置等に組み込まれる組み込みシステムとしても広く用いられる。電卓・機械式計算機・アナログ計算機については各項を参照。.

新しい!!: Erlangとコンピュータ · 続きを見る »

シリアライズ

ンピュータプログラミングにおいて、シリアライズ、もしくはシリアル化 (serialize) という用語は、次のような異なる2つの意味を有する。.

新しい!!: Erlangとシリアライズ · 続きを見る »

シェアード・ナッシング・アーキテクチャ

ェアード・ナッシング・アーキテクチャ(shared nothing architecture、SN)とは、分散コンピューティングにおいて、各ノード(コンピュータ)がネットワークを除いてリソースを共有しておらず、それぞれが独立しており、自律的であり、システムにおいて単一競合箇所が無い物を指す。.

新しい!!: Erlangとシェアード・ナッシング・アーキテクチャ · 続きを見る »

スレッド (コンピュータ)

レッド(thread)とは、CPU利用の単位。プロセスに比べて、プログラムを実行するときのコンテキスト情報が最小で済むので切り替えが速くなる。スレッドは、thread of execution(実行の脈絡)という言葉を省略したものである。 プログラミングの観点からみると、アプリケーションの処理の「実行の脈絡」は1つでないことが多い。これをシングルスレッドで実現しようとするとシグナルやタイマーを駆使してコーディングすることになる。また、複数のプロセスに分割してプロセス間通信で協調動作させるという方法もある。しかし、いずれの場合もそれらの機能を使うための余分な、本来のアルゴリズムと関係ないコーディングが必要となる。スレッドを使用したプログラミングは本来のアルゴリズムに集中しやすくなり、プログラムの構造が改善されるという効果がある。.

新しい!!: Erlangとスレッド (コンピュータ) · 続きを見る »

ソースコード

青で示されているのが有効なコードである。 ソースコード(source code)とは、コンピュータプログラミング言語で書かれた、コンピュータプログラムである文字列(テキストないしテキストファイル)のことである。.

新しい!!: Erlangとソースコード · 続きを見る »

タプル

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

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

サーバ

ウィキメディア財団のサーバ サーバあるいはサーバー(server)は、サービスを提供するコンピュータである。コンピュータ分野のクライアントサーバモデルでは、クライアントからの要求に対して情報や処理結果を提供する機能を果たす側のコンピュータやソフトウェアを指す。本稿ではこの意味で記載する。 サーバにはファイルサーバ、メールサーバ、Webサーバなど多数の用途や種類がある。更にサーバ用のコンピュータ機器(ハードウェア)などもサーバと呼ぶ場合がある。.

新しい!!: Erlangとサーバ · 続きを見る »

サブルーチン

ブルーチン(subroutine)は、コンピュータプログラミングにおいて、プログラム中で意味や内容がまとまっている作業をひとつの手続きとしたものである。繰り返し利用されるルーチン作業をモジュールとしてまとめたもので、呼び出す側の「主」となるもの(メインルーチン)と対比して「サブルーチン」と呼ばれる。サブプログラム (subprogram) と呼ばれることもある。また、「サブ」をつけずに「ルーチン」と呼ぶこともある。 プログラムのソース中で、繰り返し現れる作業をサブルーチン化することで、可読性や保守性を高く保つことができる。繰り返し現れる作業でなくても、意味的なまとまりを示すためにサブルーチン化することもある。また、キャッシュのような階層的メモリの設計を持つコンピュータ(現在のパソコンやワークステーションなどほぼすべて)では、よく使われるサブルーチンがキャッシュに格納されることで高速な動作を期待できる。.

新しい!!: Erlangとサブルーチン · 続きを見る »

再帰

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

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

動的型付け

動的型付け(どうてきかたづけ、dynamic typing)とは、プログラミング言語で書かれたプログラムにおいて、変数や、サブルーチンの引数や返り値などの値について、その型を、コンパイル時などそのプログラムの実行よりも前にあらかじめ決めるということをせず、実行時の実際の値による、という型システムの性質のことである。 また、そのような性質の言語を、動的型付き言語(どうてきかたつきげんご、dynamically typed language)という。これに対し、型は実行前に決まる、というのが静的型付けである。型推論を利用していて、構文上は型の記述が省略可能な言語もあるが、そういった言語も静的型付けである(MLなど)。 静的型付けは、.

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

Clojure

Clojure (発音は, クロージャー)はプログラミング言語であり、LISP系の言語の方言の一つである。関数型プログラミングのプログラミングスタイルでのインタラクティブな開発を支援し、マルチスレッドプログラムの開発を容易化する汎用言語である。Clojure言語のプログラムはJava仮想マシンとMicrosoft.NET 共通言語ランタイムで動作する。Clojure言語は「データとしてのプログラムコード」 (英語:「code as data」) という思想で設計されており、洗練されたマクロ機構を持つ。.

新しい!!: ErlangとClojure · 続きを見る »

Concurrency and Coordination Runtime

Concurrency and Coordination Runtime (CCR)とは、マイクロソフトがレゴ・マインドストームなどのロボット制御プログラミング向けに配布しているMicrosoft Robotics Developer Studio (MRDS)の一部で、.NET Frameworkをベースとした非同期プログラミングライブラリである。MRDSの一部として配布されているが、ロボット制御に特化されているわけではなく、一般的なアプリケーション用の非同期プログラミングライブラリとしても利用できる。CCRはErlangの影響が極めて強く受けており、用語こそ違えど基本的な考え方はほぼ同一である。 CCRのランタイムには、同時実行できるスレッド数が固定されたスレッドプールを実装するDispatcherクラスが含まれている。また、各DispatcherにはDispatcherQueueというプロシージャのエントリポイントを示すデリゲートのキューを持っており(CCRで分散処理したい作業項目の一覧を持っており)、作業項目は実行スレッドに分散され非同期実行される。またDispatcherオブジェクトには作業項目を非同期実行した結果を入れる汎用ポートと呼ばれるキューも存在している。各作業項目は、処理結果を消費するReceiverTaskオブジェクトに関連付けることができる。Arbiter ReceiverTaskを管理し、彼らを期待して準備ができてとする場合、それらを呼び出すPortのキュー。.

新しい!!: ErlangとConcurrency and Coordination Runtime · 続きを見る »

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

Elixir (エリクサー) は並行処理の機能や関数型といった特徴を持つ、Erlangの仮想マシン (BEAM) 上で動作するコンピュータプログラミング言語である。ElixirはErlangで実装されているため、分散システム、耐障害性、ソフトリアルタイムシステム等の機能を使用することができるが、拡張機能として、マクロを使ったメタプログラミング、そしてポリモーフィズムなどのプログラミング・パラダイムもプロトコルを介して実装されている。.

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

複雑性

複雑性(ふくざつせい、complexity)という用語は、多数の部品が入り組んで配置された何らかのものを特徴付ける言葉として使われる。科学として複雑性を研究するアプローチはいくつか存在しており、本項目ではそれらを概説する。マサチューセッツ工科大学のセス・ロイドは、複雑性の定義を32種類集めてプレゼンテーションしたことがあるという。.

新しい!!: Erlangと複雑性 · 続きを見る »

関数型言語

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

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

MacOS

macOS(マックオーエス)は、アップルが開発・販売する、Macのオペレーティングシステムである。かつての名称はOS X、Mac OS Xであった(後述)。 技術的に直系ではないが、Classic Mac OS (Mac OS、System) の後継として、新たにBSD系UNIXをベースに開発された。.

新しい!!: ErlangとMacOS · 続きを見る »

Microsoft Windows

Microsoft Windows(マイクロソフト ウィンドウズ)は、マイクロソフトが開発・販売するオペレーティングシステム (OS) の製品群。グラフィカルユーザインタフェース (GUI)を採用している。.

新しい!!: ErlangとMicrosoft Windows · 続きを見る »

Prolog

Prolog(プロログ)は、非手続き型プログラミング言語の一つ。論理型言語に分類される。名称は、「論理を使ったプログラミング」を意味するフランス語「programmation en logique」に由来しているRobert Kowalski.

新しい!!: ErlangとProlog · 続きを見る »

Riak

Riak は Amazon Dynamo の論文, SOSP 2007に基づいて実装されているNoSQLデータベース。読み方は「リアック」。 Riakはバックエンドとなるシャードパーティションストレージが差し替え可能な構成であり、デフォルトのバックエンドストレージは Bitcask である。またMapReduce機構を持ちネイティブで JavaScript(SpiderMonkey ランタイム)と Erlang、言語ドライバの追加で Python、Java、PHP、Rubyのような様々なプログラミング言語をサポートしている。 2012年2月21日、BashoはRiak v1.1をアナウンス。Riak 1.1ではRiaknostic、エラーのロギングとレポートの強化、大規模クラスタに対する弾性の改善、Riak Controlと呼ばれる新しいGUIとモニタリングインタフェースが導入された。 2012年3月27日、BashoはRiak CS (Cloud Storage) をリリース。Riak CSはRiak上でのマルチテナンシー、パフォーマンス計測、LOBのサポート、S3互換APIを提供。 Bashoは2013年2月21日にRiak 1.3の一般的な有用性をアナウンス。 Riak はフォーチュン50カンパニーのうち25%以上を含む世界中の数千社で導入されている。採用企業にはシマンテック、Best Buy、Workday、Yahoo! JAPAN、Voxer、Braintree、Bump、Boeing、Comcast、AOL、Ask.com、Yammer、Yandex、AT&T、Datapipeなどがある。 2017年7月、主要開発元であるBashoが全オフィスを閉鎖し、事実上業務を停止していることが明らかになった - The Register・2017年7月13日。Riak自体はオープンソースソフトウェアであり、今後もコミュニティベースでの開発は続けられる見込みだが、今後のサポート等に対する不安も浮上している。同年8月下旬に、イギリスの大手ブックメーカーであるBet365がRiakのコードベース及び商標権に関する権利を買収した。.

新しい!!: ErlangとRiak · 続きを見る »

Scala

Scala(スカラ()はオブジェクト指向言語と関数型言語の特徴を統合したマルチパラダイムのプログラミング言語である。名前の「Scala」は英語の「scalable language」に由来するものである。.

新しい!!: ErlangとScala · 続きを見る »

Smalltalk

Smalltalk(スモールトーク)は、Simula のオブジェクト(およびクラス)、LISPの徹底した動的性、LOGO のタートル操作や描画機能に、アラン・ケイの「メッセージング」というアイデアを組み合わせて作られたクラスベースの純粋オブジェクト指向プログラミング言語、および、それによって記述構築された統合化プログラミング環境の呼称。 Smalltalk で一語であり、「Small Talk」「SmallTalk」などは誤りである。 大規模な開発実績としてはCargill Lynx Projectがあり、国産製品の開発実績としてはMCFrameがある。.

新しい!!: ErlangとSmalltalk · 続きを見る »

Strand

Strandは、1989年に発表された商用ベースの並行論理プログラミング言語である。Ian FosterとStephen Taylorにより設計された。開発はArtificial Intelligence Limitedで行われ、1989年のBritish Computer Society Awardを受賞した。販売はStrand Software Technologies Inc.から行われた。この言語はErlang開発初期にベース言語としても使われた。.

新しい!!: ErlangとStrand · 続きを見る »

Unix系

複数のUnix系システム間の関連図 Unix系(ユニックスけい、ユニックスライク)とは、Unixに類似した振る舞いをするオペレーティングシステム (OS) を指す用語である。その判断基準や範囲には複数の議論がある。.

新しい!!: ErlangとUnix系 · 続きを見る »

Webサーバ

Webサーバ(ウェブサーバ、英:)は、HTTPに則り、クライアントソフトウェアのウェブブラウザに対して、HTMLやオブジェクト(画像など)の表示を提供するサービスプログラム及び、そのサービスが動作するサーバコンピュータを指す。 広義には、クライアントソフトウェアとHTTPによる通信を行うプログラム及びコンピュータ。.

新しい!!: ErlangとWebサーバ · 続きを見る »

浮動小数点数

浮動小数点数(ふどうしょうすうてんすう、英: floating point number)は、浮動小数点方式による数のことで、もっぱらコンピュータの数値表現において、それぞれ固定長の仮数部と指数部を持つ、数値の表現法により表現された数である。.

新しい!!: Erlangと浮動小数点数 · 続きを見る »

数学者

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

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

整数

数学における整数(せいすう、integer, whole number, Ganze Zahl, nombre entier, número entero)は、0 とそれに 1 ずつ加えていって得られる自然数 (1, 2, 3, 4, …) および 1 ずつ引いていって得られる数 (−1, −2, −3, −4, …) の総称である。 整数は数直線上の格子点として視覚化される 整数の全体からなる集合は普通、太字の Z または黒板太字の \mathbb Z で表す。これはドイツ語 Zahlen(「数」の意・複数形)に由来する。 抽象代数学、特に代数的整数論では、しばしば「代数体の整数環」の元という意味で代数的整数あるいは「整数」という言葉を用いる。有理数全体の成す体はそれ自身が代数体の最も簡単な例であり、有理数体の代数体としての整数環すなわち、「有理数の中で整なもの」の全体の成す環は、本項でいう意味での整数全体の成す環である。一般の「整数」との区別のためにここでいう意味の整数を有理整数 (rational integer) と呼ぶことがある接頭辞「有理(的)」(rational) はそもそも「整数比」であるという意味なので、この呼称は自己循環的にもみえる。しかし、有理整数と呼ぶ場合の「有理」は「有理数の中で」という程度の意味の単なる符牒であって、「整数比」という本来の意味合いに拘るのは徒労である。。.

新しい!!: Erlangと整数 · 続きを見る »

1986年

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

新しい!!: Erlangと1986年 · 続きを見る »

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