Hopscotchは、アプリケーションフレームワークであり、Smalltalk、SelfおよびBetaにより鼓舞された新たなプログラミング言語お よびプラットフォームである、Newspeak(リンク)向けのIDEである。Hopscotchは、対話モデルを支持し、インターフェイスの単純な構成を可能にす るフレームワークアーキテクチャを実装することで、多数の設計上の制限および従来のUIおよびUIフレームワークの欠点を避ける。
Newspeakは動的であり、クラスベースの言語で、 すべての名前がレイトバウンドで、グローバルスコープがない。その結果の1つは、静的状態がないことである。すべてのクラスは、互いにネスト可能であり、バーチャルで、クラス階層の継承がある。
Hopscotch IDEは、ブラジルで稼動する。Squeak(リンク)ウィンドウまたはネイティブなMacまたはWindowsのどちらか一方に動的に結合するマッピング層を通じ て、基礎となるOSに接続されるウィジェットGUIライブラリである。その目的は、プロセスの完全な状態(メモリ、スタック、プロセッサレジスタなど)を 格納して、別のマシンやOSで再始動するために、スナップショットを取ることができる。そうするには、スナップショットが再開された場合に、新たなウィン ドウハンドルが取得される必要があるため、基礎を成すウィンドウシステムに動的バインディングをもたらす必要がある。
Hopscotchは、Newspeak向けのIDEというだけでなく、フラグメントからプレゼンテーションページを作成するDSLを含む、ドキュ メントベースのGUIアプリケーションフレームワークである。アトミックウィジェットは、リーフフラグメントであるが、コンパウンドフラグメントに対応し て集約する。ブランク、フィラー、ボタン、アクション、列、行または据え置きなどの結合子を使用して、プレゼンテーションが作成される。最新のものはバッ クグラウンドで作成されることになっている集約で使用される。Hopscotchで記述されるIDEツールには、ハイパーリンクを使用して、ナビゲートす る多くのそのようなプレゼンが含まれる。
たいてい、IDEは一定数のウィジェットを持った フォームで表されるツールがある。そうしたツールの接続は、簡単な作業ではない。構成を通じた、ユーザインターフェイスの作成のため、およびサブジェクト プレゼンターパラダイムの使用のために、Hopscotchは別のアプローチをする。Hopscotch: Towards User Interface Composition(PDF)の中で、Vassili Bykov氏が説明している。
Newspeakの作成者であるGilad Bracha氏が、複数のツール、デバッガ、ユニットテスターおよびオブジェクトインスペクターがツールチェーンでシームレスに結合され(リンク)、デベロッパが別 のツールに切り替えることをどのように可能にするのかをプレゼンで示している。
NewspeakおよびHopscotchで記述されるアプリケーションの例は、Luis Diego Fallasで記述されるTwitterクライアント(リンク)である。Apache License 2.0のもと、Hopscotchはオープンソース化している。