Mosh/開発者掲示板


Top / Mosh / 開発者掲示板

開発者掲示板

開発者の情報共有掲示板。

コメント

最新の1000件を表示しています。 コメントページを参照

お名前:
  • メモ: bytevector-output-portがバグってたので直した。あとでテスト書く。found by r7rs-bridge。 -- .mjt 2011-11-14 (月) 03:31:07
    • 修正とテストをpush -- .mjt 2011-11-22 (火) 23:27:39
  • そろそろR7RS やりますか? -- ひげぽん 2011-10-02 (日) 22:58:28
    • ちょっと考え中。今のexpanderを捨てて、自前のexpanderにするいい機会かなぁと思ってるけど、既存のR6RSライブラリを捨てられるかというと微妙なところもあるので。。 -- .mjt 2011-10-02 (日) 23:02:05
    • 最初の段階として、今moshにSchemeライブラリを追加するときはsyntax-caseを一切使わないようにしてます(Largeも含めR7RSには入りそうも無いので)。 -- .mjt 2011-10-02 (日) 23:03:04
    • ライブラリは捨てるつもりであとで移植すれば良いのではないかなー。Large 以外をぱぱっとやってしまいたいですね。 -- ひげぽん 2011-10-02 (日) 23:12:17
      • Largeは言語仕様とOSにかかる部分を除けば大体はリファレンス実装が出ると思うんで、基本無視でいいかなぁと。(nmoshはどうせ非同期I/Oが中心になるので恩恵がほとんど無いし。。) -- .mjt 2011-10-02 (日) 23:45:29
      • expanderを除くと数値演算系くらいですかね。。あまり需要のある分野でも無いので(ひどい)、多分正式版のドラフトが出てから対応を始めても良いと思います。年末位の見込。 -- .mjt 2011-10-02 (日) 23:49:48
  • めも: Visual Studio 2011のC++0x(Dinkum)でビルドできない病。対処は考え中。 -- .mjt 2011-09-21 (水) 03:26:47
  • gc-cvsを単純にgcに改名したいところ。Upstreamがgitに移行してしまったため。https://github.com/ivmai/bdwgc/ -- .mjt 2011-09-17 (土) 21:09:59
  • OpenGL/CLサポートのためにこのへんのマクロを導入予定。http://code.google.com/p/autoconf-gl-macros/ GPL+例外で配布するconfigure(やビルドするバイナリ)のライセンスには影響なし。 -- .mjt 2011-09-07 (水) 22:43:18
  • 0.2.8で非同期I/OのサポートをPOSIX全般に拡張する予定です。higepon/master側に結構ドラスティックな変更が入るので、あらかじめテストすべき動かないと困るプラットフォームが有れば教えてください。いまのところMacOS X 10.7 LionとUbuntu 11.04 amd64でテスト予定です。 -- .mjt 2011-08-26 (金) 22:46:17
    • ちなみに現在のテスト対象は: FreeBSD 8 i386/amd64、Cygwin 1.7、VisualStudio 2010 SP1。 -- .mjt 2011-08-26 (金) 22:46:58
    • Ubuntu と OSX が動けばこちらは OK です。 -- ひげぽん 2011-08-26 (金) 22:50:54
  • R6RS移植版のcompiler.scmがinsnを出力しなくて悩み中です.. .mjt/mosh/tmp/r6-comp -- .mjt 2011-08-10 (水) 03:21:07
    • うろ覚えですがなにかトリッキーなことをやっていた気がします。確か compiler.scm に含まれる insn と実際に出力される VM 用コードに含まれる insn を区別していたような。 -- ひげぽん 2011-08-10 (水) 07:28:17
    • 微妙に動くようになりました。nmoshは起動するけど一部の手続きに渡る手続きが化ける。。あとはVM.scmをちゃんと移植すればmoshだけでbootstrapできる見込。 -- .mjt 2011-08-12 (金) 00:19:08
  • メモ。あとで調べる。 -- ひげぽん 2011-08-02 (火) 11:41:17
    /usr/bin/install: たった今作成した `/usr/local/share/mosh-0.2.7/lib/mosh/config.ss' には `./lib/mosh/config.ss' で上書きしません
    /usr/bin/install: たった今作成した `/usr/local/share/mosh-0.2.7/lib/mosh/mysql.ss' には `./lib/mosh/mysql.ss' で上書きしません
    make[2]: *** [install-nobase_dataDATA] エラー 1 
    make[2]: ディレクトリ `/home/taro/mosh.git' から出ます
    make[1]: *** [install-am] エラー 2
  • Lion + XCode 4.1でビルドできないですね。対応後8月中旬くらいに0.2.8を出そうかなと考えてます(mosh_configが動かない等致命的なバグがあるので)。 -- .mjt 2011-07-23 (土) 02:43:53
    • (Unsupported inline asm @ FFIProcedures.cpp 725, 766。XCode4からgccがllvm-gccになったので、インラインアセンブラの互換性はかなり低下しました。。) -- .mjt 2011-07-23 (土) 02:46:26
    • いまのところ上手いworkaroundを見つけていないので、1) OS XではFFI非対応にする 2) libffiに代える 3) macportsに移籍してgcc4.3以降かclangを必須にする あたり。 -- .mjt 2011-07-23 (土) 02:53:20
    • homebrewの方で既にworkaroundしてた。。./configure CC=gcc-4.2 CXX=g++-4.2 でLionでもOKっぽい。 -- .mjt 2011-07-23 (土) 03:00:27
    • XCodeで開発するにはApple LLVM Compiler 2.1にしないとビルドできないっぽい。。 -- .mjt 2011-07-23 (土) 03:16:30
  • homebrew 対応に救われた。ありがとうございます。いいねいいね。 -- ひげぽん 2011-07-19 (火) 14:07:39
  • Google codeがgitをサポートするみたいなので、Google codeのプロジェクトの方もGitにしようかなと思ってます。 -- .mjt 2011-07-16 (土) 11:10:56
    • psyntax moshはこの機会にnmosh同様のbootstrap(直前のバージョンのmoshからビルドする方式)に変えたいところ。 -- .mjt 2011-07-16 (土) 11:13:12
    • やりかた: vanilla-moshバイナリを作る方法を準備する → configureに--enable-bootstrapオプションを足す → vanilla-mosh経由でnmoshをbootstrapして、そのnmosh経由でpsyntax-moshをbootstrapする -- .mjt 2011-07-16 (土) 11:20:40
      • 基本的にtarballには現状どおりpsyntax-moshやnmoshのFASLイメージを入れる(ビルドの高速化とクロスコンパイルの簡略化のため)。debian向けにはFASLはvanilla-mosh分だけというのを別途作る予定。 -- .mjt 2011-07-16 (土) 11:23:37
    • 安定するまでは psyntax.scm を svn にコミットするのは継続しましょう。 -- ひげぽん 2011-07-19 (火) 11:00:36
  • ExecutableMemory 見直しもやるならぜひ追加ではなくて置き換えでお願いします。 -- ひげぽん 2011-07-10 (日) 07:07:16
  • メモ: NaturalDocsをやめてDocuriumスタイルのドキュメントを出力したいところ( https://github.com/schacon/docurium )。eg. http://libgit2.github.com/libgit2/#HEAD -- .mjt 2011-07-09 (土) 19:20:52
    • 乗り換えの理由はなんでしょうか。 -- ひげぽん 2011-07-09 (土) 19:52:31
    • 乗り換えというか、(Windows版にHTML Helpを提供する目的で)NaturalDocsに相当するツールをnmosh自前で持つので、ついでに内容やレイアウトも見直しましょう  というあたり。。 -- .mjt 2011-07-10 (日) 03:15:47
    • もし本気やるならば Docurium で置き換えましょう。両方サポートするのはコストなので。 -- ひげぽん 2011-07-10 (日) 07:06:09
  • r6rs-test-suiteが通らないけどmasterを更新しました。Issue 217のfixで発見された既存のバグ(Issue 171)のため。 -- .mjt 2011-07-09 (土) 13:58:17
    • 今後も、regressionのうち明らかに既知のバグでtrackerにあるものは新規のバグではないと見做してmasterを更新するつもりです。 -- .mjt 2011-07-09 (土) 13:59:11
    • 了解です。 -- ひげぽん 2011-07-09 (土) 19:52:43
  • あれ? /usr/local/share/mosh-0.2.7/lib/mosh/ に mysql のライブラリがないなあ。 -- ひげぽん 2011-06-29 (水) 22:23:55
  • rebase よく分かってないのでこの機会にやってみますね。しばらくお時間を下さい。 -- ひげぽん 2011-06-22 (水) 07:48:16
  • higepon/masterにpushするときはなるべくrebaseしませんか?このままだと、merge commitが多くなりすぎてgit初心者にはプロジェクトの履歴が追えなくなる気がする。 -- .mjt 2011-06-22 (水) 04:08:47
    • i.e.) higepon/masterだけはSubversionのように運用する。 -- .mjt 2011-06-22 (水) 04:09:15
    • たぶん2,3台ある開発ホストの履歴を残すためにmergeを使ってると思うんですが、今後はテストする(& 僕が通らないところを直す)たびにhigepon/masterは更新されるのであんまり意味が無くなると思います。 -- .mjt 2011-06-22 (水) 04:24:47
  • google codeのほうのアップデートはadminしかできないみたいなのでadminになれませんか..? -- .mjt 2011-06-18 (土) 13:39:17
    • Project Owner にしてみました。どうでしょう? -- ひげぽん 2011-06-18 (土) 13:41:09
    • 編集できるようになりました。ありがとうございます。 -- .mjt 2011-06-18 (土) 13:58:32
  • http://mosh-scheme.googlecode.com/files/mosh-0.2.7.tar.gz アップロードしました。 -- .mjt 2011-06-17 (金) 20:54:18
    • お疲れ様でした。色々とやっていただいて助かりました。 -- ひげぽん 2011-06-17 (金) 22:14:59
  • 0.2.7 status: テスト通過&タグ。リリースノートの和訳やhomebrewの更新は明日準備するので、アナウンスも明日の方向で。 -- .mjt 2011-06-17 (金) 02:59:02
  • COPYINGに抜けがあるのでaudit中。getoptU等。 -- .mjt 2011-06-14 (火) 21:25:07
    • ああ。すみません。主要なものしかいれてなかったですね。 -- ひげぽん 2011-06-15 (水) 20:06:32
  • https://github.com/okuoku/mosh/commit/8bf019319f9368fc26c856ae426eb29e3667279b#L3R388 このへんのコメントを外すとCompiler error"[internal error] iform-count-size-upto: unknown iform tag:13"。0.2.7ではKnown Issue行きの予定。 -- .mjt 2011-06-13 (月) 20:51:21
  • http://storage.osdev.info/pub/mosh/mosh-current.tar.gz Code freeze。あとはCOPYINGの更新とタグ打ちです。 -- .mjt 2011-06-12 (日) 22:14:56
    • お疲れ様です。 -- ひげぽん 2011-06-12 (日) 22:32:28
  • 今mosh -vでは"Mosh R6RS scheme interpreter, version 0.2.7 (revision dist Sat, 11 Jun 2011 14:27:23 +0900 mosh-0.2.5-860-gdfec926)"みたいに出るんですが、ブランチ名と"revision"の文字は廃止しようと思います。1) gitのブランチ名は一意性が無いのでほとんどの人にとって役に立たない 2) gitは"revision"の用語を殆ど使わない。 -- .mjt 2011-06-12 (日) 20:54:39
  • higepon/masterを更新しました。(pushするときはrebaseかmergeが必要です。) -- .mjt 2011-06-11 (土) 14:39:07
    • 今後は週1くらいのペースでテストとupdateする予定。 -- .mjt 2011-06-11 (土) 14:40:40
  • https://github.com/okuoku/mosh/commit/9272ce5e958fd67cfcb6c79d07becbf2be8ca788 compiler.scmをR6RSで動かすためにpassN/registerの位置を替えました。0.2.7はGaucheを使い続けますが、そのうちmoshベースのbootstrapに替える予定。 -- .mjt 2011-06-10 (金) 21:57:23
  • リリースまでにぼくがやるべきことはありますか? -- ひげぽん 2011-06-10 (金) 16:13:44
    • masterの更新... は僕がやることにしたので、少々お待ち下さい。。 -- .mjt 2011-06-10 (金) 20:17:06
  • higepon/masterとokuoku/masterがdivergeする問題。今のところ、testに成功したらhigepon/masterにpushするという方向で考えてます。1) mosh-currentと同期できる 2) パッチの受け入れが簡単になる。 -- .mjt 2011-06-10 (金) 05:48:21
    • でも多分一番良いのは、mosh organizationを作って、mosh/masterをテスト済みのリリースブランチ、higepon/masterやokuoku/masterを開発ブランチにすること。 -- .mjt 2011-06-10 (金) 05:50:31
    • はい。>test に成功したら。仕様の相談が必要な物は今まで通りの方法でいきましょう。 -- ひげぽん 2011-06-10 (金) 14:53:54
  • 0.2.7 status: 1) Issue 214。おすすめ対策は5のPortのcloseを自動にしない方向。4のPortのcloseをFileクラスにさせるのが次点。どうしてもPortをgc_cleanupで処理する必要があれば、gc_cpp.hのほうをJAVA方式のfinalizationを使うように書き換えます。3のGC Warningを無くすのは潜在的な問題を見逃しそうなのでおすすめしません。 2) README.mdは、libtoolを依存から消して、必要なmoshはmosh-currentにします。プリミティブを足すとFASLに互換性が無くなるので。 -- .mjt 2011-06-05 (日) 23:44:06
    • 1)調査と方針ぎめの時間が欲しいので 0.2.7 はそのままだしたいです。2)了解です。 -- ひげぽん 2011-06-06 (月) 22:59:51
  • できればMonaOS専用の機能は(system)でなく(monaos)あたりに入れて欲しいです。process-listやstart-processはWindowsやMacOS、POSIXには移植できないので。。 -- .mjt 2011-06-04 (土) 12:52:41
    • (start-process: これらのOSはマルチユーザで、特定のプロセスを指定する信頼できる方法が存在しないのです。。自分の起動したプロセスを識別するためには、必ずプロセスIDを受け取るAPIにする必要が有ります。) -- .mjt 2011-06-04 (土) 12:55:13
    • 多分MonaOSProcedures.cppのような独立したファイルにしたほうが良いと思います。1) MonaOSアプリケーションをC++で書く人にはone stopでAPIの利用サンプルを見せられる。 2) 他のOSも入れて同じことをすると多分大混乱になる。例えばMacOS/BSDのKqueueもUtilityProceduresに入れられるか否か。。3) 他のアーキテクチャを壊しやすくなる。 -- .mjt 2011-06-04 (土) 13:03:20
    • はい。I/F が決まるまでは分けたほうが良いですね。Mona の API を一般の方に寄せることで OS としての過不足をみようと思っています。 Mona 以外では (process-list)= ps 相当ではまずいですか? -- ひげぽん 2011-06-04 (土) 21:18:02
      • Windows以外ではプロセスを列挙するための移植性のある安定したインターフェースが無いので、Scheme側でprocfsを見る(linuxの場合)等プリミティブにしないほうが良いです。 -- .mjt 2011-06-04 (土) 21:50:24
    • Mosh で pgrep/pkill 相当は書けるようにしたいので移植性は低くても大部分のプラットフォームでは動くようんしたいな。 -- ひげぽん 2011-06-04 (土) 21:52:39
      • プロセス周りは基本的にOS間で移植性は無いので。。例えば単にプロセスを終了させるにしても、Gracefulに終了させるのかKILLするのかという差が有って、Win32やMacではGracefulな終了はあまり簡単に出来ないわけで。。 -- .mjt 2011-06-04 (土) 22:31:38
      • もちろん全部POSIXに寄せるって手も有りますが、POSIXだとプロセスの列挙ができないので、Linux/FreeBSD/NetBSD/MacOS X/Win32全部で別々のコードを書かないといけなくなります(mosh-executable-pathのように)。 -- .mjt 2011-06-04 (土) 22:34:19
  • RCお疲れ様です。問題なかったのですが一点だけ bdwgc は何だから分からないので gc-CVS-xxx xxx は revision とかにしませんか。 -- ひげぽん 2011-05-30 (月) 22:08:13
    • bdwgcはSourceForgeのプロジェクト名でBoehm-Demers-Weiser Garbage Collectorの略です。CVSは(タグを打たない限り)ツリーのリビジョンという概念が無いので、リビジョンを含めた命名にするのは地味に難しいです。。 -- .mjt 2011-05-31 (火) 07:08:12
    • でもpkg-configのパッケージ名(bdw-gc)と被ってるのは微妙な気もするので単にgcにするか、gc-CVSにするかも。 -- .mjt 2011-05-31 (火) 07:11:04
      • はい。そうしてください。 -- ひげぽん 2011-06-02 (木) 18:24:42
  • BoehmGC CVS: とりあえずLinux/FreeBSD amd64とWin32 MSVCでは問題なし。Cygwinで動かなくなるのは対応策は見つけたのでそのうちどうにか。。RC2を週末にでも出して1wくらいテストするという感じでひとつ。 -- .mjt 2011-05-27 (金) 21:23:04
    • 従来から大きく代わる点は、BoehmGCのビルドをMosh側のMakefile.amで行うところ。LTOする上で有利なのと、MacOS XでGC側にDTrace probeを仕掛けられるようにするため。libtoolに依存しなくなるので、Cygwin上でのビルドにかかる時間もかなり短縮できる。パフォーマンスは全く同一のはず。 -- .mjt 2011-05-27 (金) 21:26:21
      • ほう。それは良いですね。簡単にできるんでしょうか?あとでコミットを見せてくださいな。 -- ひげぽん 2011-05-27 (金) 22:46:09
      • まぁ全部Makefile.amに書くだけですけど。。書く内容はCMakeビルドと同一 https://github.com/okuoku/mosh/commit/69054eebe18fc7263f4149c129d9a292d2ee0696 -- .mjt 2011-05-28 (土) 06:11:33
      • 全部書くのですか。うむむ。gc/configure.ac にあるいろいろなものが無視されていると思うのですがまずくないですか。(-DUSE_I686_PREFETCH, NO_CLOCK) など gc の configure を活かすほうがメンテナンス性が良いのではないかな。 -- ひげぽん 2011-05-28 (土) 08:07:32
      • 基本的に、設定しなかったものは自動的にgcがdefineします。メンテナンスの手間はどっちにせよCMakeビルドで同様のメンテナンスが要るので変わらないかなぁと。。 -- .mjt 2011-05-28 (土) 08:23:11
      • まあ問題が出てから考えましょうか。Go してしまってください。 -- ひげぽん 2011-05-28 (土) 08:37:29
      • 基本的に再帰的なconfigureでlibtoolを使うと事件が起こりやすいので(cleanでcleanされないとか、インクリメンタルビルドできないとか)、そういう問題で時間を無駄にするのを防ぐためにもビルドプロセスは簡潔・明快であるべき。。 -- .mjt 2011-05-28 (土) 08:38:17
    • オプションとしてはHANDLE_FORKを有効にする予定。従来は、MultiVMなときにForkを使うと死ぬ可能性があった。PARALLEL_MARKは考え中。 -- .mjt 2011-05-27 (金) 21:30:34
  • ToDo: gc を上げたらパフォーマンスチェック。大きく性能低下してないか。 -- ひげぽん 2011-05-27 (金) 16:20:43
  • FYI : これはかなり怪しいかも c - Boehm GC: how to effectively debug smashed heap objects? - Stack Overflow -- ひげぽん 2011-05-26 (木) 22:17:52
    • 追試しました。 gc-7.2alpha4 に上げたところ all-tests.scm での smash でなくなりました。また大元の concurrent の SEGV も全く出ません。gc-7.1 だと 100回中8回くらい死にます。 -- ひげぽん 2011-05-26 (木) 22:36:55
    • そちらでも試していただいて OK なら gc のバージョンを上げましょう。 -- ひげぽん 2011-05-26 (木) 22:39:57
    • とりあえずCVS版に上げてもういちど0.2.7のRCを出すことにします -- .mjt 2011-05-27 (金) 03:39:16
  • smashed を再現したいです。ビルド方法と再現するスクリプトなど手順教えてもらえますか。ソースは 0.2.7 ですよね? -- ひげぽん 2011-05-26 (木) 14:58:47
    • annotated-pair と pair のサイズをかえないといけないとか。 -- ひげぽん 2011-05-26 (木) 15:05:59
    • 下の説明の通り。https://github.com/okuoku/mosh/commit/6e0245e2b4d35b1d1a5f0b30a1f8114b1d96693f#L1R209 をcheckoutしてerrorを取り、bogusを増量してCFLAGSとCXXFLAGSに-DGC_DEBUGを指定してconfigure && makeすれば、BoehmGCがsmashed objectを報告するはず。KEEP_PACK_PTRSのような他のデバッグオプションは使わないでください。SAVE_CALL_CHAINは大丈夫です。 -- .mjt 2011-05-26 (木) 20:43:27
    • configure.acを修正してリビルドするだけだとgcのオプションが適用されないので、一旦git cleanするなりなんなりしてgen-git-build.shをやりなおしてください。。 -- .mjt 2011-05-26 (木) 20:53:14
    • moshをそれなりに動かさないとsmashedは観測されない(検出をGCのタイミングでしか行わない)ので、.moshを消して--disable-accで動かすか、mosh -5 src/all-tests.scmで。。 -- .mjt 2011-05-26 (木) 21:16:00
  • まとめると、"moshのどこかで、オブジェクトの末尾+1ワードに書きこむコードパスが存在して、それが原因でGCが誤動作して落ちる"のが原因というのが今の仮説(そしてそのコードはset-annotationでない)。今まではDONT_ADD_BYTE_AT_ENDしてなかったので、+1ワードは緩衝地帯になっていて落ちなかった。 -- .mjt 2011-05-25 (水) 06:46:21
    • ただ、いろいろな長さのオブジェクトでこれが起こるので、GC自体のバグという線もまだ捨てきれてないです。 -- .mjt 2011-05-25 (水) 06:56:09
  • 「nmoshが落ちるのは1)じゃないかな。と。手元の環境では落ちなくなったので」とありますが nongenerative のコードを new 呼び出しを遅延させるコードに変えても nmosh が落ちます。ということで大元の問題であったエラーはなぜ落ちるのか判明していないように見えます。今切り分けていますが main thread を入れないで 2番目のスレッドがうごきだして最初の GC_malloc で落ちるようです。 -- ひげぽん 2011-05-24 (火) 23:42:15
    • gc-7.1/doc/debugging.htmlを読むと、GCが不正なアドレスを読んで落ちるのは99パーセントoverwriteが原因って有ります。で、実際moshをGC_DEBUG入りでコンパイルするとoverwriteが観測されるのでそれが原因だと思います。 -- .mjt 2011-05-25 (水) 06:34:34
      • 観測されるoverwriteは常に1wordぶんなので、DONT_ADD_BYTE_AT_ENDさえやめれば治るはず→実際治る(少なくともWin32とamd64 linuxでは) -- .mjt 2011-05-25 (水) 06:44:00
    • "nmoshが落ちるのは〜"は単純に偶然で、実際何度か実行すると落ちるようです。これはnmoshのキャッシュの状態に依存するようで、常にキャッシュをクリアすれば常に落ちるように見えます。 -- .mjt 2011-05-25 (水) 06:36:48
  • 結局、AnnotatedPairをもっと大きくして、DONT_ADD_BYTE_AT_ENDをやめるコミット https://github.com/okuoku/mosh/commit/6e0245e2b4d35b1d1a5f0b30a1f8114b1d96693f -- .mjt 2011-05-24 (火) 20:24:00
    • 多分このコミットで落ちなくなるはず。BoehmGCにSAVE_CALL_CHAINというデバッグオプションがあったので、それを使ったら破壊されているオブジェクトはPairやらVectorやらClosureやらと特にルールが有るようにはみえず。 -- .mjt 2011-05-24 (火) 20:25:22
    • このコミットでGC_DEBUGを使う場合は、https://github.com/okuoku/mosh/commit/6e0245e2b4d35b1d1a5f0b30a1f8114b1d96693f#L1R209 のerrorを取って、bogusのサイズを64にしてください。そうでないと、PairとAnnotatedPairを混同するようなので。。 -- .mjt 2011-05-24 (火) 20:28:06
    • お疲れ様です。ただ今デバッグ中。 -- ひげぽん 2011-05-24 (火) 22:07:15
  • というわけで、AnnotatedPair以外に、1ワード余計に書いてしまうところが何処かにあるらしいというのがGC_DEBUGによって観測されました。余計に書くのはちょうど1ワードで、統計的には特に何のデータという決まりはない模様。 -- .mjt 2011-05-23 (月) 20:27:03
    • concurrentは、eq-hashtableがそもそもthread-safeでないので、1) Record実装をC++に戻す 2) hashtableをthread-safeにする 3) record実装側でmutexを使って保護する   のどれかが必要。 -- .mjt 2011-05-23 (月) 20:28:07
      • mutex にしましょう。OScompat にあったような。 -- ひげぽん 2011-05-23 (月) 23:23:12
    • 今1ワード余計に書いてしまっているところを探しているんですが、ちょっと直ぐには見つからなさそう。でもこれは直さないとMLの報告みたいに何故か落ちるということが起こるので0.2.7は直してから出すということで。。 -- .mjt 2011-05-23 (月) 20:30:08
    • 今まではBoehmGCが1ワード余計に付けていたので発覚しなかったと思われる。 -- .mjt 2011-05-23 (月) 20:30:53
    • はい。こちらでも調べます。 -- ひげぽん 2011-05-23 (月) 22:50:58
  • とりあえず、1) nonGenerativeRTDはScheme側に持たせる 2) (mosh concurrent)はとりあえず無し 3) set-source-info!はNOP という仕様でtarballを作ってみて、それで現象が改善するようなら0.2.7もそういう仕様ということでひとつ。。 -- .mjt 2011-05-22 (日) 20:58:48
    • というか、nonGenerativeRTDのeq-hashtableをパラメタとして新しく作るVMに渡すという方式で何か問題って有るんですか。。?これが出来ないから多分C++側に実装されてると思うんですけど。 -- .mjt 2011-05-22 (日) 21:02:22
    • VM間で正しく共有されればよいのでパラメータ渡しでも良いです。 -- ひげぽん 2011-05-22 (日) 21:19:10
    • 元々の現象は nmosh が落ちるというものだったので set-source-info! はこの件では無罪では? -- ひげぽん 2011-05-22 (日) 21:23:16
      • nmoshが落ちるのは1)じゃないかな。と。手元の環境では落ちなくなったので。 -- .mjt 2011-05-22 (日) 21:31:29
  • set-source-info!をNOPにしたら現象は解決する模様。つまりPairや他のオブジェクトをAnnotatedPairと誤認するケースがたぶん何処かに有る。 -- .mjt 2011-05-22 (日) 20:04:41
    • 下にも書きましたが LOG1 を使って set-sourceinfo! の target をログに出せばオブジェクトの正体が分かるかも。 -- ひげぽん 2011-05-22 (日) 20:07:08
      • それだと超大量に出力が出るので。。まだ分析中。 -- .mjt 2011-05-22 (日) 20:22:31
        1fd69e0 target=(#t)
        1fca810 target=(assert test string)
        1fd6170 target=(test string)
        27f2f80 GC_check_heap_block: found smashed heap objects:
        0x101fd6188 in or near object at 0x101fd6170(/Users/oku/repos/mosh/extlibs/gc-7.1/include/gc_cpp.h:363, sz=16)
        0x101fd69f8 in or near object at 0x101fd69e0(/Users/oku/repos/mosh/extlibs/gc-7.1/include/gc_cpp.h:363, sz=16)
  • というか(annotated-pair? (cons 1 2)) → trueだった。GCのASSERTIONを有効にすると正常に判断できなくなる? -- .mjt 2011-05-22 (日) 20:35:15
    • DONT_ADD_BYTE_AT_END がないと annotated pair = pair になってしまいます。 -- ひげぽん 2011-05-22 (日) 20:50:49
    • いやDONT_ADD_BYTE_ENDはフラグ的には入れてるので、AssertionとかGC_DEBUGの影響を受けているんじゃないかなと。 -- .mjt 2011-05-22 (日) 20:56:21
  • 0x101bfd368 in or near object at 0x101bfd350(/Users/oku/repos/mosh/extlibs/gc-7.1/include/gc_cpp.h:287, sz=16) BoehmGCはC++で使うとデバッグ情報が役に立たないのを忘れてた。。 -- .mjt 2011-05-22 (日) 18:30:20
    • 2 wordのオブジェクトって何か心当たり有りますか。。?(Pairは全部annotatedにしているので、Pairでは無いです) - 調べてみたらけっこういっぱい有ったのでナシで。。 -- .mjt 2011-05-22 (日) 18:31:57
    • 何らかの理由で、PairやClosureでないものがset-source-info!に渡って何かデータがannotation領域に書かれ、これがobjectに対するoverwriteになって、ヒープが破壊されてなにか間違ったことが起こる   でFAの模様。nmoshで問題ないのはnmoshがset-sourceinfoしないから。今まで問題が表面化しなかったのは、DONT_ADD_BYTE_AT_ENDがなかったので、数ワードのオブジェクトはたいてい1ワード分余計に取られていた(ので、Pairのannotationの場所は空いていた)ため。 -- .mjt 2011-05-22 (日) 19:02:37
      • setSourceInfoDEx の中で LOG1("target=~a\n", target) とやってログをとって動かしてみてはどうでしょう。もし推測通りなら pair でもない closureでもないものが表示される or 表示しようとして死ぬと思います。 -- ひげぽん 2011-05-22 (日) 19:49:09
  • ちなみにGC assertionを信じるなら"0x1023c96d8 in or near object at 0x1023c95a0(▒▒<:363, sz=16)"ということで、どこかのソースコードの363行目で確保されているPairです。多分。 -- .mjt 2011-05-22 (日) 16:16:00
    • しかし該当箇所無し。(find . | xargs -L 1 sed -n "363p" 調べ。) -- .mjt 2011-05-22 (日) 16:34:49
  • GC debug . -- .mjt 2011-05-22 (日) 15:36:34
    • 1) Non-Generative RTDをC++ではなくScheme側にもつように。https://github.com/okuoku/mosh/commit/bbeb4b606de15d910f38b960ea3709b212039468
    • 2) Pairを全部AnnotatedPairに。https://github.com/okuoku/mosh/commit/33270e5bfb166e3433ff7159962d40eb5bf08668
      • これはデバッグのために必要なことという理解で良いですか? -- ひげぽん 2011-05-22 (日) 15:51:08
      • ↑ 1)の修正は0.2.7に入れたいところ。今のコードだとDarwinやWin32では単に"偶然"動いているだけなので、なにか間違ったことがいつか起こるはず。 -- .mjt 2011-05-22 (日) 16:00:16
      • RTDのほうはLinux以外(i.e. gc_init()が必要なプラットフォーム)では基本的に必要。LinuxでもGCのassertionに引っかかるのでデバッグには必要。 -- .mjt 2011-05-22 (日) 15:53:35
      • Annotated Pairは何か間違ってるのは確かなんですがどう間違ってるのかは今のところ不明。 -- .mjt 2011-05-22 (日) 15:54:47
      • 2)の修正をした後、psyntax-moshを実行すると、annotated-pairでないpairのsource-infoを読みに行くタイミングで死にます。本来annotated-pairでないpairにもFalseを入れてるので落ちることは無いはず→どこかでpairをoverwriteするコードパスが有る という結論。nmoshはexpand時以外source-infoを触らないので落ちないだけ。 -- .mjt 2011-05-22 (日) 15:57:44
    • この2つでGCのassertionは出なくなりました(DONT_ADD_BYTE_AT_ENDでも)。ただ、1) concurrentは動かなくなる 2) psyntax-moshは動かなくなる のでもうちょっとちゃんとした修正が必要。。 -- .mjt 2011-05-22 (日) 15:38:51
      • ありがとうございます。concurrent は優先度を下げてください。 race condition の可能性も捨てきれないので。 -- ひげぽん 2011-05-22 (日) 15:51:33
  • 今回の件とは関係ないかもしれませんが、UtilityProcedures.cppの"static EqHashTable nongenerativeRtds;"は殆どのプラットフォームで問題が起こるので要修正(staticオブジェクトでGCは使えない。) -- .mjt 2011-05-22 (日) 09:26:31
    • baselib側(Scheme側)の実装に置き換えることにします。 -- .mjt 2011-05-22 (日) 09:28:26
  • 0.2.7 status: annotatedPair: GC_DEBUGを入れてroot causeを探しているところ。難航するようなら無しに。。 -- .mjt 2011-05-22 (日) 08:47:56
    • nmoshは最初のソース読み取り以外annotatedPairに依存していない(set-annotation!しない)のでannotatedPairを切っても特に問題ないですが、Psyntax-moshは依存しているのでannotatedPairを切るなら修正要。 -- .mjt 2011-05-22 (日) 08:51:36
  • Mosh/0.2.7。機能的なfixは終わったということにしてリリース候補期間ということで。5/20までにテストをしてリリース用のtarballを作る予定。手元のアプリケーションが正常に動くかチェックしてください。 -- .mjt 2011-05-16 (月) 04:07:17
    • Mosh/0.2.7/RC/errors 。原因は不明。まだあまり時間が取れていません。 -- ひげぽん 2011-05-16 (月) 23:30:31
    • (mosh concurrent) だけの問題ならだしてしまって良いかと思うのですが。どうかな。 -- ひげぽん 2011-05-20 (金) 17:49:13
      • Fedoraだと他のライブラリでも再現するので、たぶんconcurrentに関係なく何か間違ってる予感。とりあえず、DONT_ADD_BYTE_AT_ENDをやめて、全部のPairをとりあえずAnnotatedに戻して様子を見たいところ。 -- .mjt 2011-05-20 (金) 19:59:22
  • 0.2.7 status: ほぼReady to ship: storage.osdev.info/pub/mosh/mosh-current.tar.gz -- .mjt 2011-05-15 (日) 21:44:14
    • 残作業 : 1) 追加したライブラリをCOPYINGに足す 2) test all tier 1/2 arch. (.mjt/mosh/Platforms) -- .mjt 2011-05-15 (日) 21:45:14
    • リポジトリ/配布物からbenchはそろそろ消して良いですかね。。1MBくらいあるので。Githubにmosh organizationを作って、Benchmarkや外部ライブラリの類はそこに集積するのが良い気がする。 -- .mjt 2011-05-15 (日) 21:46:28
      • まだ消さないでください。まだユーザー規模が小さいのでコアに全てごっちゃになっている方が管理が楽だし。分離した途端にベンチマーク実行をしなくなる自信があります。配布物から消すのは構わないと思います。 -- ひげぽん 2011-05-15 (日) 22:15:18
    • 0.2.8 scheduled feature: .mjt/mosh/SRFIの整理。(mosh test srfi-64)等を作って現在のSRFI-64/78実装は廃止(吸収)。nmoshはcond-expandサポート等。 -- .mjt 2011-05-15 (日) 21:51:23
  • TODO:gcc の -flto を試す。 -- ひげぽん 2011-05-12 (木) 11:19:57
  • 0.2.7 status: 残作業 1) psyntax-mosh用のprecompile... -- .mjt 2011-05-09 (月) 00:10:51
    • キャッシュが破損しているとrm -rf `mosh_config mosh-cache-dir`もできない。。万策尽きてる感。 -- .mjt 2011-05-09 (月) 00:13:46
      • rm -rf ~/.mosh は /tmpを見に行くケースでダメ、rm -rf ~/.mosh /tmp/.moshは多分安全だけどちょっとerror proneすぎるような気がする。 -- .mjt 2011-05-09 (月) 00:15:44
    • 対策としては、1) --disable-accの時は何があってもキャッシュを見に行かないようにする 2) (mosh-executable-path)/moshがキャッシュよりも新しかったらキャッシュを無効にする -- .mjt 2011-05-09 (月) 00:18:42
    • これdropで良いですかね。。コピペミスでrm -rf ~みたいになるのが怖い割に、実装しても恩恵が少ないような気がする。 -- .mjt 2011-05-09 (月) 00:43:58
      • ちなみに個人的には2回やってます(rm -rf ~)。 -- .mjt 2011-05-09 (月) 00:45:34
    • あれ。precompile ってやめることになりませんでしたっけ? -- ひげぽん 2011-05-10 (火) 08:37:45
  • MONAがUCマクロを使わないのは変な気がする。Cygwinと同じ方法でwidecharを4byteにできるはず。。 -- .mjt 2011-05-05 (木) 09:04:25
    • 確かに。何でやってなかったんだろう。 -- ひげぽん 2011-05-05 (木) 09:07:24
  • 0.2.7 status: 残作業 1) psyntax-mosh用のprecompile - 確実な方法はなさそうなので、Cygwin上のGaucheのようにメッセージを出すだけ(実際の実行はユーザにやらせる)に落ち着きそう。 -- .mjt 2011-04-30 (土) 06:07:04
    • test status: i386でconcurrentのテストが終了しないケース多し、特にpsyntax-mosh + concurrent-crashはLinux/Cygwin/FreeBSD/NetBSDで止まらないことが多いので何かタイミング問題があるかも。Win32は非同期I/Oのストレステストを追加中。 -- .mjt 2011-04-30 (土) 06:11:40
      • 問題があることだけ書いて crash テストを外しますか。 -- ひげぽん 2011-04-30 (土) 09:25:50
    • Win32バイナリはバージョン毎のリリースをしないで、テストされたnightly buildに代えたいところ。ライセンス文書の整理のような事務作業と配布チャネルが問題。Google codeに自動upload? -- .mjt 2011-04-30 (土) 06:20:33
      • nightly build は自分はメンテナンスできないのでお任せします。最低限正式リリースは Linux などと同じ場所においてあれば良いです。 -- ひげぽん 2011-04-30 (土) 09:28:41
    • higepon/master も自動テストに加えた方が良いですかね。。? higepon/masterとokuoku/masterがあまりdivergeしないのが本来は望ましいですけど。。 -- .mjt 2011-04-30 (土) 06:42:52
      • 手間でなければお願いします。さくらの VPS を借りて Mosh/Mona のテスト環境を構築しようとと思っているが手付かずなので。 -- ひげぽん 2011-04-30 (土) 09:30:06
  • define-testは元のままでもnmoshで動きますね(少なくともokuoku/masterのでは)。。何らかの理由でnmoshのキャッシュが破損したのかも。 -- .mjt 2011-04-28 (木) 03:09:36
    • https://github.com/okuoku/mosh/commit/ac8b4bbe45ef62649124e942ec5dbf749d6adf3d nmosh用に直すとこういう感じ。ただし、これだとpsyntaxで動かなくなる(psyntaxはライブラリ中の副作用が1度だけ起こることを保証しない)ので、本当にdefine-testが必要なら実装を分けるしか手はなさそう。 -- .mjt 2011-04-28 (木) 03:13:21
      • define-testをrunフェーズ以外に置かなければ↑はpsyntax-moshでも動きます。副作用云々はexpandフェーズにおいた場合だけど、そうするとnmoshでも(ACCが有効なら)動かないから同じか。。 -- .mjt 2011-04-28 (木) 03:30:38
  • Commit 83bc124cbc257ab24761ab1b64ba56a051a00526 to higepon/mosh - GitHub これが nmosh で動かない。R6RS違反してるかも。 -- ひげぽん 2011-04-27 (水) 15:27:03
    • まだ細かいところを見てませんが、nmoshはexpandとrunでオブジェクトを共有できません(R6RSではできなくてもいいことになっている)。これは不便なので何かAPIをつくろうとは思ってますが。。 -- .mjt 2011-04-27 (水) 22:23:22
    • なるほど。じゃあ expand から参照したいものは別ライブラリに移動すればいいのかな。 -- ひげぽん 2011-04-27 (水) 22:25:20
    • 今回のような使い方なら、別のライブラリにhashtableを分離すれば大丈夫かな。。 -- .mjt 2011-04-27 (水) 22:25:31
  • specファイルはレビューする時間をください。。個人的には/usr/share/mosh-scheme-x.x.x/は長いと思っていて、/usr/share/mosh-x.x.xにしたいけど要調査。 -- .mjt 2011-04-26 (火) 02:45:31
    • specでのビルド時はconfigureのタイミングでlibdirの前半部分(PACKAGE_NAME)を指定するように変えようと思います。 -- .mjt 2011-04-26 (火) 02:47:04
    • はい。了解です。mosh という同名の別のアプリケーションがあるのかな。 -- ひげぽん 2011-04-26 (火) 11:10:48
  • https://bitbucket.org/yasir/scheme-bert BERTにはR6RS実装があるみたいだ。MessagePackはどうだろう。 -- .mjt 2011-04-25 (月) 04:12:23
  • annotated-pairはVMTest.StackTrace1が通らなくなる疑惑。 -- .mjt 2011-04-23 (土) 00:23:59
    • 他は問題なさそうなので0.2.7はannotated-pair入りということで。週明けにもう少し大きなテストに掛ける予定。 -- .mjt 2011-04-23 (土) 00:35:22
    • annotated-pairとgetpidのテストはnmoshだけにしてあります。master側のpsyntax.scmが更新されるまでは通らないため。 -- .mjt 2011-04-23 (土) 00:36:09
    • master に merge して psyntax.scm も更新しました。 -- ひげぽん 2011-04-23 (土) 08:10:13
    • vm_test 通るようになりました。 -- ひげぽん 2011-04-25 (月) 19:39:11
  • ObjectArrayはObjectArrayLocalを新設して、vectorとスタックのようなC++オブジェクトのローカル変数に使うという方向でひとつ。そのうちコミットします。annotated-pairはCMakeとnmoshで対応が多少必要なので、こっちでマージします。 -- .mjt 2011-04-22 (金) 21:16:54
    • 「ObjectArrayはObjectArrayLocalを新設して、vectorとスタックのようなC++オブジェクトのローカル変数に使うという方向でひとつ。そのうちコミットします。」ちと意味が分からないです。GC_malloc_ignore_off_pageの話でしょうか。もう少し詳細のすり合わせをしておきたいです。 -- ひげぽん 2011-04-22 (金) 22:03:41
      • こう https://github.com/okuoku/mosh/commit/efbc735bac3107938a733af827bc024ed40b524b -- .mjt 2011-04-22 (金) 22:10:39
      • 変更箇所と内容。自分の思っていたものと同じでした。ただ名前がもっと intention revealing な方が良いと思いました。makeObjectArrayAccessedByOffset 位長くても良いかもしれない。1年後に見てもすぐに分かるように。 -- ひげぽん 2011-04-22 (金) 22:31:50
      • makeObjectArrayIgnoreOffPage? -- .mjt 2011-04-22 (金) 22:44:20
      • 自分だけかもしれないけど IgnoreOffPage がそもそも意味が分かりづらいという。 -- ひげぽん 2011-04-22 (金) 22:47:04
  • receive の末尾再帰最適化ですがどの程度クリティカルでしょうか。度合いによってすぐ対応するか先延ばしにするか考えたいと思っています。 -- ひげぽん 2011-04-22 (金) 16:55:22
    • 優先度的にはmost critical...一応、R6RS的には真正末尾再帰でないといけないので。。 -- .mjt 2011-04-22 (金) 20:25:18
    • 直しました。 -- ひげぽん 2011-04-25 (月) 23:02:44
  • receive の tail recursive なあれに取り組もうとしてコードを読んだが全く分からなかった(ぉ。 -- ひげぽん 2011-04-21 (木) 22:31:40
  • Mosh/AnnotatedPair 対応したものを annotated-pair ブランチに置きました。手元では正しく動いています。お時間のあるときに試していただいて OK であれば master に merge します。リリースの邪魔になるなら次回に回す感じで。 -- ひげぽん 2011-04-21 (木) 21:55:28
  • 今後 GC_FLAGS に DONT_ADD_BYTE_AT_END をつけます。annotated pair 関連。 -- ひげぽん 2011-04-21 (木) 17:08:20
  • annotated-pair branch で作業中。psyntax さんが厄介だ。 -- higepon? 2011-04-20 (水) 23:08:31
  • 32bitアーキテクチャで"Repeated allocation of very large block"って出るのは、makeObjectArrayでGC_MALLOC_IGNORE_OFF_PAGE()を使ってないのが原因みたいです。psyntax-moshはこの修正を入れるとたまに落ちるので原因を調査中。 -- .mjt 2011-04-20 (水) 21:41:31
    • GC_malloc_ignore_off_page and GC_malloc_atomic_ignore_off_page inform the collector that the client code will always maintain a pointer to near the beginning of the object (within the first 512 bytes), and that pointers beyond that can be ignored by the collector. This makes it much easier for the collector to place large objects. These are recommended for large object allocation. (Objects expected to be larger than about 100KBytes should be allocated this way.)とあるので512/sizeof(Object) 個以上割り当てると、mark miss が起きそうな気がしますが。挙動を勘違いしているかな。 -- ひげぽん 2011-04-20 (水) 21:45:55
      • ObjectArrayで割り当てられるのはvectorとかstackで、"原理的には"、それに内包されるオブジェクトにアクセス出来る間はarray先頭へのリファレンスが存在してるはずです。(vector-refとかで参照を返したりしない限りは) -- .mjt 2011-04-20 (水) 22:22:39
  • letrec* のバグをどうにかしないと。 -- ひげぽん 2011-04-18 (月) 22:40:58
  • 当面の課題は R7RS 対応を早めに。nmosh を mosh に昇格させるために GC 問題に片をつける。 -- ひげぽん 2011-04-17 (日) 17:52:42
  • プリミティブを2つ追加します。1) object→pointer 2) pointer→object。Schemeオブジェクトへのポインタを保持したpointerオブジェクトの生成とその逆。nmoshにRubyのEventMachine風のフレームワークをいれるので、そこで使います。 -- .mjt 2011-04-13 (水) 21:13:52
  • "--test"ってコマンドラインオプションを追加したいです。効果は 1) SRFI-64や(mosh test)で書いたテストが失敗すると確実に0以外の戻り値でプロセスが終了する 2) (exit)で終了できなくなる -- .mjt 2011-04-08 (金) 02:15:28
    • うーん。用途は何でしょう。 -- ひげぽん 2011-04-08 (金) 06:19:45
    • SRFI-64やSRFI-78で書かれたテストをMakefileに組込むため。。(今はテストに失敗しても失敗あつかいにできない) でもこれはコマンドラインオプションにするんじゃなくて、何か内部フラグを作って関連ライブラリ側から制御するんでも良いのか。 -- .mjt 2011-04-08 (金) 09:12:24
      • そうですね。テストライブラリを直接書き換えても良いと思います。 -- ひげぽん 2011-04-08 (金) 12:36:25
  • compiler.scmの修正で、okuoku/srfi-updateブランチはACC無効ならpsyntax-moshでも動くようになりました。もうひといき。。 -- .mjt 2011-04-07 (木) 23:11:20
    • SRFIはincludeを多用しているので、psyntax-moshもnmoshもキャッシュを一旦削除しないと正常に動きません。 -- .mjt 2011-04-07 (木) 23:12:12
    • ACC有効だとどういうエラーになりますか。 -- ひげぽん 2011-04-07 (木) 23:40:16
  • okuokuさんへの相談Mosh/Unicode/Emoji -- ひげぽん 2011-04-06 (水) 17:19:42
  • 「動作が怪しいので時間をとって調べる必要がある」というマーキングです。直近で必要でしょうか? -- ひげぽん 2011-04-05 (火) 17:14:35
    • audio_serverを動かそうとしたらkernel panicで落ちたので気になったんです。とりあえず使うときはコメントアウトしておきます。 -- shotaro_tsuji 2011-04-05 (火) 17:17:09
    • すみません。ご迷惑おかけします。 -- ひげぽん 2011-04-05 (火) 17:26:13
    • MoshをMonaに空目していた。申し訳ない。 -- shotaro_tsuji 2011-04-05 (火) 23:18:53
  • kernelのPageManager.cppのallocateDMAMemoryメソッドにASSERT(false)がありますが、これは使うなってことですか? -- shotaro_tsuji 2011-04-05 (火) 16:03:58
  • RELNOTEを年ごとに分割しました。git(1バージョンのみRELNOTEに含む)とgcc(年ごとに分割)の折衷案です。 -- .mjt 2011-04-05 (火) 04:40:49
  • ドキュメンテーションの変更。1) INSTALLを追加しました。 2) doc/RELNOTEに必要な項目を追加してください。基本的に、新規ライブラリ(今回で言うと(facebook)やSXML/SSAX)は必要にならない限り載せていません。 -- .mjt 2011-04-01 (金) 21:40:30
    • 了解です。しばらくお待ち下さい。 -- ひげぽん 2011-04-01 (金) 22:51:11
    • 書きました。 -- ひげぽん 2011-04-02 (土) 12:46:42
  • 重要な変更。STLコンテナの allocator として gc_allocator を利用していましたが traceable_allocator が適切のように見えるので変更しました。手元では特にまずいことにはなっていませんが挙動がおかしかったら教えてください。 -- ひげぽん 2011-03-31 (木) 15:32:54
    • gcc/clang(+ libstdc++)では問題なしの模様。Visual Studioは週末チェックします。 -- .mjt 2011-03-31 (木) 20:49:47
    • ありがとうございます。お手数おかけします。 -- ひげぽん 2011-03-31 (木) 21:00:56
    • すみません。 file->string で大きなファイルを読み込んだ時に問題が見つかったので取り下げます。 -- ひげぽん 2011-03-31 (木) 21:19:41
  • ./gen-git-build.sh で configure.ac:457: required file `../../ltmain.sh' not found と出る。明日調べる。 -- ひげぽん 2011-03-26 (土) 23:38:37
    • okuoku/master の話です。 -- ひげぽん 2011-03-26 (土) 23:38:57
    • libtoolizeしてください。 -- .mjt 2011-03-27 (日) 01:00:39
    • Mona でビルドできるようになりましたが落ちるので調査中です。 -- ひげぽん 2011-03-27 (日) 10:19:07
    • git bisect で探しているうちに再現しなくなったのでそのまま Go で。 -- ひげぽん 2011-03-27 (日) 15:43:23
  • 0.2.7 status: 残作業 1) psyntax-mosh用のprecompile 2) MinGW32のコンパイル検証。http://storage.osdev.info/pub/mosh/mosh-current.tar.gz は常にリリース候補です。 -- .mjt 2011-03-26 (土) 03:56:53
    • MonaOS向けのビルドを試してみてください。Makefileに不足しているファイルを追加する必要があるかもしれません。 -- .mjt 2011-03-26 (土) 03:59:14
    • merge すべきブランチを教えてもらえますか?それでコンパイルしてみます。 -- ひげぽん 2011-03-26 (土) 13:42:48
      • https://github.com/okuoku/mosh の masterです。今回からはリリースブランチを切らないで、masterにpushするときにテストするように変えています。 -- .mjt 2011-03-26 (土) 14:22:05
  • Issue 198をreopenしました。RELNOTEにKnown Issueとして挙げるため。 -- .mjt 2011-03-23 (水) 04:17:54
  • 0.2.7 status: 自動テストができていないのでリリース作業は停滞状態です。現状でテストしているのはFreeBSDとDarwin64のみ、LinuxとWin32/64は復旧予定、MIPS/PPCは近日中の復旧見込みは無し。 -- .mjt 2011-03-16 (水) 21:39:25
    • 1) 未処理かつpsyntax-mosh固有の問題: Issue 193。 -- .mjt 2011-03-16 (水) 21:41:44
    • 2) SRFIコレクションを最新版にアップデートするかも。(Issue 134にブロックされていた) いくつかのSRFIが追加され、バグもfixされます。 -- .mjt 2011-03-16 (水) 21:43:11
      • 他のBUGを発動するので撤回 -- .mjt 2011-03-18 (金) 23:24:29
    • 3) 少くともgcc4.6.0とLLVM 2.9を待って、それらのLinux amd64でのコンパイルはできるようにfixを入れる予定です。Clang2.9に関しては既にFixを入れています。gcc 4.6.0 + リンク時最適化で異様に遅くなるのはおそらくknown issues入り。場合によってはデフォルトのCFLAGSを調整するかもしれません。 -- .mjt 2011-03-16 (水) 21:50:22
      • 確認完了。gcc側にfixが入っていたので、gcc 4.6.0では問題なくLTOが使える。 -- .mjt 2011-03-23 (水) 04:30:49
  • ↓Issue 134が直ったので多分psyntax-moshでもsrfi-updateブランチは使えます。 -- .mjt 2011-03-16 (水) 21:32:58
  • okuoku/srfi-update ブランチはpsyntax-moshが使えなくなるのでチェックアウトしないでください。もし実行してしまった場合は~/.moshを消して以前のリビジョンをgitからチェックアウトしたあと『何度か』gen-git-build.shを実行すれば正常に実行できるpsyntax-moshが生成できるようになります。 -- .mjt 2011-03-05 (土) 22:19:37
    • Linuxだと打率が低いようなので、moshを完全に削除してmosh-0.2.6.tar.gzからインストールするのが確実かも。。一番確実なのは~/.moshから読み書き属性を落としてアクセスさせないこと(この現象にはまると--disable-accが効かないので) -- .mjt 2011-03-05 (土) 22:25:32
  • http://storage.osdev.info/pub/mosh/mosh-current.tar.gz が常にokuoku/masterのHEAD、かつ、ビルド/インストール/make checkが少くともFreeBSD amd64で成功するtarballになりました。他アーキテクチャでの自動ビルドは準備中。ビルド確認が取れないかぎりtarballは更新されないので、リリースはtarball作ってタグ打つだけ。ただしXtestは実行してないので、対応を考える必要は有り。 -- .mjt 2011-02-20 (日) 22:40:41
  • 自動ビルド予定地: (まだtestの安全確認中なので手動。。) -- oku
  • ビルドシステム周りをかなり変更しました。 -- oku
    • 1) test→testsに名称変更。Makefileのphonyターゲットと名称が被っているため。
    • 2) gen-git-build.shがgitを呼びだしてGIT_REVISION等を埋めるようになりました。gen-git-build.sh実行済のtarballを配布する計画のため。この変更により、--enable-developerでないビルドも(n)mosh -vでgitリビジョンが表示されるようになりました。
    • 3) gen-git-build.shから呼びだされるmoshスクリプトは--disable-accで実行されるようになりました。自動ビルドの中断によりmoshのACCが破損するケースが有るため。
    • 4) gen-free-vars-decl.scmは(match)に依存しないように書き換えました。(match)は--disable-accしていてもキャッシュを読んでしまい正常に実行されないケースが有るため。他のスクリプトも同様に書き換える必要があるかもしれません。
    • 5) 1)の変更によって、"make dist"ではテストが実行されなくなりました。
    • 了解です。 -- ひげぽん 2011-02-20 (日) 18:49:51
  • 0.2.7は現okuoku/masterベースにしようと思ってます。2, 3の重要な変更 : -- oku
    • 1) プライバシの懸念が有るテスト(外部サーバへの通信を伴うテストと、データベースサーバにアクセスするテスト)はmake testからは除外されます。make Xtest(eXtended test)が真に全てのテストを実行します。make testD で除外分のみ実行。0.2.7からテストを自動化するため。see .mjt/mosh/TestAudit
    • 2) extlibs/onig-5.9.2を同梱します。従来の5.7.0へのパッチはrevertされているので必要ならば再度applyしてください。。いくつかのRubyのパッチを取り込んでいます。同梱のonigurumaはCMakeとMonaOS専用で、通常のUNIX/Linuxビルドでは使用されません。
    • 3) make installでのprecompileは無くなりました。mosh `mosh-config library-path`/tools/prepare.sps でキャッシュするプログラムを生成してインストールする予定です。
    • はい。了解です。 -- ひげぽん 2011-02-20 (日) 18:50:28
  • parallel markがWin32/64で使えるようになったので、そろそろBoehmGCを7.2alpha5にアップデートしたい気持ち。手元のベンチマークでは10 - 20%程度性能向上します(4 core)。 -- .mjt 2011-02-14 (月) 21:06:03
    • 主要環境でテストが通るのであればぜひあげたいです。 -- ひげぽん 2011-02-14 (月) 21:59:15
  • たぶん消去漏れ: https://github.com/higepon/mosh/blob/3e14873187c16bfe3acaaa0c2a67af005a9b5b5b/test/dbi.scm#L6 -- .mjt 2011-02-12 (土) 03:06:04
    • 消しました。 -- ひげぽん 2011-02-12 (土) 15:11:56
  • プリミティブ増やします。1) pointer-ref-bytevector!: FFI pointerからbytevectorへのコピー 2) %istty 標準入出力がTTYかどうかのクエリ 3) %mosh-install-prefix: MOSHをconfigureしたときの--prefixの値(standard-library-pathからライブラリ部を除いたもの。) -- .mjt 2011-02-12 (土) 00:53:48
    • 1はSQLite用。2はnmosh用。3 は、FFIでライブラリをオープンするときにprefix相対で探す用と、mosh-configコマンドが何故か生成されているので。 -- .mjt 2011-02-12 (土) 01:01:47
    • 1 はbytevector-pointer(bytevectorのpointerを参照)とpointer-copy!(ポインタ間でのmemcpy)に分割しました。境界チェック等をScheme側でやるため。 -- .mjt 2011-02-12 (土) 03:36:26
    • 了解です。 -- ひげぽん 2011-02-12 (土) 15:09:16
  • ライブラリの検索パスを2つ足そうと思います(nmoshのみ)。 1) *.spsのあるディレクトリとそのディレクトリのlib/以下 2) nmosh.exeからの相対パス。 アプリケーションが巨大になってくると、機能毎にライブラリを分けたいので。。 -- .mjt 2011-02-05 (土) 14:32:59
    • 2は、アプリケーションのインストールをどこにでも置けるように。(nmosh.exeのディレクトリ)/../share/VERSION/lib。 -- .mjt 2011-02-05 (土) 14:34:17
    • 了解です。できればどこか Wiki 内にメモしておいてもらえませんか。あとあと mosh の方もそうするかもしれないので。 -- ひげぽん 2011-02-05 (土) 14:35:59
  • 小さな web アプリを書いているのですがプロファイラを実行してみたら面白いことが分かりました。ほとんどが irregex の (dfa-match/longest dfa cn...) が遅いですね。Oniguruma はまだ捨てられないかもなあ。 -- ひげぽん 2011-02-02 (水) 23:14:02
  • Makefile.amの一部を生成するようにしようとしています。今のところlib/以下のライブラリを列挙するだけですが、今後CMakeとautoconf/automakeの両方でメンテナンスしないといけない案件が増えてくると考えられるので。。https://github.com/okuoku/mosh/commit/1f9cb12c73258dfb4aafc6a3ba3033ef54959bf0 -- .mjt 2011-02-02 (水) 23:08:28
    • lib/以下のREADMEとかはshare/mosh/docとかにインストールするように変えるかも。 -- .mjt 2011-02-02 (水) 23:09:39
    • 了解です。 -- ひげぽん 2011-02-02 (水) 23:12:48
  • Ruby の ERB のようなテンプレートライブラリを追加しました。まだ API は変わるかもしれませんが定型のテキストを出力する場合に便利かもしれません。lib/template.ss at master from higepon/mosh - GitHub -- ひげぽん 2011-01-31 (月) 21:38:53
  • 時間のある時で良いので okuoku さん担当分について Issues の Milestone ラベルをつけてもらえないでしょうか。0.2.7 分の milestone がクリアできていれば Issues 的にはリリース可能という状態になります。-- ひげぽん
    • Issue174のOwnerを変えました。こっちの変更分をCMake以外でテストする時間が取れないので、0.2.7はhigepon/masterをベースにリリースすることになると思います。そのうち、okuoku/for-higeponブランチを切るので少々お待ちください。。 -- .mjt 2011-02-01 (火) 02:08:31
    • リリースは2月中くらいを考えています。owner の件は了解です。 -- ひげぽん 2011-02-01 (火) 07:23:43
  • make install時のライブラリpre-compileを廃止します。.mosh/prefix.txtはそのまま(= make install時に触らない)でも安全? -- .mjt 2011-01-22 (土) 20:11:28
    • psyntax-moshのpre-compileは(import (compile-all))で行えるようにライブラリを生成する予定。 -- .mjt 2011-01-22 (土) 20:12:26
      • はい。お願いします。 -- ひげぽん 2011-01-23 (日) 22:54:03
  • gc-7.1をextlibs/gc-7.1に移して、extlibs/oniguruma-5.9.2にonigurumaを復活させる案。 -- .mjt 2011-01-19 (水) 01:22:53
    • 1) VisualStudioでのビルドが面倒なのが評判悪いのと、LGPLフリーのためにlibtommathも入れたいのでplaceholderとして。(あとFASLの圧縮のためにFASTLZと暗号関連処理のためにlibtomcryptも将来入れたい) -- .mjt 2011-01-19 (水) 01:24:54
      • はい。OKです。 -- ひげぽん 2011-01-19 (水) 08:05:02
    • 2) Linux/FreeBSDではGCはOS付属のものに切りかえたい。ここ1年でGCパッケージは大体threadサポート入りになったのと、NetBSDのようにパッチで対応しているOSがそれなりにあるため。。 -- .mjt 2011-01-19 (水) 01:26:58
  • さくらの VPS で KVM で Mona 動くんかなあ。 -- ひげぽん 2011-01-18 (火) 14:46:15
    • 任意のCDが挿せるわけでないのでHDD起動必須。それができるならkbootなりGRUBから起動するなりなんなり。ただしNICはe1000。 -- .mjt 2011-01-18 (火) 20:41:57
    • ありがとうございます。じゃあ簡単にはいかないなあ。www.monaos.org くらいなら Mona でさばけると思ったのだけど。 -- ひげぽん 2011-01-18 (火) 21:32:19
  • 「ライブラリ本来の場所がわかりづらくなる事」は結構深刻な印象。nmoshが高速化できるのはどういうカラクリなんでしょうか。 -- ひげぽん 2011-01-15 (土) 19:58:07
    • (srfi :1)のキャッシュを作らなくなる&更新チェックをしなくなるので、(srfi :1)と(srfi :1 lists)の両方に依存しているスクリプトは起動やexpandが高速になります。 -- .mjt 2011-01-15 (土) 20:07:14
    • 今でもLOAD_PATHが複数あるので、実行ファイルに対するlddコマンドのようなものはどっちにせよ必要なんじゃないかな。。と。(nmoshには実装予定l) -- .mjt 2011-01-15 (土) 20:09:17
    • 当面は、生成したライブラリの先頭に、alias of (srfi :1 lists)みたいな情報は含めるつもり。 -- .mjt 2011-01-15 (土) 20:10:30
  • http ライブラリで SSL と簡単な POST をサポートしました。まだ API は変わるかも。Facebook に書き込みが出来るようになりました。 -- ひげぽん 2011-01-15 (土) 18:58:26
    • プライバシ/セキュリティの懸念があるのでネットワーク上での副作用に依存したテストは分離しませんか? 個人的にはunit testは外部環境に依存すべきでないと思います。 -- .mjt 2011-01-15 (土) 19:41:58
      • デフォルトでは実行しないという形にしましょうか。access-token はうめこまれていないのでプライバシ・セキュリティは特に気にしなくて良いです。あとネットーワークにつながったり、DB、ファイルにアクセスするテストが Unit Test ではないというのはその通り。まあネットワークプロトコルのライブラリのテストなので例外かも知れませんが。 -- ひげぽん 2011-01-15 (土) 19:55:43
  • 0.2.7でやろうとしているライブラリ関連の整理2題。 -- .mjt 2011-01-15 (土) 04:27:34
    • 1) mysql.sls.inをlib.srcディレクトリに移し、lib/はディレクトリ丸ごとコピーするだけにする。 -- .mjt 2011-01-15 (土) 04:28:42
      • ディレクトリがトップレベルに増えるのは嫌なので他の方法希望。 -- ひげぽん 2011-01-15 (土) 18:52:03
      • src/lib.src って手もありますが。。 -- .mjt 2011-01-15 (土) 19:05:48
      • おおざっぱに別に .in があってもよいじゃないかというのは行儀が悪いかな。 -- ひげぽん 2011-01-15 (土) 19:56:24
    • 2) ライブラリのエイリアス関係を記述するファイルを準備する。.mjt/mosh/LibraryAlias。今はSRFIでしかエイリアス(symlink)の必要なライブラリは無いけど、bootstrapで使うライブラリは(yuni)あたりに纏めて配置し、他の処理系からも直接使いたい。psyntax-moshは(従来通り)symlinkでできるので特に変更なし。 -- .mjt 2011-01-15 (土) 04:33:11
      • 普通のmoshスクリプトからは(irregex)、移植性の必要なbootstrapスクリプトは(yuni lib irregex)のように、1つのライブラリに複数の名前を持たせたい。 -- .mjt 2011-01-15 (土) 04:34:41
      • 本当に必要になるまで何かの工夫でしのげないかな。 -- ひげぽん 2011-01-15 (土) 18:54:03
      • うーん デメリットよりメリットが大きいはず。重大なデメリットは、ライブラリ本来の場所がわかりづらくなる事と、テストをin-placeで実行するときに毎回ライブラリを作りなおす必要があること。メリットは他所のライブラリを別名で取り込むのが楽になるのと、bootstrapのR6RS化に必須であること、nmoshが高速化できること。 -- .mjt 2011-01-15 (土) 19:30:24
      • じゃあ GO してみますか。取り込む前にどんな感じか見てみますね。 -- ひげぽん 2011-01-15 (土) 20:11:57
  • irregex のバグ?4つ目は Perl だと c だ。irregex だと #f 。
    (let ([m (irregex-search "(a)(:(b+))?(c)" "ac")])
     (values
     (irregex-match-substring m 1)
     (irregex-match-substring m 2)
     (irregex-match-substring m 3)
     (irregex-match-substring m 4)))
    • 報告したらバグだそうな。レポジトリ上は直っているそうです。 -- ひげぽん 2011-01-11 (火) 22:23:38
      • そのうちアップデートします。(match)のバグ修正リリースも取りこむ予定です。 -- .mjt 2011-01-12 (水) 02:49:05
      • はい。お願いします。 -- ひげぽん 2011-01-12 (水) 08:12:37
      • (irregex)はアップデートしました。will be in 0.2.7。(match)はnmoshのバグを踏むので未定。 -- .mjt 2011-01-15 (土) 03:56:54
      • ありがとうございます。merge 元のブランチ(or コミット)教えてください。 -- ひげぽん 2011-01-15 (土) 18:54:33
      • rev:2e55ccfbbaです。 -- .mjt 2011-01-15 (土) 19:33:04
      • あれ。そのコミット見つからないです。 -- ひげぽん 2011-01-15 (土) 23:15:46
      • cherry-pick: d6fe988f228822672198de0cc9cac535d8025566 433da9eb8379b5d172c93a3728843098bccc24af (in this order) -- .mjt 2011-01-15 (土) 23:25:10
  • please cherry-pick: https://github.com/okuoku/mosh/commit/d5a9bec811ccb98026fe28d41cf7506f86ede67f -- .mjt 2011-01-09 (日) 23:27:02
  • https://github.com/tabe/http これって完成しているのかなあ。 -- ひげぽん 2011-01-09 (日) 23:22:21
  • テスト修正のコミットを取り込みました。OpenSSL をとりあえずデフォルトで読み込むようにしました。test/socket.scm で雰囲気はつかめると思います。 -- ひげぽん 2011-01-09 (日) 17:22:38
  • テスト等ありがとうございます>okuokuさん -- ひげぽん 2011-01-08 (土) 17:33:27
  • ぐあ。oniguruma を同梱しなくなった影響で Mosh on Mona の oniguruma をどうにかしないといけないのか。 -- ひげぽん 2011-01-08 (土) 15:13:36
  • Mosh master に Mona 対応 Mosh のコードをマージしました。長かった。不備を見つけたら教えてください。 -- ひげぽん 2011-01-08 (土) 14:58:34
  • GPL互換じゃない = GPLのライセンス条項と矛盾する。see http://www.gnu.org/licenses/gpl-faq.ja.html#InterpreterIncompat 。 -- .mjt 2011-01-07 (金) 22:52:27
    • MIT/X や BSDL の OS、インタプリタとの関係はどうなるんでしょうか? -- ひげぽん 2011-01-07 (金) 22:53:55
      • まず、問題が有るのは、"OpenSSLとリンクされたmoshでGPLなSchemeスクリプトを動かす"場合だけです。例えば、GPLなSchemeアプリケーションhogeが有ったとして、hogeのWindows版としてmosh+OpenSSLとhogeのスクリプトを同梱したパッケージを作ることはできません。GPLは全体の自由な配布を要求するけど、OpenSSLの宣伝条項は依然有効なので両者を同時に達成することはできないからです。 -- .mjt 2011-01-07 (金) 23:06:32
      • 非常に難しいのは"ただ実行するだけはOKなのか?"問題。(n)moshはプログラムを自動的にコンパイルし、派生物を自動的に作ってしまうので。 -- .mjt 2011-01-07 (金) 23:08:53
      • なので本来は、↑の1で書かれているように、スクリプトの作者がGPL互換でないスクリプトインタプリタでの実行を明示的に許可する例外条項を自分の(GPLライセンスされる)スクリプトに常に付けるべきです。でも、HTMLPragのような世間のGPLなSchemeライブラリはそのような例外条項を含まないのが一般的なので、実行できるスクリプトの巾を狭めないためには、インタプリタはGPL互換であるべき。という話。 -- .mjt 2011-01-07 (金) 23:11:34
      • ふむふむ。結局デフォルト ON か OFF かの問題に帰着するという訳か。起動時間の問題がないなら一律オンでいいんじゃないかなあ。 -- ひげぽん 2011-01-07 (金) 23:14:23
  • Mona 上の OpenSSL が動きそうなので、Mosh メインラインで HTTPS GET できるような仕組みを入れようと思います。Mosh/OpenSSL -- ひげぽん 2011-01-07 (金) 17:40:16
    • OpenSSLはGPL互換じゃないので、デフォルトdisableにすべきだと思います。現状 : -- .mjt 2011-01-07 (金) 22:08:53
      • A) Windows, MacOSX, FreeBSDはOpenSSLはOSのライブラリなのでGPLは関係なし。これらのプラットフォームではデフォルト有効でも安全。 -- .mjt 2011-01-07 (金) 22:09:44
      • B) Linuxは微妙。FedoraはOpenSSLをOSのライブラリと見做している。Debian/Ubuntuは不明。 -- .mjt 2011-01-07 (金) 22:10:53
      • あと、常にリンクさせると起動時間への影響が心配。 -- .mjt 2011-01-07 (金) 22:13:06
      • 互換じゃないの意味がよく分からないですね。http://ja.wikipedia.org/wiki/OpenSSL#.E3.83.A9.E3.82.A4.E3.82.BB.E3.83.B3.E3.82.B9 -- ひげぽん 2011-01-07 (金) 22:13:12
      • 起動時間は計ってみますね。 -- ひげぽん 2011-01-07 (金) 22:14:46
  • OAuth 2.0 のライブラリが欲しいですね。うーむ。 -- ひげぽん 2010-12-25 (土) 22:57:29
  • http://code.google.com/p/mosh-scheme/issues/detail?id=179 これ既に今のgit側では直ってるハズ。。 -- .mjt 2010-12-18 (土) 22:26:18
    • Google code側のsubversionは伏せた方が良いかもなぁ。。e.g. http://code.google.com/p/tortoisegit/wiki/Source?tm=4 -- .mjt 2010-12-18 (土) 22:29:39
      • Source タブを非表示にして、Google Code トップに github へのリンクを追加しました。 -- ひげぽん 2010-12-19 (日) 11:24:29
    • この方はhgユーザのようだ。 -- .mjt 2010-12-19 (日) 00:15:06
  • Google code側をHgに移行したくなってきた。githubはWebインターフェースが重い気がするので。。 -- .mjt 2010-12-15 (水) 03:34:33
  • https://github.com/okuoku/mosh/commit/8c412a9317a15b5985c6e519bb31adbcf1d30233 %getpidプリミティブを足しました。nmoshを生成するには、プリミティブが更新されたpsyntax-moshが必要です。(つまり2回gen-git-build.shしないといけない) -- .mjt 2010-12-05 (日) 00:07:28
    • (%getpidを使う変更は0.2.7以降のnmoshに入る予定。今のところは隠し機能です。) -- .mjt 2010-12-05 (日) 00:13:21
    • 了解です。 -- ひげぽん 2010-12-05 (日) 07:55:36
  • https://github.com/okuoku/mosh/commit/85443091777ff90bb62c8ef95eb3b6bcd973e24d clang++とg++で挙動が違う(clangだとscheme::yyparseを探しに行ってリンクできない)。。でもたぶんここに有るべき。 -- .mjt 2010-12-02 (木) 02:52:52
    • g++ が間違っていますね。locality を高めたいので g++ の挙動の方がうれしいときはありますけど。clang++ でもうビルドできて動いているんでしょうか? -- ひげぽん 2010-12-02 (木) 11:27:17
      • FFIProcedures.cppでClang自体のbugを踏むので、まだビルドはできないです。調査中。 -- .mjt 2010-12-02 (木) 23:21:53
  • ShortenはそろそろSRFIにならないですかね。。 -- .mjt 2010-11-27 (土) 04:24:32
    • 提案すれば通ると思いますよ。:D -- ひげぽん 2010-11-27 (土) 07:49:56
  • どっちにせよR6RSのport APIは非同期I/Oやflushの扱いが微妙なので、ポータブルな低レベルI/Oレイヤを作って、その上にR6RS Schemeのport APIを(Schemeで)実装しようと思ってます。(nmosh process)のAPIにtranscoderが見えないのは、その低レベルI/Oレイヤにtranscoderに相当する概念は多分入れないだろうという予想から。 -- .mjt 2010-11-22 (月) 00:24:20
  • (nmosh process) API の string を返すものは暗黙の transcoder を保持している感じですか? -- ひげぽん 2010-11-22 (月) 00:14:04
    • トランスコードは最後にまとめてやります。 というのは、システムのロケールの概念にうまい共通集合が無いのです(Windowsはロケールを指定してプロセスを上げる簡単な方法が無い)。。今は出力をbytevectorに貯めて、終了後にnative-transcoderを使ってトランスコードするだけ。 -- .mjt 2010-11-22 (月) 00:17:31
      • つまりユーザにはtranscodeの過程は見えません。bytevectorを取る手段は有るので、明示的にオプションを指定してtranscodeしたい場合はそっちで。 -- .mjt 2010-11-22 (月) 00:20:34
      • 仮にtranscoderを与えるAPIを作るとしても、起動するプロセスのロケールに対応したtranscoderを決めようが無いので、process APIに隠してしまうのが吉という判断。(processを起動する瞬間にOS依存の方法でロケールを得ることは不可能でもない) -- .mjt 2010-11-22 (月) 00:36:29
    • 問題は、(今後実装する、)textual-portを渡すケースで、一つはpopenスタイルのAPIだけ準備してユーザにはtranscoderを作らせない(= 暗黙のtranscoderを持たせる)ようにするかも。 -- .mjt 2010-11-22 (月) 00:19:30
  • 今回の shibuya.lisp は参加するけど LT の余裕もなさそうだ(子守的に) -- ひげぽん 2010-11-14 (日) 22:28:08
  • cygwin 版?のバグ報告:http://d.hatena.ne.jp/higepon/20101107/1289100894#c1289570484 -- ひげぽん 2010-11-12 (金) 23:06:49
    • 再現せず。。 -- .mjt 2010-11-13 (土) 00:49:39
    • やっぱり、日本語で書かれたユーザガイドというかチートシートが必要かもなぁ バグかと思ったらnmoshか--disable-accを試せ みたいな。 -- .mjt 2010-11-13 (土) 00:51:39
    • これどうしましょうか。gdb でバックトレースとってもらいましょうか? -- ひげぽん 2010-11-13 (土) 16:48:03
      • まずはdisable-accとnmoshを試すべきかと。。この手の環境によってスクリプトが動かないことが有る現象は6割方はpsyntax-moshのキャッシュなので。。(残りの4割はlexerの更新ミスとFFI。lexerやscannerが更新されないのは0.2.6で直したけど) -- .mjt 2010-11-13 (土) 17:28:04
      • では、まずキャッシュを消してみてもらいましょうか。cygwin 版は ~/.mosh で良いですか? -- ひげぽん 2010-11-13 (土) 20:11:53
      • そうです。Cygwin版は基本的にぜんぶLinux版といっしょなので。 -- .mjt 2010-11-13 (土) 20:47:24
  • wxWidiget で nmosh が対応しようとしている API セットでどこかでみられますか?そろそろ Mosh on Mona から Window を出したいので参考にしたいです。 -- ひげぽん 2010-11-12 (金) 12:48:07
    • 細かい設計はこれからやるところです。以前canvasで抽象化しなさすぎて困ったのでその反省を生かしつつ。。 -- .mjt 2010-11-12 (金) 22:30:18
    • monaのWindowシステム自体を置き換える予定は有りますか? cairoとFreeType、libvncserverを使ってheadless環境でもnmoshのGUIアプリを使えるようにしたいので、それらさえ移植できればWindowシステム自体をmoshにしてしまっても良いかも。 -- .mjt 2010-11-12 (金) 22:33:59
      • Lispマシンみたいでかっこいいし。 -- .mjt 2010-11-12 (金) 22:34:12
      • あります。ただし一気に作る事はないと思います。理由は自分が Window システムに詳しくない事、必要以上のものを作る失敗を避けたいからです。現時点で必要としているのは mosh から Windows を表示できる事、Label/TextArea/Button を配置できてそこにアクションを登録できること。この機能をまずは BayGUI とつなげて実現してみて API の善し悪しを決めようかなと思っています。wxWidit はその参考にしようかと。 -- ひげぽん 2010-11-12 (金) 22:56:18
  • うーむ やっぱり、install hookによるキャッシュのインストールはconsidered harmful。1) 殆どの人にとって有害。一度もmoshを実行したことが無い人がmake installした場合、~/.moshがroot権限で作られるため、他人がmoshを更新したときに複雑な問題が起こる。 2) どうしてもキャッシュをinstallしたいなら$HOMEでなく$PREFIXに入れるべき。 -- .mjt 2010-11-10 (水) 00:02:58
    • ふむむ。やめますか。 -- ひげぽん 2010-11-11 (木) 07:12:15
    • じゃあやめましょう。 -- ひげぽん 2010-11-12 (金) 12:46:25
      • 0.2.7リリースまでに消すことにします。 -- .mjt 2010-11-12 (金) 22:28:18
  • 現在のテストカバレッジ(通っていないテストが有るので不正確) : http://storage.osdev.info/pub/idmjt/diaryimage/1010/mosh-1d527c2928d7b3e4f9c43e4ee088487689c130aa/src/ -- .mjt 2010-10-14 (木) 21:53:15
    • generated by lcov -c -d . --ignore-errors source -o mosh.inf && genhtml -o HTML -f mosh.info -- .mjt 2010-10-14 (木) 21:55:04
    • これはよいですね。1週間ほどカバレッジ向上の時間をとってテストを増やしませんか?(リリース後かな) -- ひげぽん 2010-10-14 (木) 21:55:26
      • カバレッジ向上まつりはリリース後に予定しています。 -- .mjt 2010-10-14 (木) 22:23:25
      • やろうやろう。 -- ひげぽん 2010-10-14 (木) 22:25:48
  • 来月頭くらいを目処に0.2.6をリリースしたいところ。残Issue: 156, 171, sudo make install以外の方法でインストールするとrootのディレクトリにキャッシュを作る問題。 -- .mjt 2010-09-20 (月) 00:15:44
    • リリースのハイライト: MacOS X の64bitバイナリでFFIをサポート、FreeBSD amd64を新規サポート。 -- .mjt 2010-09-20 (月) 00:19:48
    • お疲れ様です。了解です。 -- ひげぽん 2010-09-20 (月) 08:28:28
  • ubuntuだとlibonig2-devっぽいですね。というわけで、onigurumaは単純に削除、MSVCビルドでは別途要DLで行こうと思います。Cygwinはちょっと面倒になっちゃうけど仕方無いということで。。 -- .mjt 2010-09-01 (水) 21:04:08
    • あと、MSVCビルドのCMake移行のタイミングで、GMP(MPIR)の静的リンク強制は廃止します。(別途ビルドの後PATHをCMAKE GUIで設定) GPLコンパチブルでないR6RSプログラムが合法的に配布できなくなるのを防ぐ措置。もちろん、ユーザが望むなら従来通り静的リンクもできます。 -- .mjt 2010-09-01 (水) 21:06:37
  • okuoku/unbundle-onigurumaブランチでonigurumaを同梱しないソースツリーを作りました。ソースツリーにonigという名前でonigurumaのソースツリーを置けば従来通りonigurumaを同時にビルドしてリンクします。MacPortsとFreeBSD portsは少くともこのブランチを基準に作る予定。標準のソース配布にonigurumaを入れるかどうかは微妙なところ(ubuntuにパッケージが無いので)。 -- .mjt 2010-08-16 (月) 22:43:04
    • 了解です。 -- ひげぽん 2010-08-17 (火) 18:36:51
    • マージしました。 -- ひげぽん 2010-08-29 (日) 11:52:27
  • 古い記事は→Mosh/開発者掲示板/200903-201008

MENU

now: 2

リンク


最新の20件
2018-05-03 2017-09-29 2017-04-25 2017-01-10 2016-12-11 2016-10-04 2016-08-14 2016-06-05 2016-05-29 2016-04-15 2015-12-28 2013-02-25 2013-02-21 2013-02-20 2013-02-12 2013-02-11 2013-02-10
最新の20件
2010-02-01 2010-01-31 2010-01-30 2010-01-29 2010-01-16

Counter: 13571, today: 1, yesterday: 1

添付ファイル: fileconsole.png 1066件 [詳細] filemosh.ico 1515件 [詳細]

リロード   新規 編集 凍結 差分 添付 複製 改名   トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS

Last-modified: 2011-11-23 (水) 06:55:46 (2374d);  Modified by mona
PukiWiki 1.4.6 Copyright © 2001-2005 PukiWiki Developers Team. License is GPL.
Based on "PukiWiki" 1.3 by yu-ji
Powered by PHP 5.2.17
HTML convert time to 0.381 sec.