プログラミング・開発言語– category –
-
プログラミング・開発言語
SpiderMonkeyとは|FirefoxとJSの歴史を支える最古のエンジン
SpiderMonkeyは1995年にNetscapeのBrendan Eich氏が、わずか10日でJavaScriptを設計した際に書き上げた最初のJS実装であり、現代に至るまで継続的に開発されている世界最古のJavaScriptエンジンです。現在はMozilla財団のもとでFirefoxやThunderbird、Spid... -
プログラミング・開発言語
CommonJSとは|Node.jsを育てたrequire/exportsの源流
CommonJSは2009年初頭にKevin Dangoor氏らが立ち上げた、サーバサイドJavaScriptのための仕様策定プロジェクトおよびそのモジュール仕様のことです。当時ブラウザ向けにしか考えられていなかったJavaScriptを、サーバや汎用スクリプティング言語として使う... -
プログラミング・開発言語
ES Modulesとは|JavaScript標準のモジュール仕様
ES Modules(ESM)は、ECMAScript 2015(ES6)で正式に言語仕様に組み込まれたJavaScriptの公式モジュールシステムです。それまでJavaScriptは言語自体にモジュール機能を持たず、ブラウザではグローバル変数の汚染と戦い、Node.jsではCommonJSが事実上の標準... -
プログラミング・開発言語
JavaScriptCoreとは|SafariとWebKitを支えるJSエンジン
JavaScriptCoreはApple主導で開発されているWebKit由来のJavaScriptエンジンで、SafariブラウザやiOS/iPadOSのWKWebView、BunランタイムやReact Nativeの旧構成など、幅広いソフトウェアの基盤として採用されています。ルーツは1998年のKDEプロジェクト発... -
プログラミング・開発言語
QuickJSとは|Fabrice Bellardが作った極小JSエンジン
QuickJSは2019年7月にFabrice Bellard氏が公開した、C言語で書かれた極めてコンパクトなJavaScriptエンジンです。Bellard氏はFFmpegやQEMU、tccコンパイラを単独で生み出してきた伝説的なエンジニアで、QuickJSもまた数百KB級のバイナリでES2020相当の機能... -
プログラミング・開発言語
libuvとは|Node.jsを支えるクロスプラットフォーム非同期I/O
libuvはNode.jsの非同期I/Oを担うために2011年に切り出されたC言語ライブラリで、もともとはWindows対応のためにLinux専用だったlibevとlibeioを置き換える目的で書かれました。イベントループ、非同期ファイルシステム操作、TCP/UDP、子プロセス、スレッ... -
プログラミング・開発言語
V8 Engineとは|ChromeとNode.jsを支える高速JIT実行系
V8は2008年9月にGoogleがChromeブラウザのリリースに合わせて公開したオープンソースのJavaScript実行エンジンで、現在ではWebブラウザにとどまらずNode.jsやDeno、Cloudflare Workersといった主要なサーバサイドランタイムの基盤としても採用されています... -
プログラミング・開発言語
Denoとは|Ryan Dahlが再設計したセキュアなJSランタイム
DenoはNode.jsの生みの親であるRyan Dahl氏が、自らの反省点を踏まえて2018年に発表したJavaScript/TypeScript実行環境です。彼は2018年のJSConf EUでの講演「Node.jsに関する10の反省」で、モジュールシステムやセキュリティ設計の課題を率直に語り、それ... -
プログラミング・開発言語
Bunとは|Zigで書かれた爆速JavaScriptランタイム
Bunは2022年にJarred Sumner氏が公開したJavaScript/TypeScript向けの統合ランタイムであり、Node.jsやDenoと並ぶ第三の選択肢として急速に存在感を高めている処理系です。Zig言語で実装され、JavaScriptCoreをエンジンに採用することで、起動速度・パッケ... -
プログラミング・開発言語
uvとは Astral社のRust製Pythonツールチェーン
uvは2024年2月にAstral社(ruffの開発元)が公開したPython向けの統合パッケージマネージャで、Rustで実装されておりpipの10倍以上の依存解決速度を実現した。当初はpip互換のサブコマンドから始まったが、2024年内にPython版管理(rye統合)、プロジェクト管...
