Wandbox は、オンラインでコンパイルや実行が試せるサービスで、主に私(@melponn) と @kikairoya で作っています。 以前 Wandboxを支える技術 というのを書いていたのですが、そこからかなり変わっているため、改めて今の中身がどうなってるかについて書いていきます。 Wandbox は、Wandbox 本体と、各種コンパイラをビルドするための Wandbox Builder に分かれています。 ソースコードは wandbox と wandbox-builder にあります。 2019/9/26 追記: Wandbox のビルドを CMake に移行した話 を書きました 犬小屋と牛舎 Wandboxはバックエンドとフロントエンドで分かれていて、フロントエンド側が 犬小屋(kennel) 、バックエンド側が 牛舎(cattleshed) という名前になっています。 犬小
WandboxというWebサイトがある。これはコードを与えるとコンパイルメッセージと実行結果を返してくれるサービスを提供している。コードとコンパイルメッセージと実行結果を保存してURLで共有する機能もある。 ここまではよくあるサービスだが、Wandboxが他のサービスと差別化を図っているのは、コンパイラーの種類だ。様々な言語のコンパイラーをサポートしているのみならず、同じコンパイラーでも複数のバージョンを提供している。これにより、あるコードの挙動がコンパイラーのバージョンで異なる場合の特定ができる。 なぜそんなサービスが必要なのか。コードぐらい自分のローカル環境で実行すればいいではないか。リモート環境にしたって、今日びVPSなど月数百円から使うことができる。ブラウザーから入力する程度の短いコードをコンパイルして実行するぐらい低スペックの格安VPSでも足りるではないか。 問題は、バージョンの
Wandbox とは 普通の C++ 使いは日常的に仕様書を読んでいる その際、実際にコンパイラを動かして試したくなる場合がある 例: 「ISO/IEC 14882:2011 における 3.4.2/2 が結果がどうなるのかよく分からないな」 「現行の gcc/clang でどういう動作をするのか試してみたい」 普通の C++ 使いは日常的に paper を読んでいる その際、実際にコンパイラを動かして試したくなる場合がある 例: 「N3648 が gcc で実装されたのか」 「最新の gcc でどういう動作をするのか試したい」 普通の C++ 使いは日常的にコンパイラのバグを報告している その際、実際にコンパイラを動かして試したくなる場合がある 例: 「std::negative_binomial_distribution がコンパイルエラーになるバグって直ったんだっけ?」 「最新の gc
MOONGIFTはオープンソース・ソフトウェアを紹介するブログです。2021年07月16日で更新停止しました ある言語でちょっとしたコードを試したいと思った時に、まずその実行環境を用意しなければならないという点で心が折れたりした経験はないでしょうか。今更過去バージョンの言語を入れたり、逆に最新のβ版環境を立てたりするのは面倒なことです。 そこで使ってみて欲しいのがWandboxです。多彩なプログラミング実行環境をオンラインで提供してくれる素敵なソフトウェアです。 Wandboxの使い方 左側でプログラミング言語を選択して、後はプログラミングコードを書いて実行すれば良いだけです。仮想マシンが立ち上がって、その中でコードを実行してくれます。 用意されている言語はC/C++、D、Rill、Haskell、C#、Perl、Python、Ruby、PHP、Erlang、Elixer、JavaScri
Wandboxは、「オンラインコンパイラ」の名の通り、プログラムをウェブページ上でビルド&実行できるサービスです。 普通の(特にコンパイル言語での)プログラミングでは、まずプログラミング環境をインストールして用意するところから始めねばならず、割と手間でした。 しかしWandboxでは、ウェブブラウザをぱっと開いてさくっとコードを書いてみるだけで、gcc/clangといった最新C/C++コンパイラが幾つものバージョン違いでお手軽に使えるのです!(C++標準規格策定委員会に提出される論文にも使われたりしています) その他にもC#、D言語、Haskell、Python、Ruby、Rust等様々な言語もサポートしていて、個人的には今の日本のプログラミング業界においてなくてはならない存在だと言えると思います。 さて、そんなWandboxを、フィックスターズでも様々な場面で利用していました。例えば以下
何かと話題の wandbox なのですが、その wandbox の API を利用したコード補完の実装を marching.vim に追加してみました。 Vim から wandbox へ補完を行うコードを投げ、wandbox 側でコード補完の処理を行ってもらう事によりローカルに Clang の環境がなくてもコード補完を行うことができます。 ただし、wandbox を使用する関係上、ローカルのヘッダーファイルなどは使用することはできません。 逆に言えば wandbox で動作するコードであれば問題なく利用する事ができます。 (boost や sprout など。 [プラグイン] osyo-manga/vim-marching NeoBundle "osyo-manga/vim-marching" wandbox の実装を使用する場合は他に依存するプラグインはありません。 ただし、外部コマンド
Wandbox is Online Compiler
「Wandbox」はブラウザから様々なプログラミング言語のソースコードを入力してコンパイル/実行/共有することができるWebサービスです(GitHubでソースコードも公開されています)。 対応しているプログラミング言語は、C++、C、D、Rill、Haskell、C#、Perl、Python、Ruby、PHP、Erlang、Elixir、JavaScript、CoffeeScrpt、SQL、Rust、Bash、Lua、Lazy K、Lisp、Pascal、Java、Groovyとかなり多彩。しかも言語によっては過去のバージョンから最新のHEAD版まで多くのバージョンを切り替えて使用することができます。C++に関してはBoost(これもバージョン指定可能)と組合せて使える充実ぶりです。 Wandbox使用方法 Wandboxの使用法は、「Choose compiler」でプログラミング言語を
Wandboxとは オンラインコード実行環境です。同種の他サービスと比べ、圧倒的な対応言語とコンパイラバージョン数を誇ることで、特にコンパイラのバージョンが命取りになるC++界隈では重宝されています[要出典]。また、ideone.comやpaiza.ioと違い、コードを書いている最中にタブを閉じてしまってもキャッシュが生きている限り作業データを取り戻せるというため、ああああああとならずにすむという、細やかな気配りが見られます(意図した挙動なのかな?)。 @melpon 氏、@kikairoya 氏はじめ、数人が開発に携わっています。 最新のGCCやClangが使えるため、煩雑極まりないコンパイラのHEAD(開発中の最新版)のビルドを自分でやらずに利用できるという喜びの声もあります。 あくまで個人でやっているサービスのため、先日資金難に陥ったためのスポンサー募集をかけていました。 Wandb
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く