2012年07月プログラム52: 【Perl,Python,PHP】LL バトルロワイヤル 27【JS,Ruby】 (357)
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▼
【論理】Prolog【初心者】 (606)
メガデモを語る fr-08 (668)
【.NET】F#について語れ2【OCAML】 (339)
OpenWatcom C++ (738)
Eclipse統合M33【Java/C++/Ruby/Python/Scala】 (511)
HTABOXコア Part3 (275)
【Perl,Python,PHP】LL バトルロワイヤル 27【JS,Ruby】
1 :2012/10/07 〜 最終レス :2012/11/07 最強のLL=軽量プログラム言語は、どれよ? エントリーは、Perl、PHP、Python、Ruby、JavaScript・・・ さあ、死ぬまで語りやがれ!!! ■LLとは? 軽量プログラミング言語(Lightweight Language,LL)とは、取り回しに優れ、 コードの作成や修正が容易と見なされるプログラミング言語のことを指す。 ここでいう「軽さ」はプログラマの負担の軽重を指し、 実行速度に優れているという意味ではない。 現在の水準では ・インタプリタ ・動的型 ・正規表現 ・クロージャ などを利用できるものがLLと呼ばれることが多い。 ただし、他人の同意を得られるとは限りません。 長いコードはここで ttp://play.island.ac/codepaste/ 【Perl,Python,PHP】LL バトルロワイヤル 26【JS,Ruby】 http://toro.2ch.net/test/read.cgi/tech/1346967719/
2 : このスレッドは天才pンジー「アイちゃん」が 言語訓練のために立てたものです。 アイと研究員とのやり取りに利用するスレッドなので、 関係者以外は書きこまないで下さい。 京都大学霊長類研究所
3 : 関数型言語 >>>>>>>>>>>>>>>> LL Lispマクロのような手軽な強力さも、Haskellのような静的型検査も無い
4 : ((((((((((((((((関数型言語)))))))))))))))) LL
5 : >>1 のいう現在の水準ならLuaも入りそうなもんだが
6 : スレタイ文字数制限あるからなあ ところでttp://play.island.ac/codepaste/ってなんぞ
7 : ecma scriptの1人勝ち。そろそろ、このスレは終了すべき
8 : 2chでは盛り上がっているJSだが、なぜか世界的には不発。 http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
9 : だってまともな言語で書いて JSにコンパイルする方がマシだもん
10 : // / / バカッ //⌒)∩__∩ /.| .| ノ ヽ / | | ● ● | / | 彡 ( _●_) ミ 馬鹿には無理 / | ヽ |∪| /_ // │ ヽノ \/ " ̄ ̄ ̄ ̄ ̄ ̄ ̄(..ノ
11 : web屋達の中ではマイブームなんだろ そっとしておけ
12 : >>8 それ見るとRubyも不発か・・・
13 : redmonkの調査ではjsが1位とってたよ 多分、tiobeは中堅どこのソフトウェアハウス 零細web屋はjsが増えていく。 零細web屋が中堅どこの仕事を奪っていく。 零細web屋が中心になって世界が動いていく。
14 : >>13 > 零細web屋が中心になって世界が動いていく。 零細web屋の妄想ワロスwww
15 : シリコンバレーのスタートアップなんて零細ウェブ屋と同義語だろ
16 : >>13 Tiobeは単に検索数の集計で、長い間特に操作を加えている様子はない。 Javascriptが下降しているのは「話題性」は乏しいという意味。 流行っているかとか使われているかというようなことはあまり読み取れない。
17 : ttp://redmonk.com/sogrady/2012/09/12/language-rankings-9-12/
18 : >>17 すみません質問です。 この表の縦、横罫の中に現れる(by # of projets) (by # of Tags)は それぞれどういう意味ですか。
19 : flat of projects|Tags だから、 プロジェクト数(タグ数)を順序でならした結果でしょう。
20 : (;´Д`)♭
21 : hirata-create.cocolog-nifty.com hirata-create.toypark.in
22 : Lua IN Ruby OUTでいいじゃん
23 : スクリプト言語ばかりニョキニョキ出てきても仕方ない。 はっきり言って、大量に亡びるべき。
24 : このスレにいたキチガイだろ今スレ乱立してるの 本物の障害者だったか
25 : スレのアボーン登録がフルブックになりそう
26 : 颯爽とObjectScriptが登場
27 : 颯爽(さっそう)
28 : どれが優れてるかじゃなく、「1つだけ残すならどれ?」ってのはおもしろいかもしれない
29 : それブラウザ専用言語を別枠にしとかないとJSになっちまうぞ
30 : ひとつだけ消滅するならどれ?ってのも
31 : なくなっても困らないもの それが Ruby
32 : https://github.com/norinori2222/boyfriend_require 最近のgithubでは、第8層でjp語を使った子プロセス作りまで行うらしいな
33 : >>30 javascript これでソフトウェアの進化を食い止められる
34 : rubyとjsの共通点わかる?モルモン繋がりだよw
35 : JS…扱いやすい言語、小学生でも取得できる。ブラウザで必要、サーバーサイドのnodejsやクライアントサイドのHTML5APIなどで活躍の場多し PHP…JSに毛が生えたような言語でサーバーサイドのWeb開発に特化。HTMLと親和性が高い。ちょっとしたWebアプリ作るならほぼこれ Python…Google推しでWebだけでなく幅広く使われている。可読性に優れている。Linuxの周辺ツールもこれで書かれているものも多い。ライブラリー豊富。小さなプログラムを大きく育てるのにも向いている perl…古くからWebのCGIやUNIXのシェルスクリプトで使われているきた。CGIとして未だ現役。オワコン化しているがライブラリーやドキュメントの充実さは魅力的 ruby…日本発、楽しく効率よくコーディングできるのを目標。開発者のオ○二ー的要素も大きいがRoRという便利なものがある。下火ではあるが生産性がウケてところどころで使われている
36 : web開発でのrubyに生産性なんてないよ。馬鹿じゃねーの それよか、jsをしっかり使える方が重要だよ。自称jsを使える人間なんて現場における凶器だから
37 : 未だに昔の通りのWebオモチャ言語としての認識しかない人も居るからなあJS
38 : jsってバイナリファイル扱える? unicodeって本当に便利か?
39 : まず小学生にも扱いやすいならPHPだよ、深いことをやろうとすると他の言語よりも大変になるけど これはこれで一つのLLの有り様だと思う JSは改良版が乱立してるように、とにかく改善の余地の塊でR言語
40 : JSの改良版乱立って言うが、そんなに乱立してたっけ
41 : 改良版っていうか... https://github.com/jashkenas/coffee-script/wiki/List-of-languages-that-compile-to-JS
42 : 29 デフォルトの名無しさん [sage] 2012/10/10(水) 18:11:39.35 ID: Be: http://www.infoq.com/jp/news/2012/10/Ruby-on-Rails-Node-js-LinkedIn LinkedIn は先日,パフォーマンスとスケーラビリティを理由として, 同社のモバイル用バックエンドインフラを Ruby on Rails から Node.js にリプレースした。 これに対して元 LinkedIn のチームメンバが,何が問題であったのか,自身の意見を表明している。 30 デフォルトの名無しさん [sage] 2012/10/10(水) 18:15:24.99 ID: Be: ・優れたパフォーマンス – いくつかのシナリオにおいて,Node.js は Rails の20倍以上高速だった。 ・サーバ30台の処理をわずか3台で実行できるため,10倍以上のトラフィックを処理する余地が生まれる。 ・フロントエンドの JavaScript 技術者をバックエンドコード開発に従事させることが可能になる。 この結果,2つあった開発チームが1つに統合された。
43 : OO言語が乱立しても改善の余地があると言わないのはなんで? C++が難解でもOOが難しいことにはならないし Rubyが遅くてもOOが遅いとはいえない OOは無敵すぎる
44 : お前が馬鹿でも人間が馬鹿ということにはならないから
45 : >>42 Infoq記事の続き.... 問題をいくつか指摘した後に Lan 氏は,最終的に "v8 がとんでもなく早い" ことを認めながらも, "次世代の技術として node.js の使用が必須である,とは言い切れません。" と付け加えた。 "モバイルサーバで実行しなければならなかった処理に関して言えば,Ruby on Rails より 適切であったことは事実です。しかしパフォーマンスの万能薬ではないのです。 下位レベルのサーバとフルスタックの Web フレームワークの比較なのです。" 最後の結論に注目: 下位レベルのサーバ(Node.js)とフルスタックの Web フレームワーク(Rails)の比較なのです すべてのWebサービスが Rails から Node.js へ移行するのではなく、軽量なサービスに限定すれば (LinkedIn社の場合は「プロキシよりちょっと重い程度」) Node.js を検討する価値がある、 という程度の話ではないかと思われ
46 : railsがなければrubyに用なし
47 : 軽量サービスはサーバーサイドJS 重いのはクライアントサイドJS
48 : そもそもなぜRubyを使ったw
49 : それが古のオタクたちの夢だったからだ。だが、crubyは死んだ。 OSSという才能が集まるフリークラスでは淘汰された。 現存するのは、企業が提供するタダ乗り文化だ。
50 : rubyの犠牲はキリストの犠牲と似ている。 誰かrubyとキリストによる贖いの比較ってタイトルで論文でも書け バザール文化はcからnode.jsに移った。
51 : 前にjsが流行っこないって言った連中は、上司にヤレと言われても断れよw
52 : 普通にJSにコンパイルして使ってるよ
53 : てか、博多のruby開発拠点ってさ、第五世代コンピューティングばりの失敗だよねwwwww これからrubyやrailsで商売しようとしてたマヌケたちって、どうなっちゃうんだろうwwwww 日本は、計算機の市場でまた負けたのだよ。計算機、OSときて、そして言語まできたwwwwww
54 : けれど、ソーシャルゲーム市場で勝つショボさwwwwwww
55 : サーバサイドで処理系の出来の良さだけ考慮して 言語そのものは何でも良いなら node.jsなんてオモチャ使わずにErlang使うわ、という話 http://kuenishi.hatenadiary.jp/entry/20101013/1286973687
56 : uyとかいうゴミってまだ生きてるの
57 : たまにレス番飛ぶから生きてると思われる
58 : >>55 日付がちょっと先なのが気になった
59 : 次の記事はもう予想が付くだろ? どーせ、node.js vs eralng vs golang だよ もうひとつが、dart vs typescript この関係を持ち出すと、結局、node.jsしか選びようがないわけ こうして、古きよき時代のLL文化はテクノロジーの進化と共に幕を閉じた さようなら、Larry。さようなら、guide。さようなら、matz。
60 : だから、ソフトウェアはcで書けって!
61 : >>60 cはプラグイン言語だろうね
62 : >>59 上の記事なかなかおもしろいよ
63 : この自信満々の煽り方は古きよきオタクとは正反対のリア充だよね
64 : まさか。LLブームのおかげでFOSSに興味もってしまったニートだよwwww 釣られている現職のPGなんて居たら、向いてないから転職した方が良いwwwww
65 : perl、rubyとかpython弄ってたのに、卒業したと同時にブーム終わってんのwwwwww 冗談抜きでc++以外さわっちゃダメだよね。本当に時間の無駄だったwwwwwwwwww 今学生に戻れるならc++かjsのどっちかしか触んないwwwwwwww 今ならc++と競技コーディングの方が就職に有利なのかなwwwwwwww 記事書いた連中供Rよwwwwwwwwwwwwwwwww
66 : http://whatcanidoformozilla.org/ Rubyの仕事がないw
67 : ニートの予想だとね、jsで競技コーディングがトレンドだよー topcoderだかでは、jsだけなかった気がしたけどね 学部1年はアリ本とヤドカリ本、買おうね! 学部2年は現実を見つめて公務員試験を受けよう!
68 : Mozillaはもう経年劣化が激しすぎるからJava/JSから離れてRuby組み込むべき
69 : rustなんてrubyのようなものだろ rubyをtypescriptにしたような感じ
70 : いまさらあんなものに肩入れする奴がいるとも思えない 汎用的なスクリプト言語でPython, Rubyにとってかわる勢いのある言語はないのか
71 : >>65 > perl、rubyとかpython弄ってたのに、卒業したと同時にブーム終わってんのwwwwww perl, ruby, python なんて役割が被ってて 弄るにしても一つで十分なのは自明なのに 全部弄ってたなんて人として最低限の知性すら足りてない 馬鹿はどんな言語触っても無駄
72 : だから、今はもうスクリプトの選択はjsしかないってwwwww そのスーパーセットのtypescriptが一番に勢いが付くよwwwww 他は触るだけ時間の無駄だよ。無駄wwwwwwwwwwwwwwwwwwwwwww
73 : 馬鹿は生きてるだけで資源の無駄
74 : >>71 最初はまだ、rubyブームなんて着てなかったんだよwwwwwww perlを弄りだしたところでrailsが流行りだしてんのwwwwwwwwww python触りだした頃に、schemeブーム、haskellブーム... 記事書いた奴らRよwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
75 : そして今度はjsブームに踊らされるわけですね、分かります
76 : 汎用的なってわざわざ書いたのにこれだ
77 : >>73 現存する馬鹿はPHPやjs以外でコード書く奴らだよwwww 直にPHPも馬鹿扱い。生残るのはjsだけだよwwww rubyとかpythonとか、本当に使えるとこないからwwwwwwwwwwww perlなんて、恐ろしい零細ぐらいしか使わないよwwwwwwwww 結局、皆が仕事を探すに当たってweb系ならPHPかjsの募集が多い。 いまどき、perlで書かれたCGIなんて弄りたいヤツ居ないだろ?wwwwww rubyやpythonの募集なんて限りなく少ない。 他のものイジルよりnode.jsを弄った方が痛み少ないって風に、皆が考えるわけ これが求職者の立場から見たnode.jsバブルwwwwwwwwwww rubyやpythonなんて弄ってみろよ?零細企業から逃げ出せないぜ?
78 : 直にjsはないわ
79 : 生でjsだよ。生で。 rubyからのトランスレータ使わせて下さいなんて会社に言うの? 馬鹿じゃね?って却下されるよwwwwwwwwwwwwwwwwwwwwwww
80 : なんで却下されるの?自分の意見が通らないほど下っ端だから? あ、もしかして派遣ですか?wwwww
81 : せいぜい、gdbやtrac弄るのにpython止まりだよー。 rubyだけ、使う必要性が他言語と比較して狭すぎる。
82 : >>80 ニートですけどなにかwwwwwwwwwwwwwwwwwwwwww 普通、大きな会社だと自分の意見なんて通らないじゃないのか?wwwwwwwww この言語でーーーーーーーなんてぇーーーー、すぅっげぇーーーー零細ないめぇーーーーーーじwwwwwwwwwwwwwwwww
83 : ニートはコテハン付けてよ
84 : 嫌だぉーーーーーーーーーーーーーーwwwwww コテとかuyのアホだけがやってりゃいいだろwwwwwwwwwwwwwwwwwwwwww node.js推してるレスなんて、ほとんど俺だよwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
85 : てかさ、c++でグループウェア作ってるとことか大丈夫なのかねwwwwwww あれって、次のofficeとかsocket.io、jsライブラリ、 html5で似たようなことする製品作れそうじゃんwwwww c++で書くなんて石から削りだしてるように見えるのよねwwwwwww methor frameworkなんて流行りだした日には、大量のjava屋さんたちにハローワークで会うかしら?wwwwwwww ざぁwwwwwまぁwwwwwwwwwwwwwwwwwwwwwwwwwww
86 : jsだけリアルタイムシステム書けないけど、 そういった機能要求よこされる中堅どころぉなんてぇーーーー、 しぃんそぉつぅでさいよぉーされた奴らだけが必死こいて、 やってりゃいいぉねぇえええええwwwwwwww そーいった現場って、クビきられた後で、次の職場でノウハゥ生かせられるのかしらん?wwwwwwwwwwwww
87 : このスレは既知外ホイホイですか?
88 : 最近、発症したよぉぉぉぉぉぉwwwwwwwwwwwwwwwwww wつけるぅとぉおおおおおおんwwww、すぅっげぇい楽しいねぇええええええええええええwwwwwww wwwwhyみたいにぃいいい、node.jsのにゅうぅーもんマンガでもかいたらぁぁああああ、 しぃごぉとぉおおおお大尾、みいいぃいいつうかぁっるうかなあああああああああwwwwwww
89 : まずは失踪から始めよう。成果が出るまで続けるのが大事
90 : c/c++の求人さがしてぇええ、おうぼぉするのぉってぇええええええwwwww、 すぅげぇええええええぇリスク高いよねぇえええええええええええええええwww 作れってぇえええええ、いわれぇっるうううもののおののがあぁぁっぁ、 レベェルたかかああああああああいいいいいイッメーーーーーーージ がぞぅしょりだの、せいぎょだの、シィんそちゅのがぁしたヴぁかにぃー、 てとりナにとりぃーーー教えてもらえるぅのかなぁあああんん? ロマンスグレイなぁじょーーしにさーーーーーー。ふふぅん、こんばんはかえさないよぉーーーなんてぇwwwww 祖ぉーーレナらぁーーーまぁだーーーいーけーどさーーーーー、 ひっこしたあとで、ほうちされて、おい込まれたりしたらぁあああああ、 すぅううごおおぃいいリィスゥーーーーーーーーーーーーーーーークwwwwwwww
91 : けど差、けど差、けどぉさぁぁあア嗚呼嗚呼あああんああああんあああぁあああぁwwww じゃヴぁってぇーーーーーーーーー、なぁあああああんんかあああぁあああぁあああ しちょおおおおっせえええええええええええええぇえええが嗚呼ああああみいいえてえるよねえええええええwwwwwwww M V C ! M V C !ってぇえええええいううぅぅぅけえれっどおおぉぉおおおおおおおwwwwwwwww かぃたこおおぉおぉおどのおおおわりぃいいいにいいいいいいいいいいい、 やれることおおおおすくうないいじゃんんんんんwwwwwwwwwwww しょーじきーネットワーーーークまわりぃいいのおおおぉおおライブラリぐらいしか、 つかわれなくなりそうだよねぇええええええええええええええええええ。 すぅぷぅりんぐ?なにそれ、おいしいいいぃいいのおおおおおおおおお?wwwwwww ウェブフレームゥワークってぇええええええ、らんりちゅしぃーすぅーぎぃーwwwwwwwww ぷぅろぉじぇくとぅ毎にぃ、えらぶぅだけえええええええええええのおぉおぉおぉおぉおおお、 メリットなんてぇええええ、あんのかよぉぉぉぉっぉぉぉぉおぉお C#はぁ、entityイッタクだけぉどぉぉぉおおお、M$のお庭でぇあそぶぅのう、 なんんかああああああ、せいしゅうぉぉおおおおお、ぜんひてーーいするきぃぶぅんw でさ、でさ、でさ、出た答えがぁwwwwwww、ザッカーバーグゥか、ジョブズのまぁねごとしたいヴァカを期待してぇえ、 node.jsとぉぉおおお、メェテェオゥッ!html5でぇええ、てくぅのろじーが 入れ替わるのぉおおおおおきぃたぃするしかないぃんだよねぇええええへへへへへwwww
92 : よぉのぉなかあぁあああのおおさあああああ、ぎょおーむけーなんてぇー、 じゅよおおううよおおぉおお斧おおほとおおんどおななんてええぇえええ、 GUIと文字列とデータベース、統計でぇえええええええええええ、 すんじゃうよねねねねねねねねえんええんねええええええええええええwwww desa,desa,desa、GUIと文字列とデータベース弄るゥぅぅのにぃいいいさあぁあああ、 じゃヴぁあああぐらいぃいいい、メンドウなぁあああげんんごおおってえええ、 ほぉかにないよねええええええええええwwwwwwwwwwwwwwwww しょおきぃぼぉなぁああああんけんはぁああああああああああ、 じゃヴぁすくぅりぃぷとぅがあぁああああおいしくぅううういただきぃましたぁああああwww
93 : >>86 > jsだけリアルタイムシステム書けないけど、 リアルタイムシステムに必要なものって何のこと? それがjsだけ欠けているというのが本当か調べたいんだけど、 まあ後半の文章見る限り、レスは期待できないなw ま、レスがなければ根拠なしということで忘れよう。
94 : るぅびぃはぁああーーあああああああーああああああああさぁああああああああ、 ほんとぅにぃーーーーー、くぅーーるぅううーなあああぁあああぁあぁ、 げんごぉおぉおおおだったぁけれえええええどおおおぉおおさああっぁああああん、 どぅみぃてぇもぉおおお、はっかぁーれんちゅーがぁあああああああーーーーー、 このぉむぅううぅぅうぅぅ、てぇつぅがぁくスタァイルじゃないんだよねぇえええ うにぃくすぅのぉおおでんとぅてぇきぃな記号はぁあああ、うけついでるけどさぁ、 やぁあああぱああぁああっりいいぃいい、てぇえええつうぅうがぁくぅスタァイルとはぁ、 違ってええええええええぇええみえええっるうんだょねえええええええええええええええ。 スゥクゥリプトゥのレベルでぇ、ほんとぅにぃ、クラスなぁんてーーひつようだったのかしらん? ハッシュでぇえええええええええじゅうううぶうぅうんんだったよねえええええええええええマヂで >>93 RTOSみたいなああああああああ、GCのぉおタァアアイミングゥまでぇええええ、 要求されぇるようなぁああああああああああぁあああ、じゃヴぁあああすくりぷとぅのおおお、 処理系何てぇええええええええええあるぅうのぉおおお? とうしょーのしすてむとかーぁあああああ、javaらしいいじゃあああああああんんんん。 ニートゥに聞くなよヴぁーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーか おれぇがききてぇえええええぐらいだよおおおおお、たこ、くず、はげ、ごみぃぃいぃいい
95 : >>93 おまえぇ、にいぃいいとぉおおだよねぇええええええ? げんえきぃのえすいーとかだったらぁああああああああ、 しんだほうぅがあああいいいよおおおおおおお。 てか、しね。しね。市ね。視ね。視ね。しね。しね。しね。しね。しね
96 : なにが、ま、レスがなければ根拠なしだとwwwwwwwwwwwwwwwwwwww バーーーかあああああああ、くうっぅぅうずううううううう、あほふぉおおぉおおお じじじじいいいしんんにいいいいいいまああああきこまれてぃえええええええ、しね
97 : >>94 いや、だからそれ、JavaScript以外ならあるの? 少なくともスクリプト言語は全滅だし、 その他だって言語の機能じゃないでしょw
98 : >>97 ア嗚呼あったあああありいぃいいまえええええだろおぉおおヴぁあああーあーかああ でもなきゃぁあああーーーーー、Real-Time-yo!にぃいいいいいい、 わざわぁあああああああああ、じゃヴぁああああのぉおおおおかそぉおおましいいんつぅくるぅYO! ふーつーはーーーーーーー、real time ! なんてぇえええええええ、c/c++の分野だろぉおおおおおがぁああああああん ゆううういいいいつぅうううううう、食ううぅううみいいっこおおみいいいよおおとおおではぁあああああああ、 mrubyがぁああああああああ、にたYOなことおおおおぉおおおやろおおおとしてえええよおお ひょっとおおするううとおおおおぉおおお、pythonのおおおおおじっそおおおううううにはぁああああ、 RTな要求をぉ大尾見達すうものおおおお大尾がああるうかもしれええあんないいけっどおおおおおおお、 風雨通宇うーは嗚呼嗚呼嗚呼あ、エンプラ用途ではぁあああつかわねーーーだろおおおおぉおおおおおおお。
99 : http://ll.jus.or.jp/2012/slide/Language/mruby.pdf 組み込みを意識したmrubyを作ってみた まつもとゆきひろ ハードリアルタイムはムリ
100 : なぁああああにいいがあああああああ、 >少なくともスクリプト言語は全滅だし、 da-yo!カス、クズ、ゴミ虫ィィ良い良い良い良い良い良いイ! ふつううううにいぃいいかんんがええええれりゃああああああああああああああ、 すうううくううう売り良いぃいいっぷううつうぅうううのぉおおおお、 やるうううよおうううなぁああああああああああ、機能要求じゃねーーーーYO! >>99 まぢいでええええ?まぁあああそおおおだよおねえええええええええええ cへのぉおおおおトランスレーターーーにいぃいいスレヴァいいいのにいいぃいいいいNE!
101 : http://www.forest.impress.co.jp/docs/news/20121010_565069.html そのほか、「Firefox 15」での採用が見送られた“インクリメンタル ガーベジコレクション(Incremental GC)”がJavaScriptエンジンに搭載された。 従来のガベージコレクション(不要になったメモリを開放する処理)に比べて プログラムの停止時間が短縮されるため、ゲームなどリアルタイムな処理が 求められるコンテンツがより快適に楽しめるようになるだろう。
102 : http://www.2ality.com/2011/11/v8-incremental-gc.html Today we are announcing the release of Chrome’s new incremental garbage collector (GC) which dramatically improves interactive performance of web apps and HTML5 games.
103 : ゲーーーーームのおおぉおおおおリアルタイムゥなあああよおおおぉおおきゅうううとおぉおおお、 金融なんかでのおぉおおおお、奇異の大おうううよううううきゅううううをおおおおおおお おおおぉおおおぉおおおなんなんじいいいいいいい、じいげええんんでええええええええええええ 考える宇宇宇ナッツーーーーーーーーーーーーーーにおおおおおおおおおお レントゲンをおおぉおおおお、いっめーーーーーーーじ、しろぉおおおおおお ちょおおおどおおおおお、GCはしったりいいしたらああああああいやすぎるだろおおおおおがああああああああああああああ
104 : mrubyのGCって インクリメンタルGCだろ? リアルタイムって何を言ってるんだか。
105 : うん。インクリメンタルGCならソフトリアルタイムといっていいよ。 JavaScriptもそうだけど。
106 : じゃヴぁとRTじゃヴぁのぉおおおおおおおおおおおお、GCってぇええええええええええええ ナああああああああああにいいいいがああつかああわれえてええぇんんのおお?
107 : GCがあああああはしいるううううう、FXだとかぁあ、株価のおおおおおほげとかぁああああああ、 つううううううかいいいたいいいいかあああああああああああああああああああああああっぁあ? じゃヴぁすくりぷとでかかれたあああしんしつさいどぅそぉおちとぉかぁ、雄プレイなんてぇ、 JOE式でえええかんがえってえええええ、イイヤァーーだろぉおおおおぉお
108 : webバブルが.comバブルの再来に見える。うふふ
109 : なんだこのスレ・・・ 鬼のようにレス番飛んでんな キティでもわいてるのか?
110 : >>109 #=> true
111 : mozillaの気合が入ってるけど、これって確かgoogleから資金提供してもらってんだよね 運営資金足りないとかで、数年以内に結果出せって言われてた気がする。 もはやビジネスで負けた連中の呪いだよね!だから、大好き。
112 : nokiaと組んだM$って、何処かOSSと関わって没落した企業の再生工場に見える
113 : フリーソフトで損失を出す能力ってすごいよね 100%外れる占い師みたいなやつだな
114 : 馬鹿だな。100%外れたら、言われたことと反対のことすればいいだろ。本当に馬鹿だな
115 : はっきりいっておくが、このスレに居るヤツは負け組み候補の受難を背負っている!
116 : たぶん、w3cだとか各種言語のメーリングリストだのコミュニティだのを見た方が出世できるぞ。良い子の諸君たち!
117 : コミュニティのメーリングリストが整備され、 実名で行動した方が有意義である文化において2chはオワコン化してしまった。 いいや、最初からこんな場所を読んではいけなかったのだ。
118 : 学歴なんて大して重要視されないが英語の読み書きが出来ないコミュ障は死んだ方が良い世界
119 : これからさ、web開発での工数と価格が暴落して面白いことになりそうだよね これまでシステムがあったらってな零細企業にも低価格で気楽に導入されるんだよ 頭使わない精神論者や教養のない連中が、どんどん淘汰されていくんだ。見物だね
120 : ふう 今まで、こんなに技術から離れてたことがあっただろうか なんか本当にもう、どうでもいいなこのジャンル 冷静に第三者視点でみると IT技術なんて全然世界の中心ではなく ひとつの「マイナー」ジャンルでしかない 「マイナー」だよ「マイナー」 狭すぎだろ・・・そしてマイナーな割に難易度が高い事は事実でもある 可愛そうだ いつの時代も、社会や国の負荷がモロにかかる職種ってあるよな こんな時代にPGやってる奴って・・・。
121 : >>117 PerlとかのUNIX系のソフトウェアのメーリングリストは2chなんかが存在する以前から十分に普及してたぞ
122 : ECMAScript 6 の draft で class と module については一応見当たるのですが 静的型付けについてはどこに書かれているのか分かりません "Static Semantics" とか関係ありますか? http://wiki.ecmascript.org/doku.php?id=harmony:specification_drafts http://wiki.ecmascript.org/lib/exe/fetch.php?id=harmony%3Aspecification_drafts&cache=cache&media=harmony:working_draft_ecma-262_edition_6_9-27-12-nomarkup.pdf
123 : ここは質問スレじゃない
124 : 読みやすい教科書がまだない間はインターネット良いよね で教科書が完成したら解散 無事に終わってよかっただろ
125 : 教科書の情報なんてすぐに陳腐かするだろ ある程度の設計できるようになったら、断片的な知識から全体を構成できるからな
126 : 組込み・制御・ゲームって給料ヨサゲだけど才能ない人たちは死にそうだよね web系・業務系はまったく才能がなくても、上手くやれば簡単に金巻き上げれそう おまいら、どっちがオヌヌメなの?
127 : >>120 何れホワイトカラーの事務職なんてのは、jsと統計周りの知識が必須になるよ 多分、ウェブバブル崩壊後には散り散りになったweb系技術者たちが 地方のあちこちのダメな中小企業で社内システムやらM$Officeのマクロを弄り出すよ 或いは、web系の企業の方が地方のダメな中小企業の業務を持っていってしまうか どちらにせよ、地獄絵図だよ!
128 : >>123 TypeScriptが話題になってたからこのスレが良いかなと思って 結局次期JavaScriptに静的型付けが入るのかどうか気になったんだよ
129 : 静的型付けをそのまま含めたら、ほとんどaction scriptだよね
130 : TypeScript part1 http://toro.2ch.net/test/read.cgi/tech/1349187527/ JavaScriptコードはすでにTypeScripttコードです http://toro.2ch.net/test/read.cgi/tech/1349488930/
131 : >>127 統計が必須になる層はJSなんて弄りません
132 : >>126 ゲーム関連のお給料がいいなんて話は聞いたことがないけど… モシモシのことならあれはwebサービスだからね >>131 統計が必須になるような層の人は実際コンピュータには無知な人が多いような…
133 : a
134 : >>130 おいおい、このスレでJavaScriptのことを話題にしてもいいだろ
135 : html最強
136 : 動的言語は罪深い
137 : オープンソースなのに情報が少ないから結局クローズドソース 動的だから変更のたびに チェックと確認が必要 ローカル開発→開発サーバー→ステージング→本番 順番に確認作業が必要 仕様変更のたびにこれを毎回やる 実行しないとバグがわからないから クラス・関数がどこかで参照されているか明らかにする必要がある ドキュメントが大量に必要 しかも仕様変更のたびにドキュメントの変更も必要 この場合ドキュメントにもバグが混入する 大規模開発だと必ずこんがらがる FWはバージョンアップのたびに別物に生まれ変わり 互換性がなく 今までのソースは動かない 動作しているものから不具合を探さないといけない また学習しないといけない 新しいFWがしょっちゅう出てきて それがデフォルトスタンダードのようにはてぶなどで宣伝工作される 実行しないとバグがわからない動的言語は過去のライブラリを使うのをためらう 結局過去の資産を生かせない 関数の名前の変更のたびに ソース検索が必要で手間がかかる これが静的言語だったらエラー吐くから 確認作業はローカル開発内で収まることが多い 動的は作れば作るほどシステムが負債化していく 作った後はまた新しいものを作った方が早いという結論になることが多い どうしようもない動的言語を流行らそうとするはてぶをはじめ技法やCodeZine、アシアルは本当に罪深い
138 : 結局これは短期記録力がある人間の驕りなんだよね。(東大とかアシアルとか) 彼らは自分たちの記憶能力を生かしたいがために ガラクタ言語をチョイスしてそれをスタンダードのような流れにしたいと思っている このガラクタ言語を使うことで短記録のある自分たちが有利であることを知っていて 他を蹴落としたいと潜在的に思っている。はてぶとかで工作してくる 静的言語を使えば(主にC#)こんな苦労なんて全然ないのに それでは自分たちが存在意義が問われるからあえて使わないようにしている いい加減こんなガラクタ言語やっていても無限に苦労することなる 動的言語はやめとけ無限に苦労することになる 書けば書くほど大変になる 記録力のあるやつだけやつしか現場に残らない 記録に止めないといけないことが 多すぎる VisualStudioやC#だったらバグ、リファレンスエラーが教えてくれる リファクターで容易に関数名を変更ができる 動的言語に比べてはるかに短い時間で安全確実にプログラムを完成させることができる 見えない地雷で身動きのとりづらい言語だからMVCで思考を統一するしかなかった だから現場は北朝鮮みたいな思考統制が進み ロボット人間だけが残る 組織は硬直し ルールーこそ人の上に立つ存在だと考える頭のおかしいロボット人間がでてくる そこは自由な思想・行動も否定され 愚かなルールを誰が破るか密告することを楽しみとする 潰しあいの世界が出来上がる
139 : いつの時代も、社会や国の負荷がモロにかかる職種ってあるよな
140 : 御題 "3 19 + -2 /" という文字列入力に対し-11を返すような 逆ポーランド電卓関数を書け ・四則演算をサポートすること(さらに、演算セットは入れ替え可能なこと) ・不正な入力に対しては例外・nullなどを返すこと
141 : 11 3 19 + -2 / + のときはどう動けばいい?
142 : 0を返す
143 : なんか書き方が教科書的すぎて 言語間の優劣とかの話にはしづらい気がするが Ruby1.8系 require 'strscan' def lex(str) s = StringScanner.new(str) tokens = [] until s.eos? if s.scan(/-?\d+/) tokens << [:num, s.matched.to_i] elsif s.scan(Regexp.union("+", "-", "*", "/")) tokens << [:op, s.matched] elsif s.scan(/\s+/) # do nothing else raise "illegal input" end end tokens end
144 : def evaluate(tokens) stack = [] until tokens.empty? t = tokens.shift case t[0] when :num stack.push(t[1]) when :op command = t[1] op1 = stack[-2] op2 = stack[-1] stack = stack[0 .. -3] << eval(op1.to_s + " " + command + " " + op2.to_s) else raise "internal error(must not happen)" end end stack[0] end def calc(str) tokens = lex(str) result = evaluate(tokens) puts result end calc("3 19 + -2 /")
145 : d = {} def add(a): a[-2] = a[-2] + a[-1] a.pop() d["+"] = add def div(a): a[-2] = a[-2] / a[-1] a.pop() d["/"] = div a = [] for s in input('?').split(): if s in d: d[s](a) else: a.append(float(s)) print(a)
146 : 御題は全部自分で作るから良いよな 自分で作った物が一番記憶しやすいし 仕様を変える時期もコントロールできるし責任の擦り合いもない 全部自分で作ることが悪いみたいに宣伝されるのが不可解だ
147 : 条件後出しでも怒られないし 勝手に仕様変えるのも 自分に都合の良い解釈するのも 全部自由 まるで森口
148 : >>140 は特に動的言語向けの御題じゃないな 別に動的型もevalも使う必要無いし ただし>>137-138 のような低能には無理。静的動的関係なく
149 : デフォルトスタンダード君がにも来たか
150 : C#のコードまだ〜?
151 : PHPってもともと「PHP」などの雑誌ビジネス書人文社会科学書を発刊していた出版社 ちょっと目を逸らしたらWeb用CGI言語がメインでけっこう大きな勢力になっていたので驚いた
152 : Perlっていいなまえですね! おそらくPerl言語のPerlだけ一致するだろう。 PHP, Ruby, Pythonは、Googleで検索したら余計なものも一致する
153 : ム板終わったな。キチガイは死んでろ
154 : ネタ http://news.tv-asahi.co.jp/ann/news/web/html/221013022.html
155 : グロ注意
156 : >>153 まずおまえがきえろ
157 : >>140 Rubyによるもう一つの実装 http://play.island.ac/codepaste/code?id=24
158 : >>140 何から何まで横着してみた@PowerShell function calc ([string]$s) { do { $a = -Split $s $b = iex ("{0}{1}({2})" -f $a[0],$a[2],$a[1]) $s = (@($b) + $a[3..$a.Count]) -join " " } until ( [double]::TryParse($s, [ref]$null) ) return $s } calc "3 19 + -2 /" 入力によっては例外出し続ける
159 : Haskell なんとか1レスに収まった import Control.Monad import Control.Applicative calcRPN fs s = do [result] <- foldM f [] $ words s return result where f = foldr (\f g xs s -> f xs s <|> g xs s) push fs push xs s = (:xs) <$> case reads s of {[(x, "")] -> Just x; _ -> Nothing} infixMaybe op a (y:x:xs) b | a == b = Just $ x `op` y : xs | otherwise = Nothing infixMaybe _ _ _ _ = Nothing add = infixMaybe (+) "+" sub = infixMaybe (-) "-" mul = infixMaybe (*) "*" fdiv = infixMaybe (/) "/" main = print $ calcRPN [add, sub, mul, fdiv] "3 19 + -2 /"
160 : 実装方針が色々あって面白いな golfみたいに短さ優先で書いたり、小さな言語処理系みたいに書いたり
161 : ときどき実装方針にまでケチつける出題者いるけど そういうのは多様性が無くなってツマラン
162 : 型チェックをザルのように通り抜けForthに落ちていく様子をご覧下さい
163 : クラウド(笑)の次はnode.jsやら、JavaScript関係のバズワードで攻めるようだね ひとつ言ってやるけど、 世界規模の自然災害や、戦争でも起こらない限り、 今までやってた常識がある日突然に覆る事は無い 常識が覆るペースは非常に遅い なのでその「常識」を覆している最中に、 もっと良い物が出てくる可能性がITにおいては多々ある どこに始まってもいないJSに未来を見れるのだろうか
164 : >>162 どんな入力値をいれたら鼻から悪魔が出たの?
165 : >>163 クラウドにスマホ、html5といったイノベーションが起こったよ これで、これまでの常識が変わったと思わないなんて、よっぽど狭い世界で生きてんだろうな
166 : >>137 わざわざドキュメント書くアホなんて、大手で大卒雇ってるアホ連中だろwwww
167 : どこを見たってjsだけだよw railsホスティングサービスやruby2.0なんて出だしでこけた感しかない
168 : ドキュメント残さないヤツは糞だろ 一人で仕事してるようなヤツじゃなければ普通書く キッチリ書くかザックリ書くかは規模による
169 : コードに書かれたコメントを見ることはあってもドキュメントを見ることなんてないな わざわざexcelにドキュメント残すって、コードとドキュメントに整合性とれないだろw
170 : ザックリしたドキュメントってのは 「こうあるべきだよな」 っていうのを書くのであって コーディングの内容書くわけじゃないんだぞ 整合性取れないって…
171 : クラウドといえばAmazon Elastic MapReduceにRuby, Perl, PythonはあるがJSは無いよ
172 : herokuがやってるからイラナイよ それよか、railsのホスティングサービスw
173 : azureでも動くな。amazonからは負け犬臭がする
174 : herokuでmapreduceって何の話だよ。自分でHadoopセットアップすんの? azureでのmapreduceはF#しか使えない上にamazonより面倒くせぇ
175 : Debian "Wheezy" で自分の"クラウド"を展開 ttp://www.debian.org/News/2012/20120425
176 : >>140 "1 2 3"的なバグッた式でも正常終了して値を返す 腐ったプログラム書いてる奴ばっかだな。 こういうのも静的チェックで捕まえられると良いんだが。
177 : >>176 もし100万行書いた後でそうなら腐ったと言ってもいいよね しかし数十行ではどうだろう 怠惰かもしれないが腐敗ではないと思う
178 : 最終状態のスタックトップを答えとする仕様もありえるから、 明らかに不正とも言い切れない
179 : 型チェックは減点法のようなものなので短いコードが大量に減点されることはない がんばって書いた量に比例してチェックが厳しくなる
180 : typescript最強ですね。わかります。
181 : >>140 Squeak Smalltalk で。かなり手抜きだけど。 ((Scanner new scanTokens: '3 19 + -2 /') inject: OrderedCollection new into: [:stack :elem | (elem isKindOf: Number) ifTrue: [stack add: elem] ifFalse: [stack add: ((stack atLast: 2) perform: elem with: (stack removeLast: 2) last)]. stack]) last "=> -11 "
182 : 素晴らしいね そこにスタックに積んだ数字を全て足す"sum"や exp(x)を返す"exp"を後から追加できると ポイント高いよ
183 : こういうこと? ((Scanner new scanTokens: '5 4 - exp 3 -2 1 sum') inject: OrderedCollection new into: [:stack :elem | stack add: (true caseOf: { [elem isKindOf: Number] -> [elem]. [(Number selectors includes: elem) and: [elem numArgs isZero]] -> [stack removeLast perform: elem]. [(Collection selectors includes: elem) and: [elem numArgs isZero]] -> [(stack removeFirst: stack size) perform: elem]} otherwise: [(stack atLast: 2) perform: elem with: (stack removeLast: 2) last]). stack]) last "=> 4.718281828459045 "
184 : i も受け付けるけど数値でなく関数扱いなのはご愛敬。リファクタってちょっとすっきり。 ((Scanner new scanTokens: '5 4 - i exp 3 2 - cos - 1 sin i - 2 3 4 sum sqrt') inject: OrderedCollection new into: [:stack :elem | stack add: (true caseOf: { [elem isKindOf: Number] -> [elem]. [(Number selectors includes: elem) and: [elem numArgs isZero]] -> [elem value: stack removeLast]. [(Collection selectors includes: elem) and: [elem numArgs isZero]] -> [elem value: (stack removeLast: stack size)]} otherwise: [(stack removeLast: 2) reduce: elem]). stack]) last "=> 3.0 + 0 i "
185 : >>159 に>>182 を追加 extension (x:xs) "sum" = Just $ [sum (x:xs)] extension (x:xs) "exp" = Just $ exp x : xs extension _ _ = Nothing > calcRPN [add, sub, mul, fdiv, extension] "5 4 - exp 3 -2 1 sum" Just 4.718281828459045 http://ideone.com/5fqag
186 : TypeScript、凄くいいね。もうこれで決まりだわ。
187 : 静的型付け言語は書き直しがダルいから 最初から拡張性あるように組む必要があって、 動的型付け言語は状況に応じてバンバンコード書き変えて、 行き当たりばったり上等!って感じ 上のSmalltalkとHaskellのコードに良く現れてる
188 : C++の拡張をあきらめたからJavaがあるのだぞ
189 : >>181 ,185 いいぞ、もっとやれ。昔に見た流れだ。 それで沢山の大学生たちを地獄に落としてやれ
190 : タイプスクリプトまだテクニカルプレビューだぞ?
191 : 短く書こうとするとどんどん言語関係なくなるなー function calc ($s) { $a = -split $s for ($($i=2; $s=$a[0]); $i -le $a.count; $i+=2) { $s = "($s)$($a[$i])($($a[($i-1)]))"} iex $s } calc '3 19 + -2 /' >> -11
192 : 5000行ぐらいの長い関数があるのですが、 その内の一部を選択して、コマンド打つだけで 正確に関数に抜き出してくれるツールはありませんか? LL言語用のものならなんでもいいです。 正確ってことが重要なので、それにより動作が 変わってはだめです。
193 : >>192 自分で作るが良い
194 : 5000行の関数書くようなクズを助けたがるプログラマなんているわけがねぇ
195 : >>191 >>140 には「演算セットは入れ替え可能なこと」ってあるから '/'の振舞いをdivからquoに変更して、 数は整数以外はエラーになるよう変えてみたら? その修正にどの程度書き換えが必要かで 言語の特徴も見えてくるんじゃない?
196 : >>157 のRuby実装をアップデートしてみた http://play.island.ac/codepaste/code?id=25
197 : ninjaの元ネタってニューロマンサーかな?
198 : >>195 > 数は整数以外はエラーになるよう変えてみたら? LLは(動的型言語は)こういう制限かける方向は苦手。 間違った入力する奴が悪いってスタンスだから。
199 : Squeak Smalltalk を、前のよりまじめに仕様に従ったかんじで整えてみた。 | RPNcalc | RPNcalc := [:str | | tokens mathOps stackOps stack detectSymFrom | tokens := Scanner new scanTokens: str. mathOps := {#(+). #(-). #(/ quo:). #(*). #(exp)}. stackOps := {#(sum). {#prod. [:xs | xs reduce: #*]}}. stack := OrderedCollection new. detectSymFrom := [:sym :ops | ops detect: [:pair | pair first = sym] ifNone: []]. tokens do: [:tok | | result | tok isInteger ifTrue: [result := tok]. (detectSymFrom value: tok value: mathOps) ifNotNilDo: [:pair | result := pair first numArgs caseOf: { [0] -> [pair last value: stack removeLast]. [1] -> [(stack removeLast: 2) reduce: pair last]}]. (detectSymFrom value: tok value: stackOps) ifNotNilDo: [:pair | result := pair last value: (stack removeLast: stack size)]. result ifNotNil: [stack add: result] ifNil: [self error]]. stack last ]. RPNcalc value: '3 19 + -2 /'. "=> -11 " RPNcalc value: '11 3 19 + -2 / +'. "=> 0 " RPNcalc value: '1 2 + 3 4 5 sum'. "=> 15 " RPNcalc value: '5 4 - exp'. "=> 2.718281828459045 " "RPNcalc value: '1 2.0 +'. => Error " RPNcalc value: '12 5 /'. "=> 2 " RPNcalc value: '2 3 4 prod'. "=> 24 "
200 : スマホやブラウザをjs+html5で弄れる時代のsmalltalkerって、 ガンダムエンジンをこさえているテム・レイ的な哀愁が背中に漂ってるよね。 父さん、こんな古いものを…
201 : jsに言われちゃな
202 : >>165 >>167 つかそれ以前に、これだけ使われに使われまくってるjavascriptを 逆説的でもなく本気で「始まってない」と評してるあたり、 この人間の意見は聞く価値もがない
203 : 昔始まり、やがて時代遅れとなり、隠居しようとしたら 老人ホームから連れてきてサイボーグ化された
204 : 始まるっていうのは、ようするにスタートのことだよ。 マラソンで折り返し地点にいるのにスタートするとは言わない。 始まるというのは、使われてない状態からスタートしたばかり時のこと。 故に、普及しているものは、始まっていない。
205 : 今のLLで書けば>>199 はもっと短く書けるの? 誰か翻訳して!
206 : jsだと8割くらいになる
207 : 特定の分野なら短く書ける言語を DSLという。
208 : 短くかけると評判のpythonではどうなるかね?
209 : >>208 js厨乙
210 : 特定の問題を解決するのに短くかけたからといって 違う問題でも短く書けるとは限らないんだよな。
211 : とりあずRubyに直訳(一部意訳)したので添削・スリム化は頼む class Object; def integer?; false end end def scan_tokens(str) str.split(" ").map{|s| case s; when /^-?\d+$/; s.to_i; when /^-?\d+\.\d+$/; s.to_f else s.to_sym end} end def rpn_calc(str) tokens = scan_tokens(str) math_ops = [[:+], [:-], [:/], [:*], [:exp, Math.method(:exp)]] stack_ops = [[:sum, ->xs{xs.inject(:+)}], [:prod, ->xs{xs.inject(:*)}]] stack = [] detect_sym_from = ->(sym, ops){ops.detect{|pair| pair.first == sym}} tokens.each{|tok| result = tok if tok.integer? if pair = detect_sym_from[tok, math_ops] result = case pair.last when Method, Proc; pair.last[stack.pop] when Symbol; stack.slice!(-2,2).inject(pair.last) end end if pair = detect_sym_from[tok, stack_ops] result = pair.last[stack.slice!(-stack.size, stack.size)] end result ? stack << result : raise } stack.last end p rpn_calc('3 19 + -2 /') #=> -11 "
212 : smalltalkとRubyがあまり変わらない件 直訳だからそうなるのか
213 : >>159 のfdivを置き換え ndiv = infixMaybe div "/" > calcRPN [add, sub, mul, ndiv] "1 2.0 +" Nothing > calcRPN [add, sub, mul, ndiv] "12 5 /" Just 2 ghcでコンパイルするときは-XNoMonomorphismRestrictionがいるかも
214 : ここまでC#もJavaScriptも無し
215 : その手の言語の中ではSmalltalk良いよね
216 : ラピッドラピッド五月蠅いjs厨が 今必死で超級ラピッド開発してるから 正座して待ってろ
217 : + + ∧_∧ + (0゚・∀・) ワクワクテカテカ (0゚∪ ∪ + と__)__) +
218 : 0 + '' + [] + {} + function(){return 0;}; こんだけ型の違う値を足しても実行時エラーすら出ないJSで ラピッド開発とかマゾなの?
219 : # Python 3.x 入力は整数のみ、無入力は 0 import operator, sys ops = {'+': operator.add, '-': operator.sub, '*': operator.mul, '/': operator.floordiv,} def rpm(line): stack = [] for elm in line.split(): if elm in ops: try: y, x = stack.pop(), stack.pop() except IndexError: raise ValueError try: stack.append(ops[elm](x, y)) except ZeroDivisionError: raise ZeroDivisionError else: try: stack.append(int(elm)) except: raise SyntaxError if len(stack) == 0: return 0 elif len(stack) == 1: return stack[0] else: raise ValueError print(rpm('3 19 + -2 /')) #=> -11
220 : ごめん、sysのimportは必要ないや
221 : >>219 一度例外を捕まえてから 同じ例外をraiseするのは 何か意味があるの?
222 : もしかして どんな厳しいチェックをしてもここで assert y!=0 を保証するのは不可能という意味なのか
223 : 整数用と実数用でコード共有できてるHaskellさんは偉い さすが関数記述用DLSやで
224 : ダイビングロングシュート?
225 : >>224 デビルライトソードじゃね?
226 : http://www.disney.co.jp/records/DLS/
227 : ヨガファイア
228 : それにしても皆ほんとまじめに書くな、お兄さんびっくりだ
229 : >>196 を更にアップデート http://play.island.ac/codepaste/code?id=26 主な変更点: ・計算結果(スタックの先頭値)を変数へ保存/参照できるようになりました ワード(演算子)は ! で、構文は「<expr> <symbol> "!"」です 001> x **** ERROR **** Illegal input: 'x' # 変数 x はまだ定義されていない 001> 1 2 + :x ! # 式 1 2 + の計算結果を変数 x へ保存 ==> 002> x # 変数 x を参照 ==> 3 # (今度はエラーとならず、) x の値がスタックに積まれる 003> ・空白等を含む文字列リテラル "..." および記号リテラル :sym をサポート ・スタックの表示書式を切り替えるワード debug と nodebug を追加
230 : >>228 >>229 以外はそんなに真面目でも無いと思う
231 : こいつらホントに遅いな。 js版は音声認識に対応して 今は駅前でテスターを募集している
232 : JSプログラマはコードは書けないが妄想は書ける
233 : >>231 俺のjsは尻文字の入出力を実装した ケツ同士でのやりとりが出来る
234 : >>233 俺のjsはハイブリットにした。 3と19の間に「次」と言う事で 319と区別できる
235 : >>206 はたかが20行程度のコードを書くのに 一体何時間かかるの?>>199 の8割で書けるんでしょ?
236 : >>235 ラピッド開発は早けりゃ良いってもんじゃない
237 : やっぱり動的型ではSmalltalk, 静的型ではHaskellが現時点で最強だな
238 : 古いほうが勝つわな 家柄的な意味で
239 : コードは実力、言語は人気
240 : LLって存在意義ねーなー
241 : Haskellはともかく、Smalltalkには負けたくない
242 : この手のお題でSmalltalkに勝つのは難しいと思うぞ よく似た粒度のお題200個くらい解かせて平均したら短さダントツだった http://cast-a-spell.at.webry.info/201001/article_7.html
243 : >>240 意義があってもなくても使わなければゼロオーバーヘッドだから許される と言い出したやつが今の世界をつくったと思う
244 : 200題てどんだけ暇人だよ
245 : Smalltalkって>>184 >>199 のように各行みっしり詰まったコードになりがち 単純に行数少ないからコード量少ないとは言えない感じ
246 : (defun rpn (string) (loop with operators = '(("*" . *) ("+" . +) ("-" . -) ("/" . /)) with place for start = 0 then (1+ end) for end = (or (position #\ string :start start) (length string)) for operator = (cdr (assoc (subseq string start end) operators :test #'equal)) do (push (if operator (apply operator (reverse (list (pop place) (pop place)))) (parse-integer string :start start :end end)) place) until (= end (length string)) finally (if (= (length place) 1) (return (pop place)) (error "~S is not a valid argument to RPN." string)))) (rpn "3 19 + -2 /")
247 : sum等の2項演算子じゃない演算に対応してなく、 整数実数両対応でもないコードを いまさら上げる心意気に感動した
248 : お前それsigned/unsigned両対応でも同じ事言えんの?
249 : >>247 いいじゃん。いろいろ出てきたほうが楽しいから もっとも、こんなんで Common Lisp は短く書けるドヤ!とか主張しだしたら叩くけど
250 : >>246 をSqueak Smalltalkに超訳してみたw | rpn | rpn := [:string | | stream operators place | stream := string subStrings readStream. operators := {#* -> #*. #+ -> #+. #- -> #-. #/ -> #//} as: Dictionary. place := OrderedCollection new. [stream atEnd] whileFalse: [ | next | place add: (operators at: (next := stream next) ifPresent: [:op | (place removeLast: 2) reduce: op] ifAbsent: [next asInteger])]. place size = 1 ifTrue: [place removeLast] ifFalse: [self error: string, ' is not a valid argument to RPN']]. rpn value: '3 19 + -2 /'. "=> -11 "
251 : Lispの真価は、10個以上の異なる問題を、どの問題でも使っていいような 共通ルーチンの作成を許して解かせるようなソースコードで 発揮されると聞いたことがある。 ただし、確認してみたことはない
252 : >>250 からのRuby class Enumerator; def end?; (peek; false) rescue true end end def rpn(string) stream = string.split(" ").each operators = {"*"=>:*, "+"=>:+, "-"=>:-, "/"=>:/} operators.default_proc = ->(_,k){ k.to_i } place = [] until stream.end? tok = operators[stream.next] place << (tok.kind_of?(Symbol) ? place.slice!(-2,2).inject(tok) : tok) end if place.size == 1 place.shift else raise "#{string} is not a valid argument to RPN" end end p rpn('3 19 + -2 /') #=> -11
253 : >>211 >>252 インデントすらつけないで2chにソース投稿してる奴はRよ 何年2chやってんだ? ソースに&んbsp;付与するスクリプトくらいさっさと作れカス
254 : >>248 いわゆるC言語のunsigned intに対応 import Foreign.C.Types > calcRPN [add, sub, mul, ndiv] "1 2 -" :: Maybe CUInt Just 4294967295 http://ideone.com/zcxWmv
255 : gawk http://ideone.com/kwrjvK
256 : (defun rpn (string) (loop with operators = '((* * 2) (+ + 2) (- - 2) (/ / 2) (sin sin 1) (cos cos 1) (sqrt sqrt 1) (exp exp 1) (sum + all)) with place for start = 0 then (1+ end) for end = (or (position #\ string :start start) (length string)) for atom = (read-from-string string t nil :start start :end end) for (nil operator number-of-operands) = (assoc atom operators) when (eq number-of-operands 'all) do (setf number-of-operands (length place)) do (print atom) do (push (cond (operator (prog1 (apply operator (nreverse (subseq place 0 number-of-operands))) (setf place (subseq place number-of-operands)))) ((numberp atom) atom) (t (error "~S is not a valid argument to RPN." atom))) place) until (= end (length string)) finally (if (= (length place) 1) (return (pop place)) (error "~S is not a valid argument to RPN." string))))
257 : 253 :uy:2012/10/22(月) 05:56:21.86 >>211 >>252 インデントすらつけないで2chにソース投稿してる奴はRよ 何年2chやってんだ? ソースに&んbsp;付与するスクリプトくらいさっさと作れカス
258 : 他LLからSmalltalkに移行 => エディタやDVCSなど全環境を捨ててSmalltalk独自環境へ引っ越し 結論: そこまでのメリットがSmalltalkに無い
259 : 最強の環境を選べなかったやつらは死滅するという設定なので 環境は捨てるものではなく滅ぼされるもの
260 : 滅びた環境なんてまず無いw
261 : Smalltalkには別に移行する必要なんかはないんだよ ちょっとそこで過ごしてみさえすれば 精神と時の部屋みたいなもんで たとえごく短時間でもちゃんと鍛錬しさえすれば 出てくるときには戦闘力が上がっている
262 : >>256 なんでSETFなの?
263 : http://www.geocities.jp/m_hiroi/xyzzy_lisp/abclisp01.html データをセットするには setf または setq という関数を使います。 Common Lisp では setf を使うことが推奨されていますが、 M.Hiroi は古い人間なので setq を好んで使っています。 皆さんは setf を使ってくださいね。
264 : >>261 そういう「使ったらレベルアップする」系の話は 関数型言語では良く聞くけど、Smalltalkでも成り立つの?
265 : そりゃ何でも新しい言語の習得中は、何かしらの「レベルアップ感」はある
266 : 丸暗記系ではレベルアップ感がないという人もいる
267 : まあSmalltalkなんざぁ、言語としては最もシンプルな部類のもんなんだから、 レベルアップとかそうしゃっちょこばらずにほんの5分でも触ってみたらいいと思うんだよね http://amber-lang.net/learn.html そりゃXEROX直系由来の環境とかライブラリとかやっかいなのも色々あるかもしれんけど、 とりあえずは一番大事な「メッセージング」っていう唯一のドグマに納得できてからでも遅くないというか
268 : 興味無いことがレベルアップしても仕方ないんだよね むしろ邪魔
269 : 君らって言葉が幼稚だよね
270 : XエXロX
271 : 同じ意味の言葉が二つあって少なくとも一方は幼稚だとしたらどうしますか 1. 一つしかなければ幼稚にならないから一つにする 2. 気がすむまで新しい言葉を作る
272 : 3.幼稚の定義を振り返る
273 : 大切なのは幼稚より中身
274 : 7点
275 : >>267 5分も触ったらメッセージングなんて わざわざ構文でサポートする程のモンじゃないって 分かってしまうよね それを言語のコアに据えるSmalltalkが時代遅れの骨董品ってこともね
276 : Schemeは時々[]を使うようだが、物凄くどうでもいい用途に使ってるよな なぜlambdaを[]にしないのか理解できない
277 : まあHaskell使っとけってことだ
278 : >>275 あれってメッセージングなの?たんなる動的呼び出しだろ
279 : 動的呼び出しごときで「ドグマ」とか言い出しちゃうSmalltalkerって...
280 : 呼び出しで括弧を書かないためにセレクタを書いてるんだろ セレクタも括弧も両方書く言語はLispと同じかそれ以上に酷い Haskellの方がまし
281 : Lispに酷いって括弧の量のこと? あんなもんただの慣れだぞ 慣れるとむしろ優先度とか余計なこと考えなくていいから読みやすい
282 : まあLisp時代に戻れば多言語とか余計なこと考えなくてよいよね
283 : >>278 メッセージングは方便だよ。 本質はできるだけ多くの事(呼び出しも含め)を動的(遅延結合)にすること。 それを貫くことで、ソフトウエアを停止させずに、長く、必要なら部分を変化・置き換えつつ 運用し続けることが可能だって示すところがSmalltalkで示したかったこと…ってアラン・ケイも総括している。 http://squab.no-ip.com/collab/uploads/61/IsSoftwareEngineeringAnOxymoron.pdf
284 : そんなことあらんけー
285 : ここから濃厚なプログレスレ
286 : セレクタとメソッドの関に一枚噛ませたって感じだわな。
287 : 箱庭に閉じこもってOS含む外の環境が無いふりをするなら 動き続けることは難しく無いわな
288 : MessageNotUnderstood: UndefendedObject>>275 我々はか弱い。 だからあまりいじめるな
289 : なんで、スマホやタブレットPCが普及したのにダイナブックじゃないんですかー。 やぁだぁーーーーーーー
290 : そんなに普及したいか? 自転車でいうとママチャリだぞ
291 : T型フォードくらいには言ってくれ http://web.archive.org/web/20090208073444/http://itpro.nikkeibp.co.jp/a/it/alacarte/interview0703/alan_9.shtml 私の少年期を過ごした農場には、T型フォードが数台あった。1920年代のしろものだ。 それも本物の自動車にも関わらず、たった数百個の部品でできていた。 だから12歳の子供でも、週末に友達と一緒に、自動車全体を分解し、 それを元通りに組み立て直すことも可能だった。ところが現代において、 そんなことはありえない。自動車には数百万個もの半導体が組み込まれている。 トランスミッションのシステムも極めて複雑化している。 ちょっと改造してみようと思っても、自動車の原理全体を学ぶことは容易ではない。 これは世の中の進歩にとって重大な問題だと考えている。子供たちが、 大人の世界から隔離されかねない。こうしたテクノロジーへの関心が急速に 冷めているのも理解できる。
292 : Inventing Fundamental New Computing Technologies http://www.viewpointsresearch.org/html/work/ifnct.htm STEPS プロジェクトご紹介その2 http://d.hatena.ne.jp/propella/20111022/p1
293 : 関心を持つ必要がないものを隔離すればその労力が他の適切な分野に供給されるはずだ ということで隔離してるんだけど 壁を作って隔離してみたら、壁自体に興味を持ってトンネルを掘る子供が増えたりして
294 : 骨董品の話しはもういいからさー コード出してくれよ。コードを
295 : 問題 "3 19 [ + -2 / ] $" という文字列に対し 配列 ['3', '19', ['+', '-2', '/'], '$'] を返すような関数を書け 入れ子の深さは制限しないこと
296 : 宿題は自分でやれ
297 : s = "3 19 [ + -2 / ] $" s.split.inject([[]]){|m, t| case t when "["; m << [] when "]"; m[-2] << m.pop else m.last << t end m }.first #=> ["3", "19", ["+", "-2", "/"], "$"]
298 : もう全部evalひとつでいいんじゃないかな $str = "3 19 [ + -2 / ] $" -replace "\s", "','" -replace "'\[',", "(" -replace ",'\]'", ")" iex "'$str'"
299 : import Control.Applicative ((<$>), (*>), (<*)) import Text.Parsec import Text.Parsec.String data Tree a = Leaf a | Node [Tree a] deriving (Eq, Ord, Show, Read) tree, node, leaf :: Parser (Tree String) tree = (char '[' *> node <* char ']') <|> leaf node = Node <$> sepBy (spaces *> tree <* spaces) spaces leaf = Leaf <$> many1 (noneOf " []") main = parseTest (node <* eof) "3 19 [ + -2 / ] $"
300 : >>229 を、またまたアップデート http://play.island.ac/codepaste/code?id=27 主な変更点: ・データ型として配列をサポートし、その操作ワードもいくつか追加しました [1 2 3] ary-length ==> 3 # 配列の長さ [[:a :b] [:c :d]] ary-concat ==> [:a :b :c :d] # 配列の連結 ・ワードの塊を無名手続きであるブロックで表現できるようになりました [1 2 3] { 10 * } ary-map ==> [10 20 30] # 配列上の写像 ・ブロックをワード ! (>>196 )を使って記号と束縛することで、手続きを定義できます { :x ! :y ! x y x y > cond } :max ! # 手続き max を定義 1 3 max ==> 3 # (他の組み込みワードと同様に)ユーザ定義ワード max もコールできる ただし、手続きは再帰的に定義できないので、計算体系としては不完全です なお、規模が1Kstepを超えて全体の把握がしづらくなってきたので、文書化してみました http://www.h6.dion.ne.jp/~machan/tmdoc/example/RPN.book/html/
301 : | string modified | string := '3 19 [ + -2 / ] $'. modified := {'''[''' -> '('. ''']''' -> ')'} inject: string subStrings asString into: [:str :assoc | str copyReplaceAll: assoc key with: assoc value]. (Scanner new scanTokens: modified) first "=> #('3' '19' #('+' '-2' '/') '$') "
302 : 括弧の数が合わないのにエラーも出さず しれっと終了するプログラムには苦笑を禁じ得ない
303 : >>295 gawk http://ideone.com/XxvD6l
304 : gawkにも完敗のRubyとSmalltalk
305 : この程度なら無理にロジック考えんでも引数を配列リテラルに組み直してevalで十分だと思うんだけど 皆頑張るねぇ
306 : 適当に変換してevalが悪いとは全然思わないが 例えば "3 19 [ + -2 / ] $ (4)" が ['3', '19', ['+', '-2', '/'], '$', [ '4' ]] を返したりするのはアウト
307 : >>302 構文解析はコンパイル時だから、実行時よりも気が楽だな 旅の恥はかき捨て
308 : 言語の記述力比較が目的だとすれば、ある程度似せたアルゴリズムにする必要があるんじゃないの?
309 : >>306 空白だけ弄るようにすればなんも問題ないよ 引用符で空白を囲んでる場合は別対応、とかなら他の解含めて書き直しだけどね
310 : [や]の前後に空白開けてるのがダセェ eval方式なら不要
311 : そんなことを言ったら空白必須、改行推奨のbegin end方式はどうなるのか {}も改行が多いし
312 : Rubyの>>297 をSqueak Smalltalkで | string | string := '3 19 [ + -2 / ] $'. (string subStrings inject: (OrderedCollection with: OrderedCollection new) into: [:vec :ss | ss caseOf: { ['['] -> [vec add: OrderedCollection new]. [']'] -> [(vec atLast: 2) add: vec removeLast asArray]} otherwise: [vec last add: ss]. vec] ) first asArray "=> #('3' '19' #('+' '-2' '/') '$') "
313 : # Python + pyparsing from pyparsing import * INT = Combine(Optional(Word("+-")) + Word("123456789")) ATOM = INT | Word("+-/", max=1) | "$" LIST = Forward() VALUE = ATOM | LIST LIST << Suppress("[") + Group(ZeroOrMore(VALUE)) + Suppress("]") INPUT = OneOrMore(VALUE) print INPUT.parseString("3 19 [ + -2 / ] $") #=> ['3', '19', ['+', '-2', '/'], '$'] Rubyのtreetopやparsletで書いたのも見てみたいとリクエストしてみる
314 : # python def nest(s): a,x,xs = s.split(),0,[] while x < len(a): if a[x] == '[': xs.append(x) if a[x] == ']': a[xs[-1]:x+1] = (a[xs[-1]+1:x],) x = xs.pop() x += 1 return a print(nest('3 19 [ + -2 / ] $'))
315 : >>297 をperlで use 5.016; use warnings; use Data::Dump qw(dumpf); sub parser { my @r = ([]); foreach(split /\s+/, shift) { given($_) { when('['){ push @r, [] } when(']'){ push @{$r[-2]}, pop(@r) } default{ push @{$r[-1]}, $_ } } } dumpf($r[0], sub{ $_[0]->is_scalar ? {dump => "'${$_[1]}'"} : {} }); } parser('3 19 [ + -2 / ] $');
316 : perl Parse::RecDescent使用 use 5.016; use warnings; use Parse::RecDescent; my $parser = Parse::RecDescent->new(<<'EOF') or die; list: '[' item items ']' { $return = join('', @item[1..$#item]) } items: item(s?) { $return = join('', map{ ", $_" } @{$item[1]}) } item: id | list id: /-?(?:0|[1-9][0-9]*)|[-+\/*\$]/ { $return = "'$item[1]'" } EOF sub parser { $parser->list("[ $_[0] ]") || "error" } say parser('3 19 [ + -2 / ] $');
317 : メジャーな言語にはパーサライブラリがあるから この御題じゃ差が付かないな
318 : パーサライブラリ使ってる回答の間で差というか違いは出てるよ >>299 ,313は内部DSLだけど>>316 はflex風の外部DSLだし
319 : 外部DSLは、GPL等のライセンスの問題を回避しやすい
320 : Perl自体には内部DSLを作れるだけの表現能力がある気がする
321 : もっと動的型や遅延結合を活用できる御題じゃないと LLである必要がないね
322 : >>320 能力というと持ち主がいるみたいだけど その力がその人の内部にあるか外部にあるか考えてもあまり良いことはない もし必要がない能力だったら持ってる人は損した気分になるかもしれない 重要なのは内か外かではなく使いたい時にいつでも使えるかどうか
323 : 使いたいときにいつでも使えるなんて条件だと、 posix準拠なsh,awk,sedかjs、或いはcぐらいしか選択肢がない
324 : jsが載ったwebブラウザが走る環境なら 大抵の言語は動くと思うが
325 : rubyは真っ先に外れるな
326 : つーかrubyはもう滅んでくんないかな
327 : 饅頭こわいからもう滅んでって言うと饅頭を無償でもらえるんだよね 無償こわいよ無償
328 : >>324 想定する環境だと、この辺がネック linuxやunixでの古典ツールの動作の微妙な違い 客先常駐時にrubyやpythonの処理系を用意できるか 新しい組込み機器の処理系がcコンパイラしか用意されない
329 : jsで動くRuby/Python作ればいいんじゃね?
330 : js自体は、ほとんど何処の環境にでもある。が、js処理系に互換性あるのか?
331 : ダーティに弄れるjsで、規約やツールレベルでOOPや大規模開発すれば良いんじゃないかな
332 : >>328 最近のUnix系だとPerlは入っているだろう。 CPANがないと楽できないけれど。
333 : そりゃjs以外選択肢が無い環境でコード書いてるならjs選ぶしかないけどさ 色々選べる環境で仕事してる奴らも世の中に沢山いるわけよ
334 : Mac OSX はRubyもPythonもPHPも最初から入ってるよ Node.jsは入ってないけど
335 : http://wireframe.cc/ この手のものって、どの言語で作られてんの?
336 : いい歳こいたperl mongerやruby gangは、そろそろニュービーたちを騙すのを辞めた方が良いと思う
337 : 自分の意志ではどうにもならないことが多いだろうけど だからといって、いい歳こいた誰かの思惑通りに動いているわけでもない 人間以外の要因で色々決まってしまうことが多い
338 : >>332 とは言えsh+sed+awkくらいの用途なら標準ライブラリだけで割と何とかならね?
339 : >>337 政治的な層と経済的な層ですね。わかります。
340 : >>339 人に騙されたくないなら人文系の層から離れてください
341 : Rゴミ共がw Rゴミ共がw Rゴミ共がw Rゴミ共がw
342 : >>340 陸那比転職記事でソシャゲ屋へのって随分と適当なこと書いてねぇ? 求職中のニートでも、内容に何処か違和感覚えるレベルの記事。 俺、技術的な詳細について全く分からないけれど、 あの記事の内容は技術的な詳細なんて全く分かってない転職者に向けて、 技術的な詳細の分かってない記者が転職市場の活性化の為だけに書いたものだと思うの
343 : RubyはRails含めて互換性低すぎて、保守性めちゃくちゃ悪いよな。昔作られたサイトの修正とか、新規に作り直した方がよっぽど楽。
344 : Python2「メジャーアップデートしたい・・・」 修造 「ちょっとまって、今・・・何て言った? おいPython2!今何ていった!?『メジャーアップデートしたい!?』」 修造 「メジャーアップデートとか言ってる間はずっとダメなんだよ!」 修造 「使えよ!もっと2.7使えよ!」 Python2「もうマイナーアップデートない・・・」 修造 「無い事無い、無いなんて事は無い!どこかにあるはず、探そうよ!」 Python2「・・・2.8・・・2.9・・・」 修造 「ほらあるじゃない! ほらみろ!あるじゃないか!」 Python2「上げるぞ・・・」 修造 「そうだ上げろ!」 Python2「上げるぞ!!!!」 修造 「もっと!」 Python2「マイナーバージョン上げるぞ!!!!!!!!!」 Guiod 「はい終了した!!もうPython2のメンテナンス終了したよ!!!!」
345 : Guiodまで読んだ
346 : うん、普通に誤字ったすまん
347 : 頑張れなかったperl6
348 : Perl6は熱意がぜんっぜん気持ち伝わってこなかったからな
349 : >>344 マイナーアップデートはないけど、メンテナンスは継続してる 2.7は2015まで保守される予定
350 : うん、そこは現実どうこうより台詞を短くまとめてgdgdにならないよう努めた もとからgdgdとかそういうつっこみは受け付けない
351 : kwatchの人がまたtwitterで喧嘩売りまくってるんだけど、この人どうにかならないの? http://twitter.com/makotokuwata なんで無駄に好戦的なんだろう いい歳こいてトゲのある言葉まき散らして、コミュニティの空気悪くして、ほんと迷惑
352 : 祭にして叩けば?
353 : >>351 「Perlしかできない」って言われて怒っちゃったyappoさん2chで反撃なんて最高にダサイですね
354 : http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1296730132 PHPとPerl(CGI)の使い方について教えて下さい ↑のURLは知恵袋で質問したものです 知恵コイン500枚でお得だよ¥^−^¥ __ / _, ,_ヽ ┏┓ / (●) ..(● ┏┛ | (p_q)i ・ | ,-|=‐| i. > | |く _/ ,/|⌒)|、,ヽ_ ヽ、_/|~ヽ、|__) \ _ノ___ノ ( _ ヽ__ /◎/ ) /ロ/ (___ノ ̄
355 : 俺様以外のバカの集まるスレw Rゴミ共がw
356 : Python はじまったな 窓の杜 - 【NEWS】Microsoft、「Python Tools for Visual Studio」v1.5を正式公開 http://www.forest.impress.co.jp/docs/news/20121105_570958.html http://www.forest.impress.co.jp/img/wf/docs/570/958/image3.jpg http://www.forest.impress.co.jp/img/wf/docs/570/958/image2.jpg
357 :2012/11/07 >>351-353 思春期特有の精神性でないとプログラマなんて続けられないだろうし、 声が大きい人のおかげで発言しやすくなるだろから放っておけば? しかし、2chの名無しならともかくtwitterアカウントで発言なんて頭沸いてる
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▲
HSPプログラムコンテスト2011【part 2】 (391)
monazilla Part 6 (631)
C++11/C++1y 16 (225)
【Java】Wicket【HTML】 (589)
MFC、Win32++を超えるライブラリを作るスレ (945)
P2P型の完全匿名掲示板はまだ出来ないの?その3 (337)
--log9.info------------------
リズムで曲を当てろ! (563)
【どんな】答えから問題を作り出すスレ【問題?】 (683)
凹凸凹凸新しいゲームを作ろう凸凹凸凹 (614)
【ナ ゾ】新しいなぞなぞを考える会【エニグマ】 (202)
ゲーセンにあるクイズゲームについて語るスレ (592)
このなぞなぞが解けたら妹の○○うpします (221)
ソニー 「ゲーム専用機」伸び悩み (230)
カルチャーブレーン弟155弾 カル便は衰退しました (402)
(・ω・) (620)
母ちゃんにカルチョビット買ってきてって頼んだら (399)
■■速報@ゲーハー板 ver.21739■■ (384)
WiiU モンスターハンター3 Unite がリークされる? (352)
実際、竹島問題ってどう解決すんの? (783)
○XBOX360総合スレ8979○ (880)
アメリカ7月のVita月間販売台数はなんと5万台以下! (241)
■今開発を始めるサードも3DSにするよね 5■ (532)
--log55.com------------------
【吉野家】牛丼vsハンバーガー【マック】
赤ウインナー
【スーパー】お惣菜について語り明すぞ【デパ地下】
犬は食べ物か?(爆)
スーパーの青果部で働いているけど、何か質問ある?
【地域差】辛いと塩辛いを、区別しよう【味覚差】
日本人からみた大阪グルメ、略して阪グルを語るw 2
和風な食事が好きな奴きなさいよ