♯♯♯Shared Source CLI ♯♯♯
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG0002デフォルトの名無しさん
NGNG0003デフォルトの名無しさん
NGNGhttp://msdn.microsoft.com/downloads/sample.asp?url=/MSDN-FILES/027/001/901/msdncompositedoc.xml
(ActivePerl)
http://www.activestate.com/Products/Download/Get.plex?id=ActivePerl
0004デフォルトの名無しさん
NGNGFAQ and Release Notes
http://msdn.microsoft.com/msdn-files/027/001/901/ShSourceCLIbetaFAQ_RelNotes.htm
The Microsoft Shared Source CLI Implementation
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/Dndotnet/html/mssharsourcecli.asp
Shared Source CLI Provides Source Code for a FreeBSD Implementation of .NET
http://msdn.microsoft.com/msdnmag/issues/02/07/SharedSourceCLI/default.asp
Uncovering Rotor -- A Shared Source CLI
http://www.oreillynet.com/pub/a/dotnet/2002/03/04/rotor.html
An Architectural Tour of Rotor
http://www.oreillynet.com/pub/a/dotnet/2002/03/27/archtour.html
Get Your Rotor Running
http://www.oreillynet.com/pub/a/dotnet/2002/03/27/gettingstarted.html
0005デフォルトの名無しさん
NGNG1. 必要なもの
・VC++.NETをインストール(VS.NETでも可)
・ActivePerlをインストール(入手先は>>3)
2. ソースの入手&解凍
・>>3よりダウンロード
・解凍(スペースを含むパスには解凍しないこと!)
3. ビルド
・コマンドプロンプトを起動
・解凍先に移動(C:\>cd \sscli)
・envコマンド(C:\sscli>env)
・buildallコマンド(C:\sscli>buildall)
・20〜30分ほどで終了するはず
4. 確認
・sscli\build\v1.x86fstchk.rotor以下に環境が出来上がってるか確認
0006デフォルトの名無しさん
NGNG1. VC++.NET(VS.NET)を起動する。
2. 「プロジェクトを開く」でclix.exeを開く。(「ファイルを開く」ではないので注意!)
3. 適当な場所にプロジェクトを保存する。
4. プロジェクトのプロパティを開いて、「コマンド引数」のところに
適当な.NETアプリをフルパス指定する。
5. F11キーを押して、clix.cppのmain()関数の場所に行くか確認する。
OKならば、ステップイン・ステップオーバーでコードの流れを順に追うことが
できます。好きなところにブレークポイントを置いてみるもよし。
0007デフォルトの名無しさん
NGNGここにmain()関数があります。引数の解析と、ランタイムのLaunchを行ないます。
・sscli\clr\src\vm\ceemain.cpp
ここがランタイムのスタート地点です。_CorExeMain2()という関数から始まります。
0008デフォルトの名無しさん
NGNGhttp://www.microsoft.com/partner/products/microsoftnet/SharedSourceCsharpCLIFAQ.asp
http://research.microsoft.com/programs/europe/rotor/default.asp
http://www.corel.com/ssclii/
http://www.macadamian.com/download/cli/cli.html
http://www.macadamian.com/column/tinymessenger.html
http://www.codeguru.com/net_general/dn04032002-rotor.html
0009デフォルトの名無しさん
NGNG0010デフォルトの名無しさん
NGNGceemain.cpp _CorExeMain2
↓
appdomain.cpp SystemDomain::ExecuteMainMethod
↓
assembly.cpp Assembly::ExecuteMainMethod
↓
clsload.cpp ClassLoader::ExecuteMainMethod
↓
clsload.cpp RunMain
↓
method.cpp MethodDesc::Call
ここまでは追えた。Hello Worldの道は遠い・・・。
0011デフォルトの名無しさん
NGNG0012デフォルトの名無しさん
NGNG0013デフォルトの名無しさん
NGNG0014デフォルトの名無しさん
NGNG0015デフォルトの名無しさん
NGNG0016デフォルトの名無しさん
NGNG0017デフォルトの名無しさん
NGNGオープンソース陣営の生産性が最悪な原因がよく分かるよね。
0018デフォルトの名無しさん
NGNG0019デフォルトの名無しさん
NGNGBCLのコアなメソッドはcil internalcallで定義されており、
ildasmしてもその実装内容は見えない。
ecall.cppではその実装部とのマッピング定義を行なっている。
実装部はcom〜.cppというファイルに多く見受けられる。
FCIMPL〜FCIMPLENDで囲まれた関数がそれ。
どうやらECall、FCallなる用語があるようだ。
0020デフォルトの名無しさん
NGNGC#で特別扱いされる型の一覧。
・sscli\clr\src\md\compiler\custattr.cpp
CLRで特別扱いされるCustomAttributeの一覧と動作定義。
...と思われるが、ブレークを置いても引っかからん。
0021デフォルトの名無しさん
NGNGJITとかGC周りは.NETとはかなり違うだろうし。
0022デフォルトの名無しさん
NGNG0023デフォルトの名無しさん
NGNGCILのキーワード一覧。
・sscli\clr\src\csharp\csharp\inc\tokens.h
C#のキーワード一覧。アンダーバーで始まる見慣れないキーワードも。
0024デフォルトの名無しさん
NGNG__makeref
__reftype
__refvalue
__arglist
使い方は分からんが。(w
0025デフォルトの名無しさん
NGNG0026デフォルトの名無しさん
NGNG__arglistは引数につけるよろし。paramsみたいな感じ。
0027デフォルトの名無しさん
NGNG0028デフォルトの名無しさん
NGNGhttp://www.devx.com/free/hotlinks/2002/ednote061902/ednote061902-1.asp
0029デフォルトの名無しさん
NGNGRotor for Linux
http://www.oreillynet.com/cs/weblog/view/wlg/1602
0030デフォルトの名無しさん
NGNGbashの人はenv.shに修正要。
https://mailserver.di.unipi.it/pipermail/dotnet-sscli/msg00052.html
あとは
. ./env.sh
./configure
./buildall
でOK。
環境ができあがったら、環境変数PATHとLD_LIBRARY_PATHに
clixのあるディレクトリを登録。
0031デフォルトの名無しさん
NGNG同じスペックなのにwinの倍以上かかるよ。
0032デフォルトの名無しさん
NGNGどれかを選べって言われたらやっぱりMS純正の・・・。
0033デフォルトの名無しさん
NGNGMonoも使ってるけど、やっぱりsscliの方がなじみがあって安心する。
悪いけど。
0034デフォルトの名無しさん
NGNGhttp://msdn.microsoft.com/downloads/default.asp?URL=/downloads/sample.asp?url=/msdn-files/027/001/901/msdncompositedoc.xml
0035デフォルトの名無しさん
NGNGMicrosoft (R) Visual C# Shared Source CLI Compiler version 1.0.0002
for Microsoft (R) Shared Source CLI version 1.0.0
Copyright (C) Microsoft Corporation 2002. All rights reserved.
0036デフォルトの名無しさん
NGNG0037名無しさん@カラアゲうまうま
NGNG0038名無しさん@お腹いっぱい。
NGNGC++のテンプレートは活用してないのね。
0039デフォルトの名無しさん
NGNGhttp://www.oreillynet.com/pub/a/dotnet/2002/07/01/rotorlinux.html
0040デフォルトの名無しさん
NGNG日本語版MSDN MagazineにもRotorの記事が。
0041デフォルトの名無しさん
NGNGあれでLinux、よく勉強させてもらったよ。
たまには買ってみようかな。
0042デフォルトの名無しさん
NGNG0043デフォルトの名無しさん
NGNGhttp://www.oreillynet.com/pub/a/dotnet/2002/07/22/rotor.html
0044デフォルトの名無しさん
NGNGhttp://discuss.develop.com/archives/wa.exe?A2=ind0207d&L=dotnet-rotor&T=0&F=&S=&P=370
0045デフォルトの名無しさん
NGNG0046デフォルトの名無しさん
NGNG0.13出たよ
0047デフォルトの名無しさん
NGNGhttp://research.microsoft.com/programs/europe/rotor/workshop.asp
プレゼンがイパーイ
0048デフォルトの名無しさん
NGNG確かに起動がクソ遅い。
0049あぼーん
NGNG0050デフォルトの名無しさん
NGNG0052デフォルトの名無しさん
NGNGhttp://dotnet.di.unipi.it/EcmaSpecs.aspx
0053デフォルトの名無しさん
NGNGファイルをもう少し小分けにして( ゚д゚)ホスィ
0054デフォルトの名無しさん
NGNGRotor版『Applied .NET Framework Programming』って感じ?
0055デフォルトの名無しさん
NGNG0056_
NGNG0057デフォルトの名無しさん
NGNGhttp://www.zdnet.co.jp/news/0207/31/xert_code.html
こういうニュースを見るとRotorにも期待してしまうね。
0058_
NGNG0059デフォルトの名無しさん
NGNGオープンソースではありません。共有ソースです。
0060デフォルトの名無しさん
NGNGDistributed Programming Runtime Systems: Inside Rotor
http://www.cs.colorado.edu/~nutt/DPRS/
0061デフォルトの名無しさん
NGNGhttp://msdn.microsoft.com/msdn-files/027/001/901/ShSourceCLIbetaFAQ_RelNotes.htm
0062デフォルトの名無しさん
NGNGhttp://download.microsoft.com/download/.netframesdk/patch/beta2/wxp/en-us/ecall.tgz
0063_
NGNG0064デフォルトの名無しさん
NGNG0065デフォルトの名無しさん
NGNG0066デフォルトの名無しさん
NGNGLinuxのソース解説してる奴とか全然役に立たなかった。カーネルの場合なら
一つ一つ重要な構造体を覚えていって、それがどこで使われてるのかを
確かめていくしかない。sscliもそうなんじゃないの?
0067デフォルトの名無しさん
NGNGOOの方がソースが読みやすいってことなんだろうか。
構造体がインスタンスの定義で使ってるところはメソッドだよね。
0068デフォルトの名無しさん
NGNGクローズドソースまんせー
0069デフォルトの名無しさん
NGNG当たり前のように読むと思うが?
綺麗に書かれたソースが読めないとなると、仕事で遭遇する
糞コードなんて永遠に無理だろな。
0070デフォルトの名無しさん
NGNGどこにあるの?
0071デフォルトの名無しさん
NGNGNetBSD
0072デフォルトの名無しさん
NGNGMozilla
0073デフォルトの名無しさん
NGNGドキュメントなんて全然ないし。
0074デフォルトの名無しさん
NGNG0075デフォルトの名無しさん
NGNGいざって時に手を入れられるのが重要。
作者が飽きて更新とまったりすると
クローズドだとそのソフトの死を意味する。
0076デフォルトの名無しさん
NGNGオープンソースの大半じゃなくてソフトウェアの大半、
の間違いでは?
0077デフォルトの名無しさん
NGNG0078デフォルトの名無しさん
NGNGオープンソースでまともなアプリなんて一つもねえよ馬鹿
0079デフォルトの名無しさん
NGNG0080デフォルトの名無しさん
NGNG0081デフォルトの名無しさん
NGNG0082デフォルトの名無しさん
NGNG0083デフォルトの名無しさん
NGNGサンプルに毛の生えた程度のものをいくら読んでも、
巨大なアプリケーションを書けるようにはならない。
天才は別だが。
0084デフォルトの名無しさん
NGNG0085デフォルトの名無しさん
NGNG基地外信者を生み出した
0086デフォルトの名無しさん
NGNG0087デフォルトの名無しさん
NGNG大変おいしいです。なんせ連中、リポジトリサーバーを貸すだけでホイホイ
作業してくれますからね。有名人をちょこっと雇って専任させれば貢献した
ことになるし。
0088デフォルトの名無しさん
NGNG\無駄無駄無駄無駄無駄ッ/
 ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄
∧ ∧ ∧_∧
(,,゚Д゚)≡つ (:;:;)3`#) ※
|つ つつつつ =( :; )# | | ←>>87
〜. | ≡つ / /:; /∪※
∪ ∪ く__(_ゝ,,〃
ヽ l //
∧∧ 無駄ァ!―――*―――
= ( )∩ // | ヽ フベシッ
≡ ( /ノ ll / / | ヽ
= 〜 〈〃 / |
,`. .´,ミ,くノ^ヽ ゝ ''
0089デフォルトの名無しさん
NGNGそのとおり。それこそが真の自由。ソフトウェアは人間に従わなければならない。
Word学習教室などもってのほか。奴らはWordの奴隷だ。
0090デフォルトの名無しさん
NGNG一理あるかもねえ。IBMとかSunとかその辺の人間を研究所に雇ったり、
オープンソースソフトのカスタム売りするベンチャーに資本投下してたり
するからね。
0091デフォルトの名無しさん
NGNGhttp://research.microsoft.com/projects/clrgen/
0092デフォルトの名無しさん
NGNG0093デフォルトの名無しさん
NGNGコレクション以外で。
0094デフォルトの名無しさん
NGNGおもいついたら、おしえてね。
0095デフォルトの名無しさん
NGNGpublic delegate void EventHandler<T>(object sender, T args) where T : EventArgs;
0096デフォルトの名無しさん
NGNG〜EventHandlerのクラス定義が必要なくなるけど、使う側としては分かりづらいなあ。
0097デフォルトの名無しさん
NGNGあんまり活躍の場面って思いつかないねえ
0098デフォルトの名無しさん
NGNGソースレベルじゃなくてILレベルで別名定義できると便利なんだけどねえ。
typedef EventHandler<MouseEventArgs> MouseEventHandler;
0099デフォルトの名無しさん
NGNGそれは地獄の始まりだと思われ
0100デフォルトの名無しさん
NGNG0101デフォルトの名無しさん
NGNG■ このスレッドは過去ログ倉庫に格納されています