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

インタプリタ

索引 インタプリタ

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

128 関係: ActionScriptAPLAWKなでしこ (プログラミング言語)ひまわり (プログラミング言語)字句解析実行ファイル実行時コンパイラ実装中間表現人工知能予約語仮想化仮想関数テーブル仮想機械マイクロコンピュータバイト (情報)バイトコードバグポール・グレアムリンケージエディタループプロトタイピングプログラミング言語プログラム (コンピュータ)パンチカードビルド (ソフトウェア)テーブルジャンプ制御フローグラフ制御構造命令パイプラインインストールクロスコンパイラグルー言語コマンドラインインタプリタコンパイラコンピュータセキュリティジョン・マッカーシーソースコードソフトウェアテストタビュレーティングマシンサンドボックス (セキュリティ)動的プログラミング言語動的コンパイルBashBASICBoo (プログラミング言語)BrainfuckC SharpC Shell...CeylonC言語ClojureCoffeeScriptCommon LispCPUCurl (プログラミング言語)DartElixir (プログラミング言語)Emacs LispErlang静的単一代入解釈高水準言語論理プログラミング部分評価関数型言語著作権自己書き換えコード難読化コード逆アセンブラ逆コンパイラFortressGroovyHaxeHot Soup ProcessorHyperTalkIBM 704Io (プログラミング言語)J SharpJavaJavaプラットフォームJavaScriptJSXKotlinLazy KLISPLuaMathematicaMATLABMicrosoft Visual Basic .NETMicrosoft Visual FoxProNemerleNoop (プログラミング言語)Open FirmwarePascalPコードマシンPBASICPerlPerl 6PHP (プログラミング言語)PostScriptProcessingPrologPythonREXXR言語RubyScalaSchemeS言語SKILL (プログラミング言語)SmalltalkTcl/TkTeXTiny BASICTypeScriptVBScriptVisual Basic for ApplicationsWindows PowerShellXSL Transformations抽象構文木暗号構文解析機械語文 (プログラミング)性能解析.NET Framework インデックスを展開 (78 もっと) »

ActionScript

ActionScript(アクションスクリプト)とは、アドビシステムズ社の製品である Flash に使用されるプログラミング言語である。ECMAScript を拡張した物である。これを用いることにより、動画や音声のプレイヤーの作成など、コンテンツに複雑な処理や双方向性を持たせ Flash 作品を作ることが可能である。.

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

APL

APL(エーピーエル)は、プログラミング言語のひとつで、1957年のケネス・アイバーソンによる創案に基づいた独特の表記法を用いる。処理系の実装は、ほとんどが対話型インタプリタである。とくに多次元配列の柔軟な処理が特徴である。「APL」は「プログラミング言語」(a programming language) の略であるが、言語の特性から、ときに「配列処理言語」(array processing language) などとされる。.

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

AWK

AWK(オーク)は、プログラミング言語の一つ。テキストファイル、特に空白類(スペースの他、タブなど)やカンマなどで区切られたデータファイルの処理を念頭に置いた仕様となっているが、一般的なプログラミングに用いることも可能である。UNIX 上で開発された。.

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

なでしこ (プログラミング言語)

なでしこは、クジラ飛行机(くじらひこうづくえ)が制作したインタプリタ方式のスクリプト型プログラミング言語である。Windowsに特化したv1系と、Webに特化したv3系の二系統がある。v1系の動作確認済みのOSは、Microsoft Windows 98/Me/2000/XP/2003/Vista/7/8/10。v3系は、クロスプラットフォームで、HTML5に対応したWebブラウザ、また、Node.js上で動作する。.

新しい!!: インタプリタとなでしこ (プログラミング言語) · 続きを見る »

ひまわり (プログラミング言語)

ひまわりはスクリプト型プログラミング言語の一つ。動作可能なOSは、Microsoft Windows 98/Me/2000/XP。 ほとんどのプログラミング言語は英語をベースにしているが、ひまわりは日本語をベースにしているため、日本語にかなり近い形でプログラムのソースコードを記述できる。。 開発者はクジラ飛行机(くじらひこうづくえ)で、本体はDelphiで開発され、そのソースは公開されている。インタプリタ型なので実行速度は遅いが、他の日本語プログラミング言語に比べると、安定性は比較的高い。 Delphiに用意されているGUI部品はほとんど使用可能であり、外部DLLやAPIとの連携も可能なため、特に高速性を要求しないものであれば、様々な種類のアプリケーション開発に利用が可能である。 2008年10月21日時点での最新バージョンは1.941。2007年以降は機能追加のバージョンアップはなく、バグの修正のみである。ひまわりの後継言語として、より自然な記述を目標とした「なでしこ」がある。.

新しい!!: インタプリタとひまわり (プログラミング言語) · 続きを見る »

字句解析

字句解析 (じくかいせき、Lexical Analysis) とは、広義の構文解析の前半の処理で、自然言語の文やプログラミング言語のソースコードなどの文字列を解析して、後半の狭義の構文解析で最小単位(終端記号)となっている「トークン」(字句)の並びを得る手続きである。字句解析を行うプログラムは字句解析器である。自然言語の字句解析については形態素解析を参照。.

新しい!!: インタプリタと字句解析 · 続きを見る »

実行ファイル

実行ファイル(じっこうファイル、Executable、Executable file)とは、コンピュータがプログラムとして解釈実行できるファイルである。実行可能ファイル、実行形式ファイル、あるいは単に実行形式とも呼ばれる。 多くの場合、特定のCPUの機械語を格納したバイナリ形式である(この形式の実行ファイルを単に「バイナリ(ファイル)」と呼ぶこともある)。あるファイルが実行ファイルかどうかは、主に規約の問題である。オペレーティングシステムによっては実行ファイルであることを示すファイル名の規約が存在する(拡張子 ".bin" ".exe"など)。あるいはファイルのメタデータで実行ファイルかどうかを示す(例えばUNIX系オペレーティングシステムのファイルパーミッションビット)。 最近のアーキテクチャでは、実行ファイルにはプログラム自体に含まれない情報も格納される。例えば、実行に必要な環境についての情報、デバッグ情報、シンボル情報などである。 実行ファイルには特定のオペレーティングシステムのシステムコールを呼び出すコードが含まれることもある。つまり実行ファイルはプロセッサ固有であるだけでなくオペレーティングシステム固有でもある。 ソースファイルと実行ファイルの違いはあいまいである。というのもソースから実行形式への変換が暗黙のうちに行われることがあるためである。インタプリタのファイル(シェルスクリプトやバッチファイルを含む)は、厳密に言えばインタプリタプログラムが解釈する命令を与えるものである。.

新しい!!: インタプリタと実行ファイル · 続きを見る »

実行時コンパイラ

実行時コンパイラ(じっこうじコンパイラ、、JITコンパイラ、その都度のコンパイラ)とは、ソフトウェアの実行時にコードのコンパイルを行い実行速度の向上を図るコンパイラのこと。通常のコンパイラはソースコード(あるいは中間コード)から対象CPUの機械語への変換を実行前に事前に行い、これをJITと対比して事前コンパイラ (Ahead-Of-Timeコンパイラ、AOTコンパイラ)と呼ぶ。.

新しい!!: インタプリタと実行時コンパイラ · 続きを見る »

実装

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

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

中間表現

中間表現(ちゅうかんひょうげん、Intermediate Representation、IR)は、コンピュータがデータをクロスプラットフォームで扱うために使用するデータ構造の表現である。 中間表現を用いたデータの抽象化はコンピューティング分野では一般的な手法である。異なるプラットフォームで同等の情報を保持するデータを異なるフォーマットで扱う場合に、データを中間表現で表現することで複数フォーマットへの変換処理を効率化することを手助けする。これは自然言語の翻訳に中間言語を用いるのと同等のメリットがある。.

新しい!!: インタプリタと中間表現 · 続きを見る »

人工知能

250px 人工知能(じんこうちのう、artificial intelligence、AI)とは、「計算機(コンピュータ)による知的な情報処理システムの設計や実現に関する研究分野」を指す。.

新しい!!: インタプリタと人工知能 · 続きを見る »

予約語

予約語(よやくご、reserved word)とは、プログラミング言語において字句的には識別子(変数名、関数名、クラス名など)としてのルールを満たしているにもかかわらず、識別子にならない字句要素。 似ている言葉としてキーワードがある。多くのプログラミング言語において予約語とキーワードはほぼ同じものを指すため、しばしば混同されるが両者は異なる概念である。キーワードは言語仕様上特別な意味を持った語のことである。キーワードであっても予約語でないこともあるし、その逆もある。たとえば ECMAScriptでは、class は予約されており予約語だが言語で使われておらずキーワードではない(ECMA-262 では、キーワードは予約語の部分集合で、言語で制御構造などの意味を持つ予約語がキーワードである。Java では使っていなくてもキーワードであり、goto もキーワードである)。SQLには予約されたキーワードと予約されていないキーワードがある。例にも出てきたように、個々の規格によっても両者それぞれ微妙に意味が違うこともある。 予約されているのでユーザーは使えない識別子(つまり、使えないだけで、識別子ではある)という意味で(たとえば、処理系で内部的に使う名前と同じであるとか)「予約語」という語を使っている規格もある。この場合キーワードと予約語は別のものである。 FORTRAN、PL/I のように予約語を持たないプログラミング言語も存在する。 また、共通言語基盤(共通言語仕様 (CLS))にしたがって実装されたC#やVB.NETでは予約語を識別子として利用する構文が用意されている。.

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

仮想化

仮想化(virtualization)とは、コンピュータのリソースを抽象化することである。「リソースの物理的特性を、そのリソースと相互作用するシステム/アプリケーション/エンドユーザーから隠蔽する技法。単一の物理リソース(サーバ、OS、アプリケーション、補助記憶装置など)を複数の論理リソースに見せかけたり、複数の物理リソース(複数の補助記憶装置群やサーバ群)を単一の論理リソースに見せかけたりできる」という実用的定義がある。また、単一の物理リソースを何らかの特性の異なる単一の論理リソースに見せかけることもできる。そして、仮想回線により、幅が拡がる。.

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

仮想関数テーブル

仮想関数テーブル(かそうかんすうテーブル、virtual method table)あるいはvtableは、プログラミング言語の実装において動的なポリモーフィズム、すなわち実行時のメソッドの束縛を実現するために用いられる機構である。 あるプログラムが継承関係にある複数のクラスを持っているとする。たとえばスーパークラス Cat と二つのサブクラス HouseCat と Lion において、クラス Cat が "speak" という仮想関数を定義しており、サブクラスは適切な実装(鳴く、吠えるといった)を行うものとする。 プログラムが "speak" メソッドを Cat ポインタ(Cat クラスと Cat の任意のサブクラスを示すことができる) に対して呼び出すと、実行環境は、Cat が示す実際のオブジェクトの種類に応じてどの実装を呼び出すかを決定しなければならない。 このような動的な割り当てを実現するには様々な方法があるが、vtable による方法が C++ や関連するプログラミング言語(D言語 や C# など)では一般的である。 実用的なオブジェクトのインターフェイスを実装と分離する言語(Visual Basic や Delphi など)でも、オブジェクトが異なる関数ポインタのセットを用いるだけで異なる実装を用いることができるため、vtable による方法を用いる傾向にある。.

新しい!!: インタプリタと仮想関数テーブル · 続きを見る »

仮想機械

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

新しい!!: インタプリタと仮想機械 · 続きを見る »

マイクロコンピュータ

マイクロコンピュータ(英語:microcomputer)、略してマイコンはCPUとしてマイクロプロセッサを使用したコンピュータである。マイクロコンピュータは当時のメインフレームやミニコンピュータと比較して物理的に小さかった。入出力のためのキーボードとスクリーンを装備した多くのマイクロコンピュータは、現代の一般的な感覚におけるパーソナルコンピュータに近い。 なおマイコンという呼び方は1970年代から1980年代にかけて一般的であったが、同様な製品を現在はパソコンと呼ぶ。.

新しい!!: インタプリタとマイクロコンピュータ · 続きを見る »

バイト (情報)

バイト (byte) は、「複数ビット」を意味する、データ量あるいは情報量の単位である。 1980年頃から1バイトは8ビット (bit) であることが一般的であったが、 正式に定義されたのは2008年発行のIEC_80000-13である。 8ビットは、256個の異なる値(たとえば整数であれば、符号無しで0から255、符号付きで−128から+127、など)を表すことができる。.

新しい!!: インタプリタとバイト (情報) · 続きを見る »

バイトコード

バイトコード (bytecode) は、仮想マシンによる実行のために設計された、実行可能なプログラムのバイナリ表現である。ソフトウェアによって処理されるため、大抵は実機の機械語より抽象度の高い中間コードになっている。プログラミング言語の実装において、特定のハードウェアへの依存度を下げ、またインタプリタの実装を容易にするために用いられる。コンパイラの中間コードとして用いられることもある。 バイトコードという名前は命令の構成がバイト指向であること、すなわち命令長がバイト可変長であったり、命令中のフィールドの区切りがバイト区切りに合っているといったことから来ている。特にJavaの場合オペコードが1バイトである。しかし、仮想マシンの機械語をバイトコードと呼ぶことがJavaで広く一般的になったことから、前述のようなバイト指向でなくともバイトコードと呼んでいることも多い。バイト単位でなくビット単位の場合は、ビットコードとも呼ばれる。ワード指向のためにワードコードという語を使っている例も見られる。 バイトコードで記述されたプログラムは通常、バイトコードインタプリタによって解釈・実行される。バイトコードインタプリタは機械語を解釈・実行するCPUとの類似性からバーチャルマシンとも呼ばれる。.

新しい!!: インタプリタとバイトコード · 続きを見る »

バグ

バグ (bug) とは、英語で「虫」の意であり、転じてコンピュータプログラムの誤りや欠陥を表す。 ソフトウェア・ハードウェア開発における契約文書など、法的な文書ではバグのことを「瑕疵」と記述する。原因や責任の所在などが不明なものを特定性の低い表現の「不具合」と呼ぶことがある。また、セキュリティ上に関わるバグや欠陥は「セキュリティホール」などと呼ばれることもある(正確には、バグはこれらの原因(のひとつ)である)。 多くのバグが含まれ、機能的に正常な役割を果たさないものを、バギー・プログラム (Buggy Program) と呼ぶことがある。 なお、発生したバグを探して取り除く作業はデバッグと呼ばれる。.

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

ポール・グレアム

ポール・グレアム(Paul Graham、1964年 -)は、米国のLispプログラマーでエッセイスト。『ANSI Common Lisp』や『ハッカーと画家』の著者としても知られている。.

新しい!!: インタプリタとポール・グレアム · 続きを見る »

リンケージエディタ

リンケージエディタ(リンカ(linker)、連係編集プログラムとも)とは機械語のプログラムの断片を結合し実行可能なプログラムを作成するプログラムのことである。例として、C言語では、ソースファイルをコンパイルするとオブジェクトファイルが生成される。それに他のオブジェクトファイルやライブラリを結合して1つのプログラムが完成する。この結合(リンク)の際リンケージエディタが使われる。.

新しい!!: インタプリタとリンケージエディタ · 続きを見る »

ループ

ループ (loop) は輪や輪の形をしたもののこと。あるいは物事が繰り返すことの比喩。.

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

プロトタイピング

プロトタイピング(Prototyping)とは、実働するモデル(プロトタイプ)を早期に製作する手法およびその過程を意味する。その目的は、設計を様々な観点から検証する、機能やアイデアを形にすることでユーザーから早めにフィードバックを得るなど、様々である。プロトタイピングはシステム設計工程の一部として組み込まれることも多く、それによってプロジェクトのリスクと費用を低減させると考えられている。反復型開発では1つ以上のプロトタイプが作られ、欠陥や問題が徐々に解決されていく。プロトタイプの改善が十分なされ、機能/堅牢性/製造の容易さといった設計目標に達したとき、製品としての製造が可能となる。.

新しい!!: インタプリタとプロトタイピング · 続きを見る »

プログラミング言語

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

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

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

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

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

パンチカード

20世紀に最も広く使われた80欄のパンチカード。寸法は 187.325 mm × 82.55 mm。この例は1964年のEBCDIC文字セットにそれ以前につかわれていた特殊記号を加えて示したものである。 パンチカードは、穿孔カードなどともいう、厚手の紙に穴を開けて、その位置や有無から情報を記録する記録媒体で、以前には鑽孔紙テープとともに多用された。電子式コンピュータ以前のタビュレーティングマシン(パンチカードシステム)の時代から多用されたものであるが、近年はコンピュータ用の主力メディアとしては過去のものとなっている。画像などといった大容量のデータを負担なく扱えるようになる以前には、四角い窓を作ってそこに写真フィルムを張る、といった使い方や、端に切れ込みを入れて串を使った手作業で分類できる edge-notched card(#ハンドソートパンチカードの節を参照)など、紙テープとは違ったカードならではの使い方もある。 現在の使われ方としては、国や地方によっては選挙の投票用であるとか、穴を開けるのではないものの、マークシート用で同一の大きさ・形状・材質のカードが使われていることがある。.

新しい!!: インタプリタとパンチカード · 続きを見る »

ビルド (ソフトウェア)

フトウェアのビルド(build)は、ソースコードファイルを独立したソフトウェア生成物に変換するコンピュータ上で実行されるプロセス、またはその結果を指す。ビルドにおいて最も重要なのはコンパイルプロセスであり、ソースコードファイルを実行ファイルに変換する。 単純なプログラムでは、単一のファイルをコンパイルするだけで済むが、複雑なソフトウェアではソースコードは多数のファイルで構成されており、異なった組み合わせ方をすることで異なったバージョンを生成できる。 コンピュータプログラムのビルドは、一般にビルドツールと呼ばれるプログラムを使い、他のプログラムを制御・統合して行う。ビルドツールの例としては、make、ant、maven、SConsなどがある。ビルドユーティリティは、各種ファイル群を正しい順序でコンパイルしリンクする必要がある。また、開発時には何度もビルドを繰り返すが、前回のビルドから何も変更されていないファイルはコンパイルする必要がない(ただし、ヘッダファイルなどの依存関係も考慮する必要がある)。洗練されたビルドユーティリティは無駄な再コンパイルをしないようにして、ビルドに要する時間を短縮している。Subversionなどのバージョン管理システムはビルドユーティリティの機能を内蔵している。さらに複雑なプロセスになると、ビルド中に他のプログラムを使ってコードやデータを生成することもある。.

新しい!!: インタプリタとビルド (ソフトウェア) · 続きを見る »

テーブルジャンプ

テーブルジャンプは計算機プログラムの制御方式の一つである。テーブルジャンプに使用するテーブルをジャンプテーブルと呼ぶ。 ジャンプ命令を実行する際、ジャンプ先の番地(アドレス)を予め表の形でメモリに記憶させておき、それを参照してジャンプする方式。自己書き換えなどのテクニックと併用して使われる。複数の分岐先がある場合でも、短時間でジャンプが可能となる。 高級言語にもジャンプテーブルによる実装を考慮したものがあった。Pascalのcase文が変数に順序型のみを許容しているのが一例である。 UNIX系オペレーティングシステムのダイナミックリンクライブラリは、ロードされるアドレスが固定されていない。このため一種のテーブルジャンプでライブラリ内のサブルーチンにジャンプするようになっている。実行プログラムをロードした当初、そのジャンプテーブルは全てローダー(loader)にジャンプするように設定されている。ローダーはジャンプに使用されたテーブルのエントリに対応するライブラリルーチンにジャンプするのだが、その際にジャンプテーブル自身を書き換えて次回のコールからは直接ライブラリルーチンにジャンプするように変更する。 カーネルモードで実行されるデバイスドライバやファイルシステムもテーブルジャンプを使用してカーネル本体とのインターフェイスを実装していることが多い。open()、close()、read()、write()といったシステムコールの処理は最終的に個別のドライバやファイルシステムのコードを呼び出す。しかし、いずれも種類が豊富であるし、カーネルにリンクして構成されない場合もあるため、直接呼び出すことはできず、テーブルジャンプで呼び出すようになっている。例えば、UNIX系では仮想ファイルシステムが個別のファイルシステムのサブルーチンを登録するジャンプテーブルを管理する。ただし、この種の実装では単なる配列にアドレスを登録するのではなく、ドライバやファイルシステムの管理データ構造にジャンプテーブルが格納されている。従って、これはオブジェクト指向でいうカプセル化やポリモーフィズムに近い。.

新しい!!: インタプリタとテーブルジャンプ · 続きを見る »

制御フローグラフ

制御フローグラフ(せいぎょフローグラフ、Control Flow Graph, CFG)は、プログラムを実行したときに通る可能性のある全経路をグラフで表したものである。この場合、ノードは基本ブロック(すなわち、分岐を全く含まない逐次的コード列であって、途中に分岐先もない)を表し、ノードとノードをつなぐ有向エッジは、あるブロックから別ブロックへのジャンプを意味する。一般に、グラフ全体の入口となる入口ブロックと、出口となる出口ブロックがある。 CFGはコンパイラ最適化や静的コード解析ツールでよく使われる。 最適化において利用されるグラフの属性として、到達可能性(reachability)がある。あるブロックまたは部分グラフが、入口ブロックを含む部分グラフと連結していない場合、そのブロックは決して実行されることはなく、いわゆる到達不能コードであって、容易に削除可能である。出口ブロックが入口ブロックから到達不能な場合、無限ループとなっている(あらゆる無限ループを検出できるわけではない。停止性問題を参照のこと)。プログラマが明示的に到達できないコードや無限ループを書かなくても、そのような状況になることはある。例えば、定数伝播や定数畳み込みといった最適化を行った後に分岐スレッディングを行うと、元々は別々だった基本ブロックが1つにまとめられることがあり、エッジがCFGから除去され、グラフの一部が連結されなくなることがある。.

新しい!!: インタプリタと制御フローグラフ · 続きを見る »

制御構造

制御構造(せいぎょこうぞう)は、コンピュータ・プログラミング言語、特に手続き型プログラミングや命令型プログラミングにおいて、ループや飛び越しなどといった、手続き(プロシージャ)中の実行順を順次実行から変化させたり、サブルーチン呼出しやその戻り、などといった制御を行う「文 (プログラミング) 」などの構造(言語の構成要素)である。 制御構造の種類は言語によって様々だが、典型的には以下のようなものがある(用語「ブロック」については、ブロック (プログラミング) の記事を参照)。.

新しい!!: インタプリタと制御構造 · 続きを見る »

命令パイプライン

命令パイプライン(Instruction pipeline)は、コンピュータなどのデジタル電子機器で命令スループット(単位時間当たりに実行できる命令数)を向上させる設計技法の1つで、命令レベルの並列性を高める1技法。 命令パイプラインのあるプロセッサは、命令の処理を独立して実行できる工程(ステージ)に分割する。各工程は、前の工程の出力を自身の入力とし、自身の出力を次の工程の入力とするように相互接続されている。このような構成で各工程を並列化し、全体としての処理時間を大幅に削減する。.

新しい!!: インタプリタと命令パイプライン · 続きを見る »

インストール

インストールとは、.

新しい!!: インタプリタとインストール · 続きを見る »

クロスコンパイラ

ンパイラ(cross compiler)は、コンパイラが動作している以外のプラットフォーム向けに実行ファイルを生成する機能を持つコンパイラである。クロスコンパイラは主に組み込みシステム向けのコンパイラや、マルチプラットフォーム対応のコンパイラとして使われる。 必要最小限のメモリしか搭載していないことが多いマイクロコントローラを使った組み込みシステムなど、実行ファイルを動作させたいプラットフォームがコンパイル環境としては不適切な場合にはクロスコンパイラは必須である。 システムが複数のプラットフォームをサポートする場合に、準仮想化のためのツールとしてクロスコンパイラを利用することが一般化しつつある。.

新しい!!: インタプリタとクロスコンパイラ · 続きを見る »

グルー言語

ルー言語 (glue language) とはプログラミング用語のひとつであり、ソフトウェアコンポーネント同士を結びつけることを主眼としたプログラミング言語の総称である。「グルー」とはにかわ状の接着剤のことを意味する。だが、ややニュアンスが異なる。 グルー言語のはしりはUNIXのシェルスクリプトである。シェルはコマンドラインインタプリタとも呼ばれるが、その名の通り簡易な制御機構を備えており、コマンド同士を結合して流れ作業や定型処理を実現する。 帰結として、機能自体を記述するよりも、機能と機能を組み合わせることを重視する言語や言語形態があり、それをグルー言語という。スクリプト言語を、機能の組み合わせに特化して利用する場合などが「グルー言語的な使用」である。。.

新しい!!: インタプリタとグルー言語 · 続きを見る »

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

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

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

コンパイラ

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

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

コンピュータセキュリティ

ンピュータセキュリティ(英語:Computer Security)は、情報セキュリティの一部で、コンピュータシステムを災害、誤用および不正アクセスなどから守ることである。また、ハードウェア、ソフトウェア、データ、ネットワークのいずれについてもその機密性、完全性、可用性を維持することである。 不正な利用とは、第三者による秘密情報へのアクセス、許可されていない操作の実行、ネットを介した詐欺(架空請求、ワンクリック詐欺など)が含まれる。この語は、しばしばコンピュータセキュリティ(安全性)を保つための仕組みや技術を指すために用いられる。また、コンピュータセキュアとも呼ばれる場合もある。.

新しい!!: インタプリタとコンピュータセキュリティ · 続きを見る »

ジョン・マッカーシー

ョン・マッカーシー(John McCarthy, 1927年9月4日 - 2011年10月24日)は、アメリカ合衆国の計算機科学者で認知科学者。マービン・ミンスキーとならぶ初期の人工知能研究の第一人者。「人工知能; Artificial Intelligence」という用語は彼が1956年のダートマス会議のために1955年に出した提案書で初めて使用された。また、ALGOL言語の設計に触発され、LISPというプログラミング言語を開発し、タイムシェアリングの概念を一般化させた。.

新しい!!: インタプリタとジョン・マッカーシー · 続きを見る »

ソースコード

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

新しい!!: インタプリタとソースコード · 続きを見る »

ソフトウェアテスト

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

新しい!!: インタプリタとソフトウェアテスト · 続きを見る »

タビュレーティングマシン

ンピュータ歴史博物館にあるホレリスのタビュレーティングマシンとソータ (1890) ホレリスのパンチカード タビュレーティングマシン(Tabulating machine)は日本では一般にパンチカードシステムと呼ばれていたもので、会計などの作表を補助する機械群。タビュレータ (tabulator) とも。ハーマン・ホレリスが発明し、1890年の米国国勢調査のデータ処理で初めて使用された。その後コンピュータが普及するまでデータ処理に広く使われた。 「スーパーコンピューティング」という言葉は1931年、紙がIBMがコロンビア大学に納入した大型特製タビュレータを指して使ったのが最初である なお、95ページにある1920年という日付は間違っている。詳しくは を参照。.

新しい!!: インタプリタとタビュレーティングマシン · 続きを見る »

サンドボックス (セキュリティ)

ンピュータセキュリティ技術において、サンドボックス(sandbox)は、外部から受け取ったプログラムを保護された領域で動作させることによって、システムが不正に操作されるのを防ぐセキュリティ機構のことをいう。 実行されるプログラムは保護された領域に入り、ほかのプログラムやデータなどを操作できない状態にされて動作するため、プログラムが暴走したりウイルスを動作させようとしてもシステムに影響が及ばないようになっている。 ウェブページに配置されたJavaアプレットやFlash、JavaScriptなどのプログラムは自動的に実行される。そのため、気づかないうちにコンピュータ上にあるファイルを盗み見られたり書き換えられたり、あるいはコンピュータウイルスに感染させられたりするおそれがある。そこで安心してネットサーフィンを楽しめるように提供されたのが、そういった攻撃のできない安全な「砂箱」(サンドボックス)である。.

新しい!!: インタプリタとサンドボックス (セキュリティ) · 続きを見る »

動的プログラミング言語

動的プログラミング言語(dynamic programming language)は、コンピュータ・プログラミング言語において、一般にコンパイルなどの準備段階に済まされることが多いことを、準備時ではなく実行時に行うプログラミング言語処理系(の言語)である。本来は実装(処理系)のことを指すべきであるが、一般にその言語を指して議論されることが多い。もっぱら高水準言語が多い。動的言語(dynamic language)とも。例えば、型システムによる型チェックや、値の型変換、名前束縛などを、コンパイルなどの実行準備時ではなく実行時に行う。そういった「動的さ」により、コードの追加やオブジェクトや定義の拡張や型システムの変更によるプログラムの拡張、といったことが行いやすい、ということが利点とされる。これらの動作は静的な処理系でも手間はかかるがエミュレート可能である(例えばJavaのJDK/JREでも、クラスローダーを活用すれば可能である)。一方、動的言語ではそういったことが、直接的にサポートされる。 動的言語と動的型付けは同じ概念ではないし、全ての動的言語が必ずしも動的型付き言語というわけではない。たとえばSmalltalk環境の一つであるStrongtalkやGradualtalkは動的な言語にも拘わらず静的型検査が可能となっている。しかし多くの動的言語は動的型付き言語である。.

新しい!!: インタプリタと動的プログラミング言語 · 続きを見る »

動的コンパイル

動的コンパイル(英: Dynamic compilation)とは、 プログラミング言語の実装で用いられる、プログラムの性能を実行時に向上させるための手法である。この技術はSelf プログラミング言語を起源とており、これを用いる最もよく知られた言語は Java である。動的コンパイルはランタイムにのみ知ることができる情報による最適化を可能にする。 通例動的コンパイルを用いる実行環境は、プログラムを開始後最初の数分間は低速で実行し、その後コンパイルと再コンパイルが完了すると、高速に実行する。このように開始直後パフォーマンスが低いことにより、動的コンパイルが好ましくない状況も存在する。また動的コンパイルの大半の実装では、初回のコンパイル時に実行可能な最適化も実行時に更なるコンパイルが行われるまで遅延させるため、不要にプログラムの動作を遅延させてしまうことがある。ジャストインタイムコンパイル (JITコンパイル) は、動的コンパイルの形態の一つである。 密接な関連のある技術として、増分コンパイルがある。増分コンパイラは、POP-2、POP-11、MaclispなどのLispの一部、またMLプログラミング言語の少なくとも一つのバージョン (Poplog) で用いられている。 増分コンパイルでは、対応するプログラミングのコンパイラが実行時環境の一部となっている必要がある。それゆえ、ソースコードは、端末や、ファイル、あるいは動作中のプログラムによって作成されるデータ構造からいつでも読み取り可能で、機械語コードや関数に変換ができ(同じ関数を置き換えることもできる)、即座にプログラムから利用可能になる。対話的な開発やテストの際のコンパイル速度への要求から、コンパイルされたコードは通常の「バッチ型コンパイラ」ほどの強い最適化は行われない。しかし、増分的にコンパイルされたプログラムは同じプログラムのインタプリタ版よりは高速に動作する。増分コンパイルはインタプリタ言語とコンパイル言語の双方の利点を備えている。移植性をもたらすため、一般的に増分コンパイラの動作は二段階に分かれることが望ましい。最初のコンパイルで何らかのプラットフォーム非依存の中間コードを生成し、次にこれをホストマシンの機械語コードにコンパイルする。上述の動的コンパイルとは異なり、増分コンパイルはプログラムが最初に動作した後に更なる最適化が行われることはない。.

新しい!!: インタプリタと動的コンパイル · 続きを見る »

Bash

BashはUnixシェルかつであり、GNUプロジェクトにおけるBourne Shellのフリーソフトウェアによる代替としてによって作成された 。Bashは1989年に初めてリリースされ 、ほとんどのLinuxディストリビューションやアップルのmacOSにおけるデフォルトのログインシェルとして広く普及している。Windows 10におけるWindows Subsystem for Linuxでも利用可能である。 Bashはコマンドプロセッサであり、通常はアクションを発生させるコマンドをユーザーがタイプするテキストウィンドウで起動する。Bashはスクリプトと呼ばれるファイルからコマンドを読み込んで実行することも可能である。Bashはそれ以外の全てのUnixシェルと同様に、ファイル名のグロブ(ワイルドカードによるマッチング)、パイプ、ヒアドキュメント、、変数、そして条件テストやのための制御構造をサポートする。Bashのキーワードや構文などの言語の基本的要素は全てshからコピーされており、ヒストリなどsh以外の機能はcshやkshからコピーされている。BashはPOSIX準拠のシェルであるが、数多くの拡張がされている。 Bashという名前はBourne-again shellの頭字語であり、Bashの置換対象であるBourne Shellと、現代アメリカのキリスト教において精神的な再生を意味する "born again"(新生)に引っ掛けた駄洒落である。 バージョン1.03(1989年8月)以降のBashに存在するシェルショックと呼ばれるセキュリティホールが2014年9月に発見され、すぐにインターネットの至る所で広範囲なの原因となった。バグの特定後すぐに修正パッチが利用可能となったが、未だに全てのコンピュータが更新されているわけではない。.

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

BASIC

BASIC(ベーシック)は手続き型プログラミング言語のひとつ。 名前は「beginner's all-purpose symbolic instruction code」(「初心者向け汎用記号命令コード」を意味する)のバクロニムである。.

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

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

Boo はオブジェクト指向で静的型付けのプログラミング言語であり、共通言語基盤を通してUnicodeや国際化と地域化をサポートしている。ウェブアプリケーションも開発可能であり、Pythonに影響を受けた文法構造を持つ。そして言語やコンパイラの拡張性に重点が置かれている。特筆すべき機能を幾つか挙げてみると、型推論, ジェネレータ, 多重ディスパッチ、および付加的なダックタイピング、マクロ、真のクロージャ、カリー化、第一級関数などがある。Boo言語は2003年から活発に開発が行われている。 Boo言語の処理系はフリーソフトウェアであり、MITライセンス/BSDライセンスで配布されている。そしてマイクロソフト.NETおよびMonoの両方で動作する。 またオープンソースによる統合開発環境であるSharpDevelopやMonoDevelopでは、Boo言語による開発を標準でサポートしている。.

新しい!!: インタプリタとBoo (プログラミング言語) · 続きを見る »

Brainfuck

Brainfuck(ブレインファック)は難解プログラミング言語のひとつ。なお名称に卑語が含まれるため、Brainf*ckなどと表記されることがある。.

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

C Sharp

C#(シーシャープ)は、アンダース・ヘルスバーグが設計(デザイン)したプログラミング言語であり、構文(syntax)は(名前にもある通り)C言語や、C言語風に構文が設計されたC++やJavaなどの影響があるが、構文以外についてはヘルスバーグが以前の所属であるBorlandで設計したDelphiからの影響がある。 Microsoftによる謳い文句としては、マルチパラダイムプログラミング言語、強い型付け、命令型、宣言型、手続き型、関数型、ジェネリック、オブジェクト指向の要素を持つ、などといった点が強調されている。 CLIといった周辺も含め、Microsoftのフレームワーク「.NET Framework」の一部である他、VJ++で「非互換なJava」をJavaに持ち込もうとしたような以前のMicrosoftとは異なり、その多くの仕様を積極的に公開し標準化機構に託して自由な利用を許す(ECMA-334、ISO/IEC 23270:2003、JIS X 3015)など、同社の姿勢の変化があらわれている一面でもある(実際に「Mono」という、フリーソフトウェアの定義に合致したライセンスの、コミュニティによる実装がある)。.

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

C Shell

C shell(シーシェル、csh)は、カリフォルニア大学バークレー校の大学院生だったビル・ジョイが1970年代後半に開発したUnixシェルである。1978年にジョイが配布を始めた 2BSD という BSD UNIX のリリースで広く配布されることになった。他にアイデアやコードに貢献した者としては、マイケル・ウベル、エリック・オールマン、マイク・オブライエン、ジム・カルプがいる。UNIX V6 の /bin/sh を元に作られたもので、Bourne shell (UNIX V7)と共通の先祖を持つ。 通常テキストウィンドウ内で動作するコマンドラインインタプリタであり、ユーザーがコマンドを入力するとそれに応じた処理が実行される。またシェルスクリプトと呼ばれるファイルからコマンド群を読み込むこともできる。他のUnixシェルと同様、ファイル名のワイルドカード、パイプ、ヒアドキュメント、、変数、条件分岐やループなどの制御構造をサポートしている。cshが1980年代の他のシェルと異なっていた点は、対話向けの機能と全体的なスタイルである。新機能によって他のシェルよりも容易に素早く使うことができた。言語としての全体的スタイルはC言語によく似ており、Unixユーザーにとっては読みやすかった。 macOS や Red Hat Linux など多くのシステムのcshは実際には改良版のtcshである。tcshの実行ファイルは "csh" と "tcsh" の両方にハードリンクされていて、どちらの名前でも同じ改良版のtcshが呼び出される。 Ubuntuではcshとtcshの2種類のパッケージを用意しており、前者はオリジナルのBSD版csh、後者は改良版のtcshとなっている。 tcshには、ファイル名やコマンドの補完機能、Tenexシステムに由来するコマンド行編集があり、名称の先頭の "t" は Tenex に因んでいる。tcshは機能を追加しただけでオリジナルのcshを修正したわけではないので、後方互換を保っていた。当初はジョイが作ったオリジナルのソースツリーからの脇枝だったが、今ではtcshが主な枝となっていて、開発が継続されている。tcshは非常に安定しているが、主に細かいバグ修正のため、およそ1年に1回の頻度で新たなリリースがなされている。.

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

Ceylon

Ceylonは、レッドハット社によって開発されたプログラミング言語およびソフトウェア開発キットである。この言語はJava言語をもとに作られ、Java仮想マシンおよびJavaScript実行環境上で動作するものである。 この言語とソフトウェア開発キットのプロジェクトは、Java言語とJava SEソフトウェア開発キットで見られた成功と失敗を踏まえた上で、もし今それらが設計されたとしたら、商用コンピューティング向けの言語と開発キットがどんなものになっていたかを示すものであると言える。また、レッドハット自身は否定しているものの、業界のアナリストからは同プロジェクトはJavaを抹殺するためのものだと言われている。.

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

C言語

C言語(シーげんご)は、1972年にAT&Tベル研究所のデニス・リッチーが主体となって開発したプログラミング言語である。英語圏では単に C と呼んでおり、日本でも文書や文脈によっては同様に C と呼ぶことがある。.

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

Clojure

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

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

CoffeeScript

CoffeeScript はプログラミング言語のひとつである。コードはJavaScript のコードに変換される。 Ruby や Python、Haskell から影響を受けたシンタックスシュガーの導入により、JavaScript に比べ簡潔さと可読性を向上させたほか、配列内包 (Array comprehensions) やパターンマッチングといった機能を追加している。 CoffeeScript により、パフォーマンスを下げることなく、より短いコードでプログラムを記述することができる (JavaScript に比べ 1/3 程度の行数が削減できる)。 2011年3月16日から一時、CoffeeScript は GitHub でもっともウォッチされているプロジェクトであった。 この言語は Ruby コミュニティによく受け入れられており、(Ruby on Rails 開発者のが所属する) 37signalsでは、実際に製品の開発に使われている。また Ruby on Rails 3.1以降 でも正式にサポートされている。 ブレンダン・アイクは、氏が考える「JavaScript の未来」に影響を与えたものとして CoffeeScript に言及している。.

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

Common Lisp

Common Lisp(コモン・リスプ)は、コンピュータ・プログラミング言語 Lispの標準(の、ひとつ)であり、Lisp方言のひとつである。Common Lispの略称はCL(ごくまれにclispとも。なおCLISPという実装が実在するので混同回避のためあまり用いられない)。規格はANSIによる ANSI INCITS X3.226-1994 (R2004) 。仕様を指すこともあれば、実装を指すこともある。いくつかの、フリーソフトウェアの定義に合致したライセンスによりライセンスされている実装や、オープンソースの定義に合致したライセンスによりライセンスされている実装や、プロプライエタリなライセンスによりライセンスされている実装がある。 Lispの基本的な特徴の他、いくつかのプログラミングパラダイムのLispへの取り込みについて標準を提供しているという、マルチパラダイムプログラミング言語という面がある。.

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

CPU

Intel Core 2 Duo E6600) CPU(シーピーユー、Central Processing Unit)、中央処理装置(ちゅうおうしょりそうち)は、コンピュータにおける中心的な処理装置(プロセッサ)。 「CPU」と「プロセッサ」と「マイクロプロセッサ」という語は、ほぼ同義語として使われる場合も多いが、厳密には以下に述べるように若干の範囲の違いがある。大規模集積回路(LSI)の発達により1個ないしごく少数のチップに全機能が集積されたマイクロプロセッサが誕生する以前は、多数の(小規模)集積回路(さらにそれ以前はディスクリート)から成る巨大な電子回路がプロセッサであり、CPUであった。大型汎用機を指す「メインフレーム」という語は、もともとは多数の架(フレーム)から成る大型汎用機システムにおいてCPUの収まる主要部(メイン)、という所から来ている。また、パーソナルコンピュータ全体をシステムとして見た時、例えば電源部が制御用に内蔵するワンチップマイコン(マイクロコントローラ)は、システム全体として見た場合には「CPU」ではない。.

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

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

Curl は、米国マサチューセッツ工科大学 (MIT) で開発された対話的なウェブコンテンツ用のプログラミング言語である。Curl はHTMLのようなテキストマークアップと、JavaScript のようなスクリプティング、Java のような重量機能を単一のフレームワークに統合している。 Curl はマークアップ言語の一面があり、プレーンテキストはテキストのまま記述する。それと同時に多重継承のような機能を持つオブジェクト指向プログラミング言語でもある。Curl のアプリケーションでは、従来のウェブ開発においてHTML・CSS・JavaScript の分離がもたらす、コンテンツ・スタイル・振る舞いの分離が強要されることはない。ただし、そのようなスタイルのプログラミングも可能である。 Curl は書式付テキストの表示用途にHTMLの代替として使うこともできるが、その能力はそれだけにとどまらない。Curl の(HTMLレベルの)オーサリングおよびプログラミング構文はユーザーコードによって拡張可能である。この言語はジャストインタイムコンパイラによってクライアントマシンのネイティブコードにコンパイルし、高速に実行することもできるよう設計されている。 2011年より新たな方式としてモバイル・アプリケーション向けのCaedeが提供されている。 Caedeは上記のジャストインタイムコンパイラではなく、提供されるTransratorによってモバイルソースコード(HTML5群)に変換され、ハイブリッドモバイルアプリケーションとして動作する。 単純な Curl の Hello world アプレットは以下のようになる。ソースコードで特徴的なのはその波括弧 (curly bracket) の使用である。これは言語名の由来ともなっている。 Curl のアプレットはウェブブラウザ用のプラグインである Curl RTE を使用して表示することができる。2008年10月現在、対応しているプラットフォームは Windows, Linux, Mac OS Xである。.

新しい!!: インタプリタとCurl (プログラミング言語) · 続きを見る »

Dart

Dart(ダートもしくはダーツ。当初は Dash と呼ばれていた)はGoogleによって開発されたウェブ向けのプログラミング言語である。2011年10月10日 - 12日に開催された デンマークのオーフスで開催された「GOTOカンファレンス」で公開された。この言語は、ウェブブラウザ組み込みのスクリプト言語であるJavaScriptの代替となることを目的に作られた。.

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

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

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

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

Emacs Lisp

Emacs Lispは、GNU EmacsとXEmacsテキストエディタ(この記事ではあわせてEmacsと呼ぶ)で使われているLispプログラミング言語の方言である。Emacs組込みの編集機能のうち、C言語で書かれた部分以外のほとんどを実装するのに使われている。また、利用者によるEmacsのカスタム化や拡張のために用いられる。Lisp処理系で、もっとも使われている言語である。 Emacs Lispは、UnixのBourne Shell、Python、Perl、scsh、GNU Guile などのようなスクリプト言語として使うこともでき、コマンド行や実行ファイルからも呼び出せる。バッファや移動コマンドのような編集機能は、Lispの機能を補いバッチ・モードで動作する。 Emacs Lispは、ときにElispと呼ばれることもある。ただし、この呼び方は同名の無関係な古いLisp方言と混同されるおそれがある。機能でいうと、Common Lispの影響も後にみえるが、Maclisp方言と強い関係がある 。プログラミング・メソッドとして、手続き指向プログラミングと関数的プログラミングに対応している。関数をデータとして扱えるなどの強力な機能のため、(TECOを拡張言語としていたオリジナルの) Emacsの書換えにあたり、リチャード・ストールマンは拡張言語としてLispを選んだ。ストールマンがGosling EmacsをGNU Emacsへ書き換えていたとき、Common Lisp とは違ってSchemeは既に存在した。しかし、当時のワークステーションの性能は貧弱であったため、Schemeよりももっと簡単に最適化のできるLisp方言を開発する必要があった。 Emacs Lispは、アプリケーション・プログラミングで使われる方言群であるSchemeやCommon Lispとは根本的に異なる。大きな違いの1つは、デフォルトで字句的スコープではなく動的スコープを使うことである。つまり、呼出し関数の局所変数は、呼び出された関数からも参照できるが、定義時のスコープで参照しているのではない。 Emacs Lispを書くのがGNU Emacsをカスタム化する唯一の方法ではない。バージョン20以降のGNU Emacsには「カスタム化」機能があり、利用者はグラフィカルなインターフェースによって一般的なカスタム化変数を設定できる。「カスタム化」機能は、比較的単純なものに制限されているものの、利用者の代わりにEmacs Lispのコードを書いてくれる。利用者全員がEmacsの提供する高度な拡張性が必要なわけではないし、またそういう人は自分でEmacs Lispのコードを書けるものだ。.

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

Erlang

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

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

静的単一代入

静的単一代入(せいてきたんいつだいにゅう、Static Single Assignment form, SSA)形式は、コンパイラ設計における 中間表現 (IR) のひとつで、各変数が一度のみ代入されるよう定義されたものである。もともとの中間表現における変数は「バージョン」に分割され、全ての変数の定義がバージョンを表現できるよう、通例新たな変数は元の名前に添え字を付けて表現される。SSA ではuse-def 連鎖が明示的であり、連鎖は要素を一つだけ持つ。 SSA はRon Cytron、Jeanne Ferrante、Barry Rosen、Mark Wegman、Ken Zadeck および IBM の研究者たちにより1980年代に開発された。 Scheme、ML、Haskell などの関数型言語のコンパイラでは、Fortran や C などのコンパイラで SSA の利用が期待される箇所で継続渡しスタイル (CPS) を用いるのが一般的である。SSA と CPS は形式的に等価であり、最適化やコードの変換などがいずれかに施された場合、もう片方にも同様に適用することができる。.

新しい!!: インタプリタと静的単一代入 · 続きを見る »

解釈

解釈(かいしゃく、ἑρμηνεία (hermeneia)、interpretatio、Auslegung、Interpretation)は、主として以下のような意味で用いられる。.

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

高水準言語

水準言語(high-level programming language: こうすいじゅんげんご、高級言語とも)とは、記述の抽象度が高いプログラミング言語のことである。対義語は機械語やアセンブリ言語を指す「低水準言語」である。「高級言語」の対は「低級言語」である。.

新しい!!: インタプリタと高水準言語 · 続きを見る »

論理プログラミング

論理プログラミング(Logic Programming)とは、広い意味では、コンピュータプログラミングでの数理論理学の使用である。この観点での論理プログラミングは、ジョン・マッカーシーのadvice takerの提案にまでさかのぼることができる。 より一般的に受け入られている狭い意味での論理プログラミングは、述語論理式を非決定的なプログラミング言語とみなすもので、述語論理式は宣言的であると同時に手続き的にも解釈される。 論理をベースにしたプログラミング言語として1971年に Planner のサブセットである Micro-Planner が開発された。表明とゴールからパターンによる手続き的計画を呼び出す機能を備えていたが、十分に形式化されていなかった。Plannerと独立してより論理を重視した Prolog が開発され、コワルスキーにより述語論理式(ホーン節)のプログラム的解釈の考え方と結び付き、論理プログラミングの基本的な考え方が確立した。 Planner からの派生で、プログラミング言語 Poplerが開発された。Prolog からの派生言語としては、Mercury、Visual Prolog、Oz、Fril などがある。バックトラッキングを使用しない並行論理プログラミング言語としてProlog からの派生したConcurrent Prolog、PARLOG、GHC、KL1などの各種言語(Shapiro に調査結果がある)がある。.

新しい!!: インタプリタと論理プログラミング · 続きを見る »

部分評価

部分評価(ぶぶんひょうか、partial evaluation)は、計算理論における特殊化(特化)による最適化の技法の1つ。.

新しい!!: インタプリタと部分評価 · 続きを見る »

関数型言語

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

新しい!!: インタプリタと関数型言語 · 続きを見る »

著作権

著作権(ちょさくけん、、コピーライト)は、明確な形を持たない無体財産権(無形固定産)である。 主な無体財産権は、書物、言語、音楽、絵画、建築、図形、映画、コンピュータプログラムなどである。また、特性が類似する特許権や商標権も含めて、知的財産権と呼称する場合もある。.

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

自己書き換えコード

自己書き換えコード(じこかきかえコード、self-modifying code)とは、目的を問わず実行時に自分自身の命令を書き換えるコードを指す。 自己書き換えコードはアセンブリ言語を使用すると簡単に記述できる(CPUのキャッシュを考慮する必要がある)。 また、SNOBOL4やLISPのようなインタプリタ型の高級言語でもサポートされている。また、COBOLには ALTER という命令が存在していた。 コンパイラで実装するのは難しいが、CLIPPERとSPITBOLではその試みが行われている。 バッチスクリプトも自己書き換えコードを頻繁に使用する。 再構成可能コンピューティングは、言ってみれば「自己書き換えハードウェア」である。 再構成可能コンピューティングはソフトウェアとハードウェアの境界を曖昧にする概念である。.

新しい!!: インタプリタと自己書き換えコード · 続きを見る »

難読化コード

難読化コード(Obfuscated code)とは、コンピュータプログラムにおいて、その内部的な動作の手続き内容・構造・データなどを人間が理解しにくい、あるいはそのようになるよう加工されたソースコードやマシンコードのこと。.

新しい!!: インタプリタと難読化コード · 続きを見る »

逆アセンブラ

逆アセンブラ(ぎゃくアセンブラ、disassembler ディスアセンブラ)は、逆コンパイラの一種であるが、実行ファイルないしオブジェクトファイルの機械語コード(とシンボルテーブルなどの付随情報)を基に、アセンブリ言語ソースコードを生成する、すなわちアセンブラの逆の作用をするものを特に指す。技術者の間では俗に逆アセなどとも略される。一般の(高水準言語コードを生成するような)逆コンパイラよりも比較的容易である。.

新しい!!: インタプリタと逆アセンブラ · 続きを見る »

逆コンパイラ

逆コンパイラ(ぎゃくこんぱいら、Decompiler)とは機械語で記述されたオブジェクトコードを解析し、人間にわかりやすいソースコードを作成するプログラムである。.

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

Fortress

Fortress(フォートレス)は高性能を目指して設計されたプログラミング言語である。米国国防高等研究計画局の高生産性計算機システムプロジェクトの出資のもとサン・マイクロシステムズ研究所で作られた。設計者の一人にガイ・スティール・ジュニアがいる。.

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

Groovy

Groovy(グルービー)は、Javaプラットフォーム上で動作する動的プログラミング言語である。 Groovy の処理系はオープンソースソフトウェアであり、James Strachan と Bob McWhirter らを中心に、オープンソース開発サイトであるコードハウス上で、2003年8月27日に開発が開始された(CVSへの最初のコミットがなされた)。その後、開発の主体は Guillaume Laforge と Jeremy Rayner らに移り開発が続けられている。2015年3月31日までは Pivotal がスポンサー企業となり、開発者をフルタイム雇用していたが、3月末を持って終了し、Apacheソフトウェア財団の管理に移行する。.

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

Haxe

Haxe(ヘックス、発音記号は /heks/)はオープンソースの高級プログラミング言語、もしくはそのコンパイラである。 言語としてのHaxeは静的型付きのオブジェクト指向言語であり、構文はActionScript3および標準化が中止されたECMAScript 4に似ている。Adobe Flashおよび独自のNekoVMで実行可能なバイトコードにコンパイルされるほか、JavaScript、ActionScript、C++、C#、Java、PHP、Python、Luaへのソースコードの変換が可能であるため、主にマルチプラットフォーム開発を目的として使用される。また、FlashからHTML5への移行にも使用される。 2012年4月に表記がhaXeからHaxeに変更された。.

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

Hot Soup Processor

Hot Soup Processor(ホットスーププロセッサー)は、1995年からおにたまにより開発されているプログラミングツール、およびそのプログラミング言語である。略称はHSP。最新安定バージョンは3.5。.

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

HyperTalk

HyperTalk(はいぱーとーく)はHyperCardに用いられるプログラミング言語。.

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

IBM 704

NASAの IBM 704 (1957) LLNL.) IBM 704はIBMが1954年4月に発表したコンピュータ。浮動小数点数演算ハードウェアを量産機として世界で初めて採用した。704 は IBM 701 のアーキテクチャと実装を大幅に強化したもので、互換性はない。.

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

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

Io は純粋なオブジェクト指向プログラミング言語であり、Smalltalk、Self、Lua、LISP、Act1、NewtonScriptの影響を受けている。Self や NewtonScript のようなプロトタイプベースのオブジェクトモデルであり、オブジェクトとクラスを区別しない。Smalltalk のようにあらゆるものをオブジェクトとして扱い、動的型付けを行う。LISPのように文の概念がなく、制御フローは関数を使って実現される。Io はアクターによる並行性を実現しており、最近のプログラミング言語には珍しい特徴となっている。 Io の特筆すべき特徴は、その効率のよさ、処理系の小ささ、外部リソースを自由に使えるオープン性である。Io は小型で移植性の高い仮想機械で実行される。.

新しい!!: インタプリタとIo (プログラミング言語) · 続きを見る »

J Sharp

J#は、サンマイクロシステムズのJavaやマイクロソフトのJ++といった言語向けに開発された既存のアプリケーションやノウハウをマイクロソフトの.NET Framework上に移植するためのプログラミング言語である。J#ではJavaのバイトコードを処理の対象にすることができる。つまり、サードパーティ製ライブラリのソースコードが入手できなかったとしてもそれらを利用可能である。J#は、インドのHITEC市にあるマイクロソフトインド開発局で開発された。.

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

Java

Java(ジャバ)は、狭義ではプログラミング言語Javaを指す。広義では言語仕様以外にも、仕様が与えられているJavaクラスライブラリやJava仮想マシン、さらにはJDKやJREなどの公式のものをはじめとする、場合によってはサードパーティのものなどを含め曖昧にJavaプラットフォームと総称されるようなものなどのエコシステムなどを指すこともある。構文についてはJavaの文法の記事を参照。.

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

Javaプラットフォーム

Javaプラットフォーム(ジャバプラットフォーム、英: Java Platform)は、Javaで記述されたプログラムの開発および実行を行うことのできるソフトウェア群の総称である。.

新しい!!: インタプリタとJavaプラットフォーム · 続きを見る »

JavaScript

JavaScript(ジャバスクリプト)とは、プログラミング言語のひとつである。Javaと名前が似ているが、全く異なるプログラミング言語である(後述の#歴史を参照)。 JavaScriptはプロトタイプベースのオブジェクト指向スクリプト言語であるが、クラスなどのクラスベースに見られる機能も取り込んでいる。 ウェブブラウザ上で動作し動的なウェブサイト構築やリッチインターネットアプリケーションの開発に用いられる。また、2010年以降はnode.jsなどのサーバサイドJavaScript実行環境や各種ライブラリの充実により、MEANに代表されるように、Web開発の全ての領域で活用されるようになってきている。.

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

JSX

JSX は、DeNAによって開発されたウェブアプリケーション向けのプログラミング言語である。ECMAScript 4から影響を受けた構文を持ち、静的型付けなのが特徴。ウェブブラウザ組み込みのスクリプト言語であるJavaScriptのデメリットを解消することを目的に作られている。またJSXのソースコードは最適化されたJavaScriptコードに変換して実行され、同等のJavaScriptプログラムと比較して10%以上高速になるとされる。.

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

Kotlin

Kotlin(コトリン)は、ジェットブレインズ社のアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、静的型付けのオブジェクト指向プログラミング言語である。.

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

Lazy K

Lazy K(れいじーけー)は組み込み関数が3つしかない、純粋関数型言語である。似た言語として、同じような表記をする、非純粋関数型言語であるUnlambdaがある。.

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

LISP

LISPは、プログラミング言語である。 によって記述される。-->前置記法などが特徴である。 1958年にはじめて設計されたLISPは、現在広範囲に使用されている高水準プログラミング言語の中でもFORTRANに次いで2番目に古い。ただし、FORTRANと同様に、現在のLISPは初期のものから非常に大きく変化している。 これまでに多数の方言が存在してきたが、今日最も広く知られるLISP方言は、Common LispとSchemeである。 元々、LISPは、アロンゾ・チャーチのラムダ計算表記法に影響を受け、コンピュータープログラムのための実用的かつ数学的な表記法として作られた。そして、すぐに人工知能研究に好まれるプログラミング言語になった。最初期のプログラミング言語として、LISPは計算機科学にて、木構造、ガベージコレクション、動的型付け、条件分岐、高階関数、再帰、セルフホスティング、コンパイラを含む多くのアイディアを切り開いた。 LISPの名前は、「list processor」に由来している。リストはLISPの主要なデータ構造であり、LISPソースコードはそれ自体がリストからできている。その結果、LISPプログラムはソースコードをデータとして操作することができ、プログラマーは、マクロ・システムで新しい構文やLISP埋め込みの新しいDSLを作成できる。 コードとデータの互換性は、LISPにそのすぐに認識できる構文を与える。すべてのプログラム・コードはS式または入れ子のリストとして書かれる。関数呼び出しまたは構文は先頭が関数または演算子の名前で、その続きが引数であるリストとして書かれる。具体的には、3つの引数を取る関数fは、(f arg1 arg2 arg3)として呼び出される。.

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

Lua

Lua(ルア)は、リオデジャネイロ・カトリカ大学の、主としてDepartment of Computer Science(コンピュータ科学科)and・or Computer Graphics Technology Group (Tecgraf) に属する、Roberto Ierusalimschy, Waldemar Celes, Luiz Henrique de Figueiredo らによって設計開発されたスクリプト言語およびその処理系の実装である。 手続き型言語として、また、プロトタイプベースのオブジェクト指向言語としても利用することができ、関数型言語、データ駆動型としての要素も併せ持っている。 Luaという名前は、ポルトガル語の月に由来する。.

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

Mathematica

Mathematica(マセマティカ)は、スティーブン・ウルフラムが考案し広く使われている数式処理システム。ウルフラム・リサーチの、ウルフラムが率いる数学者とプログラマのチームが開発し、同社が販売している。Mathematicaは項書き換えを基本として、複数のパラダイムをエミュレートするプログラミング言語としても強力である。.

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

MATLAB

MATLAB(マトラボ)は、アメリカ合衆国のMathWorks社が開発している数値解析ソフトウェアであり、その中で使うプログラミング言語の名称でもある。MATLABは、行列計算、関数とデータの可視化、アルゴリズム開発、グラフィカルインターフェイスや、他言語(C/C++/Java/Python)とのインターフェイスの機能を有している。MATLABは、主に、数値計算を扱う事ができるが、追加のオプションを使うことで、数式処理の能力を得ることができる。2004年で、MATLABは産業界、教育界において100万人ユーザーを達成しており、工学、理学、経済学など幅広い業種で利用されている。.

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

Microsoft Visual Basic .NET

Visual Basic.NET (ヴィジュアル ベーシック ドットネット)はマイクロソフトが開発したプログラミング言語およびその処理系。VB.NETと略されて呼ばれることが多い。.NETに対応していない旧来のMicrosoft Visual Basic(バージョン6.0まで、VB6)の後継である。 なおVisual Studio 2005以降では、「Visual Basic.NET」や「VB.NET」という呼称ではなく、従来のように「Visual Basic」という呼称が用いられるようになっているが、6.0以前との互換性はなく、また.NETベースであることには変わりない。.

新しい!!: インタプリタとMicrosoft Visual Basic .NET · 続きを見る »

Microsoft Visual FoxPro

Visual FoxPro は、マイクロソフトが開発販売しているデータ中心型オブジェクト指向/手続き型プログラミング言語である。1984年、Fox Softwareが開発した FoxPro(当初の名称は FoxBASE)から発展した製品である(Fox社は1992年にマイクロソフトに吸収合併された)。.

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

Nemerle

Nemerle(ネマール)は.NETプラットフォーム上で動作する静的型付けの高級言語である。 手続き型、オブジェクト指向、関数型言語の機能を取り込んだハイブリッド言語であり、C#によく似た構文構造と強力なメタプログラミング機能が特徴となっている。 Wrocław University(ポーランド)のKamil Skalski、Michał Moskal、Prof.

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

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

Noop は新しいプログラミング言語を開発することを意図するGoogle社の新しいプログラミング言語である。 Noopは古い言語と新しい言語の最もよい特徴の組合を試みる言語である。 NoopがターゲットとするプラットフォームはJava仮想マシンである。.

新しい!!: インタプリタとNoop (プログラミング言語) · 続きを見る »

Open Firmware

Open Firmware(またはOpenBoot)はハードウェアに依存しないファームウェア(オペレーティングシステムをロードするソフトウェア)であり、サン・マイクロシステムズのミッチ・ブラッドリーによって開発され、IEEEにより標準化され、サン・マイクロシステムズ、アップル、IBMなどによって使われている。.

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

Pascal

Pascal(パスカル)は、ニクラウス・ヴィルトの設計(デザイン)によるコンピュータ・プログラミング言語である。ALGOL(直接的にはその一派生である、ヴィルトが関与したALGOL W)などの影響があるが、個人の設計であることに由来する簡素だがよく整った言語仕様(構文と意味)を持つ。用途の中に教育を意識しており、構造化された制御構造など、その当時「良きプログラミングの慣習」と考えられていたことの影響もある。一方で批判者からは、あくまでも教育用に過ぎない言語だ、といったような評もあることにはあったが、PascalコンパイラをPascalで書ける(いわゆる言語処理系のブートストラップ)ことをはじめ、Pascalで書かれた#実用プログラム例は多くある。名前は、哲学者・数学者・科学者で、機械式計算機を製作するなど技術者でもあったブレーズ・パスカルにあやかったものである。.

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

Pコードマシン

pコードマシンとは、プロセッサの一種であるが、ハードウェアではなくソフトウェアで、すなわちエミュレータや仮想機械のようなインタプリタ型のプログラムで実装されることを目的としたものである。この用語は、そのような仕様一般を指すこともあるが、多くの仕様はそれぞれ個々の名称を持っている。特にUCSD Pascalの p-Machine を指すことが多い。「p」の意味については、Pascal処理系の場合はPascalの頭文字ともされるが、他言語の場合はpseudo(を参照)やportableなどとされる。 このコンセプトは1966年ごろ、BCPLのやニクラウス・ヴィルトののPとして実装されたのが最初であるが、pコード (p-code) と呼ばれるようになったのは1970年代初期であった。pコードを生成する初期のコンパイラとしては、1973年、Nori、Ammann、Jensen、Hageli、Jacobi が開発した Pascal-P コンパイラと、ヴィルトが1975年に開発した Pascal-S コンパイラがある。 ソースコードからコンパイラのコード生成によってpコードが生成され、そのpコードはpコードマシンのエミュレータ、言い換えればインタプリタによって解釈実行される。商業的に十分意味があるとみて、pコードを直接実行するハードウェアが実装された例もある(例えば、Pascal MicroEngine)。.

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

PBASIC

PBASICとは、パララックス社(Parallax, Inc)が開発したPICマイクロコントローラ用の手続き型言語の一つである。PBASICのシステムをEEPROMに書き込みパッケージング化した製品がBASIC Stamp であり、一般にはBASIC Stamp専用言語として使用されている。.

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

Perl

Perl(パール)とは、ラリー・ウォールによって開発されたプログラミング言語である。実用性と多様性を重視しており、C言語やsed、awk、シェルスクリプトなど他のプログラミング言語の優れた機能を取り入れている。ウェブ・アプリケーション、システム管理、テキスト処理などのプログラムを書くのに広く用いられている。 言語処理系としてのperlはフリーソフトウェアである。Artistic LicenseおよびGPLのもとで配布されており、誰でもどちらかのライセンスを選択して利用することができる。UNIXやWindowsなど多くのプラットフォーム上で動作する。.

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

Perl 6

Perl 6(パールシックス)は、ラリー・ウォールにより設計されたオブジェクト指向スクリプト言語である。 Perl 6は、2000年にPerlの次期メジャーバージョンとして設計が始められ、2015年12月25日に公式のPerl 6正式安定版がリリースされた。しかし、言語仕様は現在のPerl (Perl 5)と互換性がなく、既存のPerl 5のソフトウェアをPerl 6用に「アップグレード」するのは極めて困難である。したがって現在はPerl 5とPerl 6は別の言語であると考えられており、Perl 6はPerl 5の次期バージョンではないとされている。換言すれば、Perl 6はPerl 5から移行対象とはみなされていない。 Perl 6は言語仕様であり、言語仕様と処理系は別のプロジェクトとして管理されている。これは言語の作者自身が開発した処理系が言語仕様に準ずるものとされてきたPerl 5やRubyとは異なっている。2015年12月25日に言語仕様としての公式のPerl 6正式安定版がリリースされた。公式の処理系としてはRakudoがあり、2010年8月に最初の「使用可能な」バージョンがリリースされた。Haskellで書かれたPugsは活発ではなく、もはや歴史的な実装とされている。 Perl 5は動的型付け言語であったのに対し、Perl 6は静的な型指定も行える言語となった(動的な型付けも可能)。また、Perl 6では仮引数定義も可能となっている(Perl 5でも可能ではあったが不完全であった)。さらに、Perl 5の様に展開を行うことも可能であり、例えばJavaであればReflectionクラスを必要とする仮引数の取得をいわゆるマジックを用いずとも可能な設計となっている。 Perl 6ではPerl 5と比較してさらに柔軟かつ強力な記法を可能としている。例えば、配列要素毎の演算や、Lisp等に代表されるポーランド記法も可能にするなどPerl 5をより一層強力にした記述である。.

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

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

PHP(ピー・エイチ・ピー)は "The PHP Group" によってコミュニティベースで開発されているオープンソースの汎用プログラミング言語およびその公式の処理系であり、特にサーバーサイドで動的なウェブページ作成するための機能を多く備えていることを特徴とする。 名称の PHP は再帰的頭字語として、 "PHP: Hypertext Preprocessor" を意味するとされており、「PHPはHTMLのプリプロセッサである」とPHP自身を再帰的に説明している。.

新しい!!: インタプリタとPHP (プログラミング言語) · 続きを見る »

PostScript

PostScript(ポストスクリプト)は、アドビシステムズが開発している、1984年に発表したページ記述言語。 スタック指向型のプログラミング言語で、様々な計算・処理と共に描画命令を実行することができる。事前にデータをスタックに格納し、後の命令がデータを処理するというモデルで実行される。そのために記述法が逆ポーランド記法で一貫しており、名前は「追伸」の英語「post script」に後置記法といった意味を掛けている。.

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

Processing

Processing(プロセシング)は、(Casey Reas)と(Benjamin Fry)によるオープンソースプロジェクトであり、かつてはMITメディアラボで開発されていた。電子アートとビジュアルデザインのためのプログラミング言語であり、統合開発環境である。アーティストによるコンテンツ制作作業のために、詳細な設定を行う関数を排除している。 視覚的なフィードバックが即座に得られるため、初心者がプログラミングを学習するのに適しており、電子スケッチブックの基盤としても利用できる。Java を単純化し、グラフィック機能に特化した言語といえる。.

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

Prolog

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

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

Python

Python(パイソン)は、汎用のプログラミング言語である。コードがシンプルで扱いやすく設計されており、C言語などに比べて、さまざまなプログラムを分かりやすく、少ないコード行数で書けるといった特徴がある。.

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

REXX

REXX、Rexx (レックス) はIBM社が開発した汎用プログラミング言語である。ANSI の規格もある(X3.274-1996)。.

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

R言語

R言語(あーるげんご)はオープンソース・フリーソフトウェアの統計解析向けのプログラミング言語及びその開発実行環境である。 R言語はニュージーランドのオークランド大学のRoss IhakaとRobert Clifford Gentlemanにより作られた。現在ではR Development Core Team によりメンテナンスと拡張がなされている。 R言語のソースコードは主にC言語、FORTRAN、そしてRによって開発された。 なお、R言語の仕様を実装した処理系の呼称名はプロジェクトを支援するフリーソフトウェア財団によれば『GNU R』である が、他の実装形態が存在しないために日本語での慣用的呼称に倣って、当記事では、仕様・実装を纏めて適宜にR言語や単にR等と呼ぶ。.

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

Ruby

Ruby(ルビー)は、まつもとゆきひろ(通称 Matz)により開発されたオブジェクト指向スクリプト言語であり、スクリプト言語が用いられてきた領域でのオブジェクト指向プログラミングを実現する。 また日本で開発されたプログラミング言語としては初めて国際電気標準会議で国際規格に認証された事例となった。.

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

Scala

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

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

Scheme

Scheme(スキーム)はコンピュータ・プログラミング言語 Lispの方言のひとつで、静的スコープなどが特徴である。仕様(2017年現在、改7版まで存在する)を指すこともあれば、実装を指すこともある。Schemeにより、Lisp方言に静的スコープが広められた。.

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

S言語

S言語(えすげんご)とは、1984年、AT&Tベル研究所の John Chambers, Rick Becker, Allan Wilks らによって研究・開発された統計処理言語である。当初は「Sシステム」と呼ばれ、UNIX上における統計処理を行うソフトのコマンドの役割を果たす言語として開発された。 その後、機能の拡張を続け1988年にプログラミング言語としてのS言語が策定された。さらに1991年にオブジェクト指向プログラミングの機能が追加され現在に至る。 言語の特長は Chambers によって、to turn ideas into software, quickly and faithfully と説明されている。 GNUプロジェクトによりオープンソースで作成されているR言語はS言語の文法を取り入れており、ほぼ同等の機能をもつ。S言語自体の処理系としては商用版の S-PLUS が知られている。 S言語は1998年にACMのソフトウェアシステム賞を獲得している。.

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

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

SKILL(スキル) はLISP系のスクリプト言語であり、ケイデンス・デザイン・システムズ社製の多くのEDA製品 (Cadence Allegro、Cadence Virtuoso等)で使われる「PCell」を記述するための言語である。その始めは1990年のIEEEの論文での提案にある。.

新しい!!: インタプリタとSKILL (プログラミング言語) · 続きを見る »

Smalltalk

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

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

Tcl/Tk

は、スクリプト言語 Tcl と、その GUIツールキット Tk を指す。非常に強力な GUI ツールキットと、シンプルな文法をもつ言語により、GUI ツールを素早く作り上げるのに適した強力なスクリプティング環境である。.

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

TeX

(TeX; テック、テフ)はアメリカ合衆国の数学者・計算機科学者であるドナルド・クヌース (Donald E. Knuth) により開発されている組版処理システムである。.

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

Tiny BASIC

Tiny BASIC(タイニーベーシック)とは、マイクロコンピュータないし初期の8ビットパソコン・ホビーパソコン用に仕様を簡略化(サブセット化)したBASICの、言語仕様や、その実装(処理系)の総称。プログラムサイズがコンパクトなため、ごく小規模(tiny)なシステムでも使用できた。可能なこともやはり限られて(tiny)いたが、機械語を使うよりははるかに手軽であり便利なものであった。.

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

TypeScript

TypeScript はマイクロソフトによって開発され、メンテナンスされているフリーでオープンソースのプログラミング言語である。TypeScriptはJavaScriptに対して、省略も可能な静的型付けとクラスベースオブジェクト指向を加えた厳密なスーパーセットとなっている。C# のリードアーキテクトであり、DelphiとTurbo Pascalの開発者でもあるアンダース・ヘルスバーグが TypeScript の開発に関わっている。TypeScriptはクライアントサイド、あるいはサーバサイド (Node.js) で実行されるJavaScriptアプリケーションの開発に利用できる。 TypeScriptは大規模なアプリケーションの開発のために設計されている。 TypeScriptはJavaScriptのスーパーセットであるため、既存のJavaScriptプログラムは、全て有効なTypeScriptプログラムとなる。 TypeScriptは型定義ファイルをサポートしており、既存のJavaScriptライブラリに型情報を付与して利用できる。既存のオブジェクトファイルの構造を記述できるC/C++のヘッダファイルとよく似た仕組みである。これによって、その型定義ファイル内で定義された値を、他のプログラムがあたかも静的に型付けされたTypeScriptエンティティであるかのように利用することができるようになる。jQuery、MongoDB、D3.jsのような人気のあるライブラリのための、サードパーティーのヘッダファイルがある。Node.jsベーシック・モジュールのためのヘッダも入手可能で、Node.jsプログラムの開発もTypeScriptの中で行える。 TypeScriptの主要な実装は、自身もTypeScriptで書かれた、JavaScriptへのトランスコンパイラである。ライセンスはApache 2 License。 TypeScriptはMicrosoft Visual Studio 2013 Update 2以降でfirst-classプログラミング言語として、C# やその他のマイクロソフト言語群とともに含まれるようになった。 公式の拡張パックによりMicrosoft Visual Studio 2012 でも TypeScript をサポート可能である。.

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

VBScript

VBScript(ブイ・ビー・スクリプト)、Microsoft Visual Basic Scripting Edition は、Visual Basic 風の、マイクロソフトによるスクリプト言語である。Microsoft Windows 上や Internet Information Server(IIS)上で動作する。.

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

Visual Basic for Applications

Visual Basic for Applications(ビジュアルベーシック・フォー・アプリケーションズ、VBA)は、マイクロソフト製のMicrosoft Officeシリーズに搭載されているプログラミング言語である。.

新しい!!: インタプリタとVisual Basic for Applications · 続きを見る »

Windows PowerShell

Windows PowerShell はマイクロソフトが開発した拡張可能なコマンドラインインターフェース (CLI) シェルおよびスクリプト言語である。オブジェクト指向に基づいて設計されており、.NET Frameworkを基盤としている。 かつてはMicrosoft Shell(MSH、コードネーム Monad)と呼ばれていた。 Windows 7以降のオペレーティングシステム (OS) には標準で搭載されている。.

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

XSL Transformations

XSL Transformations(XSLT、XSL変換)は、W3Cにより標準化されたXML文書の変換用言語である。3つの仕様から成るXSLのうちの、ひとつの仕様である。XSLT の仕様はジェームズ・クラークを中心とした人々が設計した。XSLT と XSL-FO はDSSSLをもとにして設計された。 XSLT 1.0 は1999年11月23日にW3C勧告となり、2007年には JIS X 4169 としてJIS規格へ翻訳された。XSLT 2.0 は2007年1月23日にW3C勧告となった。 XSLTはXML形式の文書を変換する。XPath による選択と検索にもとづき、XML文書全体または文書の一部に対して変換を行い、XML として出力する他、XML(整形式)ではないその他任意のテキスト形式としても出力できる。 例としては次のような応用がある。.

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

抽象構文木

抽象構文木(abstract syntax tree、AST)とは、通常の構文木(具象構文木あるいは解析木とも言う)から、言語の意味に関係ない情報を取り除き、意味に関係ある情報のみを取り出した(抽象した)木構造のデータ構造である。 理論的には、有限なラベル付き有向木であり、分岐点に演算子、葉にそのオペランドを対応させたものである。つまり、葉は変数や定数に対応する。 抽象構文木は構文解析で構文木とデータ構造の中間的なものとして使用される。さらにコンパイラやインタプリタなど(プログラミング言語処理系)でのプログラムの中間表現として使われ、コンパイラ最適化やコード生成はその上で行われる。抽象構文木のとりうる構造は抽象構文で記述されている。 抽象構文木は(具象)構文木とは異なり、プログラムの意味に関係ない部分を省略する。そのような省略の例としては括弧の省略があげられる。抽象構文木では、オペランドのグループ化が自明な木構造とするのが普通であり、グループ化のための括弧などは意味的に不要である。 大多数のプログラミング言語のような文脈自由言語の構文解析で抽象構文木を作るのは簡単である。構文規則ごとに新たな節点を作成し、葉はその規則における記号に対応する。グループ化規則のような抽象構文木に関わらない規則は無視される。そのようにいきなり抽象構文木を生成することもあるし、完全な具象構文木を作り、その後そこから冗長な部分(プログラムの意味に関係しない部分)を除いて抽象構文木に変換することもある。 理論的な観点からは、たとえばソースコード上の位置(何行目の何カラム目など)といった具象の情報は言語処理系には不要であり、抽象構文木には無くてもよいのだが、実践的には、エラーを見つけた時にプログラマに親切なエラーメッセージを出力するためなど、重要な情報であり、時には処理系のフロントエンドではなくバックエンドでも必要なこともある。.

新しい!!: インタプリタと抽象構文木 · 続きを見る »

暗号

暗号とは、セキュア通信の手法の種類で、第三者が通信文を見ても特別な知識なしでは読めないように変換する、というような手法をおおまかには指す。いわゆる「通信」(telecommunications)に限らず、記録媒体への保存などにも適用できる。.

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

構文解析

構文解析(こうぶんかいせき、syntactic analysis あるいは parse)とは、文章、具体的にはマークアップなどの注記の入っていないベタの文字列を、自然言語であれば形態素に切分け、さらにその間の関連(修飾-被修飾など)といったような、統語論的(構文論的)な関係を図式化するなどして明確にする(解析する)手続きである。自然言語については自然言語処理における要点のひとつであり、プログラミング言語など形式言語の場合は、形式文法に従い構文木を得る。構文解析を行う機構を構文解析器(parser)と呼ぶ。.

新しい!!: インタプリタと構文解析 · 続きを見る »

機械語

機械語(きかいご)またはマシン語(Machine code、machine language)とは、コンピュータのプロセッサが直接解釈実行可能な一連の命令群のデータそのもの(を、コンピュータ・プログラミング言語とみなしたもの)である。.

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

文 (プログラミング)

プログラムにおける文(ぶん、statement)とは、コンピュータプログラミング言語によるプログラムを構成するもののひとつで、一般に手続きを表すものである。 文の種類(意味)は、だいたいの類似はあるが、詳細はそれぞれのプログラミング言語によって異なる。 文の構文もそれぞれのプログラミング言語によって異なる。初期のFORTRANやCOBOLのように1行に1つの文を書く言語、C言語や多くのスクリプト言語のように文終端記号(セミコロンなど)で終端する言語、Pascalのように文と文との間の区切り記号で区切る言語などがある(終端記号と区切り記号の違いは、並びの最後のあとに記号が入るか入らないかである(厳密にはここで論じているのは文ではなく複文の構文である。またC言語についての説明は間違っており、例えばif文それ自体などにはセミコロンは現れない(セミコロンのみの「空文」、「do-while文」、そして式の後にセミコロンを付けた「式文」、などがC言語において「セミコロンが最後に付いている文」である。宣言などの後にもセミコロンが付く(が、C言語では宣言は文とは違う「宣言というもの」である)))。 1行1文の言語にあっては、行末または行頭に、言語で指定された記号を付けることで、行が継続しているものとして(継続行)、複数行にわたって文を記述することができるものもある。 類似する言葉として'''式'''がある。式は、必ずしも手続きを表さず、文とは異なり値を持つ(多くの手続き型言語では式にも手続きがともない、副作用という。特にC言語は代入が式である。また逆に言語によっては文も値を持つものもある)。 大まかに言えば、一つ以上の式や関数呼び出しで作られる、手続き構造の単位が文である、と考えてほぼ差し支えない。if文のように分岐構造を表すもの、代入文のように変数の更新を表すものなどが代表例である。構造化プログラミング以降の言語では、複数の文からブロック(「複文」とも言う)を構成できるのが一般的である。 if文などにおける構文の流儀には大きく2通りがあり、ひとつはC言語のような、 という規則のもので(というような文法だと多くのプログラマが信じているようだが、実際には全く違っている(前述。あるいは規格票を参照))、dangling else問題(通常は困るものではない。:en:Dangling elseも参照)の存在が知られている。 もうひとつの流儀は、古くはPerl、近年ではGoがこのようになっているが、 のように、任意の文を直接書くことができないようにしたものである。dangling else対策のひとつでもある。.

新しい!!: インタプリタと文 (プログラミング) · 続きを見る »

性能解析

フトウェア工学における性能解析または性能分析(Performance analysis)とは、動的プログラム解析の一種であり、プログラムの実行を通して情報を収集することでプログラムの性能を解析することを言う。逆にプログラムを実行せずに行う解析を静的コード解析と呼ぶ。性能解析の目的は、実行時間やメモリ使用量を最適化するためにプログラムのどの部分を改良すべきかを決定することである(ボトルネック、アムダールの法則参照)。.

新しい!!: インタプリタと性能解析 · 続きを見る »

.NET Framework

Microsoft.NET Framework(マイクロソフト ドットネット フレームワーク)は、マイクロソフトが開発したアプリケーション開発・実行環境である。 Windowsアプリケーションだけでなく、XML WebサービスやウェブアプリケーションなどWebベースのアプリケーションなども包括した環境となっている。一般に.NETという場合、.NET全体の環境を指す。.

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

ここにリダイレクトされます:

インタープリタインタプリタ言語

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