スクリプト言語単語

5件
スクリプトゲンゴ
2.0千文字の記事
  • 2
  • 0pt
掲示板へ

スクリプト言語とは、プログラミング言語の一分類である。反対語はコンパイラ言語。

概要

スクリプト言語とは、事前コンパイルを必要とせず、実行時にソースコード(スクリプト)をインタプリタが解釈して実行するタイププログラミング言語である。

上記定義について冷静に考えると、処理系の問題であって言語仕様とは関係がない。つまりスクリプト言語と呼ばれている言語でも、コンパイラ開発して実行前にコンパイルするようにすればコンパイラ言語になってしまう。

だが、現実には一つのプログラミング言語の処理系インタプリタコンパイラ両方が存在することがまれであり、言語開発者が提供した処理系リファレンス実装にしてデファクトスタンダードである場合が大半である。従って、スタンダードな処理系(たいていは言語開発者が提供している処理系)がインタプリタを用いるようになっているプログラミング言語をスクリプト言語と呼ぶということでだいたいあってると思われる。

概要の概要

通常:

  1. プログラムを書く
  2. コンパイル出来る環境コンパイルする(.exeみたいなファイルが出来る。バイナリと呼ばれる)
  3. バイナリを実行できる環境で実行する。

 

スクリプト言語:

  1. プログラムを書く
  2. 実行できる環境で実行する

スクリプト言語は、上記のように"コンパイル"という手順を省いて書いたプログラムを直接実行できるようにした言語である。2の手順が必要な言語をコンパイル言語という。

手番だけで言うと、コンパイルをする人(コンパイラさんといいます)が一緒に実行までやれば、そのプログラムコンパイル言語という理屈も通るんだけど、そういったことは滅多にないから”プログラムをそのまま実行できれば”スクリプト言語って認識でいいよ”!きっと

 

※ここから概要

手番が少ないなんて、便利だね!スクリプト言語!

 

でも、不便な点もあって、手番が減っている=手番で細かく制御したいことをかにやられるってことなので、メモリ制御や実行速度など、精密な処理を制御したい場合はスクリプト言語では限界があるよ!

もっと好きに作りたい場合は、C言語みたいな根本的な言語にもレッツトライ!

 

※便宜上、プログラムスクリプトといった実行に必要なテキストをすべて"プログラム"と表現

傾向

定義は言語仕様に関係しないと述べたが、言語仕様については以下のような傾向がある。

  • 動的型付け
  • 手続言語に近い上から下に流れるコード記述(関数定義を、関数を使う行より上に書かなければならないなど)
  • 特定の用途に強いか特化している(特化の程度の強いものはマクロと呼ばれる)が、汎用のものも多い。

細かい例外

コンパイルというとソースコードをを機械語に変換することをしていたが、中間言語やJavascriptに変換することもコンパイルと呼ぶことが増えている。

TypescriptなどJavascriptに変換されてから実行されるプログラミング言語では、コンパイラを必要とするにも関わらず、分類はスクリプト言語になる。

最終的に実行するのが(その言語自身のインタプリタでなくても)スクリプトインタプリタであればスクリプト言語ということになるだろうか。

ほとんどだれも触れない例外

定義は言語仕様に関係しないと述べたが、これも例外がある。

スクリプト言語にできてコンパイラ言語にできない芸当が一つだけあって、スクリプト言語では、プログラムが自ら生成したスクリプトプログラム自身の一部として呼び出して実行することが(言語仕様上禁止されていなければ)原理的には可である。

コンパイラ言語でも生成したコードコンパイルして実行することができるかもしれないが、メジャーな言語で実際にそのような機を備えた言語はない。

もっとも、プログラミング言語にはリフレクションなどそういったことの代わりをする機が備えられていることも多く、実際にこのようが技法が使われることはほとんどない。

一方で、スクリプト言語には逃れられない宿命がある。たとえば商用のクライアントアプリケーション開発しようと思っても、ユーザー環境にあるインタプリタソースコート読み込んで実行するという制度上、ソースコードユーザーから隠すことはできないのだ。

コンパイラ開発すれば(リバースエンジニアリング全に防ぐことはできないが)、ある程度解決するかもしれないが、もちろんコンパイラ開発するなど労を考えれば現実的でないのは明らかで、そもそもコンパイラ開発したらコンパイラ言語になってしまう。実際にはアプリケーションを自社のサーバー側に移すなどの対策をするのが現実的な対応になる。

スクリプト言語の例

以下にスクリプト言語とされる(ことの多い)プログラミング言語の一部を示す。

関連動画

関連コミュニティ

関連項目

関連記事

子記事

兄弟記事

  • なし

【スポンサーリンク】

  • 2
  • 0pt
記事編集 編集履歴を閲覧

ニコニ広告で宣伝された記事

天外魔境II (単) 記事と一緒に動画もおすすめ!
提供: aki
もっと見る

この記事の掲示板に最近描かれたお絵カキコ

お絵カキコがありません

この記事の掲示板に最近投稿されたピコカキコ

ピコカキコがありません

スクリプト言語

1 ななしのよっしん
2013/06/04(火) 17:59:05 ID: q5lRSPGD8R
こんな記事あったのか
スクリプトだかインタプリタだかわからんちい
👍
高評価
0
👎
低評価
0
2 ななしのよっしん
2018/02/16(金) 00:18:52 ID: YLAU/D14O6
カタカナ多い概要だなオイw
もっとわかりやすく頼む
👍
高評価
0
👎
低評価
0
3 k.m
2018/02/17(土) 21:01:58 ID: xk8qVPHFQD
>>2

初編集です。概要概要を書いてみました。
プログラムを作りたいみんな!まずはスクリプト言語で動く何かを作ってみるとワクワクするよ!
👍
高評価
0
👎
低評価
0
4 ななしのよっしん
2018/02/17(土) 21:49:53 ID: RhseZ07DuM
書きやすく捨てやすい言語だよ
自動化して楽をするという本来の的にあった
👍
高評価
1
👎
低評価
0
5 ななしのよっしん
2022/06/22(水) 18:30:08 ID: NttUtn4kGu
無視すると思いますが、
最近はどのウェブサイトに入っても、
cookieを全て受け入れますか?」の
ようないわゆるジャムみたいな
スクリプトしかありません。
端的に申しますと、スクリプト
邪魔なのでスムースな処理のために
あまり入れて欲しくないのが
私の本音です。無視すると思いますが。
👍
高評価
0
👎
低評価
0
6 ななしのよっしん
2022/06/22(水) 18:42:34 ID: 13FnvkFuwN
どこを縦読み
👍
高評価
0
👎
低評価
0