マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

OSS情報

2020.01.01

【OSS情報アーカイブ】SpiderMonkey

【OSS情報アーカイブ】SpiderMonkey

※当記事に記載されている情報は、古くなっている場合があります。オフィシャルサイトで最新情報をご確認ください。

「SpiderMonkey」とは

「SpiderMonkey」基本情報

■概要

SpiderMonkey(スパイダーモンキー)とは、JavaScriptエンジンです。Mozilla Foundationが開発しており、Firefoxなどで利用されています。

■基本説明

SpiderMonkeyは、C/C++実装のJavaScriptエンジンです。

さまざまなMozilla製品で使用されており、FirefoxおよびGNOME 3デスクトップなどのさまざまな埋め込み用のJavaScriptサポートを提供します。

■経緯

SpiderMonkeyは「世界初のJavaScriptエンジン」として知られています。

主な機能

SpiderMonkeyは以下の機能を含んでいます。
・インタプリタ
・Just-In-Time(JIT)コンパイラ
・ガベージコレクタ
・JavaScript値の基本的な動作を実装するコード
・さまざまな拡張機能を持つECMAを実装する標準ライブラリ
・APIインタラクティブなJavaScript開発
・JavaScriptプログラムファイルのコマンドライン呼び出し用のJavaScriptシェル など

一方、単体では「DOM(Document Object Model)」のようなホスト環境は提供しません。

主な特徴

■高速インタプリタ

SpiderMonkeyは、タイプのないバイトコードを実行する高速インタプリタで、JavaScript値の全範囲を表す型タグ付き値の型で動作します。

■コンパイラ

コンパイラはJavaScriptソースコードを使用し、「バイトコード」「ソース注釈」「文字列」「数値」「識別子リテラルのプール」を含むスクリプトを生成します。

このスクリプトには、ソースコードで定義された関数も含めて、それぞれ独自のネストされたスクリプトを持つオブジェクトが含まれています。

コンパイラは、テーブルドリブンレキシカルスキャナではなく、「ランダムロジック」「ASTを生成する再帰的降下パーサ」「ツリーウォーキングコードジェネレータ」で構成されます。

■ガベージコレクタ

ガベージコレクタは、マークアンドスイープ型の非保存的で厳密なコレクタとして動作します。

JSオブジェクトと文字列記述子(JSString)を保持するために使用されますが、文字列バイトは保持されません。

JS_NewRuntimeGCの渡されたバイトが割り当てられ、別のものが割り当て要求されたときにのみ自動的に実行されます。JS APIユーザーは、必要に応じて、スクリプトの実行を呼び出すか、スクリプトの実行の間の操作のコールバックから呼び出す必要があります。

補足情報

■同様製品

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「Google V8 JavaScript Engine」「ChakraCore」など。

■オフィシャルサイト

オフィシャルサイト

→Mozilla →SpiderMonkey(SpiderMonkey – Mozilla | MDN)

ライセンス情報

SpiderMonkeyのライセンスは「Mozilla Public License 2」です。

詳細について、こちらを参照ください。
→Mozilla →SpiderMonkey

ダウンロード

→Mozilla →SpiderMonkey →SpiderMonkey releases

 

参考元サイト

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

この記事のタグ一覧

おすすめの記事

【AIツール実験室】チャットAI対抗「添削能力」選手権🏆

AIツール実験室

2023.12.27

【AIツール実験室】チャットAI対抗「添削能力」選手権🏆

各チャットAIの「添削能力」について比較確認をしています。 「ChatGPT4と同等の添削能力を発揮した無料チャットAI」にご注目ください。 また、 ChatGPTカスタマイズ機能「GPTs」を利用して作成した GPTs文章添削機能「添削師匠さん✍️」を紹介しています。 課金勢は試しに使ってみてください。

【IT用語解説】「 デジタルヒューマン 」とは😊

IT用語解説

2024.01.26

【IT用語解説】「 デジタルヒューマン 」とは😊

【IT用語解説】「 デジタルヒューマン 」として、「デジタルヒューマンとは何か?」「どのようにして作成できるのか?」「私たちの世界にどのような影響を与えているのか?」などについて、まとめています。

AIツール関連 記事リストポータル

AIツール

2023.10.05

AIツール関連 記事リストポータル

AI 関連の記事をまとめたポータルページです。