mosh

週刊mosh - 0.2.7進捗 / デザインチョイス

こまかいfixが溜まってきたので、そろそろ0.2.7を出したいという雰囲気になりつつ。 リリースのタイミングというのは絶妙なもので、いっそのことスナップショットリリースだけにした方が良いかもしれない。。 0.2.7での変更点(予定) かなりlikelyな変更点と…

週刊mosh : ターミナル対応開始

Monaサポートのマージなど大きな動きが収束してきたので、そろそろ0.2.7に入れる機能も纏めるフェーズ。。 開発機能の強化計画 ソースコードのカラープリント。。Schemeソースコードをカラーで出せるようになります。リリースまでにはXtermの256モードに対応…

cirs - 中間言語用のC言語 in S式

https://github.com/okuoku/yuni-core/blob/master/transformer/cirs/writer.sls 次のmoshに入れる予定のC言語ライタを作っている。もっとも、表現が安定するまでには時間がかかりそうなので、公開APIになるのはちょっと先。 まだ必要な機能の半分も実装され…

GaucheのPEGをmoshに移植

https://github.com/okuoku/yuni-core/blob/master/text/peg.sls GaucheのPEG(の元ネタのpeg-orig.scm)をmoshに移植してみた。これは(yuni)ライブラリの一部で、他のライブラリにも依存してしまっているが、ほかのR6RS Schemeにもすぐ移植できるはず。。 い…

週刊mosh : parameterizeの仕様 / OpenSSL統合

今週というか昨日、一昨日はMona移植の統合やIssueがいくつか追加されるなどそれなりに動きがあった。 追記 : そもそも、psyntaxのparameterizeがSRFI-39なのかどうか調べてないのでタイトル変更。 報告されたIssue parameterizeの仕様(was: SRFI-39実装のバ…

週刊mosh : win32 named pipeに対応

0.2.7は、まだまだopen for development。ただ、%getpidの追加に伴いバイトコードの互換性は失われたので、バージョンbumpをそのうち。 話題 port→fd http://groups.google.com/group/mosh-developer-discuss/browse_thread/thread/f1331c61b42fddc9?hl=en m…

coverstoryでカバレッジを見る

gcovのビューアと言えばcoverstoryが有る。これはMacOS X専用だがすぐ使えるので便利。 moshの場合は多少注意点が有って、 -DUSE_XCODEをCFLAGSとCXXFLAGSに含める。 -O0をCFLAGSに含める(今は必要ないかも) 必要が有る。USE_XCODEは、computed gotoの使用を…

週刊mosh: %getpid登場 / Schemeの優位性

あまり進捗せず。0.2.6がそれなりに安定しているのであまりニュースが無いというのも。 getpidとプリミティブのアップデート方法 https://github.com/okuoku/mosh/commit/8c412a9317a15b5985c6e519bb31adbcf1d30233 プロセスIDを取るプリミティブであるとこ…

静的型システム

mosh 0.2.7に入れようとしているライブラリ(LLVM bitcode readerやELF/DWARF4パーサ)はyuni由来の簡易型システムに依存している。 yuniは、元々パケットフォーマットを静的型と見做すという絶妙に特殊な用途のために設計された言語なので、Rubyのオブジェク…

アイコン

moshに対する意見で"アイコンの視認性が悪い"というのが有って、確かにWinXPやVistaだとみづらいかもしれない。。 アイコンの視認性が悪いと、Alt+TABのタスクスイッチャで選んだり、タスクバーから選ぶのに難儀するので、視認性の良いアイコンを選ぶのは地…

あたまわるいミス

あたまわるいミスが最近多い。 https://github.com/okuoku/mosh/commit/0d79e43561316b01de41f9d310667613874defe5 stdoutを2回使って、stderrを放置している。 これで(mosh process)でも(nmosh process)が正常に動くようになった。 ...が、そもそも、(nmosh…

週刊mosh - 0.2.7への目標 / Win32プロセスAPI

Open for developmentということで散発的にいろいろやっています。 0.2.7予報 年末〜来年初頭にリリース予定の0.2.7では以下のような機能が導入されるかも。 Win32と互換のプロセスAPI wxWidgetsのサポート OS固有機能のためのインフラ 以下は開発初期段階な…

OpenCL実装の現状

追記: 以下の内容は既に古い。 OpenCLのサポート状況は当時よりだいぶ向上してきたと言える。 http://wiki.monaos.org/index.php?.mjt/mosh/OpenCL OpenCL実装は1.0実装と1.1実装が混在しているのが現状と言える。今のところ、OpenCLは完全なクロスプラット…

週刊mosh - CMakeビルド不発/Moshを選択する理由

イベントが取れるように(callback)。開発はXCodeとVisualStudioの両方でやってます。 0.2.6のリリースから1週間ほど経って、mosh 0.2.6のダウンロード数は16と個人的にDLした数の半分以下の低調な滑り出し。 ...Google codeのダウンロードカウントは直接DLを…

Windows版(MSYS/Cygwin版)moshのビルド方法

Windows版のmoshはCMakeの他にMSYSやCygwinでもビルドすることができる。 非常にややこしいが、Windows上で動作するmoshにはN種類ある。 Win32で動作するMinGW+CMake版 Win32で動作するVisualStudio+CMake版 Win64で動作するVisualStudio+CMake版 Win32で動…

wxWidgetsとイベントループ

https://github.com/okuoku/mosh/commit/1c608b6c41b3214c1cd3ef48f07e81777941065d WindowsとMacOS Xでwindowが出るようになった。 どうも、イベントループを置換するための汎用的な手法は2.9以降にしか無いようだ。。 もっとも、GUI版はコンパイル済バイナ…

Visual Studioビルドのcallback対応

結局こういう形になってしまう。。 https://github.com/okuoku/mosh/commit/6f67973ddc3257ee5e4b2900ad73ff03ba133bd0#L1R296 今(0.2.6に)有るcallback対応はypsilon由来で、"gasで書いたstubを呼ぶJMP命令だけをJITで生成する"ことで行っている。 https://…

Windows版(CMake版)moshのビルド方法

Windows版のビルドには7ステップ必要です。 Visual Studio 2010 のインストール CMakeのインストール yasmのインストール (MPIRのビルドに使う) MPIRのビルド onigurumaの展開 CMakeでのconfigure moshのビルドとインストール CMake回りの手順はClangやLLVM…

週刊 mosh: 0.2.6 / homebrewに収録

0.2.6ほぼリリースです( http://code.google.com/p/mosh-scheme/downloads/list )。 前回0.2.5 : http://d.hatena.ne.jp/mjt/20100516/p1 ... ほぼ なのは、Google code側を更新できないので。。 今回のリリースからMac OS Xのhomebrew( https://github.com/…

LLVMのbitcode readerを書いた

今まで、moshに直接組み込む形のLLVMバインディングを使っていたけど、色々と不便なのでLLVMを直接使うのはヤメにして、一旦bitcodeを経由する形に変更。ちょっと実用するには遅すぎる。 http://github.com/okuoku/yuni-core/commit/a9801ab0236f03cabc59f48…

週刊mosh

0.2.6のリリースは順調に遅れてます。。CMake版ビルドでGCのログが外部テキストファイルにできてしまう件の対応中。 0.2.6でパッケージやportsの制作に必要な変更はほぼ全て導入したので、次のリリース(0.2.7?)からは何らかのOS向けにportsを準備できるはず…

wxWidgetsを選んだ理由

http://practical-scheme.net/chaton/gauche/a/2010/10/28#entry-4cc8dc54-745c3 Gaucheでも、GTkだとどうしてもクロスプラットフォームが面倒なので、wxの方がいいかなあということは前から思ってるんだけど、GUIツールキットとしての使い勝手はどうなんだ…

0.2.6リリース候補

http://storage.osdev.info/pub/idmjt/diaryimage/1010/mosh-0.2.6rc4.tar.gz R6RS schemeインタプリタのmosh 0.2.6リリース候補版。 gmpとonigurumaがインストールされた環境ならそのままコンパイルできるはず。今回のリリースから、onigurumaは別途インス…

マクロの展開とシリアライズ

以外と地味なので見落しがちな点。。 (shorten)がでかい 今のshortenライブラリを展開するとすごいサイズになる。(nmosh 0.2.5はそもそも(shorten)を内蔵しているのでキャッシュには表われない。そのうちリリースする0.2.6からは外部ライブラリに戻した。) p…

今週のmosh

0.2.6のリリースは絶賛遅延ちゅう。。 ypsilonの足音も聞こえてきたので方向性も考えつつ。。(新作が来週らしい - http://lwpinball.wordpress.com/2010/10/02/%E3%83%9E%E3%83%83%E3%83%89%E3%83%80%E3%82%A4%E3%83%80%E3%83%AD%E3%82%B9pv/ ) Win64対応 と…

作業開始

0.2.6の10月リリースを目指して。 誰が纏めてどうリリースするのかみたいな手順は全く検討してないので、それはそのうち。。Rubyとかどうしてんのかなぁ。。 リリース担当のおしごと Moshはフル機能の言語処理系としては規模が小さくそれなりにポータブルな…

週刊mosh

今週のmosh。 バグ修正 higeponが2つの報告されたバグを修正。 http://code.google.com/p/mosh-scheme/issues/detail?id=169 0要素の読み込みが常にEOFになる http://code.google.com/p/mosh-scheme/issues/detail?id=170 custom portが閉じられたときに、cl…

週刊mosh

今週のmosh development。(たぶん月刊くらいになる) 新expanderは進んでない。当初設計だとvariable-transformerに対応できないことが分かったため。。 isnanとisinf MoshはC99のisnanとisinfに依存しているので対応で悩み中。主にApple XCodeで問題になる。…

mosh近況

いろいろと難航しているので、依存関係を整理して、細かいリリースに分割するのを検討。 現段階 + CMakeに移行したMSVCサポート で0.2.6としてリリースして、REPLの改善とminishellを0.2.7というのが妥当なところか。 微妙に難しいのは、yuniを導入すると現…

mosh近況

長い道程。。基本的には休みを潰してoniguruma対策。 google testのアップデート google testのディストリビューション全体を含む理由は特にないので、google testをアップデートしてファイルを統合した。 ただ、最近のGoogle testはPOSIX正規表現サポートを…