今新しい言語を作ってます
■ このスレッドは過去ログ倉庫に格納されています
0001BOX ◆l1pRZFR5UE
NGNG最初はインタープリタ言語で行こうかと思ったのですが、やはり高速化するために
コンパイラ言語に一から作り直しました。
機種依存の無い汎用性の高い言語を目指してます。
ただJAVAと違うのはライブラリを取りそろえたい事、そしてGUIアプリやゲーム制作などに特化してるところでしょうか。
(これは自分の趣味が出てます)
もちろん業務用データベースソフトも作れます。
あとネットワークはどの言語も切っても切り離せない仕様になってしまったので、もちろんこの言語もネットワークでの
活躍を期待していて下さい。
0002BOX ◇l1pRZFR5UE
NGNGひろゆきに感謝を申し上げます
そして、私の妻と(このレスを書いてる最中にも邪魔をしてくれる)愛娘に
感謝します
0003デフォルトの名無しさん
NGNG0004デフォルトの名無しさん
NGNG0005デフォルトの名無しさん
NGNG0006デフォルトの名無しさん
NGNGこの手の話でプロトタイプなりが出来る以前から
スレ立てをした場合、ほぼ確実に企画倒れになる
理由は説明するまでもあるまい
0007デフォルトの名無しさん
NGNGスレ完全終了
0008デフォルトの名無しさん
NGNG…私の知っている方の言い回しに酷似していると感じられるのは気のせいでしょうか。
0009BOX ◇l1pRZFR5UE
NGNGだから、本物ですってw
>>5
Freeにするつもりですよもちろん
>>6
ええ、わかります
ちょっと先走ってしまいましたが
すぐに、上げますんでよろしく
0010デフォルトの名無しさん
NGNG0011デフォルトの名無しさん
NGNGん?;
0012デフォルトの名無しさん
NGNGところで言語名は決めてあるんですか?
0013デフォルトの名無しさん
NGNG0014BOX ◇l1pRZFR5UE
NGNGいまのところ
「ringo(りんご)」
っていう名前にしようかと思ってます
0015デフォルトの名無しさん
NGNG0016デフォルトの名無しさん
NGNG0017デフォルトの名無しさん
NGNGalready exists
0019BOX ◇l1pRZFR5UE
NGNG@[hello world]
です
ちなみに、この言語は自分で関数の書式を
定義することが出来ます
上の例だと
@[]が、printf()のエイリアスになっていると考えてもらってかまいません
定義の仕方によっては
:hello worldでも同じ出力結果が得られます
0020デフォルトの名無しさん
NGNGいらねぇ・・・
0021デフォルトの名無しさん
NGNG0022デフォルトの名無しさん
NGNG0023デフォルトの名無しさん
NGNG0024BOX ◆l1pRZFR5UE
NGNG>>5
フリーはもちろんです。
より多くの人に使って貰いたいです。
>>6
現時点では私の手元ではミドルウェア上にて動作しています。
>>12
言語名決めてません
もしもコードネームがBOXです。
>>18
GUIアプリはドラッグ&ドロップで簡単に作れますよ。
>>23
いや、、ネタではありません。
偽物さんが騙ってただけです。
0025BOX ◆l1pRZFR5UE
NGNGちなみに名前のことなんですが、mankoとかtinko、unkoは友人に散々言われました。
0026デフォルトの名無しさん
NGNGこの時点で(゚�听)イラネ
こっちでやったら?
ゲ製作技術
http://pc2.2ch.net/gamedev/
0027デフォルトの名無しさん
NGNGそこ荒れてて最悪
関係ないがPC初心者板とかもまともに質問に答えてない
ここはいいとこだよな
0028BOX ◆l1pRZFR5UE
NGNGゲームしか作れないと言うわけじゃ無いです。
>>1にも補足してありますが業務用ソフトなども作れますんで。
もちろんブラウザや通常のアプリも作れます。
0029デフォルトの名無しさん
NGNG言語作るのは面白いんだけど、その 99.999% は自分の趣味で終っちゃうんだよな。
実際にニーズと合致して大きな流れになったのは Perl, Ruby, Python ぐらいじゃねーか。
BOX君は、言語作って見返り無くて、誰からも理解されなくても、それでも作りたいかどうか
何度か考え直したほうがいいと思う。
0030デフォルトの名無しさん
NGNG打倒MSVS!!!!!!!!!!!!!!!!!
0031デフォルトの名無しさん
NGNG0032デフォルトの名無しさん
NGNGくらいの本能的な気持ちあればいいが・・・
大抵は他のことやったほうが面白くてためになると思う。
0033デフォルトの名無しさん
NGNGニーズに合致してないというか、素人の作った言語がしょぼいからじゃない?
0034デフォルトの名無しさん
NGNG0035デフォルトの名無しさん
NGNG"*"やら"&"やら、ポインタの概念がイマイチ理解できん。
それを、取っ払えて、なおかつ、メモリアクセスが高速なアーキテクチャなら応援する。
0036デフォルトの名無しさん
NGNG*はかけざん、&は論理積。全然難しくないよ(^o^=)
0037デフォルトの名無しさん
NGNG供給過剰、飽和状態、言語デフレじゃんか。もう満たされ尽くしてニーズは無いんだよ。
今は技術基盤より、技術を使って実際に何をやるのかってあたりを考えなきゃ
いけない頃合ではある。
0038デフォルトの名無しさん
NGNGし! _ -── ‐- 、 , -─-、 -‐─_ノ
今 何 // ̄> ´  ̄  ̄ `ヽ Y , ´ ) や え
が も L_ / / ヽ で れ |
あ や / ' ' i き ば 俺
る ら / / く る は
ん ず l ,ィ/! / /l/!,l /厶, !?
じ に i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ
.ゃ き l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
な た _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
い か 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
ら ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ キ 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) モ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く | > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! イ ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ / -‐ / ̄/〉 〈 \ /!
0039デフォルトの名無しさん
NGNGC言語の変数の話なのですが...(^o^;)
0040デフォルトの名無しさん
NGNGとりあえず、ある程度動くのなら、さっさと公開して使ってもらわないと。
0041デフォルトの名無しさん
NGNG0042デフォルトの名無しさん
NGNG開発言語は何ですか?
MFCは使うんですか?
コンパイラをした後はスタンドアロンで動くのですか?
0043デフォルトの名無しさん
NGNG∧_∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
( ^∀^)< このクソスレ立て逃げか!
( つ ⊂ ) \_________
.) ) )
(__)_) (^∀^)ゲラゲラ シネヤ クソガ
0044デフォルトの名無しさん
NGNG0045名無し@沢村
NGNGというスレは山ほどあるが、出来たという話は聞かんが…?
0046デフォルトの名無しさん
NGNG|∧_∧ パシャッ
|・ω【◎】 .∧_∧ パシャッ
| っ 9 【◎】\) パシャッ
|―u' └\ \
. ∧_∧ / く ̄(
( ´∀【◎】 カシャ!
(つ 9 \ (;・∀・)>>1 \ . ∧_∧
| | | カシャ! 【◎】ω・` )⌒っ
(__)_) / しと,.__,.,.._っ
∧_∧
( )】 パシャッ
/ /┘ パシャッ
ノ ̄ゝ
0047デフォルトの名無しさん
NGNGオープンソースにする?
ライセンス形態は?
オブジェクト指向言語?
機種依存しないということはJavaやC#のようにVM上で動く?
言語をつくるにあたって、yacc/lexやJavaCCなどを使っている?
それとも、XMLスタイル?
すでにJavaなどの言語がある今、わざわざ新しい汎用言語を作る必要性はどこに?
MixJuiceの作者はすでにJavaが普及していることを理由に、既存のJavaを改造する
形で、全て一から作り直さずに、新しい言語を作ったそうだが。
0048デフォルトの名無しさん
NGNG0049デフォルトの名無しさん
NGNGhttp://www1.free-city.net/home/s-rf9/page006.html
0050デフォルトの名無しさん
NGNGそーだよね。
WindowsやMac OSは開発人数がアホのような数で作っているんだもんね。
個人レベルでは勝ち目ないよね。
ただしlinuxだけは、別だけど。
0051デフォルトの名無しさん
NGNG∧_∧
( ´,_ゝ`)
/, つ
プッ(_(_, )
しし'
0052デフォルトの名無しさん
NGNGヽ、. ,〃
ヾ、 // , -‐'
-───∨∠ _
, '´ ヽ、
/ , ニvニニヽ
/ ヽ 〃( (`⌒)⊥ヽ
/ / l || l ゞ'(て@ ) )ソ ヽ
/ i | ,. ∧ ヽ 弋 八_ フノ ノノ !
! | | / / | | ! | i ⌒‐'^ー''′ .|
| | | / /r`ー! | ! |│ ||! | |
| | |// | il ト、ヾ、 ヽ l || | | | | |!
! .∨〈 ! | ヽヾ、 ヽ l | 川 | | | リ 僕をどうするつもりですか
ヽ ! ヽ ヽ_ 0ノ \\ヽ l | || | | | | /
ヽト、 i//// ヽ‐ //ヽハ! | |リ l / /
ヽ ヘ u ヽ!| //!/_〃'"
\ヽ、 ヽ_,r_つ u リ //∠_
>- ┬ -‐ 7'"´ / ヽ
| ヽ |ー-─/ / ⌒ヽ!
ト、!ト、 ト===7 /| !
ト、l| \ヽ // // _ -‐ (
| |ヽニ」∠ニ‐''" |  ̄ ノ
| | | | ! |
| | /ーヘ | |
| !. \/ / /
_∠,=彳 / ∧
/-!__fニ __ , /__〉_
/ /∠_ヽ、二ー─ ┼─-、 ト、/-ヘ
/=‐''" , '" //_,/ ̄` \′ |
/ / _, / ./ /_ -‐' ̄ ¬、 / ヽ\
/⌒!-‐ ' / / / | |'´ \__ ヽく
0053デフォルトの名無しさん
NGNG0054デフォルトの名無しさん
NGNG経営者の成り上がりと没落と同じようなものでドラマがある。
>>1 のこれからの人生を考えると、なんか涙が出るな。
何かもっと別の幸せは無かったのかと。それを見つけてくれることを切に願う
0055直リン
NGNG0056デフォルトの名無しさん
NGNG/|│|u| _|_|_ 7 |\ | ,-L__」 -、u |ト:| |'''ー |"~ヾノつ へ、U / ヽu|ヾi_____/
|\ / | r.、 | \ ,.. -┬|l王l王l王l`/ .| | | | _||( o o ,ノ ||f|-―l l/
|ニ・〉 ニ・フ .|l6| | \ ,∧ |├‐┬─‐''′/ || |i'"l~:::l::| し'| u | `Ju l!'|::::::::/
. |∠ っ u ll,ノ | \ | |.|-―l、___/-―┤ .|| |:::::|:::| v ___L,__,.」_u |::|/____
ヽlニ二二) ./ >‐、l \ | || ヽ. / | | || |::::|:::::ヽ((三≡≡三) / _ `i
ヽ = ./ / ,.ベ\ \ | | Y。 | | || |::::|:::::::::::\u、━、 /_ -イi~| | |~ヽ |
ヽ_. く / / ヽ \ _|\_/\_/\_/\_/\_/|___:::::::::::::/ TT l |υl_, -'_フ ヽ |
/ / ヽ ヽ \ /:::::::/\υ , -''_~- ''~ u / |
________________/ スレ終了 の ・ ・ ・ ・ \/〜ヽゝ|| ||, -ー〜 フ ::| |⌒i |
< /l/ u |ハ、 ヽ 〉 / |)_ o/u ≡丶o_ ノ ::::| .|⌒| |\
レ =、\ _メヽ!ヽ!、 | く 予 感 っ ・ ・ ・ ・ ・ ・ ・ > |( /,' U ( ) υ::| lD | | |`ー
|ヽ 。>_ /。 ノ | ,へ | \ \__|/,' υ υ し' ::::|.|_,ノ | |
| u/ ~U~ ┌ ||ビ|| | /< ・ ・ ・ ・ ・ ・ ・ ・ ! ! /_/ __, -ヽ O ┌::::||. | |
|/__,ヽ__u |!_ン |\. / ノ \\ ̄| i┬┬┬┬┬┬、 ::::∧ | |
|『┴┴┴┴')) |\ l/  ̄|,/ヽ/\/\/\/\/\厂 \|l二二二二二二/::::/:::;ヽ | |
0057デフォルトの名無しさん
NGNG_,,.-‐:''"" ~`'ー-.、_
,,..ィ''" `ヽ、
,,:r''" `ヽ、
,.ィ" `ヽ、
,.r" \
/ \
,.;" ヽ
,.:' `:,
ヽ /
ヽ ,!'
\ ,:'"
\ /
`ヽ. _,.!'"
`ヽ、 少"
`ヽ:、 _,.:-'"
゙`ー-:、_ __,,,..-‐'"
 ̄`''ー---======----一'''"~
0058デフォルトの名無しさん
NGNG. | ト.,,_ / .| | _/
.| ´`ヽ-y `i /|./' |
. / .ヽ V / |
/ /⌒\ \. // |
./ /....,,__ \ ソ _,.-ナ'ヽ.|
/ //-;-=t_ァミ;,. ._ \_.∠,;‐-/ ノ.ヽ
./ . /,,ノ ` ‐- .'´ ' /ゝ`'´`ソ ノ.;. |
. / / ;'.ノ | /ノ.ソ ./
/ ./´ _ノ, ヽ. | ノ 丿 /
./ _,,.. ;''_,,,..-'''' .ソ -., ' ./.,;'ノ ./
../.,.,.-'´ ヽ _/./ .ヽ.. ::;-‐ァ / .ノ /
. (.._ ´'-';,,ノ.,_ \ `,~ / ' /
. .´''- .,,__ / `ヽ-,,,_ヽ . _._ ,.' . /
`丶--./ー | ._ソソ´|,)ヽ'_ /
0059デフォルトの名無しさん
NGNGr''~ /  ̄ '''ヽ
_人 l )\
( ノ \゙、 ー- _ノ \ ヽ >----──っ─‐‐ュ--'''"
__ ,.-‐-、r‐¬/ l ノ( \ ノ r~'''-.,,_ ___,,..-‐''''~ ''''~~_,,.-''"
< | _,,-‐-r'‐-‐''"`ー7_ノ てl l\,,__,,,.. く ノ  ̄ _,,..-‐'''~'''ー-‐''"
,. -‐ 爻_人__ノ // てl l) ` <__ _,,,.. -‐''~
/ /| \ l ノ てl l)へ く~、ー- '''~~
i / └‐'''' /l ,. へ''~ \--─--Lヽ
\( ( _ノ ゙、 ゙、 ゙,__,,,.....,,,,,_L゙、
__ / ) i ) l l l \`ヽ、_
,,,....\ |,.-‐-v'-‐'" l / l l l ヽ \
/ ,. -~ヾ`ー" l__,,,,> ..,,__ノノ l !し, ヽ
( / | \ _,,,... -‐'''''"ノ / / / l L ゙、_
\ i  ̄ ̄ _,,..-‐'''~ _,,..-‐'" / / __,,,,../ l し \
` ,. '" _,,..-'''~ ,. '"_ /‐'"_ /`ー- 、 / (_人丿
,. '" , '" ,. ‐ニ~‐'''"/,,..-‐'~/  ̄~'''ー-、/\ l \
/ / /-‐''''~~'''''''爪 / \ `ー- ..,,!_ ヽ \
/ / / l \_l ,,.. `T''ー-..,,,l__~''ー-、
/ / /ー、__ / / 厂 ,'
0060デフォルトの名無しさん
NGNG\ .∧_∧ /
\ ピュ.ー ( ^^ )<これからも僕を / ∧_∧
山崎渉は \ =〔~∪ ̄ ̄〕 /∧_∧ ( ^^ )
かっこいい。 \ .= ◎――◎ / . ( ^^ ) / ⌒i
从// . \ ∧∧∧∧ /. / \ | |
( ^^ ) n \ <. >.. /. / / ̄ ̄ ̄ ̄/ |
 ̄ \ ( E) \< の 山. >/. __(__ニつ/ 山崎 / .| .|
フ /ヽ ヽ_// < 予. >. \/ / (u
―――――──―――――――< 感 崎. >―――――──―――――――
<. !!!. >
山崎渉age(^^) < 渉. > 1 名前:山崎渉 投稿日:02/
∧_∧. /<.. >\ (^^)
∧( ^^ ). / ∨∨∨∨. \
( ⊂ ⊃. / \ 3 名前:山崎渉 投稿
( つ ノ ノ /. ―━[JR山崎駅(^^)]━― \. >>2
|(__)_) / \ (^^;
(__)_) /. ―━―━[JR新山崎駅(^^)]━―━― \
./ \
0061デフォルトの名無しさん
NGNG、
|
|
,,r‐-┼--,,、
,,i´ .| `゙'-. .'"゙゙゙゙゛
----- / .,-|'¬i、 ‘'i、
│ / |l `i、 ゙l .、,,,,,,_
l゙ l゙ .] } ゙l `゙′
.,,r‐ー` | | | .| | .,,,、
| .| | .ノ | `''ー
゙l | | ._,/ .ノ
_,,/ ゙l、 .''='广` ,,-'"
'" ヽ_ ___|,,,,,,,,-‐″
 ̄` .|
|
|
0062デフォルトの名無しさん
NGNG丿 見
見 こ し! _ -── ‐- 、 , -─-、 -‐─_ノ る 面 え
ア る こ // ̄> ´  ̄  ̄ `ヽ Y , ´ ) 目 接 |
ン 所 ま L_ / / ヽ な 官 |
タ が で / ' ' i. い が
く な / / く っ
ら い l ,ィ/! / /l/!,l /厶, て
い の i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ !?
だ は l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
よ _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
ね 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ 面 5 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) 接 分 |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く 終 で > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! 了 ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ !? > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ
0063BOX ◆l1pRZFR5UE
NGNGコンパイラ、ソフトともに独自の物です。
もちろんスタンドアロンで動きます。
○○が必要とかはありません。
ただDirectXのモジュールを使うことも出来ます。
その際はお約束としてDirectXを導入して下さい。
現在稼働しているのがKDE(Linux)とWindowsXPです。
>>47
完全オープンソースにする予定です。
オープンソースにするとさらに良い物になりそうなので。
0064デフォルトの名無しさん
NGNGし! _ -── ‐- 、 , -─-、 -‐─_ノ
ヲ そ // ̄> ´  ̄  ̄ `ヽ Y , ´ ) 自 え
タ う L_ / / ヽ 分 |
ば 思 / ' ' i は マ
っ っ / / く 特 ジ
か て l ,ィ/! / /l/!,l /厶, 別
り る i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ !?
だ .奴 l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
よ っ _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
ね .て 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
l ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ ウ 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) ッ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く ソ > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! | ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ
0065デフォルトの名無しさん
NGNG直 自 な // ̄> ´  ̄  ̄ `ヽ Y , ´ ) 諦 夢 え
視 分 に L_ / / ヽ め を |
で が も / ' ' i な 俺
き で / / く い は
な き l ,ィ/! / /l/!,l /厶, !?
い な i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ
だ い l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
け _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
じ |i′ 「1 /てヽ′| | | L! ' i'ひ} リ
.ゃ ヽ | ヽ__U, 、ヽ シノ ノ! !ヽ_、ソ, ヾシ _ノ _ノ
- ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ キ 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) モ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く | > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! イ ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ / -‐ / ̄/〉 〈 \ /!
0066デフォルトの名無しさん
NGNGし! _ -── ‐- 、 , -─-、 -‐─_ノ
で や // ̄> ´  ̄  ̄ `ヽ Y , ´ ) や え
き ら L_ / / ヽ で れ |
な な / ' ' i き ば 俺
い い / / く る は
ん ん l ,ィ/! / /l/!,l /厶, !?
じ じ i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ
ゃ ゃ l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
な な _ゝ|/' /⌒ヽ ヽト、|/ ' / ̄`ヾ ヽト、 N'/⌒ヾ ,イ ̄`ヾ,ノ!
い く 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
!? て ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ キ 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) モ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く | > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! イ ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ / -‐ / ̄/〉 〈 \ /!
0067デフォルトの名無しさん
NGNG> ただDirectXのモジュールを使うことも出来ます。
> その際はお約束としてDirectXを導入して下さい。
> 現在稼働しているのがKDE(Linux)とWindowsXPです。
LinuxでどうやってDirectXを動かすのですか?
> >>47
> 完全オープンソースにする予定です。
> オープンソースにするとさらに良い物になりそうなので。
DirectXはオープンソースではないようですが、それについてはどう対応なさいますか?
0068デフォルトの名無しさん
NGNGハ キ // ̄> ´  ̄  ̄ `ヽ Y , ´ ) ハ キ
ハ ャ L_ / / ヽ ハ ャ
ハ ハ / ' ' i ハ ハ
ハ ハ / / く ハ
ハ ハ l ,ィ/! / /l/!,l /厶,
ハ ハ i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ
ハ ハ l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
ハ ハ _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
l ハ 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ ハキ 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) ハャ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く ハハ > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! ハハ ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ > ' ∠ -‐  ̄ノヽ /
0069デフォルトの名無しさん
NGNGし! _ -── ‐- 、 , -─-、 -‐─_ノ
生 今 // ̄> ´  ̄  ̄ `ヽ Y , ´ ) 友 え
き ま L_ / / ヽ 達 |
て で / ' ' い 本
き ど / / く な 当
た う l ,ィ/! / /l/!,l /厶, い に
の や i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽの!?
? っ l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
て _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ ネ 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) タ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く で > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! イ し ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ ょ > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ !?
0070デフォルトの名無しさん
NGNGだ 無 し! _ -── ‐- 、 , -─-、 -‐─_ノ
も 職 // ̄> ´  ̄  ̄ `ヽ Y , ´ ) 行 同 え
ん で L_ / / ヽ . け 窓 |
ね デ / ' ' i . な 会 マ
!.ブ / / く . い ジ
.オ l ,ィ/! / /l/!,l /厶, . の
.タ i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ !?
.ヒ l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
.ッ _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
キ 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
| ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ カ 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) ワ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く イ > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! ソ ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ | > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ / -‐ / ̄/〉 〈 \ /!
0071デフォルトの名無しさん
NGNG部 ゲ (ッ''゙ ,r'゙ 〈 平 |
長 が ( / 〈 !? マ
か 許 ( ,、 ,、 / , , ,) ジ
ら さ ( ィH+i, リ|」_iル! /レi //く_
だ れ ( lン ヘ ; // ,三、l 、i ル'ノ ,二ミーv‐、
よ る ( l (・) (・) トルリ! (・) (・) |i
ね の ( l ⊂⌒◯-----.リ小 ⊂⌒◯------j,!,'
| は ( '! .|||||||||_ ノ、人;|_|||||||||_ ク!/ ,
'V⌒'V⌒八ヽ 'ヘ_/ ) ( ヘ_/ \ ij /ィ/!
ハ キ( / 'ヘヽ、トn-! 〈 キ [ `「l二 ´´ _,、イリ!
ハ ャ 〉 ,小<'、.l l l |T゙) モ 〉! l\/)-ャ''" _
ハ ハ( ,.イ ヽヽ ! l l l/~) | (,! ,l//_, っ',_,、-''"
ハ ハ 〉! ゙、 ' f ) イ ( _''二-_'_ >、 /
0072デフォルトの名無しさん
NGNG__,冖__ ,、 __冖__ / // ,. - ―- 、
`,-. -、'ヽ' └ァ --'、 〔/ / ヽ
ヽ_'_ノ)_ノ `r=_ノ / ヽ
__,冖__ ,、 ,へ / ,ィ __ <・>\
`,-. -、'ヽ' く <´ 7_// レ _ ヽ /ヽ、
ヽ_'_ノ)_ノ \> / 「 ・\V ヽ/・l
n 「 | /. .└ --丿 =-{_ー{
ll || .,ヘ / ,-、 ' .,フ!
ll ヽ二ノ__ { / ハ `l i' i _ `ヽ
l| _| ゙っ  ̄フ.rソ i' r' ,..二''ァ,/
|l (,・_,゙> / { ' ノ /''"´ 〈//
ll __,冖__ ,、 > >-' ;: ! i {
l| `,-. -、'ヽ' \ l l ; . | |!
|l ヽ_'_ノ)_ノ トー-. !. ; | ,. -、,...、|:l
ll __,冖__ ,、 |\/ l ; i i | l
ll `,-. -、'ヽ' iヾ l l ;: | { j {
|l ヽ_'_ノ)_ノ { |. ゝ ;:i `''''ー‐-' }
. n. n. n l | ::. \ ノ
|! |! |! l | ::. `ー-ー 'ブ
o o o ,へ l :. |
0073デフォルトの名無しさん
NGNGし! _ -── ‐- 、 , -─-、 -‐─_ノ
巌 八 // ̄> ´  ̄  ̄ `ヽ Y , ´ ) 千 君
と 千 L_ / / ヽ 代 が
な 代 / ' ' i に 代
り に / / く は
て さ l ,ィ/! / /l/!,l /厶,
ざ i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ
れ l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
石 _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
の 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ 苔 了\ ヽ, -‐┤ //
む { / ヽ,ト、ヽ/!`hノ ) の |/! 「ヽ, `ー /) _ ‐'
す ヽ/ r-、‐' // / |-‐ く > / / `'//-‐、 /
ま > /\\// / /ヽ_ ! ( / / // / `ァ-‐ '
で / /! ヽ レ'/ ノ > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ
0074BOX ◆l1pRZFR5UE
NGNGもちろんLinux上では動きませんよ。
あくまでもDirectXも使えると言うことです。
0075デフォルトの名無しさん
NGNGし! _ -── ‐- 、 , -─-、 -‐─_ノ 批
と 俺 // ̄> ´  ̄  ̄ `ヽ Y , ´ ) 評 え
か は L_ / / ヽ 家 |
思 わ / ' ' i 気 マ
っ か / / く ど ジ
ち っ l ,ィ/! / /l/!,l /厶, り
ゃ て i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ!?
っ る l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
て 人 _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
る だ 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
? ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ シ ス 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) ビ テ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く レ キ > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! ル | ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ | > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ
0076デフォルトの名無しさん
NGNGし! _ -── ‐- 、 , -─-、 -‐─_ノ
長 パ // ̄> ´  ̄  ̄ `ヽ Y , ´ ) え
渕 ク L_ / / ヽ B'z |
ま リ / ' ' i !? マ
で が / / く ジ
だ 許 l ,ィ/! / /l/!,l /厶,
よ さ i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ
ね れ l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
│ る _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
の 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
は ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ お 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) 手 |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く 軽 > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! │ ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ
0077デフォルトの名無しさん
NGNG自 し! _ -── ‐- 、 , -─-、 -‐─_ノ
分 // ̄> ´  ̄  ̄ `ヽ Y , ´ ) の そ え
と で L_ / / ヽ つ れ |
か は / ' ' i も ネ マ
思 傑 / / く り タ ジ
っ 作 l ,ィ/! / /l/!,l /厶, !?
て が .i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ
る 出 l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
? 来 ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
た 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ で つ .了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) す ま |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く け ん > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! ど な ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ │ い > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ W ん / -‐ / ̄/〉 〈 \ /!
0078デフォルトの名無しさん
NGNGし! _ -── ‐- 、 , -─-、 -‐─_ノ え
そ // ̄> ´  ̄  ̄ `ヽ Y , ´ ) 考 2 |
悲 れ L_ / / ヽ え ch マ
惨 で / ' ' i て で ジ
だ 反 / / く る ネ 1
よ 応 l ,ィ/! / /l/!,l /厶, !? タ 日
ね な i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ 中
| か l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
っ _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
た 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
ら ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ キ 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) モ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く | > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! イ ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ ! > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ
0079デフォルトの名無しさん
NGNGし! _ -── ‐- 、 , -─-、 -‐─_ノ
食 // ̄> ´  ̄  ̄ `ヽ Y , ´ ) フ え
35 い L_ / / ヽ リ |
歳 つ / ' ' i | マ
ま な / / く タ ジ
で げ l ,ィ/! / /l/!,l /厶, |
だ る i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ !?
よ の l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
ね は _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
l 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 無 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ 職 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) ガ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く ン > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! バ ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ ! > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ
0080デフォルトの名無しさん
NGNG ̄ ̄ ̄ ̄
|\_____________|
| |:::::::::::::::::::::::: |
/⌒彡 /⌒彡 | |::::☆:::::::::::::::::::::::: |
/ 冫、) / 冫、) | | :::::::::::::::::::::::::::::::::::::|
| ` / | ` / | |:::::::::::::::::::::::: |
( ニニニニニニニニニニ_ア /::::::::::::;\ | | |
|:::::::::::: l | //´|:::::::::::: l | | | |
|:::::::::::: | | | | |::::卍::: | | | | |
/::::::::::::/| | // /::::::::::::/| | | | |
|::::::::::/ Uヽ /U |::::::::::/ | | | | キティ星逝き↓ |
|::::||:::| | | >>1 | | |::::||:::| U | | ___A___ |
|::::||::| | /⌒彡/ |::::||::|. | | (_o_o_o.) |
| / | | / 冫、) | / | | | |_______ハ___|
// | | | ` / // .| | | | / / |
// | | | /| | // .| | | | / / |
// | | // | | // | | | | / / |
U U U U U U  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
0081BOX ◆l1pRZFR5UE
NGNG0082デフォルトの名無しさん
NGNGよ. 180 し! _ -── ‐- 、 , -─-、 -‐─_ノ 身
ね cm // ̄> ´  ̄  ̄ `ヽ Y , ´ ) 長 え
| 未 L_ / / ヽ 170 |
| 満 / ' ' i cm マ
!! は / / く !? ジ
男 l ,ィ/! / /l/!,l /厶,
じ i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ
ゃ l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
な _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
い 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ キ 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) モ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く | > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! イ ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ
0083デフォルトの名無しさん
NGNG思 オ 卒 し! _ -── ‐- 、 , -─-、 -‐─_ノ
い ナ 業 // ̄> ´  ̄  ̄ `ヽ Y , ´ ) 脳 え
で っア L_ / / ヽ 内 |
に た ル / ' ' i 元 マ
脳 だ バ / / く カ ジ
内 け ム l ,ィ/! / /l/!,l /< , ノ
変 で で i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_i !?
換 ’ l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
だ ヤ _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
っ ッ 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
て た ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
!? ,√ !  ̄ リ l !  ̄  ̄ 7/
レ レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 バ L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ カ 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) ジ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く ャ > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! ナ ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ イ > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ ノ
0084デフォルトの名無しさん
NGNG:::::::::::| ば じ き i::::::::::::
:::::::::::.ゝ か つ み ノ:::::::::::
:::::::::::/ だ に は イ:::::::::::::
::::: | な。 ゙i ::::::
\_ ,,-'
――--、..,ヽ__ _,,-''
:::::::,-‐、,‐、ヽ. )ノ _,,...-
:::::_|/ 。|。ヽ|-i、 ∠_:::::::::
/. ` ' ● ' ニ 、 ,-、ヽ|:::::::::
ニ __l___ノ |・ | |, -、::
/ ̄ _ | i ゚r ー' 6 |::
|( ̄`' )/ / ,.. i '-
`ー---―' / '(__ ) ヽ 、
====( i)==::::/ ,/ニニニ
:/ ヽ:::i /;;;;;;;;;;;;;;;;
0085デフォルトの名無しさん
NGNG_____________ノ|
|;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<ノ|
|;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;/
|;;;;;;;;;;;/三────;;;;;;;;;;;;;;;;;;;;;;;>
|;;;;;;;;;;;|∠二二ゝ ヽ二二|
|;;;;;;;;;;;|三く( () ( ()ノ|ヽ
|/⌒ヽ|三 \ ソ
|б三三 _ ̄ | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ヽ三/三  ̄ ‐ ̄ /< アフリカの貧しい国に病院を建てるのが夢です。
/ヽ\ / \____________
ゞ:::( \_____/
(三l::::\ /\__
/三三::::::::ヽ / ヽ` ̄ヽ
/三三三ヽ'⌒ヽゝ /⌒ヽ/ ヽ
0086デフォルトの名無しさん
NGNG_人人人人人人人人人人人人人人_
> な、なんですって!!! <
 ̄^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄
_,,.-‐-..,,_ _,,..--v--..,_
/ `''.v'ν Σ´ `、_,.-'""`´""ヽ
i' / ̄""''--i 7 | ,.イi,i,i,、 、,、 Σ ヽ
. !ヘ /‐- 、u. |' |ノ-、 ' ` `,_` | /i'i^iヘ、 ,、、 |
|'' !゙ fエ:エi'ーfエ:エi iifエ:エij.`fエ:エi.7 !'.__ ' ' ``_,,....、 .|
. ,`| u ..ゝ! ‖ .j (}fエ:エi `fエ:エi |',`i
_,,..-<:::::\ (二> / ! _`-っ / | 7  ̄ u |i'/
. |、 \:::::\ '' / \ '' /〃.ヽ `''⊃ , 'v>、
!、\ \. , ̄ γ/| ̄ 〃 \二-‐' //`
0087デフォルトの名無しさん
NGNG______
r' ,v^v^v^v^v^il
l / jニニコ iニニ!. / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
i~^' fエ:エi fエエ)Fi < A mother's slander does not allow.
ヽr > V | Don't perform it by any means.
l !ー―‐r l | It means your death.
__,.r-‐人 `ー―' ノ_ \_________________
ノ ! ! ゙ー‐-- ̄--‐'"ハ ~^i
ヽ ! ヽ、_ _.ノ i \
ヾV / ! /.入
0088名無し@沢村
NGNG完成したことに価値があるのだ。
0089デフォルトの名無しさん
NGNG,.':: ,、- ''"´ `゙゙゙''‐ 、 ゙' , ,,、、、
,.'::: .,. " ゙'.、r'" ゙'、
,.':::: , " , ., , ,, 、, , 、 、 ,r" ',
_,i、 ,.' .i ,','l !l .!l l. ! ',, l .l、/ ........ !
゙,~ ,.ri. .{ .!.!,i,',l ,',!,! l', l',l,,,!/ .::::::::::::::!
゙、:::::,.' .::! l゙、'l" / \ '''.,' .:::::::::::::::::l
. ,>' .:r"l ',.l,、, (・) (・'i;' .:::::::::::::::::::,'
〈-、::::゙'‐!. ,. '、ゝ;;;:j ⊂⊃ /. .::::::::::::::::::::,' お前のものはオレのもの!
. ゙、 ゙''‐-l ', .ヽ`.´ __l_,.' .::::::::::::::::::::/ 俺のものはオレのもの!
`,i‐、..}i '.;:. ゙ヽ\__/ .:::::::::::::::::::,.' タケシ覚えた!
. / ;. ゙,゙, ';: ノ,,、-''" .::::::::::::::::::,r'
/ ,.'-‐゙'',-,、,i'"゙! " .::::::::::::::::,r'"',
/ i'r"゙'´` `'''>' ゙,::::::::::;r':! ',
. / .,、'´ ::、 .:,r'" ゙、:::::'::::::',. ',
/ .,.! .. :゙'::,' 、.l. ゙、:::::::::: ゙、. ',
/ /,', ...::.:::::::,' ゙'i. ゙、:,',:::::. ゙、 '゙、
0090デフォルトの名無しさん
NGNG|(__ __)(___ )_l⌒l(⌒( ̄ ___.) |
|(__ __) ノ ノ(_ ヾノ~| (__) |
| ノ / / ./( O ,-, )ノ ノ__ 三|三|- |
| ( _ ノ ( __ ノ \__ノ ( _ ノ(___(___)ノ| ̄| .|
| _____  ̄~ .|
| 「メイドカフェで激しくハァハァ」の巻 /⊂~)\.. ..|
| ┏━━━━━━━━━━━━━━| | | |┓...│
| ┃:::::::::::::/:::::::::::::::::::::::::::::::::::::::::::::::::::::::::\_,|_|_,/┃ |
| ┃:::::::::/::::::::::::::/|:::::::::/ノ::::::::/\人::::::::::::ヽ::::::::::::┃ |
| ┃::::::/:::::::::::::::/│://∧::::ノ ヾ::::::::::::ヽ :::::::┃ |
| ┃:::::|::::::::::::::/ |/ |ノ |/ |:::/、:::::| ::::::┃ |
| ┃:::::|:::::::::::/ ;;;;;;;;;;;; ;;;;;;;;;;;;;; レ .|:::::| ::::::┃ |
| ┃:::::|::::::::/ ̄ ̄ ̄ ̄ヽ===/ ̄ ̄ ̄ ̄ヽ ヽ:::| ::::::┃ |
| ┃:::::| ::=ロ fエ:エi | | fエ:エ)Fi ロ=::::| ::::::┃ |
| ┃:::::|:::/丶 /ノ ヽ / . ヽ| ::::::┃ |
| ┃:::::|/ `ー---一´/ `ー---一´ .| ::::::┃ |
| ┃:::::| (●_●) | ::::::┃ |
| ┃:::::| l l | ::::::┃ |
| ┃::::| __-- ̄`´ ̄--__ |::::::┃ |
| ┃:::| -二二二二- |::::┃ |
| ┃::::\ /:::::┃ |
| ┃::::::::::\ _- ̄ ̄ ̄-_ /:::::::::::┃ |
| ┃:::::::::::::::::\ /:::::::::::::::::┃ |
| ┗━━━━━━━━━━━━━━━━━━┛ |
| 秋葉原書院コミック文庫 小田倉出武夫 .|
0091デフォルトの名無しさん
NGNG/ \
/ ヽ
////( )\ )\)\ヽヽ
(ししし⌒⌒⌒) )⌒⌒⌒⌒) ) ) ) |
l\ fエ:エi ‐/ |,fエ:エi 、/\|/ヽ | / ̄ ̄ ̄ ̄ ̄ ̄ ̄
l\/ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ノ ノ ノ | そこの貴方方、
l\ /了 | 了 /了 |了 ) ̄| | | .∠ 私の名称を申し上げてみて下さい!
\ | | / | .| | .| | | | | | |
/| | .| | | .L.」 / | | | | | .\_______
∧| | | | .| L .| | .| | |J | |
( ヽ| .| | | | | | | | \|ヽ |
ヽ/|ヽ .|_| |_| .|_| .|_| / |
∧ /| | \_______ / / ヽ
/ ヽ/ |___| \_______/| |_ / | /|
|\ /_.」T /| | ) / \\_/ . |/ |/|
.ー| .\ 」 > ヽ ./ ( )/ ( 」 ̄\|__
/ ̄ \_/ / |___\ /____/ | | //
\ |\ // ヽノ .| | |\ / \
\\ .| ) / ./ ι | μ | | |_」 //彡 \_
.\ \二__.| | )αζ .| λρτ >>____/ | ..\
0092デフォルトの名無しさん
NGNG> >>67
> もちろんLinux上では動きませんよ。
> あくまでもDirectXも使えると言うことです。
機種依存しない言語では・・・・・?
0093デフォルトの名無しさん
NGNG| 先頃閉鎖されましたロビーに代わりまして爆問板新設だそうです。
\____________ _______
V
,――、 ,――、
/ ヽ \
| _.ム |
,――、 ,――、 \ ――  ̄\ノ
/ ヽ | / \ |
| _.ム ノ / ー ー | |
\/ ̄  ̄ ̄\ |fエ:エi fエ:エi | |
/ ,-―――-ヽ | __ ● __ | |
/ / / \ | |=__ = | |
| / ,fエ:エi fエ:エi| /_ \ 》 / \
| | __ ● __ | \  ̄ \
| | =__= | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| ヽ /__// < それはないかと。
/| \ /\ \______________
0094デフォルトの名無しさん
NGNG/;;::r‐〜-ミ、 | そちらは私の
4~/へi::::::;/,ヘミ7 | 御稲荷様に
'-l|fエ:エl:::lfエ:エ|i' ノ 御座います。
l! '" |::::l、~`リ へ
/`ー、 ハー;";::i:::ヾイl! ,r'~`ヽ、 \
,.ィ" ri l i ト、 1:|`丶:;;;:イ' ill!7、 、 y; ヽ、_` ー―――――
,. -‐''" 、 くゝソノリ~i | - 、 , -‐'7ハ ヾニト- ~` ー- 、_
, ィ ´ ,ゝ、_ `r' l | 、レ // `テ三..ノく _ ` ヽ、
/ , -' ,、 `、_) l,i, i // (/ ...,,;;;;:` 、 ヽ
;' '" ノ ;;;;:::: i ! : // .....:::::;;イ、_、_\ _ _ノ
l ..,, __,ィ"-‐´ ̄`i::::: ゙゙゙= ...,,,,,. l | ,// - = ""::;; :/ ` '''' '"
ヾ :;;;,, ,i l,// ,,..," / _,,.....,_
,. -- .,_ \ :;,. ;' V ;! `; /;: ノ ,.ィ'"XXXXヽ
/XXX;iXXミ;:-,、 ヾ '" ''' /./! ヾ / ,. - '"XXXXXXXX;i!
,!XXXXi!XXXXX;`iー;,、 i 、. / ;:::゙i ;: , | ,. r'"XXXXXXi!XXXXXX:l!
|XXXXX;|XXXXX;|::::::::|`ヽ、 ,! ,': : :| ,.レ"::::|XXXXXXX|XXXXXXX;l!
!XXXXX;|XXXXX:|:::::::::i ` ;! : : i! / !:::::::::|XXXXXXX|!XXXXXXX|
XXXXXx|XXXXX;!:::::::::::! `. /:: | '" l:::::::::::|XXXXXXX|XXXXXXX |
XXXXXx!XXXXxリ:::::::::::! |:: | i:::::::::::ゞXXXXXツ1XXXXXXX|
XXXXX/ \XXソ::::::::::/ i!:: ノ i!::::::::::::ゞXX:/ lXXXXXXX|
XXXX:/ `ヾ::;;;;;:ツ ヾ;::: ; ノ ヾ:;;:::::::ゝ'" ヾXXXXX |
0095デフォルトの名無しさん
NGNG,,,,;;;;;;;;;;;;;;;;;;;;,,,,,,
,,;;;;;;;;;;;;;;;;;;;;;;---、;:;:;:;:;:,,,
/;;;;;;;;;;,-'''" ゙'''ヽ;;;;;;ヽ
/;;;;;;;;;''' ヽ;;;;l
/;;;;;;;;;'" _ヽ、
r‐、'" ) i';;;;;;;;;;; ,,;;;;;;-=ヽ、
/ / / |;;;;;;;;;;| ,,,,,;;;;;;;;;-、 ‐'"゙_,,,,,,,_\
r‐、' ヽ/ヽ/゙l |;;;;;;;;/ /-─'''''''"ヽ "‐=二 ̄ヽ、
/ ノ / /、ノ |;;;;;;| '",,lfエ:エi‐ ヽ " 、 ヽ
/ヽ、/ヽ/ヽ/ / ,┴、;| ==ニ-‐'" , ヽ、 ゙i
/ヽ、/ / /、_/ |l |ヽl /l >\ i
/ /--/、/_ / \|lノl /└-‐ヽ-‐' ヽ i
/ ─'''" ''、/ l、 ゙| / ,,---'ニ=メ i .|
/ / ヽ-i i' /-l「ヽ┼+// ;; / みんなのアイドル三瓶です!
./ ─-、__,,-- / ヽ、 ヽ=ヽ─++-''ノ /、
/ / ̄ヽ ,,,,\ ヽ ゙‐─''''''"~ / ヾヽ、
/ / ゙\____,,-''''" \ / )
./ / l'" ヽ、 \ヽ、 / /
l l __,,,,ノ \ ゙''ヽ 、,,,__,,;-'" /
l ,,,-─''"
0096デフォルトの名無しさん
NGNGあくまでもスタンドアロンを前提とした仕様なんだろ?
DirectXなんか「あくまでも」の仕様らしいし。
0097デフォルトの名無しさん
NGNG0098デフォルトの名無しさん
NGNGで し // ̄> ´  ̄  ̄ `ヽ Y , ´ ) 斗 え
に か L_ / / ヽ 神 |
死. し / ' ' i 拳 マ
ん て / / く !? ジ
で ウ l ,ィ/! / /l/!,l /厶,
る チ i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ
わ ラ l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
け っ _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
? て 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ キ 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) モ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く | > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! イ ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ
0099デフォルトの名無しさん
NGNGS ハ // ̄> ´  ̄  ̄ `ヽ Y , ´ ) ハ え
S ゲ L_ / / ヽ ゲ |
A. が / ' ' i !? マ
だ 許 / / く ジ
け さ l ,ィ/! / /l/!,l /厶,
だ れ i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ
よ る l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
ね の _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
l は 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ キ 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) モ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く | > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! イ ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ
0100デフォルトの名無しさん
NGNG0101デフォルトの名無しさん
NGNG9 河 // ̄> ´  ̄  ̄ `ヽ Y , ´ ) 河 え
点 原 L_ / / ヽ 原 |
差 が / ' ' i !? マ
以 抑 / / く ジ
上 え l ,ィ/! / /l/!,l /厶,
か ら i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ
ら れ l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
よ る _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
ねの 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
│は ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ キ 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) モ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く | > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! イ ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ
し! _ -── ‐- 、 , -─-、 -‐─_ノ
0102デフォルトの名無しさん
NGNG0103デフォルトの名無しさん
NGNG何をもって価値とするかは人によって違うからなぁ・・・。
言語作ってメシを食っていく、ということに価値を置くなら、アメリカ行ってSunかMSに就職
するしかないし。
誰にも使ってもらわなくてもいいから、とにかく作ることに価値を置くなら、>>1 のやり方でよい。
もうプログラミングに新しいパラダイムなんて生まれないし、新しい言語の必要性は無い。
0104デフォルトの名無しさん
NGNGし! _ -── ‐- 、 , -─-、 -‐─_ノ
9 河 // ̄> ´  ̄  ̄ `ヽ Y , ´ ) 河 え
点 原 L_ / / ヽ 原 |
差 が / ' ' i !? マ
以 抑 / / く ジ
上 え l ,ィ/! / /l/!,l /厶,
か ら i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ
ら れ l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
よ る _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
ねの 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
│は ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ キ 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) モ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く | > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! イ ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ
し! _ -── ‐- 、 , -─-、 -‐─_ノ
0105デフォルトの名無しさん
NGNGまつもとゆきひろもその一人だった。しかし Ruby ですら最初は広く使ってもらおうとは
考えなかったし、本当に単なる趣味以外の何者でもなかった。メシのタネになるとは夢
にも思わなかったという。
趣味とは何かってことを考えると、いろんな人がいるもんだと思うよ。
0106デフォルトの名無しさん
NGNGし! _ -── ‐- 、 , -─-、 -‐─_ノ
9 河 // ̄> ´  ̄  ̄ `ヽ Y , ´ ) 河 え
点 原 L_ / / ヽ 原 |
差 が / ' ' i !? マ
以 抑 / / く ジ
上 え l ,ィ/! / /l/!,l /厶,
か ら i ,.lrH‐|'| /‐!-Lハ_ l /-!'|/l /`'メ、_iヽ
ら れ l | |_|_|_|/| / /__!__ |/!トi i/-- 、 レ!/ / ,-- レ、⌒Y⌒ヽ
よ る _ゝ|/'/⌒ヽ ヽト、|/ '/ ̄`ヾ 、ヽト、N'/⌒ヾ ,イ ̄`ヾ,ノ!
ねの 「 l ′ 「1 /てヽ′| | | 「L! ' i'ひ} リ
│は ヽ | ヽ__U, 、ヽ シノ ノ! ! |ヽ_、ソ, ヾシ _ノ _ノ
-┐ ,√ !  ̄ リ l !  ̄  ̄ 7/
レ'⌒ヽ/ ! | 〈 _人__人ノ_ i く //!
人_,、ノL_,iノ! /! ヽ r─‐- 、 「 L_ヽ r─‐- 、 u ノ/
/ / lト、 \ ヽ, -‐┤ ノ キ 了\ ヽ, -‐┤ //
ハ キ { / ヽ,ト、ヽ/!`hノ ) モ |/! 「ヽ, `ー /) _ ‐'
ハ ャ ヽ/ r-、‐' // / |-‐ く | > / / `'//-‐、 /
ハ ハ > /\\// / /ヽ_ ! イ ( / / // / `ァ-‐ '
ハ ハ / /! ヽ レ'/ ノ > ' ∠ -‐  ̄ノヽ /
{ i l ! / フ
し! _ -── ‐- 、 , -─-、 -‐─_ノ
0107デフォルトの名無しさん
NGNG本当に言語を作っているならレス削除依頼を、
そうでないならスレッド削除依頼をしてくれ。
0108デフォルトの名無しさん
NGNGマジでスパゲティコードむかつくから。
メンテナンスしやすい言語にしろよ。
人気が出そうなときは責任もてよ。公害をもたらしたM$みたいななめたことしたら頃す。
核兵器を発明しておいて、買取人が核兵器と核兵器製造法を持ち出しておいて
ほうっておいて「あとは知らない」で済ませるなよ。まじでムカツクから。
0109デフォルトの名無しさん
NGNG0110デフォルトの名無しさん
NGNG0111デフォルトの名無しさん
NGNGバグばっかり出しているくせに「俺は○言語使えるんだぜ。すごいだろ。」って
×言語ユーザを馬鹿にしているのが目に浮かぶよ。
0112デフォルトの名無しさん
NGNG0113デフォルトの名無しさん
NGNGそう奴らを責めるな。
0114デフォルトの名無しさん
NGNG0115デフォルトの名無しさん
NGNG0116デフォルトの名無しさん
NGNGAA荒らしが収まったところで、そろそろ語れや
0117デフォルトの名無しさん
NGNGそうムキになるな。
0118デフォルトの名無しさん
NGNG> クソなのは低レベルな奴らであって言語は関係ないんだけどな。
> バグばっかり出しているくせに「俺は○言語使えるんだぜ。すごいだろ。」って
> ×言語ユーザを馬鹿にしているのが目に浮かぶよ。
VB厨がマウスでGUIアプリでちょっと作れたくらいでGUIプログラミング経験ない
他言語の香具師を馬鹿にしているのと同じ。
0119デフォルトの名無しさん
NGNGAA荒らしをしていた張本人はVB厨(ワラ
0120デフォルトの名無しさん
NGNG0121BOX ◆l1pRZFR5UE
NGNG昨晩は早くに寝てしまいました。
いろいろ言われてますが、へこたれずにみんなの納得のいく物を作って見せたいと思います。
むしろもっといろいろ言って欲しいです。参考になりますんで。
作業に戻ります。
0122デフォルトの名無しさん
NGNGbisonでつくっちょるの?
JavaベースにしてJavaコンパイラ、JVMのソースコードを参考にしてつくっちょるの?
0123デフォルトの名無しさん
NGNGどっかで聞いた事があると思ったらmacromediaという会社が出してる
オーサリングツールの『Director』っていうソフトに乗っかってるスクリプト
言語の名前が「Lingo」。チトかぶってない?
リンゴがダメならmikanってのは・・・カワイイとおもふが。
0124デフォルトの名無しさん
NGNGJ-1がいいと思ふ。
0125デフォルトの名無しさん
NGNG0126デフォルトの名無しさん
NGNG少なくともC#やPHP、Perlなんかより身近な単語たと思う。
0127デフォルトの名無しさん
NGNGやーいペケ箱
0128デフォルトの名無しさん
NGNG0129通りすがりのしぃもあ老師
NGNG言語の製作にはどんな言語を?
ちなみに我は温かいスープを
0130デフォルトの名無しさん
NGNG0131デフォルトの名無しさん
NGNGYsの登場人物にもいた
0132デフォルトの名無しさん
NGNGに一票
0133名無し@沢村
NGNG>> クソなのは低レベルな奴らであって言語は関係ないんだけどな。
HSPでも?
0134デフォルトの名無しさん
NGNG0135デフォルトの名無しさん
NGNG| |- 20
| |
| |- 10
| |
| |- 0
| |
| |- -10 ∧_∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄
|┃| (´∀` ) < このスレ寒すぎ
|┃| ( ) \_______
. (●) | | |
 ̄ (_(__)
0136名無し@沢村
NGNG>> クソなのは低レベルな奴らであって言語は関係ないんだけどな。
のまいらよ、低レベルな奴らは、なぜ高度なことを習得できないんだろうね?どう思うよ?
まあ頭が悪いからなんだが、低レベルな奴らの中にも、すごく頭のキレるやつがいることをおれは知ってるよ。
例えば一度教えただけで、すぐに仕事の要領を飲み込んだり、頭の回転が早くて計算をパッパッパッとしたりだよ。
だから低レベルな奴らが全員頭が悪いかというと、いちがいには言えないんだよ。
だが、低レベルな奴らって、高度なことに限っては絶対に習得できないんだよ…!!
必ずしも頭が悪いわけではないのに、何が欠けてるんだろうね?
おまいらよ、どう思うよ?
0137デフォルトの名無しさん
NGNG0138デフォルトの名無しさん
NGNG0139デフォルトの名無しさん
NGNG0140デフォルトの名無しさん
NGNG0141デフォルトの名無しさん
NGNG0142デフォルトの名無しさん
NGNG0143デフォルトの名無しさん
NGNG0144デフォルトの名無しさん
NGNG糞コードを書く奴→低レベル
何も書かない奴→糞以下
>>143→糞
0145デフォルトの名無しさん
NGNGPrintf("%dお前ら全員糞以下%s");
}
0146デフォルトの名無しさん
NGNG0147デフォルトの名無しさん
NGNG0148BOX ◆l1pRZFR5UE
NGNG>>146
アップしないのでは無く、現時点ではまだ出来る状況ではありません。
もう暫くお待ち下さい。
>>147
オープンソースにする予定です。
そうなると他力本願と言われても仕方ないです。
明日は早いのでもう寝ます。
0149146
NGNG開発言語は?
1. 今は秘密にしておく必要がある。
2. 自分が使ってる言語の名前も知らない。
3. 話をそらしているだけで結局は脳内。
なあみんな、3だろ? 3以外ないよな?
0150147
NGNG漏れも、 >>1 が 3.に該当するという意味で他力本願だと思った。
>>1はyacc/lexすら知らなかったとか。
こりゃだめだ>>1
じゃ、XMLパーサ作ってXML応用規格にして作ってしまえよ。
そりゃいやだ?
じゃ、既存の言語に改良を加えろよ。AspectJみたいによ。
それもできない?
結局こりゃ駄目だ>>1
0151デフォルトの名無しさん
NGNGそれはなんていう言語か?
お前が作った言語なのか?
0152デフォルトの名無しさん
NGNG実力が無くアドバイスも出来ないから妬ましいのか?
0153デフォルトの名無しさん
NGNG概要だけ並べるだけなら厨房の脳内でも出来る
情報を隠して秘密裏に開発するのならスレを立てた意図が不明
プロトタイプすら公開出来ていないうちからスレを立てると言うことは
>>1に開発にあたっての集中力、忍耐力が無いことを意味する
それは開発に対する逃避行動の表れ
というのが>>6の理由説明
0154デフォルトの名無しさん
NGNG欠点のある人間はいくら責めてもかまわないということなのか?
どういう境遇で育ってきたんだ?
まあ、楽しいなら止めろとは言わないけど。
0155デフォルトの名無しさん
NGNGだから何で静観出来ないんだ?
煽る必要性は無いだろ。
0156デフォルトの名無しさん
NGNG密かに期待しているから。
0157デフォルトの名無しさん
NGNGもっと情報出してよ!!
0158デフォルトの名無しさん
NGNGその新しい言語は、macでも使えるんですか?
0159デフォルトの名無しさん
NGNG0160デフォルトの名無しさん
NGNG0161デフォルトの名無しさん
NGNG0162デフォルトの名無しさん
NGNG↓
0163デフォルトの名無しさん
NGNG↓
0164デフォルトの名無しさん
NGNG→→→→→↑
1です。
0165デフォルトの名無しさん
NGNG0166デフォルトの名無しさん
NGNG>1はそういう男だ。
0167デフォルトの名無しさん
NGNG0168デフォルトの名無しさん
NGNG↓
0169デフォルトの名無しさん
NGNG織田信長でもつくるのかい?
0170デフォルトの名無しさん
NGNG↓
0171デフォルトの名無しさん
NGNG<true value="foo">
<and>
<false value="bar">
<then>
<!-- process -->
</then>
<else>
<!-- process -->
</else>
</if>
xml でカンタンなインタープリタが欲しいんだけど、↑みたいな
言語で、しかもカンタンに拡張可能なものは無いですか。
Java で使えるものがキボーン
0172デフォルトの名無しさん
NGNGそれだけで既にXMLとして文法エラーを起こしている
勉強し直して出直せ
0173デフォルトの名無しさん
NGNG最強のコンパイラを考えたので聞いてくれ
まずメモ帳にプログラムのやる事を日本語で書く
例えば
「FTPでダウンロードできて軽くて高機能なソフト」
と書く
それをコンパイラーに掛けるとコンパイラーが日本語の文を理解して
書いたとおりのソフトが簡単に完成するのだ
0174デフォルトの名無しさん
NGNG空要素にすらっしゅがついていないぞl。
まるで、JSPの新型カスタムタグライブラリのようだ。
0175デフォルトの名無しさん
NGNGすでに存在するAIが作った経験があるソフトしかできないと思うぞ。
現在のAI技術では
0176デフォルトの名無しさん
NGNGJavaで使えるようにするにはMixJuiceやAspectJみたいなものにするってこと?
それか、JavaCCを使って作るということかな。
新しい言語もJavaで作ると。
0177デフォルトの名無しさん
NGNGそこを作るのが>>1の技術力なんだよ
素人はすっこんでろ
0178デフォルトの名無しさん
NGNGうっさいお前に言われたくない。素人呼ばわりするなら>>1に言え
0180デフォルトの名無しさん
NGNG0181デフォルトの名無しさん
NGNGいちいちレスつけるなよw
0182デフォルトの名無しさん
NGNG0183デフォルトの名無しさん
NGNG0184BOX ◇l1pRZFR5UE
NGNG0185BOX ◇l1pRZFR5UE
NGNG東京で見る鱈はこれが最後ねと
0186デフォルトの名無しさん
NGNG0187414
NGNGDm7onC B♭M7 C7 FM7
F7 B♭M7 A7 Dm7
Dm7onC B♭M7 C7 FM7
0188デフォルトの名無しさん
NGNG0189デフォルトの名無しさん
NGNG自分よりアホを見てるとなごむよ。
0190デフォルトの名無しさん
NGNGif (i!="あぼ〜ん") do
{
print >>i.レス;
}
}
0191デフォルトの名無しさん
NGNG0192デフォルトの名無しさん
NGNG0193デフォルトの名無しさん
NGNGで
Hello, World!
が出力されるオブジェクト指向言語きぼーん
0194デフォルトの名無しさん
NGNG"Hello World!"
で
Hello World!
がいい。
0195デフォルトの名無しさん
NGNG0196デフォルトの名無しさん
NGNG漏れは、そのプログラミング言語が
どんな し様になってるか早く尻た〜い。
0197デフォルトの名無しさん
NGNGsage以外
ICQでもMSNメッセンジャーでもAIMでもでもいいから連絡ちょうだい!
0199デフォルトの名無しさん
NGNG同意
なんか同レベルの書きこみばっかりだし
そろそろ削除依頼してきなよ>1
0200デフォルトの名無しさん
NGNG0201デフォルトの名無しさん
NGNG0202デフォルトの名無しさん
NGNG0203196
NGNG遠まわしにsageろといってますな。
漏れは、ただこのスレが気になるのだ。
0204デフォルトの名無しさん
NGNGところで鯖落としてどうしたよ?
0205名無し@沢村
NGNG>「FTPでダウンロードできて軽くて高機能なソフト」
>と書く
>それをコンパイラーに掛けるとコンパイラーが日本語の文を理解して
>書いたとおりのソフトが簡単に完成するのだ
入力画面はどうするんだ?世にもダサイ入力画面ができてしまう可能性があるぞ。
0206名無し@沢村
NGNGついでに「OSツクール」もつくってやるから、それでOSつくれ。
0207デフォルトの名無しさん
NGNG残念だ。日本の優秀な技術者2chにカモーン
0208デフォルトの名無しさん
NGNG0209デフォルトの名無しさん
NGNGttp://www.cs.utah.edu/flux/oskit/
0210デフォルトの名無しさん
NGNG0211デフォルトの名無しさん
NGNG0212名無し@沢村
NGNGつまりwindowsで動くソフトはすべて新OS上でも動くようにすることだ。
何といってもwindowsが一番広く使われているからな。
そうすればwindowsのユーザーをごっそりかっさらえるぞ。
そうすればビル・ゲイツより金持ちになれることは確実だ。
それにしてもげいつとひわがなで入力して、そのままゲイツとカタカナに変換できるのは面白いな…。
ナタリーやホーガンやモハメッドはできないのに。
アメリカには多い名前なのかな?
0213名無し@沢村
NGNGつまりwindowsは窓だろ?toplightsは天窓でwindowsの上をいくからだ。
0214名無し@沢村
NGNGだがCやC++やJavaやVBとも互換にしたほうがいい。
つまりCで書いてもJavaで書いてもVBで書いてもコンパイルできてしまうようにすることだ。
もちろんもっと高度なことがやりたければ新言語の文法で書くといい。
そうすれば他の言語のユーザーをすべてかっさらえるぞ。
ビル・ゲイツ以上の金持ちになれることは確実だ。
0215デフォルトの名無しさん
NGNG._v-''¨`.,,vー─-、 .,,vー─-、 .¨'ーu_
_ノ'″ ./′ ¨┐ ./ ゙'┐ .゙'┐
,/′ ./ .ミ .i′ .) ゙\
,/′ | ● | } _●, | \
./′ ._,,、-ミ. . /¨レ .人,_ ミ
.,ノ′ ._ノ'″ \_ ._,rlト冖へy _/ ¨'‐u .゙lr
.,i′ /ー-v、.,,_ ¨^^¨´〔 〕.¨^^¨′ __.,、 ゙\. {
〕 ./′ .⌒''''' \,,,,,,ノ′ v-ー'''¨′ ゙┐ } __________
| ノ .────ー } __,,.,、v--ー'' { .] /
| :| .__,.. .! ` .} .} < のび太君、キミねえ・・
} .| .--:;:冖^ ̄ .| ¨¨¨¨¨¨゙フ¨¨′ .} } \
.| .} .\_ .} ._/ } .:|  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
). .〕 .゙ミzu,_ } _,ノ┘ } /
.{ ). .,/'″ ¨゙(ァv、,_ .! ._,,,,v‐'^′ ,ノ ノ
ミ. 7, .i゙ 〔 `¨¨^^⌒ ,ノ′,/
゙). ゙li. _ノi. ノ .,r′.,ノ
\ ゙>'′^ー、、、v‐′ .,r′ /
.|/ } ./′,/
0216デフォルトの名無しさん
NGNGpublic method check nullpo {
this method return if one is nullpo {
println "ガッ!".
} else {
println "フーン".
}
メソッド呼び出しと代入だけのオブジェクト指向言語が欲しい。
ステートメント完全皆無の言語が。
0217デフォルトの名無しさん
NGNG/;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;; ヽ
/ ;;;;;;;;;;;;;;;;;;;;; ;;;;;;;; ;;;;;;; 丶
/ ;;;;;;: ;;;;;: ;;;;; ;;;;; │
/ ;;;;;;;;;; ;;;;;;;;;;; ;;;;;;;;;; ;;;;; ;;;;; ;;; ;;;;;;;; │
│;;;;;;;;;;;;//|| ||||| || ||||| |||| || ゞ:::::::: :::::::│
│;;;;;;;;;/|| || | |||| |||| ||| ||| || |||| | |ゞ:::::::::::│
∩;;;;;;/丿,;::≡ミミ;;、、 ソ __,,,,、、、.. ゞ::::: /
|/|;;;;// _" _''ヘノ ヾ彡=''_""`` ヾ:::/、
((|ソ ,─≦◎≧ヾ - , ≦◎≧- 、 ヾ|/)
ヾ||| - ̄ ' ヽ  ̄ - ||ノ
ヽ!| / ヽ |ノ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ゝ: 、 ( _ _ ) ノノ < >>1におまかせ
` ヽ / _ヽ ノ ヾ ノ \____________
__>、 ,, '::_`_' _:` 、` ./
/\ _/ ヽ ( /----- ヽ) , ノ
/ \ , 、 、 、ヽ、'  ̄ `ノノ_ ,/
/ \ ヽ ヾ、. ̄ ̄ ( )'丶
/ ' "'' 、 \ \ _,, ̄ ''ノ ` ゙/ \
/ , - 、 ,, `ヽ \/  ̄ヽ ' ヽ ,ゝ--、
/ ヽ | / ノ
,, 、 / ヾ ヾ ヽ-' 、 ,/
- '' ヾ ( ヽ 丶 ! '' ,, ゝ" |
''" \/ヽ ヽ ヽ _ 'i / ヽ
0218デフォルトの名無しさん
NGNGそんな程度で長いなんていうな。
そんな程度ではオブジェクト指向言語もXMLも使いこなせないぞ。
>>212
沢村はウィソ厨だったか。
信用できないOSを作るのがいいってのは笑い事だな。
0219デフォルトの名無しさん
NGNG> そんな程度ではオブジェクト指向言語もXMLも使いこなせないぞ。
どっちも糞だということですか?
0220デフォルトの名無しさん
NGNG'|Hello World!|
=>Hello World!
0221デフォルトの名無しさん
NGNG0222デフォルトの名無しさん
NGNGドゾー
ガムバッテクラサイ
0223デフォルトの名無しさん
NGNG0224デフォルトの名無しさん
NGNGお前も2、3日で行方不明になるだろうから、
その後に俺が乗っ取っちゃいます。 よろしく。
0225デフォルトの名無しさん
NGNGないなら言語仕様でいいから。
それもないなら、SFに今のコードをageろ。
0226SEX ○l1pRZFR5UE
NGNG0227デフォルトの名無しさん
NGNG簡単なプログラムをかくのにクラススコープの内側に関数を書かないと
コンパイルエラーになるからJavaやC#は面倒くさくて嫌だとか
XMLは開始タグを書いたら終了タグも書かないと行けないのが面倒くさい
とかいっているアフォが多くてさ。
>>194みたいなこといっている奴がレベル低い奴にしか見えないんだよな。
0228デフォルトの名無しさん
NGNG書いたときは良いが読むときが無茶苦茶辛くなる
他人の書いた正規表現をすらすら解読出来る人間はかなりの少数だろう
だから高級言語は可読性を上げるため、
はコードが長くなる構造になっても仕方がない
0229MS厨
NGNG可読性なんて、言語で面倒見ないで、ツールで処理すべきだ。
0230デフォルトの名無しさん
NGNG0231デフォルトの名無しさん
NGNGくだらん
0232デフォルトの名無しさん
NGNG0233「は」言語提唱者
NGNGおながいします。
0234デフォルトの名無しさん
NGNG0235デフォルトの名無しさん
NGNG逃げた1以外には誰にも答えられない様な質問だな。
0236デフォルトの名無しさん
NGNG0237デフォルトの名無しさん
NGNG0238デフォルトの名無しさん
NGNGよろ。
0239デフォルトの名無しさん
NGNG0240デフォルトの名無しさん
NGNG0241デフォルトの名無しさん
NGNGオマイはM$厨というよりVB厨だろ。
ツールで処理した結果が、汎用性の高いPC(オブジェクト指向言語)と、
簡単で便利だが特定の分野でしかつかえない
拡張性の殆ど無いワープロ専用機(VB)とに分けてしまうわけだ。
0242名無し@沢村
NGNG>どーでもいいから、モノ見せて見ろよ。モノ。
>ないなら言語仕様でいいから。
おまいよ、ここのやつらにそれを要求するのは酷だよ。
モノなんかないし、言語仕様もできてねーよ。当然、開発途中のコードすらあるわけない。
ここのやつらは、ただ頭の中であれこれ妄想して、ワイワイガヤガヤ語り合うのが好きなだけだよ。
0243デフォルトの名無しさん
NGNGもっとちゃんとすれば普通のスレになったのに(作っている物はともかく)
0244デフォルトの名無しさん
NGNGそうなる前に煽り厨が出てきたからね・・。
スレ立てられたときから見てたけど「1日出てこなかっただけ」ですげー文句言うし。
そりゃー鬱になるって。
出るにも出れないわ。
0245デフォルトの名無しさん
NGNG要するに>>1の我慢が足りなかったせい
ものが出来ていればこんな煽られ方をすることは無かっただろう
プロトタイプが出来る段階まで我慢できなかった>>1が作るものだから、
後から出してきたとしても、結局中途半端に投げ出されていただけだろうが
0246名無し@沢村
NGNGそんなスレばかりだよ。
OSスレだってコンパイラ&スクリプトエンジンスレだって、
プロトタイプなり言語使用なり試作品なり開発途中のコードなりを出したやつなんて、一人もいやしないよ。
ただ頭の中で妄想してワイワイガヤガヤ語り合ってるだけだよ。
0247デフォルトの名無しさん
NGNG0248デフォルトの名無しさん
NGNGゲーム製作技術を見れば、ヒドイのがやまほどある。
0249デフォルトの名無しさん
NGNGそして「Manko」と命名する。
その言語は世界中で大人気となり、やがて書店の棚に
「独習Manko」、「基礎からわかるManko」、「はじめてのManko」
「Manko 500の技」、「Manko逆引き大辞典」などが
並ぶだろう。
0250名無し@沢村
NGNGやはりここは妄想厨しか集まらないことが、これで証明された…
0251デフォルトの名無しさん
NGNG一番トップにこのスレの題名が飛び込んできた。
のけぞった。。。
そして、2ちゃんらしいと思った。
0252デフォルトの名無しさん
NGNGそれはC言語の二番煎じでしかないな
0253デフォルトの名無しさん
NGNG「独習 SEX」、「基礎からわかる SEX」、「はじめての SEX」
「 SEX 500の技」、「SEX 逆引き大辞典」などが並ぶはずだ。
0254デフォルトの名無しさん
NGNG「独習 ANAL」、「基礎からわかる ANAL」、「はじめての ANAL」
「ANAL 500の技」、「ANAL 逆引き大辞典」「やらないか ANAL」などが並ぶはずだ。
0255デフォルトの名無しさん
NGNG「独習 OManko」、「基礎からわかる OManko」、「はじめての OManko」
「OManko 500の技」、「OManko 逆引き大辞典」「やらないか OManko」
「日経 OManko」などが並ぶはずだ。
0256デフォルトの名無しさん
NGNG>>1は真犯人を捜して逃亡中だし
ネタばれになるが、結末は>>1自身が真犯人だったという落ち
そして最後に自分で命を絶つ
0257デフォルトの名無しさん
NGNG相談スレのはずなのだが・・・
コンパイラに関してコンプレックスでもあるの?
0258デフォルトの名無しさん
NGNGかえってこいッテ。
0259名無し@沢村
NGNG0260デフォルトの名無しさん
NGNGもしも〜なのであれば、〜をしてみたら?
0261デフォルトの名無しさん
NGNG0262デフォルトの名無しさん
NGNGあいまいな日本語...
0263デフォルトの名無しさん
NGNGココの連中をプログラマの代表者と思うような#ピー#にどう
思われようとかまわんな。
0264デフォルトの名無しさん
NGNG0265デフォルトの名無しさん
NGNG九割じゃなかったか?
0266デフォルトの名無しさん
NGNG0267名無し@沢村
NGNG九割九分九厘だよ。
0268デフォルトの名無しさん
NGNG0269デフォルトの名無しさん
NGNG0270デフォルトの名無しさん
NGNGまずは彼女だと思われ
「君の子供が欲しい」と言いつつ
いつのまにか姿を消す>>1。
0271デフォルトの名無しさん
NGNG>>1は妻がもういるわけだが。
愛人作れと??
0272デフォルトの名無しさん
NGNG氏ね
0273名無し@沢村
NGNG採用されれば、何千万円もの開発資金を援助してもらえるよ。
もちろん定期的に進行具合をPM(プロジェクトマネージャー)に見せなければならないなどの、面倒くさい点は山ほどあるがね…
だが、それだけあれば、会社なんかやめて、毎日寝てくらせるぞ!!
PMにはアラン・ケイや伊地知をはじめ、いろんな大学教授や企業の研究者などがいる。
またPMは好きなやつを選んで応募できるから、気の合いそうなやつを選ぶといいよ。
これからは、個人でソフトを開発するなら、未踏ソフトウエア創造事業の時代だと思うが、どうよ?
0274デフォルトの名無しさん
NGNGその考え方はイエスだね。
しかし、このプロジェクトに絶対ダメだ。
新しい言語は要らない。あったらむしろ有害。
0275デフォルトの名無しさん
NGNG0276デフォルトの名無しさん
NGNG気になる・・・
0277デフォルトの名無しさん
NGNG>だが、それだけあれば、会社なんかやめて、毎日寝てくらせるぞ!!
矛盾してまつ
0278デフォルトの名無しさん
NGNGたぶん、出勤しなくて寝転がりながらPMに見せるのさ・・
0279デフォルトの名無しさん
NGNG0280デフォルトの名無しさん
NGNG「おまえの作る言語誰もつかわねぇぜ Ok」 ってところまでは分かった、
その後はなんていってるんだ?
0281デフォルトの名無しさん
NGNGOh! Womaeno tsukutta gengo nante daremo tsukawa naize baka oho itteyoshi
こんな感じか?
0282デフォルトの名無しさん
NGNGこのスレ
本気で楽しみにしてた俺はいったい…
0283デフォルトの名無しさん
NGNG嘘を嘘と見抜けない人でも
(掲示板を)楽しむ方法は幾らでもある
0284山崎 渉
NGNG__∧_∧_
|( ^^ )| <寝るぽ(^^)
|\⌒⌒⌒\
\ |⌒⌒⌒~| 山崎渉
~ ̄ ̄ ̄ ̄
0285山崎 渉
NGNG__∧_∧_
|( ^^ )| <寝るぽ(^^)
|\⌒⌒⌒\
\ |⌒⌒⌒~| 山崎渉
~ ̄ ̄ ̄ ̄
0286山崎 渉
NGNG0287山崎 渉
NGNG│ ^ ^ │<これからも僕を応援して下さいね(^^)。
⊂| |つ
(_)(_) 山崎パン
0288独り言
NGNG初心者なら、簡単にスタックマシンでやるのがいいのかなあ。
0289デフォルトの名無しさん
NGNG0290デフォルトの名無しさん
NGNGttp://hima.chu.jp/cgi/prog-bbs/prog.cgi?mode=show&id=620
0291デフォルトの名無しさん
NGNG>翔太 プログラムのサイズがかなり小さいことに驚きました
>メモリー使用量も少なく
>実行速度はアセンブリなのでC言語より早い
>大変凄い作品だと思います
0292デフォルトの名無しさん
NGNG0293デフォルトの名無しさん
NGNG迷言だな。
0294デフォルトの名無しさん
NGNG出力が8086ネイティブなだけで普通のPL/0風言語のようだが。
>>292
CPUが386SX以上なら使えるよ。 > .COMで32bitレジスタ
ただしメモリ参照に使うときは上位16bitは無視されるけど。
0295288
NGNG0296デフォルトの名無しさん
NGNG○オブジェクト指向型で、日本語で記述する言語の機能構成案
1.Object Navigation Engine(仮称)
オブジェクト指向に適した命令セットを持つVM。
日本語言語をいきなりこのVMのバイトコードに変換するんじゃなくて、
PASCALチックな、パージングが簡単な内部言語を用意して、
コンパイラはこいつをコンパイルするようにしとく。
この内部言語をとりあえずSimple Scriptとでも名づけとこうか。
2.Simple Script Translater(仮称)
日本語言語を内部言語に変換する機能。
コンポーネント化しておき、置き換え可能にすると楽しそう。
つまりメイク時の流れは、
・まず、日本語言語を機能2で内部言語に変換
・次に、内部言語を機能1でバイトコードに変換
の2パスになる。
うむ、なんとなく良さげ。
0297デフォルトの名無しさん
NGNGVMのバイトコードってのはつまり、EXE形式なんだよね?
で、実際コンパイルってのはテキスト形式のプログラムから
マシンが読めるバイトコードに変換する、そういう技術ってことなのは理解してる。
そこまでは理解してるんだけど、でも実際
テキストの命令語→バイトコードの変換表みたいなもんってどこにあるの?
いやほんと初心者ですまん。今日、コンパイラを作ったソフト、さらにそれを作ったソフトについて
鶏と卵状態でぐるぐる悩んでたもんで。
0298デフォルトの名無しさん
NGNG>VMのバイトコードってのはつまり、EXE形式なんだよね?
>>296で書いたのは違う意味だけど、それはさておき。
>テキストの命令語→バイトコードの変換表みたいなもんってどこにあるの?テキストの命令語→バイトコードの変換表みたいなもんってどこにあるの?
変換表は自分で作る。バイトコードの意味は、例えば、
http://www.intel.com/jp/developer/design/Pentium4/manuals/index.htm
とか見る。
もっともちゃんとした言語を作ろうとするなら、単なる変換表じゃなくて、「構文解析」を行う。
>鶏と卵状態でぐるぐる悩んでたもんで。
鶏と卵と違って、コンパイラの場合、「バイトコード」というおおもとにたどり着くので、
バイトコードでコンパイラ作っちゃえば良いのだ。
0299デフォルトの名無しさん
NGNGでも変換表は英語かぁ。俺にはちょっと無理だな。
まさかこれを判りやすく解説してるページなんてないだろうし。
0300デフォルトの名無しさん
NGNGそれとは逆方向に突っ走ったエディタってできないかなぁ?
基本的にマウスオンリーでプログラミングできて
例えばIFなんかの文がボタン形式になってて、押したらその行はIF文確定で
IF ○○=○○ THEN
まで書いちゃって、左右の式の内容と=><しか指定できなかったり
しかも全体表示のしかたがエクスプローラーぽくなってて
処理内容がディレクトリ内容表示みたいで、しかも+-クリックで開閉できたり
前段取りの宣言部分と、実際に実行する部分と、サブルーチンの部分を
しっかりくっきり分けちゃったりで、おせっかいすぎてうざいくらいの親切設計。
入り口は広いが底は浅い。とにかく間口が広いだけで
そんなのがあったらほんとにDQNしか使わないだろうなぁってDQN言語w
妄想バリバリのスレ汚しでした。すまん。
0301デフォルトの名無しさん
NGNGターゲットはXSLTだったんだけど、結果は失敗。。。
XSLって書くの難しい→じゃあGUIでボタン押してできるようにすれば簡単になる
てな発想だったんだけど、結局のところ元の言語をちゃんと理解してないと操作できなかった。
で、元の言語をちゃんと理解してるんなら、テキスト入力形式のほうが効率がいいという。。
というわけで、>>300の方向を目指すなら、まずGUI操作にマッチするような言語を
デザインするのが重要かも。
0302デフォルトの名無しさん
NGNG0303デフォルトの名無しさん
NGNG0304デフォルトの名無しさん
NGNGmes [萌美]: # 2バイト文字は文字列扱い。前後の空白は無視される。空白出したいときは、""で囲め。
mesln あなたもこれで立派なプログラマですぅ! # lnだと最後に改行が入る。
mesln 天国のお母さんもきっと絶対確実に喜んで
いるに違いないですぅ! # 文字列中で改行しても改行が入る。
# というか、未定義の単語で始まっている行は、前行から改行を含んで継続していると見做される。
image $サンプル = @背景.青空 + (@萌美.笑[人物左] + @作者.汗[人物右]) # バッファ上で画像の重ね合わせ処理。
# @はリソーステーブルを参照し型を決定する、[]は座標を表す。人物左など、前もって定義した別名も使える。
func showre $画像 # 関数も定義できる。
show $画像
release $画像
. # 関数定義終わり。
showre $サンプル # 表示してバッファを開放する。
wait # キー入力を待つ
action フェードアウト # 定義済みの効果を起こす。
0305デフォルトの名無しさん
NGNG> # というか、未定義の単語で始まっている行は、前行から改行を含んで継続していると見做される。
ターミネータもないのにそれじゃ、えらく扱いづらい仕様だな。
0306いちゆ
NGNG0307デフォルトの名無しさん
NGNG0308デフォルトの名無しさん
NGNG欲しいものが目の前にぶら下がっていても、
それに手を伸ばそうともしない奴には
決して手に入れることはできません。
0309デフォルトの名無しさん
NGNG((a :accessor foo-a
:initform 1
:initarg :a)))
0310デフォルトの名無しさん
NGNG0311デフォルトの名無しさん
NGNG0312デフォルトの名無しさん
NGNG・ダイナミックスコープ。また、スコープがファーストクラスオブジェクトである
・通常は strict に評価を行うが、CPU 使用率が高くなれば non strict に動的に変更する
・バックトラック時には各々の枝にプロセスを割り振り、カットによって同期が取られる
・全ての変数は事前に宣言されており、且つその変数は自分自身の変数名で初期化されている。
すなわち代入操作をしない限りにおいて、変数、変数名、及びその実体を区別する必要がない
0313デフォルトの名無しさん
NGNG0314デフォルトの名無しさん
NGNG最初はインタープリタ言語で行こうかと思ったのですが、やはり高速化するために
コンパイラ言語に一から作り直しました。
機種依存の無い汎用性の高い言語を目指してます。
ただJAVAと違うのはライブラリには手を出さないこと、ぶっちゃけ自己拡張するしか道がないことです。(ここらへんはあsdふぁsdfふじこp;@
もちろん業務用データベースソフトも作れます。たぶn
0315314
NGNGHTMLで作れますかね(^^^^^^^
0316314
NGNG(>>1を筆頭として大抵「新しいプログラミング言語」スレ立てちゃう子は
言語そのものとライブラリ(や開発環境)を分離できてないよねーキャハハ。)
SmalltalkやLisp,Forthみたいに基本はとてもシンプルな物を考え出したい。
考え出したい。
無理でした。
うんこ。
0317314
NGNGhttp://directory.google.com/Top/Computers/Programming/Languages/Functional/
http://directory.google.com/Top/Computers/Programming/Languages/Logic-based/
ここら辺りだろうか。
pure-objectiveなのも気になる。ぷろとたいぷべーすだっけ?
http://www.iolanguage.com/
これとか。
ガベコレ実装すんのめんどくせーだろーなー知らないし
0318デフォルトの名無しさん
NGNGどうやって実装すべきかわからない。
たとえばstring型の変数を宣言するとコンストラクタでバッファが確保される、
というようなことをやってるんだけど、
string s[10];
程度ならなんとかなるけど、
struct A{
struct B {
string b[10][10];
};
string c[10];
};
A a;
とかになってくるともうわけわからん。
こういうのって決まった実装方法とかあるんだろうか?
0319デフォルトの名無しさん
NGNG再帰的に解析しろよ。
再帰が何なのかわからんのなら、時間の無駄かもな。
基礎からやり直せ。
0320デフォルトの名無しさん
NGNG0321デフォルトの名無しさん
NGNGマシン語の知識がないので
実行ファイルを作れそうにありません。
独自言語のソースをCやJAVAのソースに変換
するっていうアプローチもアリですか?
0322デフォルトの名無しさん
NGNG0323デフォルトの名無しさん
NGNGスクリプトもとい中間コード形式にしてしまうのも良いのでは?
Java のような形式にすればイマドキ感が醸し出せます
0324デフォルトの名無しさん
NGNGLISP や Scheme では幾つかそういう処理系あるよ。Dylan とか Eiffel とかも
C コンパイラをバックエンドに使ってたような。ある程度プラットフォーム非
依存に出来るし、最適化も C コンパイラにお任せ出来る。あと、実装によって
はC をインラインアセンブラみたいに使えたりするのが利点かな。
gcc のフロントエンドを書くっていう手もあるらしいけど、まんどくさそう。
0325デフォルトの名無しさん
NGNGもしそのアプローチを禁止していたら、
C++ はこの世に存在し得なかっただろう。
0326デフォルトの名無しさん
NGNGC++ はもともと C のトランスレータとして実装されたんだったか
今思い出した
いや、漏れは 321 ではなく 323 だが
0327デフォルトの名無しさん
NGNG全てのコードをレシーバに対するメッセージとして逐次処理する脳内言語を妄想中です
んでもって少し考えてみたら、C で
x = 1 + 2;
と記述する文が、脳内言語で
:1 + 2 -> x;
となったんだけど、止めたほうが良いと思う?
0328デフォルトの名無しさん
NGNG>全てのコードをレシーバに対するメッセージとして逐次処理する
Smalltalkでは駄目ですか?
> :1 + 2 -> x;
: が激しく気になる。
: は必要なんですか? : がレシーバだとすると、一体なんなんだろう??
0329デフォルトの名無しさん
NGNGで、何の利点があるの?
0330デフォルトの名無しさん
NGNG代入だけでなく、分岐、ループ、エラー処理、関数定義/呼び出し等々は
どうなってるの?
0331デフォルトの名無しさん
NGNGソレ系の基礎的な本でも読んで出直してきてね
0332デフォルトの名無しさん
NGNG0333327
NGNG: はただ単に行の先頭を表す文字です
: 〜 ; または ( 〜 ) を1つの文として、
全ての文が
:[レシーバ] [メッセージ1] [メッセージ2] … [メッセージn];
となるようになってます
メッセージを受け取ったレシーバは、別なオブジェクトをレシーバとして再設定
(つまり関数)することが出来るので、
:1 + 2 -> x;
の文では、
1) レシーバを 1 として、まず + が送られる
2) 関数 + 内にて次のメッセージが Pull され、結果の 3 が新しいレシーバになる
3) 新しいレシーバ 3 に「ニックネームを付けるメッセージ ->」が送られる
4) 手続き -> 内にて、次のメッセージが自分のニックネームであることをシステムに通知
という手順です
判り難くてすみません
>>329
利点なんか無いです
ただ暇だったから考えてみただけで、実装する気は今のところありません
0334327
NGNG:Object Create -> Tarai
<- Calc {
:System NextMsg -> x;
:System NextMsg -> y;
:System NextMsg -> z;
:If (x <= y) {
:Self Create Calc
(Self Create Calc (x - 1) y z)
(Self Create Calc (y - 1) z x)
(Self Create Calc (z - 1) x y)
-> Result;
}
}
:System Print (Tarai Calc 12 6 0);
・プロトタイプ型の処理系
・<- は新しい手続き用のスロットを作成するメッセ−ジ
・文の中に文を入れ子にすることが出来る
・ニックネーム(変数)のスコープがインスタンス毎にあるので再帰が作りにくい
・エラー処理のみ考え付きませんでしたが、制御構文は全てこんな感じ
・あまり深く考えては駄目です。全てフィーリングにて
長くてすみませんです
荒らしと判断したら、どうぞご自由に削除なり何なりと
0335327
NGNGスルーor脳内変換よろ
0336デフォルトの名無しさん
NGNGうーん、文末の区切り(;)がはっきりしてれば、
文頭を表す記号はなくても、構文解析出来ると
思うのですが、: になにかこだわりがあるのでしょうか?
それとも、: がないと構文解析出来ない例があるとか?
まてよ、>>334の例では、もしかして、関数を再帰呼び出しするたびに、
関数オブジェクトを毎回作りなおしてるんですか??
関数がオブジェクトだとしても、引数をスタックとかに
積んどけば、作り直す必要はないと思うけど。。。
あえて、そういう構文をめざしてるんでしょうか。
0337デフォルトの名無しさん
NGNG1 + とやると1オブジェクトに+メッセージが送られて、
1を足す、というクロージャオブジェクトが生成し、
それに引数の2が渡される、とかにするのはどうだろう。
0338デフォルトの名無しさん
NGNGif 文はメッセージ式じゃないのね?
0339327
NGNGコード内の2つの } の後ろに ; が抜けていました
訂正します
>>336>>337
":" は、今考えたら必要ではないように思えてきた
必要性が思い出せないという事はあまり重要な事じゃなかったのかのかも
要再考
とりあえずオブジェクトを作り直すようにしているのは一種のこだわりです
関数を実行するオブジェクトをワーカーとして、他のワーカーに丸投げ ^^;
>>338
とりあえず、関数名や引数などを、区別せずにメッセージとしてます
if に true もしくは false メッセージが送られた後、所謂メッセージセレクタ内で、
その後のメッセージブロックを実行するかどうかで分岐を行っています
なので、if 文は(一応、こちらの定義上は)メッセージ式です
なお、メッセージセレクタを直接スクリプト内から弄れるようにするかは未定です
以上です m(_ _)m
0340デフォルトの名無しさん
NGNG> なので、if 文は(一応、こちらの定義上は)メッセージ式です
if文もメッセージ式だとすると、else節はどう扱うんでしょうか?
0341327
NGNGboolean1 block1 elseif boolean2 block2 else block3;
のような順にメッセージを受け取ることを考えてました
……ですが、全ての if オブジェクトは単一インスタンスになっているということに気づき、
このままでは入れ子したときに不味い事が判ったので、Smalltalk の ifTrue 形式に変えます
これならば入れ子は問題ないですし
質問ですが、現在オブジェクト指向と言っておきながら、メッセージがオブジェクトに関連付けられてません
仮に Foo オブジェクトの Bar メソッドを実行しようとして Foo Bar; としても、
Bar という名前のニックネーム(変数)が既にある場合、何の問題も無く変数展開されます(cry
関数名と引数を同一視するという構造にも問題があるような気がしますが、
上手く使えば関数名を変数に入れて起動……なんてこともできるかもです
こちらでも色々な事を必死に考えていますが、何か改良案ありましたらお願いいたします
相変わらず長くてすみません
いろいろと整理が付いてきたので、迷惑ならばそろそろ消えようと思います
0342デフォルトの名無しさん
NGNGつまり、 1 -> Bar; のあとに、 Foo Bar 2; とかしたとき、
Foo Bar 2; が Foo 1 2; という文に変換されちゃうってことですか。
これは結局、Barがいつ評価されるのかが、はっきり決まっていないのが
問題なんじゃないかと。
Fooというオブジェクトにメッセージを送るまえに、Barを言語側で
勝手に評価する規則だとすると、オブジェクト指向言語としては
成り立たないと思います。
だいいち、そういう仕様だと、
1 -> Bar;
自体が成り立たないでしょうね。この文で、Barを評価してしまうと
変数Barには、いつまでたっても1が代入されないし。
というわけで、メッセージは受け取ったオブジェクト側で責任をもって
評価する規則にしておけばいいような気もします。
Foo Bar hoge;
という文のとき、(Lisp風に言えば)シンボルBarをそのままシンボルとして
扱うのか、中身を取り出して使うのかは、レシーバー側の責任ということで。
0343327
NGNG現時点では、前のメッセージが送信し終わった後か、レシーバから要求があった時に評価されます
前者は、関数そのものの起動、後者は、関数に対する引数として使う方法ですが、
関数自体は引数評価前に起動する点が、一般の言語と違います
ちなみに次のメッセージを評価し返す命令は >>334 の System NextMsg です
メソッド -> は、『無条件で次の語が Self のニックネームである』ということをシステムに通知します
通知の直前では Bar は未評価のため、システムは変数 Bar を評価することなく、オブジェクトを代入することができます
もちろん、その後に Bar は (通常の引数処理とは違う意味で) 評価されたことになりますが
ということで 342 さんの意見も取り入れて、文全体の構成を改めて見直してみると
1) 無条件でレシーバに設定される、文頭のリテラルor変数
2) メッセージセレクタを通り、関数起動に使われるメッセージ文字列
3) 関数の引数として、関数から取得要求されるリテラルor変数orメッセージ
ということが判ったので、1 は変数を展開する、2 は展開しない、3 はレシーバ側で判断という方向性で
0344327
NGNG関数から取得要求されてないメッセージは、変数展開する必要がなくなりました
また、>>336 で指摘された : は、クラスベースで考えていた頃、括弧の中身が複数行になってしまい、
何となく見た目が変だった為に括弧の代わりとして導入したものだったということを思い出しました
度重なる仕様変更で、必要でなくなった仕様が彼方此方に見受けられます ^^;
要最適化
0345デフォルトの名無しさん
NGNG蒸し返して悪いけど、>>334のたらいまわし関数は
下のようには書けないんでしょうか?
こう書ければ、やや見やすいと思うんですが。
System <- Tarai { // グローバルなメソッドを定義してるつもり
System NextMsg -> x;
System NextMsg -> y;
System NextMsg -> z;
(x <= y) ifTrue {
Tarai (Tarai (x - 1) y z)
(Tarai (y - 1) z x)
(Tarai (z - 1) x y)
-> Result;
};
};
System Print (Tarai 12 6 0)
0346デフォルトの名無しさん
NGNG>Fooというオブジェクトにメッセージを送るまえに、Barを言語側で
>勝手に評価する規則だとすると、オブジェクト指向言語としては
>成り立たないと思います。
メソッドがオブジェクトに属していない言語ならありなんじゃないの?
良く知らないけど、CLOS とかってメソッド辞書を(個々のオブジェクト
じゃなく)処理系が管理しているんだよね?
0347デフォルトの名無しさん
NGNGって流行りなの? io とか slate とか soopy とか。
0348デフォルトの名無しさん
NGNGとりあえず説明用に以下のことを前提とします。
1.Fooというオブジェクトがある。
2.オブジェクトFooには、Barというメソッドがある。
3.グローバル変数Barがあり値は1である。
CLOSで書けば、こんな感じ↓
(defclass Class-Foo () ())
(defmethod Bar ((Foo Class-Foo)) (print "method bar"))
(setq Bar 1)
(setq Foo (make-instance 'Class-Foo))
(Bar Foo) ;; => "method bar"
で、>>342で問題にしているのは、上のCLOSの例で言えば、
(Bar Foo) が メソッドBarを検索する前に、
(1 Foo) という式に変換されてしまうということです。(グローバル変数Barの値が1だから)
で変換された後では、Barというシンボル(メソッド名)は
失われてしまうので、メソッドBarが呼び出されることはない
というお話です。なので、メソッドがどこに属しているか
という話とは、あまり関係がないと思われます。
0349デフォルトの名無しさん
NGNG流行ってるのかどうかはわかりませんが、
新しい言語を作ろうとしたとき、たいていは、
1.既存の言語の気に入らないところを直したような言語
2.今までに存在していない(ような気がする)タイプの言語
のどちらかの言語を作ることになりそうです。
2を選んだ場合、
クラスベースはもうありふれているから嫌
とか
ちょっと文法を変えただけのPerlとかは嫌
とか思って、勢いマイナー路線を爆心することになるのでは
とか想像してみたり。。。
0351347
NGNGマイナーかもしれないですけど、メッセージパッシングスタイルってシンプルで
良いと思うんですよね。分岐とかループもこれ一つで表現出来るというのは S 式
に通じる物があるんじゃないかなと思います。
0352327
NGNGグローバルメソッドは作りたくないです
基本的な「あーきてくちあ」は「処理をワーカーに丸投げ・・・もとい委託」ですから
>>347
初めはただ言語を作ってみたい、ってだけだったんですよね
シンプルにシンプルに・・・と考え続けて構文がシンプルになりました
ラクしたかっただけなので >>349 のどちらにも当てはまらないです
0353327
NGNG次のメッセージを評価せずにスキップできるような機構は考えていたけど、
これ使えばたらい関数がもっと速くなりそうな予感
0354デフォルトの名無しさん
NGNGいや別に、メッセージパッシングスタイルは嫌いじゃないですよ。
ただ個人的には、分岐とかループは、メッセージパッシングじゃない
ほうが効率よく実装でき(そうな気がし)て良い気がしたりはしますが。
>>353
実際に遅延評価を実装しようとすると、引数が評価されるときの
環境(というかスコープ?)を常に持っていなければならないのが
アレですが。。。
0355デフォルトの名無しさん
NGNGいや、グローバルメソッドじゃなくてもいいので、
せめて、こういう風↓には書けないんでしょうか?
Object Create -> App;
App <- Tarai {
System NextMsg -> x;
System NextMsg -> y;
System NextMsg -> z;
(x <= y) ifTrue {
Self Tarai (Self Tarai (x - 1) y z)
(Self Tarai (y - 1) z x)
(Self Tarai (z - 1) x y)
-> Result;
};
};
App <- Main {
System Print (Self Tarai 12 6 0)
};
App Main;
#出来ればSelfも使わないですませたいなぁ。
0356327
NGNG色々と文句言われていますが、これだけはどうしようもないんです……と思ったけどもしかしたら可能かも
技術的には可能・メッセージセレクタを起動する際に引数をスタックに積めば良い
ただし構文上 Self | それに等しい何かに対して明示的にメッセージを送る必要はありますが
現在の使用では、変数は各ワーカーごとに管理されている模様
スコープもワーカー内、ちょうど各ワーカーに1つ、HSP アプリが対応しているような感じ
実行環境の実装と、作成できるプログラムのモデリングがちょっと簡単になるはず
ただし実行環境を開発するときは C 系だけど
0357327
NGNG完全な遅延評価、とまではいきませんが、ある程度引数の取捨選択はできるようです
以下、今までの変更も含めた、たらい関数最新版
Object Cleate -> Tarai # たらい関数実行ワーカー
<- Calc {
System NextParam -> x;
System NextParam -> y;
(x <= y) ifTrue {
System SkipParam;
y -> Result;
} ifFalse {
System NextParam -> z;
Self Cleate Calc
(Self Cleate Calc (x - 1) y z)
(Self Cleate Calc (y - 1) z x)
(Self Cleate Calc (z - 1) x y) -> Result;
};
};
System print (Tarai Calc 20 5 1);
・ifTrue ブロック内が実行された場合、z にあたる引数が評価されずにスキップされます
・コメントが付きました
・未だ脳内言語です
・そろそろ用語を統一したい……特にワーカーとオブジェクトを
0358327
NGNG>>356 2行目:引数⇒変数
>>356 4行目:使用⇒仕様
◆追記
・行頭の ":" があった方が、どれが初期レシーバになるか分かりやすいような気がしてきた
・処理系の実装予定は無いけど、言語仕様だけは清書しても良さそうな気がする
・スレ乗っ取ってしまったような気がしますが、このまま続けてても大丈夫ですか?それとも?
0359デフォルトの名無しさん
NGNGこのまま続けても良いのではないでしょうか。
どうせ、ほとんど死んでたようなスレですし。
有効に再利用するのは問題ないのでは。
ところで、戯れにYaccで文法のチェックだけしか出来ない
Versionを書いてみたんですがUPしてもよい?
0360デフォルトの名無しさん
NGNG#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
extern int yylex();
%}
%token INT CHAR STRING SYMBOL END_INPUT
%%
program : /* nothing */ { return 0; }
| stmt ';' { return 1; }
| END_INPUT { return EOF; }
;
stmt : expr
| send_msg
;
expr : INT
| CHAR
| STRING
| SYMBOL
| '(' stmt ')'
;
0361デフォルトの名無しさん
NGNG| send_msg expr
;
%%
char yytext[1024]; /* あふれたらゴメン */
int yylex(){
char* ptr;
int c = getchar();
if(c == EOF) return END_INPUT;
while(isspace(c)){ c = getchar(); if(c == EOF) return END_INPUT; }
if((c == ';') || (c == '(') || (c == ')')) return c;
if(c == '"'){ /* lex string */
do{
if(c == '\\'){ c = getchar(); if(c == EOF) return END_INPUT; }
*ptr++ = c;
c = getchar(); if(c == EOF) return END_INPUT;
}while(c != '"');
*ptr = '\0'; return STRING;
}
if(c == '\''){ /* lex char */
yylval = getchar();
if(yylval == EOF) return END_INPUT;
c = getchar(); /* skip ' */ if(c == EOF) return END_INPUT;
return CHAR;
}
for(ptr=yytext; !isspace(c); ptr++){
if((c == ';') || (c == '(') || (c == ')')) break;
*ptr = c;
c = getchar(); if(c == EOF) return END_INPUT;
}
ungetc(c, stdin); *ptr = '\0'; return SYMBOL;
}
0362デフォルトの名無しさん
NGNG{
fprintf(stderr, "ERROR: %s\n", str);
exit(0);
}
int main(int, char*[])
{
int result;
while(true){
result = yyparse();
if(result == EOF){
printf("bye\n");
return 0;
}
}
}
/*
* kmyacc -d parser.y
* bcc32 ytab.c
*/
0363デフォルトの名無しさん
NGNGせめてこれを読んでから作ってくれないか・・・
http://member.nifty.ne.jp/windyfield/neologism.html
もうお前らの相手をするのは疲れたよ。
0364デフォルトの名無しさん
NGNGさみしい香具師だな。
0365327
NGNGいや、リンク先にはなかなか良いもの書いてあったぞ
本気でありが�d
>>359-362
素直に有難うございますと言いたいところですが、yac判んないです
流れから察するに、僕のアレの解析用らしいですが…チェック項目があまりに少ない言語でごめんなさい
とりあえず参考にさせて頂きますね
全然違う言語の解析用だったらすみません
0366デフォルトの名無しさん
NGNGその言語用で間違いないです。
> ・行頭の ":"
えーと、Yaccを使わないでということは、パーサは手書き?
だとしたら、行頭の":"の件も考えて、いっそLispでプロトタイプを
作ってみるのはどうでしょう?
行頭の":"は"("にして、文末は";"ではなく")"にしてみて。
(あくまでプロトタイプの段階での話です)
どうも、ワーカー(っていうんですか)の動きがよくわからないので
メソッドの選択の仕組みとか、変数のスコープとかを
Lispかなんかで、書いてみせてもらえるとうれしいな。
手抜きヴァージョンでかまわないので。
(気が向いたら自分でも書いてみようかとも思うんだけど。。。)
0367327
NGNG構文自体はかなり簡単な構造しているので、自前で書いても問題ないかなと
Lisp は触れてみた程度なので、読めますが書けないです
: 〜 ; と ( 〜 ) を相互変換できるようにしていた理由は >>334 へどうぞ
そのままでもいいかもしれませんが
挙動が一人歩きしていて、実は僕自身、挙動があやふやな所があります
自分の中で整理されるまで、もうちょっとまっててください
0368327
NGNG1) シンボル (シンプルメッセージ文字列)
2) オブジェクト (厳密には、これがメッセージ文に記述される場合、変数の形をとっている)
3) 文字列・数値などのリテラル (厳密には、これらもオブジェクト)
4) メッセージブロック (厳密には、これもオブジェクト)
5) 変数 (厳密にはリテラルやオブジェクトを指したニックネーム)
6) メッセージ文
メッセージ文の評価は、今のところ↓のような図式
1) メッセージを1つ評価する
2) その文にレシーバが設定されていなければそのメッセージをレシーバに設定、
すでに設定されていればそのメッセージをレシーバに対して送る
ただし >>343-344 にて微妙な変更が発生していて、変数の展開を行うタイミングが多少これとは異なります
0369デフォルトの名無しさん
NGNG了解。
確かに手書きでも簡単に出来そうですね。
0371一晩経って327
NGNG>>343-344 の変更をさらに変更
シンボルと変数の区別を prolog 形式にする事を思案
◆質問『変数のスコープ管理法について』
今のところ次の2案
1) メッセージブロックを実行するワーカーごとに1つの変数テーブルを使用する
>>357 の例では、全ての { } は Tarai ワーカーの管轄
記述場所が優先されるため ifTrue とかで渡された先で実行される場合でも同じ
2) メッセージブロックごとに1つの変数テーブルを使用する
>>357 とは違うタイプで、実行されているブロックのインスタンス(?)ごとに1つ割り当てられる
記述場所に対応した木構造で表現された変数テーブルを使う
1 はインスタンスごとに1つの変数テーブルなので、管理が楽
2 は再帰が可能だが、管理が難しく、さらには変数の宣言が必要になる場合も
また、インスタンス内で共有される変数を持ちたい場合、別にテーブルを用意する必要がある
どっちが良いだろ?
0372デフォルトの名無しさん
NGNG: ... ; と ( ... ) が同じことだとすると、両者が混在して
かえって読みにくく感じるんですが、、、。
個人的には、( ... ) があれば、: ... ; はないほうがよいような。
同じ構文に2種類の書き方を用意するというのは、
シンプルな言語というのに反してるし。。。
>>371
2のほうが一般的かな、と思います。
メソッド(関数)が実行されるたびに、メソッドローカルな変数は
スタックなどに確保されるのがありがち。(返値とかリターンアドレス
とか引数とかの記憶場所も含めてフレームとか呼ばれたりします。)
メソッドローカルな変数はあらかじめ宣言しておくほうが好み。
なので、2を推します。
0373327
NGNGとりあえず現在の仕様では ; は行末記号、() で優先順位操作な感じです
2 の方の決定的な欠点は、変数の名前解決に時間がかかる事
それから、僕自身の実力が追いつかない恐れがあることです
0374デフォルトの名無しさん
NGNG持った場合は)。昔の block context って 1 みたいな感じなのかな?
0375327
NGNGそもそもインスタンスと変数スコープが 2 では直接対応していないですし
2 がややこしくなるもう1つの個所
例えば、変数を宣言する場合、今までのやり方で言うと
Let X;
な感じ
*ただし Let は変数宣言オブジェクトを内包した“変数”です*
0376デフォルトの名無しさん
NGNGそうでなければ、Smalltalk 風に | x | みたいな感じ。
どちらにしても ifTrue などと同じく、一種のスペシャル構文ですよね。
0377デフォルトの名無しさん
NGNG>インスタンスと変数スコープが 2 では直接対応していない
これは問題ないです。
オブジェクト指向言語において、インスタンスメソッドは
2種類(大域変数もいれれば3種類)のスコープを
参照出来るのが当たり前というか、そうならざるを得ないというか。
ひとつには、メソッド自身のスコープ。これには、
引数とメソッドローカルな変数があります。
もうひとつは、インスタンス変数のスコープもある。
(場合によっては、インスタンスメソッドも)
で、変数名から目的の変数を検索するときには、
最初に、メソッドローカルなスコープを検索し、
次に、インスタンスのスコープを検索する、
という手順になると思います。
変数名を使った検索の実装が難しいのであれば、
C++ならSTLのmapとか使うという手もありです。
0378327
NGNGJavaにてフィールド使いまくった後遺症が
インスタンスごとに共通の変数が無いと落ち着かなくて
いっその事、オブジェクトを手続きの『処理機』にしてしまおかとも考えた
ちなみにインスタンスメソッドは考えてない
変数検索アルゴリズムは何とかなる
ただ単に面倒なだけで_| ̄|○
ところで、nil、true、false などのリテラルはどうしましょうか
メッセージか、リテラルオブジェクトか、変数に代入されたオブジェクトか
0379デフォルトの名無しさん
NGNGnil, true, false はリテラルオブジェクトでいいのでは?
> インスタンスごとに共通の変数が無いと落ち着かなくて
インスタンス変数ですよね?
これはあったほうがいいと思います。
で、それとは別にメソッドローカルな変数もないとまずいのでは?
メソッドローカルな変数として宣言されていないものは
すべてインスタンス変数として扱うという方針で。
メソッドローカルな変数を定義するのがLetだとすると、たらい関数はこんな感じ?
Object Create -> Tarai;
Tarai <- Calc {
Let x y z; # x, y, z はメソッドローカルな変数だよん
System NextParam -> x;
System NextParam -> y;
(x <= y) ifTrue {
System SkipParam;
y -> Result;
} ifFalse {
System NextParam -> z;
Self Calc
(Self Calc (x - 1) y z)
(Self Calc (y - 1) z x)
(Self Calc (z - 1) x y) -> Result;
};
};
System print(Tarai Calc 20 5 1);
0380327
NGNGインスタンスメソッドは考えてるに訂正
考えてないのはクラスメソッド(って言うかクラス無いし)
>>379
リテラル案&Let 案済有難うございます
が、やっぱり変数は宣言無しで行きたいな、と
1年近く考えていたオブジェクトモデルが、ここにきて邪魔をする_| ̄|○
曰く、名前を憶えられるのは、『手続き』ではなく『手続きを実行するワーカー』であると
0381デフォルトの名無しさん
NGNGインスタンス変数への代入メッセージ(->)とは別に、
メソッドローカルな変数への代入メッセージ(たとえば、=>)とかを
導入するとかかなぁ。
>名前を憶えられるのは、『手続き』ではなく『手続きを実行するワーカー』である
これは、変数をもてるのは、ワーカー(オブジェクト)だけ、って意味?
「手続き」は「ワーカー」の一種ではないんでしょうか?
「手続き」 is-a 「ワーカー」
という関係が成り立てば、「手続き」も変数をもてる、ってことに
なると思うんですが、、、駄目?
0382327 ◆pMSc6nsiJE
NGNG逆に、インスタンス変数の代入に、スロット作成と同じ <- を使用するとか
今思いついたけど、これ案外良いかも
再帰を可能にするために、メッセージセレクタ通過時にメソッド変数テーブルを一つ作る
以降、手続き終了まで、そのテーブルをブロック内で使いまわす
これが今のところの妥協点で、且つ簡単で、意外といい感じ
ちなみに、『ワーカー』が実行するのが『手続き』という考えです
is-a はちょっと辛いかも
# トリップテスト中につき失礼致します
0383デフォルトの名無しさん
NGNG<- の構文はこうですか?
オブジェクト <- 変数名 値;
メソッドの定義の仕方から考えるとこうだと思うんだけど、
なんか奇妙な感じもしますね。
> メッセージセレクタ通過時にメソッド変数テーブルを一つ作る
手続きが呼ばれるたびに、メソッド変数テーブルが
作られるという理解でよい?
なら、一般的な言語の手続きの動作にほぼ等しい
と思われるのでいい感じです。
0384327 ◆pMSc6nsiJE
NGNG訂正
インスタンス変数への代入は ->> にします
んで <- の動作をを元に戻して、
Obj <- Msg Block;
で、Obj に Msg が送られたときに Block を起動するように設定する感じ
細かな仕様がだいぶ出来上がってきました
もう大丈夫かな?
0385デフォルトの名無しさん
NGNG代入まとめ。
1.グローバル変数への代入
式 -> 変数名
Object Create -> Tarai;
とかの例を見ても、たぶんグローバル変数への代入だろうと。。。
2.インスタンス変数への代入
式 ->> 変数名
3.メソッドローカルな変数への代入
?
これは、-> を使うのでしょうか?
メソッドのなかでは、メソッドローカルな変数への代入で、
トップレベルでは、グローバル変数への代入とか?
あるいは、もうひとつ > を追加して、
式 ->>> 変数名
とか。。
0386デフォルトの名無しさん
NGNG式 ->> オブジェクト 変数名;
じゃないと駄目かも。
試しに、BankAccountを書いてみる。
Object Create -> BankAccount;
200 ->> BankAccount balance;
BankAccount <- deposit {
System NextMsg ->>> x;
balance + x ->> Self balance;
};
BankAccount <- withdraw {
System NextMsg ->>> x;
balance + x ->> Self balance;
(balance < 0) ifTrue {
0 ->> Self balance;
};
};
BankAccount deposit 50; # => 250
BankAccount withdraw 100; # => 150
BankAccount withdraw 200; # => 0
0387327 ◆pMSc6nsiJE
NGNGインスタンス変数は全てプライベート
外部からはアクセスメソッドにてお願い致します m(_ _)m
メソッド変数への代入は -> インスタンス変数への代入は ->> です
トップレベルは System かどこかの管轄内でメソッドとして実行される予定
ちなみにトップレベルに関して言えば、2つの代入はほぼ等しくなる筈
0388327 ◆pMSc6nsiJE
NGNG今うちが考えている言語の名前は決まっているので感想としての話ですが、
やっぱり自分で作ったプログラム言語である以上、かっこいい名前付けたいですね
ruby とか perl とか、簡潔且つ存在感のある名前って、以外と付けるのが難しいです
0389デフォルトの名無しさん
NGNG了解。
ってことは、BankAccountはこうか。。。
Object Create -> BankAccount;
BankAccount <- set-balance {
System NextParam ->> balance;
};
BankAccount <- deposit {
System NextParam -> x;
balance + x ->> balance;
};
BankAccount <- withdraw {
System NextParam -> x;
balance + x ->> balance;
(balance < 0) ifTrue {
0 ->> balance;
};
};
BankAccount set-balance 200;
BankAccount deposit 50; # => 250
BankAccount withdraw 100; # => 150
BankAccount withdraw 200; # => 0
0391327 ◆pMSc6nsiJE
NGNG単語の区切りは半角スペースでいいですか?
そのようにした場合、例えば 1+2+3 は一繋がりになっちゃいますけど、色々と簡単になるかもです
…えと、>>389 の 7 行目 "set-balance" を見て気づいた事柄です
0392デフォルトの名無しさん
NGNG半角スペースでいいのでは?
っていうか、CLispでクロージャ以外の部分を
実装済みだったり。。。(^_^;;
Lispだと、単語の区切りはスペースですからねぇ。
(まだメソッド変数への -> は変更してないけど。
現在、CLispで370行程度。)
0393デフォルトの名無しさん
NGNGbalance + x ->> balance;
の1行は
balance - x ->> balance;
の間違い。。。
0394327 ◆pMSc6nsiJE
NGNGヽ(`Д´)ノウワァァァン
ナデカッデルャッデイヅンディスカ!
不躾ですが、出来たらくださいな
ちなみに今、リファレンス書いてますんで、夏休みまでにはあがります
0395327 ◆pMSc6nsiJE
NGNGこちらで考えた名前より良い物があったら即採用です
皆で作っていきませう
ついでに資料【宝石・鉱物の英名】
Amethyst, Aquamarine, Bloodstone, Chalcedony, Citrine, Coral, Diamond
Emerald, Garnet, Jadeite, Lapis-Lazuli, Malachite, Moonstone, Opal, Onyx
Pearl, Peridot, Ruby, Sapphire, Sardonyx, Topaz, Tourmaline, Ulexite
0396デフォルトの名無しさん
NGNGあくまでプロトタイプとして作ってみたので、
期待しすぎてはいけません。
こんな感じの言語なのかぁ、と雰囲気を楽しむために
作っています。
連投、ごめんねー。
0397デフォルトの名無しさん
NGNG(defpackage "HOGE" (:use "COMMON-LISP"))
(in-package hoge)
;; make global var table
(defparameter *global-vars* (make-hash-table))
;; stack of method var
(defparameter *hoge-method-vars* nil)
;; stack of stack(params)
(defparameter *hoge-stack* nil)
(defparameter *method-params* nil)
;; for '}' read macro
(defconstant *end-of-brace-macro* (cons nil nil))
;; for ';' read macro
(defconstant *end-of-statement* (cons nil nil))
;; params stack
(defun push-params-frame (lst)
(push lst *hoge-stack*))
(defun pop-params-frame ()
(pop *hoge-stack*))
(defun stack-top ()
(caar *hoge-stack*))
(defun pop-stack-top ()
(let ((top (caar *hoge-stack*)))
(pop (car *hoge-stack*))
top))
0398デフォルトの名無しさん
NGNG(null (car *hoge-stack*)))
(defun next-message ()
(if (stack-empty?)
(throw 'abort "stack empty")
(pop-stack-top)))
(defun next-message-value ()
(let ((msg (next-message)))
(typecase msg
(symbol (get-var msg))
(cons (eval-expr msg))
(t msg))))
(defun next-message-as-number ()
(let ((val (next-message-value)))
(if (numberp val)
val
(throw 'abort "not number"))))
;; method params
(defstruct params-closure
method-vars
stack
self)
0399デフォルトの名無しさん
NGNG(if (null *method-params*)
(throw 'abort "no next param"))
(let ((old-self (get-global-var 'self))
(old-stack *hoge-stack*)
(old-method-vars *hoge-method-vars*))
(unwind-protect
(let* ((self (params-closure-self *method-params*))
(vars (params-closure-method-vars *method-params*))
(stack (params-closure-stack *method-params*))
(param (pop (car stack))))
(set-global-var 'self self)
(setq *hoge-method-vars* vars)
(eval-expr param))
(set-global-var 'self old-self)
(setq *hoge-stack* old-stack)
(setq *hoge-method-vars* old-method-vars))))
(defun skip-param ()
(if (null *method-params*)
(throw 'abort "no next param"))
(let* ((stack (params-closure-stack *method-params*)))
(pop (car stack))))
(defun in-method-p ()
(not (null *method-params*)))
0400デフォルトの名無しさん
NGNG(defun new-method-vars () (push (make-hash-table) *hoge-method-vars*))
(defun remove-method-vars () (pop *hoge-method-vars*))
(defun set-method-var (sym value)
(if (null *hoge-method-vars*)
(throw 'abort "not in method"))
(let ((vars (car *hoge-method-vars*)))
(setf (gethash sym vars) value)))
(defun get-method-var (sym)
(if (null *hoge-method-vars*)
(return-from get-method-var (values nil nil)))
(let ((vars (car *hoge-method-vars*)))
(gethash sym vars)))
;; Object
(defclass prototype ()
((slots :accessor proto-slots :initform (make-hash-table))))
(defmethod get-slot ((obj prototype) name)
(let ((slots (proto-slots obj)))
(gethash name slots)))
(defmethod set-slot ((obj prototype) name value)
(let ((slots (proto-slots obj)))
(setf (gethash name slots) value)))
0401デフォルトの名無しさん
NGNG(maphash #'(lambda (name value)
(setf (gethash name (proto-slots dst)) value))
(proto-slots src)))
(defmethod send-message ((obj prototype) msg)
(case msg
(create (let ((proto (make-instance 'prototype)))
(copy-slots proto obj)
proto))
(<- (let ((name (next-message))
(body (next-message)))
(if (method-p body)
(set-slot obj name body)
(throw 'abort "not method in '<-'"))))
(t (multiple-value-bind (slot found) (get-slot obj msg)
(if found
(if (method-p slot)
(execute-method-with-object obj slot)
slot)
(handle-message obj msg))))))
;; System object
(defclass system-object () ())
0402デフォルトの名無しさん
NGNG(case msg
(NextMsg (next-message))
(NextParam (next-param))
(SkipParam (skip-param))
(load (let ((filename (next-message-value)))
(if (not (stringp filename))
(throw 'abort "not string (System Load)"))
(load-program filename)))
(print (let ((obj (next-message-value)))
(princ obj)))
(terpri (terpri))))
; system load "filename"
(defun load-program (filename)
(with-open-file (file filename)
(do* ((eos (cons nil nil))
result
(expr (read-statement file eos) (read-statement file eos)))
((eq expr eos) result)
(setq result (eval-expr expr)))))
0403デフォルトの名無しさん
NGNG(defclass my-method ()
((body :accessor method-body :initform nil :initarg :body)))
(defmethod method-p ((m my-method)) t)
(defmethod method-p (m) nil)
(defmethod set-method-body ((m my-method) lambda-expr)
(setf (method-body m) #'lambda-expr))
(defun execute-method (m)
(do ((body (method-body m) (cdr body))
expr
(result nil))
((null body) result)
(setq expr (car body))
(setq result (eval-expr expr))))
0404デフォルトの名無しさん
NGNG(let ((old-self (get-global-var 'self))
(old-method-params *method-params*)
(old-method-vars *hoge-method-vars*))
(set-global-var 'self obj)
(setq *method-params* (make-params-closure
:stack *hoge-stack*
:method-vars *hoge-method-vars*
:self old-self))
(new-method-vars)
(unwind-protect
(execute-method m)
(setq *hoge-method-vars* old-method-vars)
(setq *method-params* old-method-params)
(remove-method-vars)
(set-global-var 'self old-self))))
0405デフォルトの名無しさん
NGNG(defun eval-object-with-message (obj msg)
(typecase obj
(number (handle-number-message obj msg))
(string (handle-string-message obj msg))
(character (handle-char-message obj msg))
(boolean (handle-bool-message obj msg))
(system-object (handle-system-message obj msg))
(prototype (handle-object-message obj msg))
(t (handle-message obj msg))))
;; find variable from 1. method local var
;; 2. instance var
;; 3. global var
(defun get-var (sym)
(multiple-value-bind (val found) (get-method-var sym)
(if found
val
(let ((self (get-global-var 'self)))
(if (null self)
(get-global-var sym)
(multiple-value-bind (v p) (get-slot self sym)
(if p
v
(get-global-var sym))))))))
(defun get-global-var (sym)
(gethash sym *global-vars*))
0406デフォルトの名無しさん
NGNG(defun set-global-var (sym value)
(setf (gethash sym *global-vars*) value))
(defun set-instance-var (sym value)
(let ((self (get-global-var 'self)))
(if (null self)
(throw 'abort "no self"))
(if (not (typep self 'prototype))
(throw 'abort "not object"))
(set-slot self sym value)))
;; message handler for any object
(defun handle-message (obj msg)
(case msg
(-> (let ((sym (next-message)))
(if (not (symbolp sym))
(throw 'abort "not symbol in message '->'"))
(if (in-method-p)
(set-method-var sym obj)
(set-global-var sym obj))))
(->> (let ((sym (next-message)))
(if (not (symbolp sym))
(throw 'abort "not symbo in message '->>'"))
(set-instance-var sym obj)))
(t (throw 'abort (format nil "object '~s' has no message '~s'" obj msg)))))
;; message handler for object
(defun handle-object-message (obj msg)
(send-message obj msg))
0407デフォルトの名無しさん
NGNG(defun handle-system-message (obj msg)
(send-message obj msg))
;; message handler for number
(defun handle-number-message (obj msg)
(case msg
(+ (+ obj (next-message-as-number)))
(- (- obj (next-message-as-number)))
(* (* obj (next-message-as-number)))
(/ (/ obj (next-message-as-number)))
(< (< obj (next-message-as-number)))
(<= (<= obj (next-message-as-number)))
(> (> obj (next-message-as-number)))
(>= (>= obj (next-message-as-number)))
(t (handle-message obj msg))))
;; message handler for string
(defun handle-string-message (obj msg)
(case msg
(+ (concatenate 'string obj msg))
(t (handle-message obj msg))))
;; message handler for char
(defun handle-char-message (obj msg)
(case msg
(t (handle-message obj msg))))
0408デフォルトの名無しさん
NGNG(defun handle-bool-message (p msg)
(case msg
(ifTrue (let ((m (next-message)))
(if p (cond ((method-p m) (execute-method m))
((consp m) (execute-message-expr m))
(t m)))))
(ifFalse (let ((m (next-message)))
(if (not p) (cond ((method-p m) (execute-method m))
((consp m) (execute-message-expr m))
(t m)))))
(ifTrue-else (let ((true-clause (next-message))
(false-clause (next-message)))
(if p
(cond ((method-p true-clause) (execute-method true-clause))
((consp true-clause) (execute-message-expr true-clause))
(t true-clause))
(cond ((method-p false-clause) (execute-method false-clause))
((consp false-clause) (execute-message-expr false-clause))
(t false-clause)))))
(ifFalse-else (let ((false-clause (next-message))
(true-clause (next-message)))
(if (not p)
(cond ((method-p false-clause) (execute-method false-clause))
((consp false-clause) (execute-message-expr false-clause))
(t false-clause))
(cond ((method-p true-clause) (execute-method true-clause))
((consp true-clause) (execute-message-expr true-clause))
(t true-clause)))))
(t (handle-message p msg))))
0409デフォルトの名無しさん
NGNG(defun eval-expr (expr)
(typecase expr
(cons
(let ((obj (car expr)))
(if (consp obj)
(setq obj (eval-expr obj)))
(if (and (symbolp obj) (not (eq obj t)))
(setq obj (get-var obj)))
(if (null (cdr expr))
obj
(progn
(push-params-frame (cdr expr))
(unwind-protect
(do ((msg))
((stack-empty?) obj)
(let ((msg (pop-stack-top)))
(setq obj (eval-object-with-message obj msg))))
(pop-params-frame))))))
(symbol (get-var expr))
(t expr)))
0410デフォルトの名無しさん
NGNG(defun read-statement (stream eos)
(do ((expr (read stream nil eos) (read stream nil eos))
(result nil))
((or (eq expr eos)
(eq expr *end-of-statement*)
(eq expr *end-of-brace-macro*))
(cond ((eq expr eos) eos)
((eq expr *end-of-brace-macro*) *end-of-brace-macro*)
(t (reverse result))))
(push expr result)))
;; parse
(defun parse (eos)
(let ((expr (read-statement nil eos))
(result nil)
(err nil))
(if (eq expr eos) (return-from parse eos))
(setq err
(catch 'abort
(setq result (eval-expr expr))
nil))
(if (null err)
result
(format t "Error: ~s~%" err))))
0411デフォルトの名無しさん
NGNG(defun lbrace-reader (stream char)
(do* ((eos (cons nil nil))
(body)
(expr (read-statement stream eos) (read-statement stream eos)))
((eq expr *end-of-brace-macro*)
(make-instance 'my-method :body (reverse body)))
(push expr body)))
;; init
(defun init-hoge ()
(set-macro-character #\# (get-macro-character #\;)) ;; '#' one line comment
(set-macro-character #\; #'(lambda (stream char) *end-of-statement*))
(set-macro-character #\{ #'lbrace-reader)
(set-macro-character #\} #'(lambda (stream char) *end-of-brace-macro*))
(set-global-var 'object (make-instance 'prototype))
(set-global-var 'system (make-instance 'system-object))
(set-global-var 'self nil))
;; main
(defun main ()
(init-hoge)
(do ((eos (cons nil nil))
(result))
(())
(terpri)
(princ "hoge>> ")
(setq result (parse eos))
(if (eq result eos) (return-from main nil))
(princ result)))
(main)
0412デフォルトの名無しさん
NGNG1.>>397-411までをひとつのファイルに順番にまとめてセーブする。
(ここでは仮に"hoge.lsp"という名前にしておく)
2.CLispを起動する。(CLisp以外でも、CLOSが使えるLispなら動くかも?)
3. (load "hoge.lsp")
4.プロンプト"hoge>>"が表示されたら成功。
いろいろな文を入力して、うまく動くことを確認すること。
ちなみに、
System load "tarai";
とかでファイルに書いたプログラムをロード&実行出来ます。
たらい関数はこんな感じ↓
Object Create -> Tarai;
Tarai <- Calc {
System NextParam -> x;
System NextParam -> y;
(x <= y) ifTrue-else {
System SkipParam;
y;
}{
System NextParam -> z;
Self Calc
(Self Calc (x - 1) y z)
(Self Calc (y - 1) z x)
(Self Calc (z - 1) x y)
;
};
};
System Print (Tarai Calc 20 5 1);
0413327 ◆pMSc6nsiJE
NGNGリアルタイムキタ━━━(゚∀゚)━( ゚∀)━( ゚)━( )━( )━(゚ )━(∀゚ )━(゚∀゚)━━━!!
マジ有難う御座います
CLisp は先ほど導入し終わったので、早速見させていただきます
0414327 ◆pMSc6nsiJE
NGNG感動いたしました (;∀;)
神様が御作りになられたとはいえ、自分の考えが形に成るというのは言葉で表すことが出来ません
唯一残念なことは、Lisp 上でシミュレートしている以上、実現不可能な機能が在る事でしょうか
それでも、自分の中で、この言語に対する明確なイメージを初めて持てた様な気がします
本当に有難う御座いました
[今回の考察点も含めたフィードバック]
・ifTrue-else メッセージを bool に導入するかどうか
・Result 変数を使わずに、メッセージブロック最後のアクティブワーカーを返すようにするか
・System load 命令はどうにかして使いたい
0415デフォルトの名無しさん
NGNGあとはまかせます。改造するなり、CやJavaに移植するなり
好きにしてくださいませ。
> ・ifTrue-else メッセージを bool に導入するかどうか
もとの (x <= y) ifTrue {...} ifFalse {...} 形式だと、
(x <= y) ifTrue {...}; という、後ろにifFalseが
つかない文との区別をつけるのが難しいと思うんですが。
ついでに、テスト用に書いたfactをのせとく。
Object Create -> app;
app <- fact {
System NextParam -> n;
(n > 0) ifTrue-else {
n + (Self fact (n - 1));
}{
0;
};
};
app fact 5;
0416デフォルトの名無しさん
NGNG上のfactっておかしすぎ!
訂正。
Object Create -> app;
app <- fact {
System NextParam -> n;
(n > 1) ifTrue-else {
n * (Self fact (n - 1));
}{
1;
};
};
0417327 ◆pMSc6nsiJE
NGNGわざわざどうも有り難うございます
すっかり書き忘れていましたが、この言語はメッセージのカスケード (連続) 送信を行えます
つまり
BoolA ifTrue {...};
BoolA ifFalse {...};
を (途中で BoolA 変数の中の値が変わらないものと仮定して) 一行にまとめたのが
BoolA ifTrue {...} ifFalse {...};
なので、極端な話、
(n > 0) ifFalse {...} ifTrue {...} ifTrue {...} ifFalse {...} ifFalse {...} ifTrue {...};
という訳わかんない文まで可能です
0418デフォルトの名無しさん
NGNGってことは、
BoolA ifTrue {}
という式の値は必ず、BoolA の値に等しいわけか。。。
じゃ、たらい関数なんかで、
(x <= y) ifTrue {
System SkipParam;
y;
} ifFalse {
System NextParam -> z;
Self Calc
(Self Calc (x - 1) y z)
(Self Calc (y - 1) z x)
(Self Calc (z - 1) x y);
};
って書くのは不可能なんですね。
やっぱり、Resultとかに結果を代入しとかないと。。。
0419327 ◆pMSc6nsiJE
NGNG明示的に値を返さない procedure は、内部では Self を返す function という感じで……
Result 変数には、デフォルトで Self が入っていると考えてください
お騒がせしておりますm(_ _)m
0420デフォルトの名無しさん
NGNG> Result 変数には、デフォルトで Self が入っていると考えてください
ああ。それで、BoolA ifTrue {} の値がBoolAと等しくなるのか。
ところで、Javaへのトランスレータとか試作してみてもいいですか?
完成させるとは限らないが(あきたらポイッ!)。
0422327 ◆pMSc6nsiJE
NGNGJava へのトランスレートは難しいと思う
プロトタイプベースという、Java とは違うオブジェクトの考え方を使用しているのに加え、
そもそもこの言語には、型チェックという概念が全く無い
個人的には、先に >>395 で発言したように、この言語の名前を考えて欲しいかな?
0423デフォルトの名無しさん
NGNGあれ? >>321と>>327は別人かな。読み間違えてたかも。。。
Javaへのトランスレータは出来なくはないです。
だいたいの実装方法は脳内では出来てるし。。。
(あまり効率はよくないが、goferのCトランスレータ風になる予感)
言語の名前は、hogeじゃやっぱりまずいですよねぇ。
かといって、宝石関係は誰もが考えそうで好みではないし、
うーん。。。"Dacks"とか、、、いや、目の前にうちのミニチュアダックスが、、、。
#あ〜、最近ストレスフルなので、なんかプログラミングしたい〜。
#D言語プラグインでも作るか?
0424デフォルトの名無しさん
NGNG0425327 ◆pMSc6nsiJE
NGNG漏れはこのスレに 327 以外の名前で書いたのは 326 だけです
はやとちりごめんなさいでス
当方 Cranberry または OpenBrownie にて名前を立候補
Canberry は音の感じから
Brownie はオブジェクトの挙動がなんかパソコンの小人さんっぽいから
0426デフォルトの名無しさん
NGNGああ。やっぱりこちらの勘違いでしたか。ごめんでございます。
名前ですが、あまり長いと起動するときに大変な気がする。
シェルから、いちいち
openbrownie hoge.brow
とかしたくないなぁ。
0427327 ◆pMSc6nsiJE
NGNG長い名前の言語は、大抵短縮されているみたいですけどね
まだ決定ではないですので、じっくり考えていけば良いかと
# リファレンスかいてて考えた事
・オブジェクトモデルが、本当にパソコンの中の小人さんっぽい
・キーワードが true, false, nil の 3 種類だけという異様さ
・リファレンスそのものに BSD ライセンスってかけられましたっけ?
0428327 ◆pMSc6nsiJE
NGNGtrue, false, nil のキーワードなリテラルを削除する予定
今日思いついた名前案「Mew言語」……ってぐぐったらいろんな所と名前被ってました
0429デフォルトの名無しさん
NGNGMewっていえば、Emacsのメーラーを一番に思い出すなぁ。。。
0430デフォルトの名無しさん
NGNG0431430=327 ◆pMSc6nsiJE
NGNG某STGと被るの覚悟なら、実行は『wanko』コマンドでとか
行末の ; が出た場合、内部的には行を終了させずにレシーバを解除させます
多分これで平気
構想上は中間コード型の処理系みたい
0432デフォルトの名無しさん
NGNG0433デフォルトの名無しさん
NGNG0434デフォルトの名無しさん
NGNG0435デフォルトの名無しさん
NGNG0436デフォルトの名無しさん
NGNG0437デフォルトの名無しさん
NGNG0439デフォルトの名無しさん
NGNG0441デフォルトの名無しさん
NGNG0443327 ◆pMSc6nsiJE
NGNGLinux に持ち込みたくて 純C で作ってましたが、
ガベコレが面倒なので C# で書き直そうかと考えてます
0444441
NGNG0445デフォルトの名無しさん
NGNG0446デフォルトの名無しさん
NGNG0447デフォルトの名無しさん
NGNG0448441
NGNG@ = lambda
>*a,3
>*b,4
>*ab,@.a.b,ab
>ab.a.b?
12
…ゴミ。
0449327 ◆pMSc6nsiJE
NGNGオブジェクトを内部では構造体で扱うことを考えたんだけど、
拡張機能を外部に持ってきた場合、内部で使用するオブジェクトの解放が面倒なのよ
object_unlock で明示的に参照カウンタ1つ下げ、使われていないものから解放……
……って考えたけど、object_unlock がいろんな場所に散らばっちゃって
仕様作ってみようかとも思ったけど、正しく動くか検証するには、学生では頭が足りない
0450デフォルトの名無しさん
NGNGD言語使え。GC付きのネイティブコンパイラ、これ最強。
0451デフォルトの名無しさん
NGNGD言語を使うには、学生では頭が足りない
0452327 ◆pMSc6nsiJE
NGNG代入メッセージ以外の、全てのメッセージを
1) 許容する
2) 拒絶する
1 だと、メッセージが来てもエラーが起きずに Nil 自身が返ります
2 だと、システム内で UnknownMessageException が発生し、停止します
0453デフォルトの名無しさん
NGNG> Nil オブジェクトの挙動は、次のどちらにしますか?
3) Nilが受け取るべきメッセージだけ受け取る。
例えば、Nil isNil などはtrueを返すべきかと。
0454327 ◆pMSc6nsiJE
NGNG了解いたしました
Nil は =, !=, ->, ->> のみ受け入れ、他拒絶という方向性で調整いたします
という流れで、試作品が完成しました
ブリーフケースに入れておきますので、DownLoad > PetitSample からどうぞ
tp://briefcase.yahoo.co.jp/migimoo00
完成品では BSD ライセンスを適応しますが、まだ試作品なのでソース非公開
サンプル入れておきましたので、実行を確かめたい方は、とりあえず
petit sample.txt 20 5 1
とコマンドラインから打ってみてください
ちなみに、実行には .NET Framework が別途必要です
0455327 ◆pMSc6nsiJE
NGNG[Root] ->, ->>, create, <-
[System] nextMsg, skipMsg, puts
[True, False] ->, ->>, and, or, xor, not, ifTrue, ifFalse
[Nil] ->, ->>
[Symbol] ->, ->>
[Nmber] ->, ->>, +. -, *, /, %, =, !=, <, <=, repeat
[Text] ->, ->>, +
上から 4 行目までのオブジェクトは、グローバル変数テーブルに入ってます
他はリテラルオブジェクトです
0456327 ◆pMSc6nsiJE
NGNG1) コードの全体的な改良
2) エラー時に行番号も出力できるように
3) System loadlib にて別アセンブリからのオブジェクト読み込み
4) 貧弱な制御構文を補佐する Flow.dll の作成
5) スクリプト処理本体を切り離し、別アプリへの組み込みを容易にする
6) マニュアルの作成 (最優先OTL)
とりあえず思いつくのは以上です
0457デフォルトの名無しさん
NGNGText には toNumber 、Nil には =, != も送れるですスマソ
ちなみに、トップレベルは PetitScript.PetitRuntime でメソッドとして実行していて、
PetitRuntime には Root のメッセージに加え main が送れます
サンプルでは Tarai オブジェクトを作成して、そこに calc メソッドを設定していますが、
Self に calc を設定することも出来ます
あと、System nextMsg | skipMsg をトップレベルで行うと、
コマンドライン引数に指定した値が Text オブジェクトとして受け取れます
ここいら辺の詳細はマニュアルを待ってください m(_ _)m
0458327 ◆pMSc6nsiJE
NGNGやっぱりこっそりと
というかこのスレどのくらいの人が見ていますか?
0459392
NGNG> 2, 3, 5 が完了したのでとりあえず差し替えました
ダウンロードしましたー。
なんかファイル名が変。。。
> というかこのスレどのくらいの人が見ていますか?
3人ぐらい? (推測)
0461327 ◆pMSc6nsiJE
NGNGFlow.dll 改め PetitScript.Plugin.Extension.Flow がある程度できました。
ついでに Block 以外をメソッドとして登録すると、呼び出し時にぬるぽが発生するバグを潰しました。
その他、内部仕様が微妙に変化しました。なんか安定しない。
んで1つ質問
現在の仕様では行末に ; があるとレシーバリセットですけど、
行末ではなく行頭に持ってきた方が見やすいような気がします
どちらにしろ同じ事なのですが、レシーバに設定する単語の直前にリセッタを持ってきた方が
見やすいような気がするのですが…………どうでしょう?
0462デフォルトの名無しさん
NGNG> 現在の仕様では行末に ; があるとレシーバリセットですけど、
> 行末ではなく行頭に持ってきた方が見やすいような気がします
> どちらにしろ同じ事なのですが、レシーバに設定する単語の直前にリセッタを持ってきた方が
> 見やすいような気がするのですが…………どうでしょう?
それって行末はどう判定するんでしょう?
次のレシーバリセットが来たとき、あるいは、ファイルの終端、って感じ?
会話的に1行ずつインタープリタに打ち込んでいくとき、
行末の判断がつかなくなりそうな気がします。
(会話的な動作はさせない、のなら問題ないかもしれませんが)
0463327 ◆pMSc6nsiJE
NGNG行末の ; は、Delphi と同じ機能なのですが、今までは
行1;
行2
な感じですけど、これを
行1
;行2
の方が見やすいかと思いまして ^_^;
単にコーティングの差
後者を使用した場合、見易さを重視すれば ; を : に変更し、
行1
:行2
とか
0464327 ◆pMSc6nsiJE
NGNG後者のほうが少し分かりやすいのですよ
; が交代する行に書けますから
0465デフォルトの名無しさん
NGNG> 行末の ; は、Delphi と同じ機能なのですが、
Delphiの場合には ; はセパレータ(区切り文字)として
働いているわけですが、セパレータがセパレータとして
認識されるのは(構文解析可能なのは)、
始まりを表す何らかのトークン
式 セパレータ
式 セパレータ
式
終わりを表す何らかのトークン
というふうに必ず「終わりを表す何らかのトークン」が
存在しているからではないでしょうか。
たとえば、
begin 文1; 文2;文3 end
てな感じでendなどが文法上、間違いなく存在することが
保証されてるからDelphiの場合は問題ないのです。
ところが、327の言語の場合「終わりを表す何らかのトークン」が
存在しない(ファイルの終端だけ?)ので、
どう構文解析するつもりなのかなぁ、、とちょっと疑問なわけです。
0466327 ◆pMSc6nsiJE
NGNG確かにw
でも end の対応が取れていないとその後の部分がエラーになる罠
今のところは、トップレベルの区切りはファイルの終端でいいと考えています
内側の区切りは「ブロック」「メッセージ行」をあらわす { 〜 } と ( 〜 ) ですね
begin 〜 end は区切りとは直接関係無いような気も……俺が馬鹿なだけか?
とりあえず区切り文字は : に変更を考えています
確か昔の BASIC と同じ形式だったはず
早くリファレンス書いてしまわないと……
0467327 ◆pMSc6nsiJE
NGNGんで暫定公開所設置
かなり見難いリファレンス置いてあります
PetitScript 暫定公開所
p://hp.vector.co.jp/authors/VA027545/petit/
0468デフォルトの名無しさん
NGNGhttp://pc5.2ch.net/test/read.cgi/tech/1070886635/
より、宣伝されて来た。
Smalltalkみたいだ。
がんばってください。
# インタラクティブモードはなし?
0469327 ◆pMSc6nsiJE
NGNGわお、こんなに早く来るとは思ってなかったw
インタラクティブモードは出来なくはないです
実行を行うクラスを総入れ替えする必要ありますが
1.0.1700.1960 に差し替えました
パースを行うクラスを一から作り直したので、ちょっと微妙な感じ
とりあえず今後の予定
1) ソース公開
2) Extension.dll の本格的着手
3) Plugin の作り方のメモを書く
3) Petit.dll を組み込む方法のメモを書く
……こんな機能、欲しいのがあったら書いてください
とりあえず Extension.dll に入れられるかどうか考えてみます
0470デフォルトの名無しさん
NGNG俺も>>468のスレから来たクチだけど、はっきり言ってロクに出来てもいないものを宣伝されると
うざったくてかなり反感ムラムラ湧いてくる。やめてくれ。
0471デフォルトの名無しさん
NGNGオレもお前のような理不尽なことを言う奴は、
うざったくて反感ムラムラ湧いてくるんだが
丸く治めるには一体どうしたらいいだろうか?
0472デフォルトの名無しさん
NGNG俺も御前のような奴はうざったいと思う
しかし完成度が低いのは確か
その辺りは勘弁してくれ OTL
0473プロトタイプスレ599
NGNGま、確かに軽率だったのは謝るわ
で、やめろって言ったってどうすれば止められるんだ?
>>470 のレス削除依頼でもしてくるか?
0474プロトタイプスレ599
NGNGすまん、誤解を生む表現だった
誤:>>470 のレス削除依頼
正:問題のレス削除依頼
0475デフォルトの名無しさん
NGNG> 丸く治めるには一体どうしたらいいだろうか?
>>470に反感を持つ奴はみんな死んでしまえばいいんだよ。
>>470が地球上でいちばん偉いんだから。
0477327 ◆pMSc6nsiJE
NGNG1.0.1701.37483 に差し替えました
そろそろ一人立ちできそうなので多分単純な更新ではこれが最後の通達にしますね
今までありがとうございました(* ^ー゚)ノ
>>470
ロクに出来ていないという事ですが、言語自体の完成度は既に90%超えていたり
後は拡張機能を整備するだけ⊂⌒~⊃。Д。)⊃
0478デフォルトの名無しさん
NGNG0479327 ◆pMSc6nsiJE
NGNG\ /
\ /
\ ∧∧∧∧/
< 俺 >
< 予 .し >
< か >
─────────< .感 い >──────────
< な >
< !!!! い >
/∨∨∨∨\
/ \
/ \
/ \
/ _| ̄|○ \
0480デフォルトの名無しさん
NGNGいるよー。
0481デフォルトの名無しさん
NGNG0482デフォルトの名無しさん
NGNG0483デフォルトの名無しさん
NGNG0484デフォルトの名無しさん
NGNG0485デフォルトの名無しさん
NGNG0486327 ◆pMSc6nsiJE
NGNG0487デフォルトの名無しさん
NGNGついでに1個質問。
配列を実装しない場合、リストとかを言語レベルで実装すべき?
0488デフォルトの名無しさん
NGNG0489デフォルトの名無しさん
NGNG間接的メンバ指定ができることを実装したよ。
0490デフォルトの名無しさん
05/02/20 10:26:440491デフォルトの名無しさん
05/02/27 02:06:250492デフォルトの名無しさん
05/02/27 21:13:36それをやるとテーブルが大きくなりすぎるという課題が残ると思うが。
どうクリアするんだ?
0493デフォルトの名無しさん
05/02/27 23:29:47未設定の「数値」メンバは、メンバ表に書かれないから無問題
0494デフォルトの名無しさん
05/02/28 01:33:35とんだ車輪の再発明だったな。
0495デフォルトの名無しさん
05/02/28 08:30:38あう。
まあ、新奇な仕組みっていうつもりじゃ無かったんだけどね。
0496デフォルトの名無しさん
05/03/02 11:46:11これ理解するにはなんの知識が必要なの?
0497デフォルトの名無しさん
05/03/02 22:05:58これって、どれよ
0498デフォルトの名無しさん
05/03/03 01:28:500499デフォルトの名無しさん
05/03/03 03:05:52特徴は実行コンテキストのすげ換えの多用
自分の子インスタンスのスロットにメッセージを送っているつもりが
実はコール元が好き勝手に指定したスロットに送り続けている
もちろんOLE準拠
0500デフォルトの名無しさん
05/03/13 01:49:300501デフォルトの名無しさん
05/03/13 06:50:530502デフォルトの名無しさん
05/03/13 07:50:36そう言いたいのですね?
0503デフォルトの名無しさん
05/03/16 01:35:220504デフォルトの名無しさん
05/03/16 01:48:51いいえ、ホイールの使えるVB6と言いたいのです。
0505デフォルトの名無しさん
05/03/16 02:55:490506デフォルトの名無しさん
05/03/16 19:20:470507デフォルトの名無しさん
05/03/20 00:32:47まだ?
0508デフォルトの名無しさん
05/03/20 06:00:03そういう製品になんどだまされてきたことか
0509デフォルトの名無しさん
2005/04/11(月) 07:53:380510デフォルトの名無しさん
2005/04/11(月) 08:41:070511デフォルトの名無しさん
2005/04/14(木) 17:00:29VB1.0で失望したのでもういいです
0512デフォルトの名無しさん
2005/05/30(月) 04:10:080513デフォルトの名無しさん
2005/05/30(月) 04:15:12これどうよ?
DLLや組み込みスクリプトで機能拡張できるけど基本はRADのみ
http://gamemaker.main.jp/
0514デフォルトの名無しさん
2005/06/04(土) 13:08:590515デフォルトの名無しさん
2005/06/04(土) 14:36:210516514
2005/06/04(土) 15:29:28普通の四則演算式ならともかく、何らかの形でクラスの多重継承をサポートすると、
必要ならば継承を遡って、引数として合致するメソッドを探し、
ひとつだけに絞ることができれば、そこで初めてメソッドの型が取得できまするゆえ
[1] 強引、前へ
[2] オーバーロード禁止
[3] 変数の型を廃止
が、こちらが考え付いた解決策ですが、誰か決めてくださりませんか?
0517514
2005/06/04(土) 19:02:22var int i = 0;
だから
var i = 0;
に物凄い魅力を感じるw
……自分のレベルと相談して、どっちにするか決めますです(`・ω・´)
0518デフォルトの名無しさん
2005/06/05(日) 11:32:18漏れは読んでないけど、"C++の設計と進化"にそのへんのことが書いてあるってよ
0519デフォルトの名無しさん
2005/06/21(火) 21:26:510520デフォルトの名無しさん
2005/06/23(木) 03:16:31ぬるぽ
0521デフォルトの名無しさん
2005/06/28(火) 23:45:05GA!!
0522デフォルトの名無しさん
2005/06/29(水) 00:48:360523327 ◆pMSc6nsiJE
2005/07/01(金) 20:26:49もしかしたら、Object は Function のサブクラスなのかもしれないと、唐突ながら思った
0524デフォルトの名無しさん
2005/07/01(金) 20:32:33オブジェクトっていうのはそのコンストラクタのことで
つまり関数のうちコンストラクタとして働けるもののことだみたいな
0525327 ◆pMSc6nsiJE
2005/07/01(金) 20:56:46(obj 'tostr)
で obj.tostr を起動すると見せかけて、obj の実態が
(defun obj (m)
(cond ((equal m 'tostr) (tostr))
....)))
みたいな。
0526デフォルトの名無しさん
2005/07/01(金) 21:10:23漏れ Lisp あんまよく分かんないんだけど、
なんかメンバ名を引数に取ってそのメンバの実体を返すみたいな。
0527327 ◆pMSc6nsiJE
2005/07/01(金) 21:49:28多分 obj 関数は、メンバを評価した物を返すんだろうなぁ……
0528デフォルトの名無しさん
2005/07/01(金) 21:57:41その言語においてどういうものかによりけりかな
俺は母語が、メンバオブジェクトと言った時には
コンテキストも込みで指定されるような言語なもんで、
無意識にそういうものを想像してしまった
0529327 ◆pMSc6nsiJE
2005/07/04(月) 19:34:20仮定
Function は Object の親オブジェクトです
問題
(func equal nil) だと、func.equal(nil) にしたいのに func(equal, nil) になってしまう
回答A
こういうもんでス。func は仮定からも分かるとおり Object では無いですし
⇒ じゃ、あえて OO にする理由は?こういう風にも出来ますって例を示しただけ?
回答B
Object の方を Function の親オブジェクトにして、
(func :equal nil) のように「:」を付与して関数起動と関数オブジェクトのメソッドコールを書き分けよう
⇒ 関数起動の判定処理が複雑にならないか?
⇒ それに上の例では、func.equal(nil) と func().equal(nil) の区別が付かない
⇒ 後者は ((func) :equal nil) にすれば良いのでは?
0530デフォルトの名無しさん
2005/07/04(月) 20:50:32漏れもぶつかった問題なんだけど、再帰の時、オブジェクト数が膨らまない?
パフォーマンスにむちゃくちゃ悪影響を及ぼしそうなんだけど
0531327 ◆pMSc6nsiJE
2005/07/04(月) 21:00:45そう?そんなに膨らむのかな……
[func fact (x) # fact オブジェクトの生成リスト。defun の Object 汎用生成版
(x * (fact (x - 1)))
]
(fact 20) # fact(20) 計算
で〜 …… スタックフレームを除いた、言語上のオブジェクト生成は fact の1個だけ
確かに、再帰関数内などに生成リストを書いていれば爆発しますが……
0532デフォルトの名無しさん
2005/07/04(月) 21:02:38[func fact (x) (x <= 1 ? 1 (x * (fact (x - 1))))]
a ? b c で C の3項演算子っぽく
0533デフォルトの名無しさん
2005/07/04(月) 21:40:03オブジェクトを func のサブと定義づけてるから、func 自体は呼び出しエントリに
過ぎないわけだ。だから、再帰しても特にオブジェクトが爆発する訳じゃないんだね
昔のC++の実装みたいな作りだったんだ
0534デフォルトの名無しさん
2005/07/04(月) 21:48:26んで、>>529 は追々考えてみます。
0535デフォルトの名無しさん
2005/07/04(月) 22:03:46漏れはオブジェクト・ベースで考えていたとき、極端に進めて関数とは処理と結果を
ラップした機能単位と定義して、再帰でオブジェクトが爆発して挫折しますた
デリゲートっていい考えだね(´・ω・`)
0536デフォルトの名無しさん
2005/07/06(水) 13:30:15今まで通り、(obj method param......) の形式を徹底させる事にしました
Function も Object のサブクラスとして設定
(func equal nil) => func.equal(nil)
(self func equal nil) => func().equal(nil)
self のエイリアスとして : でも使えば (:func equal nil) となってスッキリ
0537デフォルトの名無しさん
2005/07/10(日) 18:50:21( 1 + (2 * 3) ) => 7
( '(1 + 2 + 3) tail tail eval ) => 5
とか
今は、シンボルとリスト以外に ' が付いたら
'1 => '1 : Symbol
'1 => '(1) : List
'1 => 1 : Number
の、どれにするのかで迷ってたり
0538ちょいメモすまぬ
2005/07/18(月) 21:09:03x を評価した物 が x 自身であるかどうか → 安定かどうか
を考えると
1) 記述可・安定 …… 数値やら文字列やらのリテラル群 (quote 付きのリスト含む)
2) 記述可・不安定 …… カッコ、シンボル
3) 記述不可・安定 …… オブジェクトのインスタンスなど
4) 記述不可・不安定 …… 関数
んで、評価タイミングが分かり難く、最も扱い難いのが 4 番になる
(安定ならば評価してもしなくても変わらないし、記述可なら評価しない旨も同様に記述可)
LISP では、関数はカッコを使って記述タイミングを調節している
(例えば、関数である gc を (gc) のように記述して起動するとか)
0539デフォルトの名無しさん
2005/07/18(月) 22:55:110540デフォルトの名無しさん
2005/07/18(月) 22:59:100541デフォルトの名無しさん
2005/07/18(月) 22:59:320542デフォルトの名無しさん
2005/07/18(月) 23:04:30え〜っと……とりあえず、関数そのものを指したいのか、関数を適応した結果を指したいのか、を区別する方法を探している。
0543デフォルトの名無しさん
2005/07/18(月) 23:23:540544デフォルトの名無しさん
2005/07/18(月) 23:25:220545デフォルトの名無しさん
2005/07/18(月) 23:32:25あー、俺のやつがそれだわ
関数って呼ばれるものは変数の一種で
評価すると中間コードの羅列になり
それをさらに実行すると適用結果が得られる
0546デフォルトの名無しさん
2005/07/18(月) 23:33:170547デフォルトの名無しさん
2005/07/19(火) 14:58:21細かいけど一応 Lispでは #'gc と (gc), 例に挙げられたコードは schemeだと思います。
perlやruby等のように funcで関数呼出、prefix付きで関数の実態を参照。
C,scheme,pythonのように、funcで関数の実態を参照、括弧付きで関数呼出?
関数の実態への参照をリテラルとして記述しない、する必要ないならば、(冗長になりますが)
Lispのようにsymbol-function,funcallに相当する関数を用意し、
パーサでは関与せず実行環境の方で扱う方法もあります。
>>545
代入(or名前束縛)とクロージャで関数を実装する方法ですよね。
関数を特別な扱いをせず少ないコードで実装できる点がお気に入り。
0548デフォルトの名無しさん
2005/07/20(水) 00:01:270549デフォルトの名無しさん
2005/07/20(水) 04:13:33死んじゃったの?
0550デフォルトの名無しさん
2005/07/20(水) 22:07:28>細かいけど……
すまぬ。申し訳ない
もしかしたら、( 〜 ) の一番最初の項目のみを関数呼び出しと見なせば、
それだけで呼び出しと実体参照を区別できるかもしれない……
結局、面白そうなんで
(obj method prm1 prm2 ...)
(func prm1 prm2)
の両方の書き方が出来るようにしてみます。極端な悪例だと、
(+ (1 + 2 + 3) (4 + (+ 5 6) + 7))
みたいな
0551デフォルトの名無しさん
2005/07/20(水) 23:19:23オブジェクト式と関数式の2つのパーサがあるわけだね。
0552デフォルトの名無しさん
2005/07/20(水) 23:28:36内部的に、Function と Object の共通の親 Unit (仮称) クラスを作っておいて、
unit.start(param_list);
で実行させちゃう気でいます
0553デフォルトの名無しさん
2005/07/20(水) 23:34:56start // ( 〜 ) 内の先頭の要素として評価する
call // quote の中の要素として評価する
eval // 普通に評価する
invoke // オブジェクトのメンバとして評価する
妙に多すぎる。少なくしないと
0554デフォルトの名無しさん
2005/07/27(水) 22:01:460555デフォルトの名無しさん
2005/07/27(水) 22:05:56俺もプロトタイプOOだけど
0556デフォルトの名無しさん
2005/07/30(土) 18:10:21[1] Io みたいに、ルートの Object が全部保持
[2] クロージャの要領で、メソッドは self スロットの次にメソッド生成時の環境を参照します
[3] 素直にグローバルテーブル
どれも実現は可能。どれが良いかな……
0557hitorigoto
2005/08/09(火) 20:56:52#(method (x y) (x <= 0 ? y (tail-rec (x - 1) (y + 1))))
> (tail-rec 241 0)
java.lang.StackOverflowError
さて、どうやって延命させようか…… orz
0558デフォルトの名無しさん
2005/08/09(火) 23:44:070559hitorigoto
2005/08/09(火) 23:52:230560デフォルトの名無しさん
2005/09/24(土) 01:09:400561デフォルトの名無しさん
2005/09/24(土) 02:15:410562デフォルトの名無しさん
2005/09/25(日) 01:16:300563327 ◆pMSc6nsiJE
2005/09/25(日) 01:50:150564デフォルトの名無しさん
2005/09/28(水) 13:22:09無駄じゃないの?
そもそもどういう要請をうけて新言語は産声をあげるべきなの?
0565デフォルトの名無しさん
2005/09/28(水) 15:01:19頭固すぎwww
0566デフォルトの名無しさん
2005/09/28(水) 17:59:270567デフォルトの名無しさん
2005/10/22(土) 12:02:49◆ type A …… 'object を 「quote が付いた object」 とするパターン
>> ( 'object self )
object
>> ( '(nil true?) self )
nil # self は (nil true?) なので、中身が実行された
>> ( '(nil true?) list? )
true
◆ type B …… 'object を 「quote オブジェクト」 とするパターン
>> ( 'object self )
'object
>> ( '(nil true?) self )
'(nil true?)
>> ( '(nil true?) list? )
nil
>> ( '(nil true?) `list? )
true # ` を付けると、quote の中身を QUOTE 評価する
0568デフォルトの名無しさん
2005/10/22(土) 13:00:23quoteの意味を説明してもらわんと。
どちらかというとBだけど
>> ( 'object self )
object (というシンボル)
>> ( '(nil true?) self )
'(nil true?)
>> ( '(nil true?) list? )
true
がいいな。
0569567
2005/10/22(土) 13:13:08うげ。すまんです。quote は丁度 LISP の quote と同じような機能を考えてます。
んで提案への返信なんですが、
>> ( '(nil true?) self )
'(nil true?)
だと、self は quote 自身が受け取っていて、
>> ( 'object self )
object
>> ( '(nil true?) list? )
true
だと、list? は quote ではなく quote の中身が受け取ってるんで、両立は難しそうです。
self のような、特定の引数は quote が受け取って、それ以外は中身に送るみたいなことも考えたんですが、
それだと妙に内部構造が複雑になるんです (-∀-;)
0570568
2005/10/22(土) 13:21:46>> ( '(nil true?) self )
(nil true?)
がいいな、でした。つまりLispのquoteと同じね。
これならOK?
0571567
2005/10/22(土) 13:42:19何とかしてみるよ。
0572デフォルトの名無しさん
2005/10/22(土) 17:54:43QUOTE(obj) を obj と表示されるようにして、(quote obj) を QUOTE(obj) を返すメソッドにしてみたんだけど、
>> (quote (obj)
obj
>> (quote (nil true?))
(nil true?)
>> (quote (nil true?) self)
(nil true?)
>> (quote (quote obj) list?) # (quote obj) は list?
true
>> (quote (quote obj) quote?) # (quote obj) は quote?
nil
が精一杯。下の段があまりよろしくない。上の段の出力結果も quote が付いているかどうか分かんないし。
とりあえず、>>568 さんがちらりと言ったんで >>567 の B 案でいくことにするでス。
0573デフォルトの名無しさん
2005/10/22(土) 20:03:44流れをよくわかってないけど…
Lispでは、
'obj => (quote obj)
'(nil true?) => (quote (nil true?))
('(nil true?) self) => ((quote (nil true?)) self)
だから
(quote (nil true?) self)
とか
(quote (quote obj) list?)
ってのが、変な気がするんだけど…(quoteが引数2つとってるあたりがよくわからない…)
0574567
2005/10/22(土) 20:10:29それから思ったんだけど、QUOTE はやっぱり A 案で行かなければいけない気がした。
A 案だと、object に QUOTE がついていてもいなくても、一部メソッドを除けば同じ風に実行されるはずだし。
>> ( expr: '(1 + 2) ) # スロット expr に '(1 + 2) を代入
'(1 + 2)
>> ( expr head )
'1
>> ( expr tail )
'(+ 2)
>> ( expr self )
3
が違和感無いかどうかが問題になってくるけど。
0575デフォルトの名無しさん
2005/10/22(土) 20:18:37'(1 + 2)
は
(quote (1 + 2 ))
の省略記法で、リーダーがこれを読むとquoteなんて消滅して
(1 + 2)
になるのがLispのquoteだと思うけど。
AならAで、2番目が理解不能。
>> ( '(nil true?) self )
は
(nil true?)
になるべきなんじゃないのか?
なんでselfが(nil true?)になった後でさらに評価されるのかわからん。
0576567
2005/10/22(土) 20:29:17作ってるのは Lisp じゃないから 。・゚・(ノД`)・゚・。
( '(nil true?) self ) の評価手順は、順を追って説明すると
( '(nil true?) self ) ← null
'(nil true?) ← self ⇒ (nil true?)
(nil true?) ← null
nil ← true? ⇒ nil
という不思議空間。
このあたりは試行錯誤していたけど、結局全部評価した方が感じよかったんです。
0577567
2005/10/22(土) 20:31:48Lisp じゃないんだし。
0578573
2005/10/22(土) 21:15:21(1 + 2 + 3 + 4) の評価の仕方はどうなってるの?
+はメッセージで2は引数とかいうオブジェクト指向な世界??
あと、個人的には下のようなほうが好みかな…
(quoteがはずれるタイミングがどうも納得いかないので。)
>> ( expr: '(1 + 2) ) # スロット expr に '(1 + 2) を代入
(1 + 2) # 'は無し!
>> ( expr head )
1 # 'は無し!
>> ( expr tail )
(+ 2) # 'は無し!
>> ( expr self )
3
0579567
2005/10/22(土) 21:25:31>+はメッセージで2は引数とかいうオブジェクト指向な世界??
そうです。混乱させてごめんなさい。
それと quote が外れるタイミングが問題とのことですが、
quote が外れたオブジェクトは、いつ評価されても文句言えない仕様なんです。
あと1つ聞きたいことがあるんですが、
>> ( '( (1 + 2) + 3) head) )
'(1 + 2)
これは ' が付いてたほうが良いですか?
0580567
2005/10/22(土) 21:28:57多分表示するときには付いていない方が良さそうです。
とりあえず、最終的に "(1 + 2)" と表示されても、そのリストには quote が暗黙的にでも付いていなければ評価されてしまうんで、
やっぱり >>572 が一番適切なのでしょうか……?
0582573
2005/10/22(土) 22:10:11オブジェクトがいつ評価されるのかは、きちんと決まってないと混乱の元になると思う。
(実装する人にとっても、その言語を使う人にとっても。)
>quote を関数ではなく構文糖として、
quoteを関数として実装するのは無理な気が…
quoteが関数だと
'(1 + 2)
↑は
'3
と等価になるんじゃないのかな? (1 + 2)がquoteに渡される前に評価されてしまうことになるから。
0583デフォルトの名無しさん
2005/10/22(土) 22:18:14ん〜っと、関数って言うかスペシャルフォームです。
あと、一般のオブジェクトは引数無しで評価しても変化しないです。
0584567
2005/10/22(土) 22:30:51>> ( [ 1 + 2 + 3 ] eval )
6
みたいなのあれば大丈夫でしょう。
0585573
2005/10/22(土) 22:38:391を評価しても1ってことだよね。
だとすると
(1 + 2)
の評価順序は
a. 1を評価して、結果は1
b. 1にメッセージ+を2を引数にして送る。そして得られる結果は3
ということになると思うんだけど…
そうなると
('(nil true?) list?)
の評価は
A. '(nil ture?)を評価して、結果はquoteがはずれて(nil true?)
B. (nil ture?)にメッセージlist?を送って、結果はtrue
って感じじゃ駄目なのかな?
現時点では、手順Aの次に、(nil true?)がまた評価されてしまうように感じるんだけど…違う?
0586573
2005/10/22(土) 22:46:050587567
2005/10/22(土) 22:47:31ごめんなさい。私の頭の方が先に限界が来てしまいました。
>(nil true?)がまた評価されてしまうように感じるんだけど
いえ、( '(nil true?) list? ) の場合には true が帰ってきます
問題となるのは、式を末尾まで評価し終わったときに、( 〜 ) のような不安定なオブジェクトが残っている場合なんです。
だから、[ 〜 ] を用意したとしても、
>> ( [ + 1 2 ] head )
[+]
にしなきゃいけないはず……って、根本的な問題が何も解決されてないな orz
0588567
2005/10/22(土) 22:52:320589デフォルトの名無しさん
2005/10/22(土) 22:53:360590573
2005/10/22(土) 23:16:57別に残ってても何も問題ないような…?
例えば、
'(apple banana orange)
を評価したら
(apple banana orange)
というリストが返ってくるだけでいいと思う。それをまた評価しようと考えてるのかな?
Lispじゃ( 〜 )のようなデータは普通というか基本だし、さらに評価する必要なんかないと思う。
0591567
2005/10/22(土) 23:25:21>> ( 1 + 2 + 4 + 5 )
12
rcv: 1 prm: ( + 2 + 4 + 5 ) env: global
rcv: + prm: ( 2 + 4 + 5 ) env: 1
rcv: 3 prm: ( + 4 + 5 ) env: global
rcv: + prm: ( 4 + 5 ) env: 3
rcv: 7 prm: ( + 5 ) env: global
rcv: + prm: ( 5 ) env: 7
rcv: 12 prm: ( ) env: global
rcv: global ret: 12 : env: global
えっと、整理すると Quote が外れた後の不安定なオブジェクトが評価されてしまうのが問題なんだから、
不安定なオブジェクトでは、そもそも Quote が外れないようにすれば……。
0592573
2005/10/22(土) 23:35:40えっと、そもそも不安定なオブジェクトって何なのかな?
リストとのことかと思ってたけど…
あと、評価規則だけど、
1.(整数など)アトムの評価結果はアトム自身
2.リストは'('から')'の間をメッセージ・センディングとして評価する
ってことでいい?
0593デフォルトの名無しさん
2005/10/22(土) 23:45:23はい。
例えば、安定なオブジェクトは
>> ((((((((((((1234))))))))))))
1234
みたいに変化しないオブジェクトです。
逆に、リストやシンボルは別な値へと変化しちゃうんで不安定。
>2.リストは'('から')'の間をメッセージ・センディングとして評価する
リストは評価すると、head 宛てに tail を送信します。
0594デフォルトの名無しさん
2005/10/23(日) 00:06:220595デフォルトの名無しさん
2005/10/23(日) 00:26:11> ( 'true self ) ... 0ms
true
> ( 'true proto ) ... 0ms
root-symbol
> ( 'true quote? ) ... 0ms
nil
> ( ''true quote? ) ... 0ms
true
【 quote::quote内評価 】
> ( 'nil ) ... 0ms
nil
> ( 'nil self ) ... 0ms
nil
> ( 'object ) ... 0ms
object
> ( '( object true? ) ) ... 0ms
(object true?)
> ( '( object true? ) self ) ... 0ms
(object true?)
> ( '( object ) quote? ) ... 0ms
nil
> ( '( object ) list? ) ... 0ms
true
……うまくいったです。
( '(object true?) self ) が (object true?) を返してますけど、これは許してください。
0596デフォルトの名無しさん
2005/10/23(日) 21:22:40『全てのオブジェクトの継承元である object にブール演算・条件演算を適用させたいかどうか』
適用させた場合、ちょうど Io と同じような構造になります。
また見た目を考えた場合、true と表示されるオブジェクトを作るかどうかも考えています。
適用させない場合、ブール演算や条件判断演算は、object に対しては行えません。
Smalltalk を初めとした諸言語と同じ構造になります。
0597デフォルトの名無しさん
2005/10/23(日) 21:37:09nil だとか 0 だとか false だとか(ものによってそれぞれだが)以外は
真になるってことなら一般的だと思うけど。
0598デフォルトの名無しさん
2005/10/23(日) 21:48:07if (1) { /* これが C */ }
if (true) { /* これが C# */ }
ちなみに、Io では object は基本的には真で、唯一の例外として nil のみ偽です。
object にブール演算適用できるようにしても、true の件はどうしましょうか。
true スロットに object 入れておけば true として使えるんでスが表示は object になってしまうんで、
独自に true オブジェクトを作って表示も true にしたほうが良いかどうか。
0599デフォルトの名無しさん
2005/10/23(日) 22:23:55タイプ量を減らしたいならC方式。
オレの好みはC#方式。
タイプ量は「!= 0」をワンキーで入れるようにエディタを仕込めばいいから。
0600デフォルトの名無しさん
2005/10/23(日) 22:51:21これをどう見るかも、また問題かも。
ある意味で C 方式の方がミスが少なくなるかも。かも。
0601デフォルトの名無しさん
2005/10/24(月) 01:58:46まあどうせ俺が使うことにはならないだろうからどうでもいいんだが。
0602デフォルトの名無しさん
2005/11/03(木) 22:26:35シンボルの評価には、幾つかパターンがあります。
( hoge ) # hoge スロットから取り出す
( hoge? ) # 末尾が ? のシンボルは、スロットが見つからない場合 nil を返す
( hoge: 0) # 末尾が : のシンボルは、スロットが見つからない場合、値を hoge スロットに代入する
( super hoge ) # proto の hoge を取り出す
( static hoge ) # proto を辿らずに hoge を取り出す
んで、スロットの値を "評価せずに" 取り出すのは、どっちが良いでしょうか
> ( hoge: (method (x) (x + 1)))
> ( hoge 2 ) # これだと普通にメソッドを評価
3
> ( get hoge ) # 選択肢その1、get に続いてスロット名
#(method (x) (x + 1))
> ( hoge@ ) # 選択肢その2、シンボルの末尾を ^ や @ などの特殊文字に
#(method (x) (x + 1))
0603デフォルトの名無しさん
2005/11/04(金) 02:11:280604デフォルトの名無しさん
2005/11/04(金) 02:40:010605デフォルトの名無しさん
2005/11/04(金) 02:41:090606602
2005/11/04(金) 07:50:28> ( 'hoge get ) # 選択肢その3、hoge を quote で囲み、get を送信
#(method (x) (x + 1))
0607デフォルトの名無しさん
2005/11/04(金) 19:14:37hoge とだけ書いたら hoge の値が取れるってのはどう?
(hoge 2) は、hoge が評価されて
((method (x) (x + 1)) 2)
になってから値を求めるとか。
0608デフォルトの名無しさん
2005/11/04(金) 20:44:20ごめん。そいつは評価システムを根本から変えなきゃいけないから無理 (-∀-;)
申し訳ない……。
0609デフォルトの名無しさん
2005/11/12(土) 19:04:20【今日の質問】
メソッドオブジェクトをスロットに保存しようとしても、取り出し時にメソッドが評価されてしまう
このように、メソッドを評価したくて代入したのか保存したくて代入したのかが現時点では区別されて無い
どうすれば良いか
【俺の案その1】
スロットテーブルを2個つくり、代入シンボルを変える
値を入れるときには hoge: で、メソッドを実行可能状態でセットするときには hoge! とか。
【俺の案その2】
スロットに代入後、スロットの属性を変更する。
set-mode hoge "-rwxrwxrwx" とか。
【俺の案その3】
気にしない。オブジェクトを評価せずに取り出す機構は別に用意してある。
実装の難しさは2、1、3の順で簡単になる。
案2は使用時に面倒だけど、読み取り属性とかも一緒に設定できて小回りが効く。
どれがいいでしょうか。
0610デフォルトの名無しさん
2005/11/12(土) 19:09:520611デフォルトの名無しさん
2005/11/13(日) 10:57:20呼び出し時の構文で、メソッドを評価するかどうか
変えるのが好み。
例えば、
1.aVariable = slot_name; // メソッドが取り出される。
2.aVariable = slot_name(); // メソッドを取り出し実行する。
0612デフォルトの名無しさん
2005/11/19(土) 23:13:20『案その3』 で行くことにするよ。
0613327 ◆pMSc6nsiJE
2005/12/10(土) 20:28:14書き終わったら暫定ながら公開してみます。
自分で納得できるものが出来たです。
0614デフォルトの名無しさん
2006/02/08(水) 14:54:12行くぞ彰ホームラン!センターオーバーホームラン!
弾丸ライナーだ!飛ばせ!運べ!彰!
俺が考えた歌詞ですよ!
弾丸ライナーだ!の後に「ヘイ!」とか「おい!」って掛け声を入れてスタンドでジャンプするの
とかいれると面白いかもしれない。
0615デフォルトの名無しさん
2006/02/16(木) 22:48:200616デフォルトの名無しさん
2006/02/16(木) 22:50:09見に来てください
hhttp://g2003.immex.jp/cyons/
0617デフォルトの名無しさん
2006/02/16(木) 23:02:25アク禁アク禁
0618デフォルトの名無しさん
2006/02/17(金) 00:39:470619デフォルトの名無しさん
2006/02/17(金) 00:40:020620デフォルトの名無しさん
2006/02/17(金) 10:30:320621デフォルトの名無しさん
2006/02/21(火) 00:56:080622デフォルトの名無しさん
2006/02/21(火) 01:20:01Java程度にはオブジェクト指向で、
複素数、ベクトル、行列、テンソルクラスがデフォでついてて、
ついでにそいつ等の演算がblas、lapack並のポフォーマンスでできて、
C++のように目を回すほど複雑でない
科学技術計算向けの言語を作ってくれるツワモノのいないでしょうか。
グリーンジャンボがあたったら援助は惜しみません。
0623デフォルトの名無しさん
2006/02/21(火) 01:21:100624デフォルトの名無しさん
2006/02/21(火) 01:36:28http://www.experimentalstuff.com/sunr/projects/plrg/
グリーンジャンボじゃ DARPA には勝てないのでは...
0625デフォルトの名無しさん
2006/02/21(火) 10:53:48それをソースにするとどんなかんじになる?
0626デフォルトの名無しさん
2006/02/21(火) 12:01:120627デフォルトの名無しさん
2006/02/21(火) 12:03:230628デフォルトの名無しさん
2006/02/21(火) 12:06:36あとあと、計算結果をグラフにしたり、文字で出したりする時にどんどん必要なものが増えてくるんだよ
だから、すでにある言語にインプリメントしていったほうが結果的には奇麗になる
0629デフォルトの名無しさん
2006/02/21(火) 13:40:390630デフォルトの名無しさん
2006/02/21(火) 19:19:50gnuplotじゃダメなの?
0631デフォルトの名無しさん
2006/02/21(火) 22:41:370632デフォルトの名無しさん
2006/02/21(火) 23:00:250633デフォルトの名無しさん
2006/02/21(火) 23:03:29XMLにシリアライズ
0634デフォルトの名無しさん
2006/02/22(水) 16:04:30普通に構文解析パーサをクラスに持たせりゃいいじゃん
class.Compute("(a + b) * (a - b)");
class.Set("a",1);
class.Set("a",2);
value = class.Value();
みたいな〜
0635デフォルトの名無しさん
2006/02/23(木) 00:47:330636デフォルトの名無しさん
2006/02/23(木) 02:10:15何いってんだお前
■ このスレッドは過去ログ倉庫に格納されています