K.Maebashi's BBS

ご自由に書き込んでください。雑談も可。
テスト書き込みの類はテスト用掲示板にどうぞ

[日付順表示] [日付順インデックス] [スレッド順インデックス]

新規投稿 | 開設者ホームページへ戻る | ヘルプ

[974] Re:関数の型の宣言構文について
投稿者:みずしま
2007/06/16 02:09:55

>>案としてJava 7風に >> B foo(A); > >Java 7で関数を代入できる変数の宣言は > >B(A) foo; > >では? >http://journal.mycom.co.jp/articles/2006/08/23/java7closuer/002.html あ、そうですね。うろ覚えで書いたので間違ってしまったようです。 >>というわけで、静的型付け関数型言語(MLとかHaskellなど)でよくあるように、 >> foo : int -> int; >>と書くのはいかがでしょう? > >ご提案ありがとうございます。ちょっと調べてみます。 >ただDiksamは、 >「floatなんか付けるつもりもないくせに浮動小数点数はdouble」 >というくらいC/Javaにひよった言語ですので、Java 7風かなあ、とは思っています。 >と言いつつ、「なぜかBだけ先頭」という規則が美しくないとは思っているんですけどねえ。 C言語ポインタ完全制覇の記述などを見ても、後置の型宣言の方がお好みなのかな と思っていたので、ちょっと意外な気がしました。とはいえ、この程度の細かい シンタックスの違いはある意味どうでもいい話なので、C/Javaにひよるのも一つ なのかもしれません。 あと、質問なんですが、将来的にDiksamを拡張して、多相型(JavaのGenerics 相当の機能)を付け加える予定はあるでしょうか?多相型のセマンティクスは 言語によってかなりバリエーションがあり、一応俺言語を作っている者として、 前橋さんがどのようなセマンティクスが良いと考えておられるかについて興味が あります。
[この投稿を含むスレッドを表示] [この投稿を削除]
[973] Re:関数の型の宣言構文について
投稿者:(ぱ)こと管理人
2007/06/15 12:29:55

>こんにちは。みずしまです。 こんにちは。 はてなの方でちょっと書いたのですが、自宅PCが不調で、昨夜からついに起動もできなくなりました。今は昼飯がてらネットカフェで書いています。 というわけでしばらく反応が遅くなると思います。ご了承ください。 >案としてJava 7風に > B foo(A); Java 7で関数を代入できる変数の宣言は B(A) foo; では? http://journal.mycom.co.jp/articles/2006/08/23/java7closuer/002.html つまり、 > var foo:(A) B; この形式から、末尾のBを先頭に持ってきて、それ以外の部分をBの後ろにつないだ形式になります(と、私は解釈しています)。 > B foo(A); Diksamには関数のプロトタイプ宣言があるので、この構文はバッティングしますね。 >というわけで、静的型付け関数型言語(MLとかHaskellなど)でよくあるように、 > foo : int -> int; >と書くのはいかがでしょう? ご提案ありがとうございます。ちょっと調べてみます。 ただDiksamは、 「floatなんか付けるつもりもないくせに浮動小数点数はdouble」 というくらいC/Javaにひよった言語ですので、Java 7風かなあ、とは思っています。 と言いつつ、「なぜかBだけ先頭」という規則が美しくないとは思っているんですけどねえ。
[この投稿を含むスレッドを表示] [この投稿を削除]
[972] 関数の型の宣言構文について
投稿者:みずしま
2007/06/14 21:02:39

こんにちは。みずしまです。 以前から前橋さんのページの特にプログラミング言語関係のネタをwatchして いましたが、今年になってから「プログラミング言語を作る」の 「静的型・バイトコード実行型言語を作る」編を開始されたということで、 静的型言語好きな自分としては、Diksamがどんな言語になっていくのか 楽しみにしております。 さて、本題なのですが、Diksamでは将来的に関数型の変数を扱う機能の実装を 予定されているようですが、構文に関してはまだ決定されていないようです。 案としてJava 7風に B foo(A); と書く方法と var foo:(A) B; と書く方法の2つを考えておられるようですが、どちらも関数を返す関数などの 複雑な型を書く場合にイマイチな気がします。 C(B) foo(A); //Aを受け取り、「Bを受け取りCを返す関数」を返す関数 var foo:(A) (B) C; //引数と返り値の型が区切られて無いせいで、読みにくい気がする というわけで、静的型付け関数型言語(MLとかHaskellなど)でよくあるように、 foo : int -> int; と書くのはいかがでしょう?
[この投稿を含むスレッドを表示] [この投稿を削除]
[971] Re:無題
投稿者:(ぱ)こと管理人
2007/06/08 08:22:22

えー、補足で一応書いておくと、 これが私の書いたものに対する正当な批判のつもりなら、 ・そもそもどの文章についてなのか。 ・そこで使われている「バカ」の具体例 くらい出さなきゃ話にならんでしょう。 まあ、こんな書き捨て野郎には何も期待してませんけど。
[この投稿を含むスレッドを表示] [この投稿を削除]
[970] Re:無題
投稿者:(ぱ)こと管理人
2007/06/08 08:02:23

なんなんすかね、これ。 匿名書き捨て野郎の相手をするほどヒマではないので放置しときますが。
[この投稿を含むスレッドを表示] [この投稿を削除]
[969] 無題
投稿者:unko
2007/06/07 22:52:51

何かアレだな 文章に頻繁に出てくる「バカ」ってのがウザい 人をバカにする文章を書くことで優越感に浸れるのかもしれないけど 読んでる方は不快なだけだから。
[この投稿を含むスレッドを表示] [この投稿を削除]
[968] 管理者により削除されました
2007/05/27 12:00:10

[この投稿を含むスレッドを表示]
[966] 管理者により削除されました
2007/04/23 00:36:06

なんなんだ最近連投されているラグナロクオンライン関連らしいぶっ壊れた日本語のしかもリンク先すら読めないこのSPAMは。
[この投稿を含むスレッドを表示]
[965] 断酒宣言
投稿者:(ぱ)こと管理人
2007/04/04 00:11:48

ページ直すのが面倒なので今年はこっちでやります。 3/22より例によって断酒しています。 今回の期間はゴールデンウイーク開始まで。 ・飲み会では飲んでもいい。 ・それ以外でどうしても飲んじゃった場合には、その旨をここで報告する。 というふたつの例外条件はいつものとおり。 年度の変わり目は飲み会が多いので、そのへんを狙うのがコツ(ぉぃ)
[この投稿を含むスレッドを表示] [この投稿を削除]
[964] 時間切れ
投稿者:(ぱ)こと管理人
2007/04/02 02:32:41

昨年のBF-BASIC'nに続き、今年も何かエイプリルフールネタをやろうとして、「S式を箇条書きで表現するLispもどき言語」というのを考えてたんですが時間切れでした… あーあ。
[この投稿を含むスレッドを表示] [この投稿を削除]
[963] 広告を削除しました
投稿者:(ぱ)こと管理人
2007/03/30 20:46:00

 広告が連投されていて、この掲示板では管理者削除で消しても形跡が残るので、鬱陶しいので物理削除しました。  spam向けの削除機能とspamよけの何らかの機能を考えないといかんかなあ。
[この投稿を含むスレッドを表示] [この投稿を削除]
[962] Re:めちゃめちゃ勉強になりました
投稿者:(ぱ)こと管理人
2007/03/23 00:19:12

はじめまして。お役に立てたのなら幸いです。 >仕事に、「構文解析」の needsが出て、 目的のアプリケーションがCで、yacc/lexが使える状況であれば、 うちのサイトの記述が役に立つかと思います。なお、yaccのコンフリクト 解消については、「プログラミング言語を作る」よりも 「電卓を作ってみよう」 http://kmaebashi.com/programmer/c_yota/calc.html の方に記述がありますのでよろしければそちらもどうぞ(今見返すと、 我ながらアレな文章書いてますが…)。 目的のアプリケーションがC++なら、(yacc/lexも使えますが)Boostの spiritの方がよいかもしれません。 外部ツールやライブラリを使うのが難しいなら、再帰下降で手書きの パーサを書くという方法もありますよね。
[この投稿を含むスレッドを表示] [この投稿を削除]
[961] めちゃめちゃ勉強になりました
投稿者:巨大怪獣
2007/03/21 19:47:13

仕事に、「構文解析」の needsが出て、 困っているところに、 前橋さんのこのサイトを見つけました。 「あっ!これで、なんとなく、助かるじゃん!」という感じなんです。 本当に、感謝します。 (まったく私の勝手ですが。。。)これから、よろしくお願いします。^_^ さって、「電卓作成」の勉強に入ります。。。
[この投稿を含むスレッドを表示] [この投稿を削除]
[960] 管理者により削除されました
2007/03/10 22:19:56

投稿者の記載も新しい追記もなく、単に古い投稿に返信しただけの記事だったので削除しました。 テスト投稿はテスト用掲示板 http://kmaebashi.com/bbs/list.php?boardid=testbbs にお願いします。
[この投稿を含むスレッドを表示]
[959] 無題
投稿者:(ぱ)こと管理人
2007/02/25 20:36:21

レンタルサーバ業者さんから下記の通りサービス停止の連絡が来ています。 サーバ停止中は、kmaebashi.comの閲覧や掲示板の使用ができません。 ただしメールは届きます。 > メンテナンス作業実施のお知らせ > ネットワーク機器のメンテナンス作業を実施いたします。 > 作業日時:3/5(月)午前1時~ > 作業対象:国内全サーバー > 作業内容:ネットワーク機器のメンテナンス > 作業時間は4時間程度を予定しております。 > 作業中、数回程度断続的にネットワークが遮断されます。 > 一回の遮断は30秒から3分程度となっております。
[この投稿を含むスレッドを表示] [この投稿を削除]
[958] Re:リンク
投稿者:(ぱ)こと管理人
2007/02/23 02:01:46

>http://kmaebashi.com/bbs/  なるほど… 報告ありがとうございます。掲示板のスクリプトがhttp://kmaebashi.com/bbs/以下においてあるくせに、Niftyの過去ログがhttp://kmaebashi.com/bbs/index.htmlである、ということがまずいように思えます。  Niftyの過去ログは、Niftyでは500件で投稿が流れてしまうという制限があったため、せっかくの投稿が消えてしまわないように作ったものです。当時はレンタルサーバ借りて自分で掲示板を設置するとは思いもよらず/bbs/直下にしたわけですが、その後、いざ掲示板を作るにあたっても、別に悪いこともないだろうと/bbs/直下に置いたのが仇になったようです。  どっちかのURLを変えればよいわけですが、既にNifty掲示板の過去ログも現行掲示板も結構Google等に拾われているようなので、当面このままにしようかと思います。あしからずご了承くださいませ。  この現象のせいですごく困っている、という方はご報告ください。私は携帯は使わないので、状況を把握していない可能性があります。
[この投稿を含むスレッドを表示] [この投稿を削除]
[957] Re:リンク
投稿者:yuya
2007/02/21 12:47:29

> お気になさらず。 ありがとうございます。 テスト板の方で勝手に実験させてもらったのですが、再現しませんでした。 [952]で「Niftyの過去ログに飛んだ」と書きながら OTDの過去ログのURLを書いてしまっていましたが、正しくは http://kmaebashi.com/bbs/index.html でした。おそらく携帯ブラウザの制限から、本来のURLが破棄されて、 /../ すなわち http://kmaebashi.com/bbs/ として解釈されてしまい、index.html が表示されたのだろうと推測しています。 もちろんこのファイル名は「Niftyの過去ログのインデックス」という意味でしょうけれど、 デフォルトインデックスとして扱われてしまったのでしょうね。 # お騒がせしました。
[この投稿を含むスレッドを表示] [この投稿を削除]
[956] Re:リンク
投稿者:(ぱ)こと管理人
2007/02/20 23:47:03

>ありゃ、お役に立とうと思ったら裏目に出てしまった。 >すみませんです。 や、これはもう完璧に私のポカですからお気になさらず。 # SQLの文法の問題だと言い張りたい気はなきにしもあらずですが。
[この投稿を含むスレッドを表示] [この投稿を削除]
[955] Re:リンク
投稿者:(ぱ)こと管理人
2007/02/20 23:47:00

>ありゃ、お役に立とうと思ったら裏目に出てしまった。 >すみませんです。 や、これはもう完璧に私のポカですからお気になさらず。 # SQLの文法の問題だと言い張りたい気はなきにしもあらずですが。
[この投稿を含むスレッドを表示] [この投稿を削除]
[954] Re:リンク
投稿者:yuya
2007/02/20 12:50:07

ありゃ、お役に立とうと思ったら裏目に出てしまった。 すみませんです。 前橋さんのサイトは携帯電話のブラウザでも ほとんど問題なく読めるので、よく携帯(au)からアクセスするのですが そのときに起きた現象だったので、 キャッシュは残ってましたがソースが見られない。 うー、気持ち悪い。
[この投稿を含むスレッドを表示] [この投稿を削除]
[953] Re:リンク
投稿者:(ぱ)こと管理人
2007/02/20 02:28:22

>このspammerの書いていたリンク先を、削除される前にクリックしちゃったんですが、 >なぜか旧掲示板(Nifty)の過去ログのページに飛んだんですよ。 >たぶんここに↓↓ >http://kmaebashi.com/bbs/otdindex.html うーん、D/Bをいじってフラグを戻し、投稿を復活させてクリックしてみたのですが、 再現しないようです。 それはさておきその時update文にwhereを付け忘れてしまい… 広告が全部復活してしまいました (;_;) 途中までは消したのですが、今日はもう眠いので後日ぼちぼち消していきます。 とほほ。
[この投稿を含むスレッドを表示] [この投稿を削除]
[952] リンク
投稿者:yuya
2007/02/20 02:13:25

このspammerの書いていたリンク先を、削除される前にクリックしちゃったんですが、 なぜか旧掲示板(Nifty)の過去ログのページに飛んだんですよ。 たぶんここに↓↓ http://kmaebashi.com/bbs/otdindex.html 再現されるかどうか分かりませんけど、 何かバグがあるなら修正の機会になるかと思い、一応指摘させていただきました。
[この投稿を含むスレッドを表示] [この投稿を削除]
[951] 管理者により削除されました
2007/02/20 02:29:45

広告なので削除しました。 聖書のお言葉に従う人がspamをばらまいているらしい。へー。 # てなことを書いたような気が。
[この投稿を含むスレッドを表示]
[948] Re:コピペの痕跡が・・・
投稿者:(ぱ)こと管理人
2007/02/20 02:13:25

>「プログラミング言語を作る」の『サンプル言語「Diksam」』 >http://kmaebashi.com/programmer/devlang/index.html > >の一番下の注釈を消し忘れているみたいです。 ご指摘ありがとうございます。修正しました。
[この投稿を含むスレッドを表示] [この投稿を削除]
[947] コピペの痕跡が・・・
投稿者:トル
2007/02/20 02:13:25

「プログラミング言語を作る」の『サンプル言語「Diksam」』 http://kmaebashi.com/programmer/devlang/index.html の一番下の注釈を消し忘れているみたいです。
[この投稿を含むスレッドを表示] [この投稿を削除]
[946] Re:ヘルプ
投稿者:(ぱ)こと管理人
2007/02/20 02:13:25

>毎度こまかな指摘で恐縮ですが、掲示板のヘルプのページのOTD関係の記述って、 >もう要らないんではないでしょうか? ご指摘ありがとうございます。気にはしていたのですが、放置したままn年過ぎてしまいました。 ひとまず直しました。不備等ありましたらまた明日以降直します。
[この投稿を含むスレッドを表示] [この投稿を削除]
[945] ヘルプ
投稿者:yuya
2007/02/20 02:13:25

毎度こまかな指摘で恐縮ですが、掲示板のヘルプのページのOTD関係の記述って、 もう要らないんではないでしょうか?
[この投稿を含むスレッドを表示] [この投稿を削除]
[944] Re:トラックバックURLをまた変更しました
投稿者:(ぱ)こと管理人
2007/02/20 02:13:25

「trackback.php」を「aaa.php」に変えるという対策は功を奏さなかったので、トラックバックURLをJavaScriptで生成するようにしてみました。 さてどうなるか。
[この投稿を含むスレッドを表示] [この投稿を削除]
[943] Re:774RRさん、お返事ありがとうございます。
投稿者:undo
2007/02/20 02:13:25

>> その場でエラーにならなければ参照しているだけですから、通常その後にはクラッシュしません。 > >例えばbufが関数へのポインタの配列だったりすると、 >誤って取得しちゃったbuf[10]の値に従って関数を呼び出すかもしれないわけですよね。 そうですね。 初期化していないデータをポインタとして参照したら、不正なアドレスですから、いつクラッシュしてもおかしくないですね(^_^) # 無謀なキャストも同様ですね。 書き方が少し変でした。 「(参照しているだけですから)その場でエラーにならなければ、通常その後にはクラッシュしません。」 というつもりでした(_ _)
[この投稿を含むスレッドを表示] [この投稿を削除]
[942] Re:774RRさん、お返事ありがとうございます。
投稿者:(ぱ)こと管理人
2007/02/20 02:13:25

>例えばbufが関数へのポインタの配列だったりすると、 >誤って取得しちゃったbuf[10]の値に従って関数を呼び出すかもしれないわけですよね。 他にもポインタの配列だったり、intの配列でもそれが別の配列の添字になっていたりとか。 >たけさんが初めに出した例(要素の値を表示するだけ)であれば たけさんの最初の例だと、ひとつだけ超えたところですからたぶん書き込んでも死なないんですよね。 この辺の「不定」さがCの難しさではありますが、たとえばJavaでもマルチスレッドなら結果が予測できないことはいくらでもあるので、「ダメなコードは何をしでかすかわからない」ことは結局理解しなければいけないことだよなあ、と思ったり。
[この投稿を含むスレッドを表示] [この投稿を削除]