1 名前:デフォルトの名無しさん [2017/10/19(木) 17:51:38.66 ID:EPSDvC75.net] 文字数制限きついので改題 スレタイ以外の言語もok 前スレ 次世代言語議論スレ[Rust Kotlin Haskell]第6世代 mevius.5ch.net/test/read.cgi/tech/1503924817/
2 名前:デフォルトの名無しさん mailto:sage [2017/10/19(木) 17:56:35.46 ID:EPSDvC75.net] そろそろSwiftとTypeScript入れときたかったので
3 名前:デフォルトの名無しさん mailto:sage [2017/10/19(木) 19:23:30.17 ID:33xh/nBB.net] 5chってなんだよ
4 名前:デフォルトの名無しさん mailto:sage [2017/10/19(木) 19:35:46.24 ID:C3Fl3waR.net] 2ちゃんねる、正式に「5ちゃんねる」に名称変更!色々あって5chが誕生! www.yukawanet.com/51096/archives/5274335.html
5 名前:デフォルトの名無しさん mailto:sage [2017/10/19(木) 23:31:42.71 ID:nu6ztsFr.net] TSは普通に現代だろ 生JSはもうやれない
6 名前:デフォルトの名無しさん mailto:sage [2017/10/19(木) 23:43:07.41 ID:1zFRkFBm.net] 生JSもVSCodeによってコード補完がTypeScriptと比べてさほど遜色ないレベルにまで引き上げられたからなあ 結局MSが本気で開発環境を作ればどんな言語でもゴリ押しできることが証明されてしまった
7 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 00:38:29.46 ID:2lESXdgM.net] 次世代というか、2010年代の企業発の静的型付け言語でまとめてみた まだ載ってないのだとNim Hack Julia Crystal辺りがいいのかな
8 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 01:01:22.11 ID:eMg2A2/G.net] >>6 限定的な型補完のみだろ 静的チェックには絶対型が必要
9 名前:デフォルトの名無しさん [2017/10/20(金) 01:56:31.26 ID:Ka6W9rl7.net] >>6 JS含む動的言語は大抵ダックタイピングって時点で補完が効かないじゃん。 個人的には「ダックタイピングのほうがインターフェース書かなくて済むから 手軽で良い」って言ってる奴がマジで理解できん 補完できなきゃどのメソッド呼べるのかいちいちコードかドキュメント見に行かんとならんからむしろ面倒
10 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 02:15:40.71 ID:yLtxI7rs.net] >>9 型が決まってれば動的言語だろうと補完できるでしょ
11 名前:デフォルトの名無しさん [2017/10/20(金) 02:54:33.08 ID:Ka6W9rl7.net] >>10 JSDocに型を書いてないコードとかあったら発狂したくならない? 仕事じゃ周りのアホどもが書いてくれないからよくにあるんだけど
12 名前:デフォルトの名無しさん [2017/10/20(金) 03:57:09.23 ID:YyMx7jsp.net] >>9 最初にコード補完をIDEに組み込んだのは動的言語
13 名前:デフォルトの名無しさん [2017/10/20(金) 04:05:45.74 ID:Ka6W9rl7.net] >>12 それは知らんかった 何て言語?
14 名前:デフォルトの名無しさん [2017/10/20(金) 05:20:27.14 ID:VprmOZRL.net] >>13 皆さんよくご存じのVBです。
15 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 06:44:15.18 ID:dSzguJuu.net] >>14 バカいうんじゃないSmalltalkに決まっとるがな
16 名前:デフォルトの名無しさん [2017/10/20(金) 06:50:33.12 ID:VprmOZRL.net] >>15 https://en.wikipedia.org/wiki/Intelligent_code_completion
17 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 07:06:06.25 ID:eMg2A2/G.net] >>9 ホンコレンゴ
18 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 11:11:11.05 ID:P8/EFRxC.net] >>16 何を調べるにしてもウィキペ情報は参考程度に留めておいたほうがいいよ ご多分に漏れずこの件に関しても間違っていてちょっとググっただけでも 少なくとも1980年代にはコンテキストを考慮した補完機能を有するAliceというPascalのIDEが出ていることがわかる www.atarimagazines.com/v6n2/Alice.html だから動的言語が初かの真偽はともかくVBがしかも1990年代にもなってから「最初」ということはあり得ない
19 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 13:06:03.49 ID:6HQ5gdkc.net] 動的か静的かよりも暗黙に型変換するのかしないのかのが重要。
20 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 14:49:05.79 ID:RMJRt52l.net] typescriptの凄さってIDEの機能言語に組み込んだことだよな。 リファクタリングの機能を言語に用意してるから、 どのエディターでも使える。
21 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 14:53:55.28 ID:yLtxI7rs.net] >>16 >>18 Wikipediaが間違ってるんじゃなくてお前らの読み方が間違ってるだけだろ 最初にコード補完をIDEに組み込んだのはVBなんて事どこにも書いてない
22 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 14:55:26.74 ID:yLtxI7rs.net] >>11 JSDocとコード補完と何か関係あるの?
23 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 18:06:03.89 ID:yevn4/qi.net] 折角の補完機能ガン無視してVimで書いててすまん Vimに補完つけると重いんだよな
24 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 18:12:51.51 ID:UMfeFQLW.net] vimの補間が重い…?
25 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 18:49:47.42 ID:yevn4/qi.net] Jedi-vimとか謎に重くならん? あれ?そうでもない?
26 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 18:59:15.83 ID:YvXWjlAq.net] >>20 MSは昔からやってるけどね MSにとって目新しいのは、コンパイラ及びエディタをコード補完やリファクタリングに対応させるためのオープンなプロトコルを策定したこと これほど早い段階でそのレベルにまで達するのはMSにしかできないこと
27 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 21:43:00.33 ID:x/nMj/Ym.net] 誰だよ未だにプログラミング言語未満のRustをスレタイにいれてるやつ ハロワ以上のプログラムをことごとくコンパイル弾く欠陥品、言語としての体をなしていない
28 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 22:07:39.64 ID:6WjQxFol.net] 普通にrestでwebserverたててるが…
29 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 22:07:46.81 ID:6WjQxFol.net] Rustね
30 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 22:29:29.77 ID:dSzguJuu.net] 名前間違う時点でろくすっぽ使ってないのバレバレ
31 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 22:33:08.26 ID:6WjQxFol.net] 晩酌してたのとRest APIと混ざったんだよ めちゃめちゃ使ってるっちゅーの
32 名前:デフォルトの名無しさん [2017/10/20(金) 23:15:48.68 ID:KNQSc5p/.net] 自動補完は正直うざいからオフにする
33 名前:デフォルトの名無しさん mailto:sage [2017/10/20(金) 23:58:05.68 ID:K0f4yEve.net] >>31 じゃあさくっと木構造実装してみてよ
34 名前:デフォルトの名無しさん [2017/10/21(土) 00:09:44.49 ID:WA0WypxL.net] >>33 ほい enum Tree<T> { Leaf(T), Node(Box<Tree<T>>, Box<Tree<T>>), }
35 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 00:44:54.19 ID:DO/riCmW.net] まあそれが一番素直な実装だね。 問題は循環するかもなグラフの場合。持ち主が曖昧になるから。
36 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 01:18:33.12 ID:EatcavDb.net] >>34 データ構造定義だけ書かれてもな それに対して余計なアロケーション発生させずにappendとdelete実装してみてくれよ できるもんなら
37 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 02:15:10.99 ID:VqKLKVGY.net] 問題はTypeScriptに対して競合としてflowがあることだよな。 Reactを使うのにTypeScript使っててすごく便利なんだけどReactがflow押ししそうで怖い。
38 名前:デフォルトの名無しさん [2017/10/21(土) 03:03:32.99 ID:WA0WypxL.net] >>36 まずはCかC++でお前の言う無駄なアロケーションのないappendとdelete付きの木構造とやらを書け。 そしたらそれをRustで書き直してやるよ。
39 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 05:46:24.53 ID:VmqPmNn/.net] >>37 Web系に言語は作れないってのはさすがにCoffeeやDartで世間に理解されたと信じたい
40 名前:デフォルトの名無しさん [2017/10/21(土) 10:28:21.87 ID:wl/wLs0J.net] >>20 IDEの機能を言語に組み込むぐらい、LISPもSmalltalkもとっくの昔にやってるじゃん。
41 名前:デフォルトの名無しさん [2017/10/21(土) 10:29:25.77 ID:wl/wLs0J.net] おまえらが次世代と呼んでいる機能のほとんどが60年代の再発明だなw
42 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 11:01:34.95 ID:sh0YDQHh.net] >>37 うちの案件フロウ使ってるわ 最初の技術選定でクソ馬鹿野郎が生JS選択したせい しかも途中で辞職、いやいなくなってくれてせいせいしたが んで、どうしようもないから後付けでフロウ クソみたいな生JSに後から挿入れられるのはメリットだわな ライブラリの対応はゴミだけど
43 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 11:46:16.50 ID:DO/riCmW.net] >>41 まあそういうところもあるけど、Rust なんかはだいぶ機能を整理した方かなとは思うよ。 実際に作って使ってみるとボローイングの解決しづらさがよくわかるってのはある。 理
44 名前:_と実践は繰り返してなんぼ。 [] [ここ壊れてます]
45 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 12:04:58.67 ID:SwYl7d2P.net] 言語レベルのリファクタリングを備えたTypeScript 2.5がリリース https://www.infoq.com/jp/news/2017/10/typescript-2-5-refactoring
46 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 13:02:01.91 ID:VqKLKVGY.net] >>42 Typescriptも該当ディレクトリ内にXXXX.d.ts(XXXは生jsのファイル名)を置くだけで 型が付与できるけどな。しかも生jsの箇所をいじらずに。 どっちがいいかは何とも言えないが。
47 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 13:03:37.91 ID:VqKLKVGY.net] jsというかTypeScriptを使ってるんだけど。async-awaitマジでいいわ と思ったが例えばclassのコンストラクタをasync対応してくれたらな〜って思うわ 初期化時に非同期関数使いたいと詰む。
48 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 13:38:53.78 ID:ZiJpfJlj.net] >>46 c#でずいぶんお世話になってるから嬉しいわ
49 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 13:51:38.02 ID:sh0YDQHh.net] >>45 ま?
50 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 14:20:00.52 ID:SGUxbDYw.net] >>46 わざわざasyncのinitializeメソッド作るの馬鹿らしいよな、仕方ないんだけど
51 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 14:32:26.28 ID:7p4/5GBE.net] >>46 constructor() { (async () => { await this.hogeAsync(); })(); } インスタンス作成側ではawait newとかできないけど、分かってて使えば 今のとここれで特に問題ないわ。
52 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 18:32:34.18 ID:VqKLKVGY.net] >>50 非同期関数がそのクラスの生成タイミングで終わる保証無いだろ。 大概ストレージとかネットワークアクセスしてるわけだし。 それで事足りてんの?マジで?
53 名前:あ mailto:sage [2017/10/21(土) 18:53:01.32 ID:RC5niii9.net] >>9 使ってみたらわかるが、ちょっと頭おかしいレベルで補完効くぞ。 関数の型が、「Date | "不正日付" | "演算不能"」と、stringの中身まできちんと出してきたときにはびっくりした。
54 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 19:06:53.76 ID:guA6ZzKE.net] コンストラクタ非同期にしたい時は>>51 の言ってる問題があるから、値をセットするだけのprivate constructor準備してpublicは別に公開したほうがいい 例↓ class Hoge{ private constructor(public foo:string){} async create():Promise<Hoge>{ const foo=await asyncFunction(); return new Hoge(foo); } }
55 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 21:09:59.24 ID:sahtjmhq.net] >>41 lisper召喚したいのか?
56 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 22:04:06.57 ID:HyKk2sND.net] Lisperとかもしいるなら是非来て欲しい
57 名前:デフォルトの名無しさん mailto:sage [2017/10/21(土) 22:07:10.31 ID:1X5jAkAY.net] LisperはSmalltalker以上にめんどくさいぞやめとけ
58 名前:デフォルトの名無しさん [2017/10/21(土) 23:03:18.92 ID:P/rJp3kV.net] >>43 > 理論と実践は繰り返してなんぼ。 同意
59 名前:デフォルトの名無しさん mailto:sage [2017/10/22(日) 01:10:34.37 ID:yUcYB3x3.net] めんどくささを恐れてはならぬ。
60 名前:デフォルトの名無しさん mailto:sage [2017/10/22(日) 01:34:14.15 ID:jKdYjftV.net] その通り テキストエディタで打ったコードにこそ温もりがある 補完や静的解析なんて邪道 日本人ならPHPを使うべき
61 名前:デフォルトの名無しさん [2017/10/22(日) 01:56:35.88 ID:bmxwOMJ1.net] >>59 日本人ならとか言うんならRuby使えよ。。。 何でPHPなんだよアホちゃうかと。。。
62 名前:デフォルトの名無しさん [2017/10/22(日) 02:06:21.14 ID:ZsHOZNag.net] HSPだろ。
63 名前:デフォルトの名無しさん mailto:sage [2017/10/22(日) 02:11:19.39 ID:IdeA6XVs.net] ひまわり ちゃうかな
64 名前:デフォルトの名無しさん mailto:sage [2017/10/22(日) 05:30:54.86 ID:MmMCQJb7.net] Elixirってダメなん?将来性ないの? サーバーがCowboyとかいう変なやつになるからダメなのかな
65 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2017/10/22(日) 09:43:14.05 ID:jKdYjftV.net] >>60 偽装・不正・いい加減がモットーのジャップランド土人村にとって PHPほど相性のいい言語はない PHPは日本人なんだよ、わかるか?
66 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2017/10/22(日) 11:54:18.65 ID:r0jppfs8.net] >>52 それは裏でTypeScriptの型情報を再利用してる。 だから標準APIとか有名所は使える。でも自分でライブラリを作るととたんに効かなくなるぞ。
67 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2017/10/22(日) 12:05:58.19 ID:HAzBzhoi.net] >>52 の内容なら型アノテーションに頼らずとも型推論だけでいけるだろう。
68 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2017/10/22(日) 13:12:06.46 ID:yUcYB3x3.net] >>63 将来性とかさ〜自分で判断しろや。 それともここで将来性あるとか言われたらなんも考えずにその言語使っちゃうわけ? 将来メンテされなけりゃおれがやるくらいの気概をもって言語使ってほしいわ。
69 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2017/10/22(日) 15:32:24.31 ID:bmxwOMJ1.net] >>64 それはあくまで偏見の塊の君の個人的意見だろ。 そんなこと言い出したら 「日本人はもともと職人気質の人間が多いから 使いこなすのに職人レベルの技術が求められるC++と相性がいい。 だからC++こそ日本人のための言語だ。」 なんていう、今俺が適当に作ったトンデモ論法でも通っちまうだろうが。
70 名前:あ mailto:sage [2017/10/22(日) 15:36:36.11 ID:dq05v2c8.net] >>65 違うよ。自作関数の戻り値と、それが代入されてる変数のヒントに出る。 自分でライブラリ作ってもバッチリ出てくれるけど、doc書いといたら間違いは更にないな。
71 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2017/10/22(日) 15:57:37.80 ID:rLFHcAK9.net] >>63 Elixirいいよ 将来性はコミュニティの頑張り次第 Phoenixはよく出来てる 実質的にWebアプリに用途が限定されるだろうから このスレでは人気ない
72 名前:デフォルトの名無しさん mailto:sage [2017/10/22(日) 20:08:52.70 ID:yoTgiwcF.net] >>68 いや、日本人はPHPでしょ 空気読んで面倒臭いことはナーナーにして 今が良ければそれでよし 当事者がたんまりお金盗って無事退職した後、 年単位越しでツケ払って大騒ぎ PHPですか?いいえ、日本です
73 名前:デフォルトの名無しさん mailto:sage [2017/10/22(日) 21:46:29.44 ID:c7gPCMa+.net] 日本の技術力ガーとか言ってたくせに 結局全部嘘ばかり バカチョン以下やでホンマ そりゃペチパーが闊歩しますわ
74 名前:デフォルトの名無しさん mailto:sage [2017/10/22(日) 23:53:22.71 ID:sz7LIs8a.net] ponyはまだまだマイナーだな
75 名前:あ mailto:sage [2017/10/23(月) 01:37:49.26 ID:ko03P2Yp.net] >>72 多分お前よりはまともなもの作ってるとおもうわ。
76 名前:デフォルトの名無しさん mailto:sage [2017/10/23(月) 03:02:27.50 ID:vIdD1XI1.net] haskellがやっと外れたなwスレタイ
77 名前:デフォルトの名無しさん mailto:sage [2017/10/23(月) 03:18:43.18 ID:7Pp5HgLl.net] PHp本当に速くなったからな 相変わらずポーリングも特殊操作でしかできないクソだけど
78 名前:デフォルトの名無しさん mailto:sage [2017/10/23(月) 04:14:09.67 ID:1oD0q36r.net] 異常者の迷言「PHPは日本人」「日本人はPHP」
79 名前:デフォルトの名無しさん mailto:sage [2017/10/23(月) 08:27:35.76 ID:+M73J5jp.net] 気に食わない奴でも合法なら許す 違法なら許さない この優先順位を歪めるから無法地帯になるのだ
80 名前:デフォルトの名無しさん mailto:sage [2017/10/23(月) 08:52:16.45 ID:xr09IWoG.net] >>70 Elixirってrubyに強く影響受けてる言語なんだよな。 Phoenix触ってたらRailsの匂いを感じる。 でも今は動的言語は弱い気がする。Elixir + 型 が欲しい TypeScriptが触ってて気持ちいいからサーバサイドもJSがいい気がする。
81 名前:デフォルトの名無しさん mailto:sage [2017/10/23(月) 10:51:25.73 ID:WMNCDJb0.net] Elixirの問題は込み入ったことやるとErlangに足突っ込まなきゃいけないことで プロダクションコードに突っ込むには人材要求が高すぎること
82 名前:デフォルトの名無しさん mailto:sage [2017/10/23(月) 14:31:56.92 ID:f3vYk0Y4.net] 結局ネットワーク系統のエラー処理は低レイヤーに突っ込んでいかないとどうにもならんよ。 抽象レイヤーでなんとかしたいって願望はわかるけどさ。
83 名前:デフォルトの名無しさん mailto:sage [2017/10/23(月) 17:32:43.36 ID:KBSkknSp.net] Elixir(というかBEAM=ErlangVM)の場合はプロセス復活のために型情報が必要だし 静的にしたからって型情報は省略できない
84 名前:デフォルトの名無しさん [2017/10/23(月) 19:47:51.56 ID:fT3gFD4f.net] C++を書きたくないんだが代替言語は今だとrustとdどっちがゆうぼ? 最近はnimと言うのが注目されてるとも聞いたが……
85 名前:デフォルトの名無しさん mailto:sage [2017/10/23(月) 20:22:06.86 ID:ANMjmVZt.net] 誠に残念ながら今そのポジションはGoの一強
86 名前:デフォルトの名無しさん mailto:sage [2017/10/23(月) 20:45:12.65 ID:LSzHPC1F.net] Cよりスピード出るのはNimだけ!
87 名前:デフォルトの名無しさん mailto:sage [2017/10/23(月) 20:50:25.75 ID:Y0tE+5bm.net] ジャップランド土人村企業が詐欺のために求めているのはPHPだけ!
88 名前:デフォルトの名無しさん mailto:sage [2017/10/23(月) 21:14:10.32 ID:kb3Oh+Sb.net] どうかんかえてもRustだろ
89 名前:デフォルトの名無しさん mailto:sage [2017/10/23(月) 21:25:58.19 ID:xr09IWoG.net] >>84 Goも弱点が多い言語だけど初期の学習コストとか考えると rustよりGoかな。 もちろんrustもいいんだけどc++並に学習コスト高そう感ある。
90 名前:デフォルトの名無しさん mailto:sage [2017/10/23(月) 21:47:48.94 ID:C8zrSpyb.net] Rustは言語と名乗れる水準に達してないのでGo 深くシステムに触るのには向いてないがな
91 名前:デフォルトの名無しさん [2017/10/23(月) 22:05:15.62 ID:fT3gFD4f.net] Goなのか…… 他言語が純粋な次世代Cを目指してる中、Goは微妙に設計思想が違うイメージだからあえて外したんだが……やっぱりgoogle正義なのか
92 名前:デフォルトの名無しさん mailto:sage [2017/10/23(月) 22:05:44.54 ID:f3vYk0Y4.net] >>83 c++ で何を書くつもりなの? 無理に c++ で書かなきゃならんものって最近は減ってると思うけど。
93 名前:デフォルトの名無しさん [2017/10/23(月) 22:17:08.30 ID:fT3gFD4f.net] >>91 c++ で書かれたオープンソースプログラムのdllプラグイン 悲しいことにc++ 選ぶ理由なんて結局既存ソースがc++ だからの理由に尽きる……
94 名前:デフォルトの名無しさん mailto:sage [2017/10/23(月) 22:32:24.88 ID:QdR3J7Zg.net] >>90 goとか言ってる連中の言うこと本気にするなよ。 goは数年周期でバズってるだけでC++の代替なら Dかrustって考えは間違ってないしrust理解できないやつが こことrustスレで騒いでるだけだぞ。 Dはもう流行らんだろうが、rustは学習コストより標準ライブラリの弱さが面倒。 自分で書くか外部ライブラリに依存しまくるかで基本的なスレッドプールすら無い。 低レベル向けだから結局自分で書くならrustでいいし、それが嫌ならDでいいよ。 rustとD位の差なら正直好みの差。
95 名前:デフォルトの名無しさん [2017/10/23(月) 22:40:54.47 ID:5YqbDQKx.net] >>92 ならやっぱりrustじゃない? bindgen使えばc++のヘッダもパースしてc ffi用のglue code生成してくれる。 bindgenがどの程度まで万能かは俺もよくは知らんけど、 mozillaがfirefox quantumでservoとgeckoの橋渡しのために使ってるくらいだから 結構まともに動くんじゃないかとは思ってる。
96 名前:デフォルトの名無しさん mailto:sage [2017/10/23(月) 23:08:38.91 ID:Y0tE+5bm.net] おまんらの大好き ぷ〜えちピーーブリブリッ でも使えばええじゃろw
97 名前:デフォルトの名無しさん [2017/10/23(月) 23:35:53.28 ID:b+23gIO2.net] みんなサンクス。 Goは学習コスト低いらしいから後追いでもなんとかなりそうだし、とりあえずrustで書いてみることにするわ 一刻も早くc++ が絶滅する事を祈る
98 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 00:05:09.11 ID:9ZgmGLcB.net] TypeScriptとGoを交互に触ってるけど やっぱりnull安全な言語とそうじゃない言語の差が際立つな。 Goのほうは早速null pointerアクセスで落ちる。
99 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 00:39:57.10 ID:7j3gEWSq.net] c++が絶滅したら今c++で書かれてる様々なコードベースが色んな言語に分裂するんだぜ バベルの塔
100 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 00:51:24.05 ID:MROfWTvM.net] バベルの塔を高くし過ぎたからしょうがないね
101 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 01:31:49.56 ID:KQRKQofh.net] >>93 既存のまともに動いてるCコード移植しようとしてまともにコンパイルも通らなかった経験からまともな言語の水準に達してないといってるわけだが 少なくともRustでものが書けると信じこんでるお前よりはRust理解してるぞ
102 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 02:18:45.70 ID:EjQaHC6N.net] >>100 お前が前に沸いたアンチと同一人物かどうかは分からんが、前に言った木構造をとっとと書きやがれ。 それすらできないならお前はC、C++もそもそもまともに出来てないんだから黙ってろ。 > 38 > >>36 > まずはCかC++でお前の言う無駄なアロケーションのないappendとdelete付きの木構造とやらを書け。 > そしたらそれをRustで書き直してやるよ。
103 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 07:07:12.19 ID:ZX4BnJ5l.net] >>101 まずRustの木構造をちゃんと動くように書いてから言えよ
104 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 08:36:29.96 ID:uX1ymmQB.net] rust で木構造云々言ってる奴って、コンパイラすら通せない rust コードしか書けない奴だろ。 Cで書いてあった平衡木のライブラリを rust に移植したけど、 > それに対して余計なアロケーション発生させずにappendとdelete実装してみてくれよ こんなん普通に出来るぞ。 Option<Node> に get_or_insert() するだけ。 かなり苦労したのは木の回転だけど、それでも rust 用に頭を使ったら、 take() して mem::swap, mem::swap, mem::swap, そして代入の 5 行で終わり。 全体を通して余計なアロケーションなんて普通に無い。 rust は学習コスト結構高いけど、初歩の初歩で躓いた落ちこぼれ>>100 ,>>102 とかは何を言う権利も無いよ。
105 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 10:27:36.72 ID:rYGI+fQg.net] Cのコードを示せないrustアンチは糞ゴミだけど、動くコードを示していない>>103 も何も言えていない
106 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 11:02:52.32 ID:pkngrV2F.net] 自分の頭を撃ち抜くCのプログラム書いても運良く助かってる人は Rustのコンパイル通せなくなるよね
107 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 11:29:48.61 ID:Bfcpp5kd.net] そういう、Rustのコンパイルが通らなければ危険なコードって決めつけるRust信者本当にうぜえ Rustが言語として表現できる範囲が狭いのをごまかすための方便でしかないのに
108 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 11:31:23.83 ID:9ZgmGLcB.net] TypeScriptは本家のplaygroundを
109 名前:触るだけで凄さが分かるんだけど https://www.typescriptlang.org/play/ rustってそういうのある?ちょっと試すとかできる? [] [ここ壊れてます]
110 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 11:33:53.63 ID:Pu0WJP1A.net] >>105 自分の頭というよりユーザーにデバッグのコストを転嫁して儲けてるな 運が良いというより確信犯的に
111 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 13:43:56.97 ID:wa8jpGkt.net] >>107 ググるとかしない人?単にTypeScript宣伝したいだけ? https://play.rust-lang.org/ もとよりゆるふわTypeScript使いがRustのコンパイルを通せるとも思えないので端から試す気ゼロだろうけど…
112 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 13:56:01.66 ID:Bfcpp5kd.net] 選ばれた人しかコンパイラ通せない言語とかそれプログラミング言語って言えないよね
113 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 14:30:25.93 ID:9ZgmGLcB.net] >>109 そこは知ってるけど全然補完が効かないんだけど。rust使いは しょぼいエディターで頑張る感じ? TypeScriptはplaygroundから補完が効きまくって楽しい。
114 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 16:07:36.55 ID:0CxPdYg4.net] AltJSであるtsとRustのブラウザ上で動くplaygroundの機能差を語りたかったの?マジで? Rustサゲしてる人はこの程度ってレッテル貼っていいの?
115 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 16:17:29.04 ID:VubGQCWP.net] 単にプロダクト開発のスキルの違いだな MSの開発環境チームのメンバーはHelloWorldの代わりにインテリセンス実装するんだろう
116 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 16:23:54.68 ID:rmRTTRfd.net] >>112 単純にPlaygroundの質からして違うってだけの話だろ その程度もみとめられないよかよ
117 名前:デフォルトの名無しさん [2017/10/24(火) 18:42:18.67 ID:bbIPnu9e.net] なぜrustの対抗馬にTypeScriptが挙がるのかまるで理解できない 用途が全然違うだろ……
118 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 19:07:54.15 ID:x0LH18ak.net] WebAssemblyが期待されてるから、あながち間違いでもない
119 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 21:40:46.56 ID:eZrIsy4p.net] >>113 ほんとMSってそういう所は笑えるくらいすごいよな Rust開発者たちも見習ってほしい 一応rustもコード補完にrlsとかいうヤツあるけどなんかまだいまいちなんだよな。 vscodeにrust(rls)っていうエクテンション入れて使ってるんだけど、 クロージャ書いてるときは補完が効かないのは俺だけ? あとlint?(エラー・警告を赤・緑の下線で表示してくれるやつ)が 時々なんの前触れもなく急に無反応になるんだけどそれも俺だけ?
120 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 22:14:01.00 ID:FaGN7Q1b.net] 少人数のMS社員が片手間でVSCode作ってみたら一瞬で天下獲れちゃいましたというチート集団 MSがRust推せば余裕でGo潰してベターC++の定番を奪えるだろうな
121 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 22:51:21.66 ID:z3aqO0G+.net] 片手間ってことはないし、エディタ作成なんてのは人数増やせばいいものでもない。 まあチート軍団ってのは確かだけど。 しかし Rust とか c++ みたいに教条主義的な言語ってやっぱ信者が湧くね。 わかりやすくていいとは思うけど。
122 名前:デフォルトの名無しさん mailto:sage [2017/10/24(火) 23:14:23.65 ID:MOiTAdLh.net] 片手間とか余裕とか、良い子は絶対に真似してはいけない情報ばっかり教えるんだよな そんなところに信者を集めたら怠け者の集団ができそうだ
123 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 00:51:09.03 ID:KYsAJ7k0.net] >>36 じゃないけど、雑に平衡木(AA木)Cで実装してみた。 つってもWikipediaのまるコピだが。 #include <stdio.h> #include <stdlib.h> typedef struct tree { int value
124 名前:; struct tree* left; struct tree* right; int level; } tree_t; int level(tree_t* t) { if (t == NULL) { return 0; } return t->level; } tree_t* leftEnd(tree_t* t) { if (t == NULL) { return t; } else if (t->left == NULL) { return t; } else { return leftEnd(t->left); } } (続く) [] [ここ壊れてます]
125 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 00:51:31.44 ID:KYsAJ7k0.net] tree_t* rightEnd(tree_t* t) { if (t == NULL) { return t; } else if (t->right == NULL) { return t; } else { return rightEnd(t->right); } } tree_t* skew(tree_t* t) { if (t == NULL) { return t; } else if (t->left == NULL) { return t; } else if (t->left->level != t->level) { return t; } tree_t* l = t->left; t->left = l->right; l->right = t; return l; } (まだ続く)
126 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 00:52:33.16 ID:KYsAJ7k0.net] tree_t* split(tree_t* t) { if (t == NULL) { return t; } else if (t->right == NULL) { return t; } else if (t->right->right == NULL) { return t; } else if (t->level != t->right->right->level) { return t; } tree_t* r = t->right; t->right = r->left; r->left = t; r->level += 1; return r; } (続く)
127 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 00:52:56.15 ID:KYsAJ7k0.net] tree_t* decreaseLevel(tree_t* t) { if (t == NULL) { return t; } int ll = level(t->left); int rl = level(t->right); int expectedLv; if (ll < rl) { expectedLv = ll + 1; } else { expectedLv = rl + 1; } if (expectedLv < t->level) { t->level = expectedLv; if (t->right != NULL) { if (expectedLv < t->right->level) { t->right->level = expectedLv; } } } return t; }
128 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 00:53:17.67 ID:KYsAJ7k0.net] tree_t* insertTree(tree_t* t, int v) { if (t == NULL) { t = malloc(sizeof(tree_t)); t->value = v; t->left = NULL; t->right = NULL; t->level = 1; } else if (v > t->value) { t->right = insertTree(t->right, v); } else { t->left = insertTree(t->left, v); } t = skew(t); t = split(t); return t; } 肝心の関数まで遠いなほんと
129 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 00:55:17.25 ID:KYsAJ7k0.net] tree_t* removeTree(tree_t* t, int v) { if (t == NULL) { return t; } else if (v == t->value) { if (t->left == NULL && t->right == NULL) { free(t); return NULL; } else if (t->left == NULL) { tree_t* e = leftEnd(t->right); int succ = e->value; t->right = removeTree(t->right, succ); t->value = succ; } else { tree_t* e = rightEnd(t->left); int pred = e->value; t->left = removeTree(t->left, pred); t->value = pred; } } else if (v > t->value) { t->right = removeTree(t->right, v); } else { t->left = removeTree(t->left, v); } t = decreaseLevel(t); t = skew(t); t->right = skew(t->right); if (t->right != NULL) { t->right->right = skew(t->right->right); } t = split(t); t->right = split(t->right); return t; } おしまい。 まじこんなクソコードに何レスもついやしてすまん。
130 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 00:56:55.22 ID:KYsAJ7k0.net] 改めて書いてみて思ったが、平衡木って平衡保つための操作がポインタのつけかえ多くて 確かにRustにはキツそうだなとか思ったり データコピーなし縛りで実装するのはRust歴1週間の自分には無理そうだ
131 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 01:27:50.62 ID:egHPItlD.net] Rust 的にはそんなに派手に持ち主変えるな、もしくはコピーを使えって感覚なんだろう。 そういうのは上のレイヤーだったら正しいと思うけど、アルゴリズムなコードの場合は ちと厳しいかもしれん。 付け替えが頻繁に発生する構造の場合は int parent[]; int right[]; int left[]; みたいな配列実装しろてな記事は見た事なるな。 直感的ではないけど速度は出るし、まあ慣れてる奴からすればどっちも一緒といえば一緒かな。
132 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 01:53:05.61 ID:KYsAJ7k0.net] そういう、どうしても生ポインタごそごそつけかえる必要がある基幹アルゴリズムは、unsafeでくるんでやれって感じなのかね 実際この平衡木の実体が複数スレッドから独立に操作されるとか考えると割と困る
133 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 06:54:35.09 ID:2hh4Hzpf.net] gitみたいに、古いデータを消去することなく しかも変更のない部分はいちいちコピーしないアルゴリズムを考えるんだ そうすれば古い方のデータに別スレッドから安全にアクセスできるよ
134 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 10:38:32.59 ID:1aquIA8S.net] 結局たかが赤黒木すらRustでは書けないって認識でいいの? ほんとプログラミング言語名乗るなよ
135 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 10:59:08.02 ID:2hh4Hzpf.net] >>131 その認識は間違いだけど正解を無料で教えてくれるボランティアが足りないね GNUみたいなボランティアがいっぱいいないとプログラミング言語を名乗れないのが現実
136 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 11:14:21.26 ID:j3LwAfcI.net] Rustの問題は後発のくせにIDE連携が弱すぎる。 KotlinとかSwiftとか後発の言語は大概IDEと一緒に提供してるから 最初から補完がきっちり効く。 Goも昔はイマイチだったけど改善してるから許せる。 TypeScriptは言語そのものにIDE連携のための機能をたっぷり盛り込んでいるから 見習ってほしいって話。 初学者程IDE連携が必要だからな。言語仕様が優れてていても ツールとして使い勝手が良くなきゃ使わんよ。 それにRustの立ち位置って OS開発とブラウザ開発くらいしかメリットが思い浮かばんのだけども CLIならGoだし WebならPHPとかRubyとかGoとか乱立状態だし WEBのクライアントサイドならTypeScriptだし スマホならKotlinかSwiftかObjC このどこにRustが入り込むの?
137 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 11:47:25.56 ID:2hh4Hzpf.net] そもそもC++があまり成功してないから改善するためにRustがある C/C++と合計して考えるとJavaより上だけど合計しなければC++は成功してないよ
138 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 12:31:23.13 ID:L5aebztM.net] C++が成功してないwwwwwwwwwww どこの平行宇宙ですかwwwwwwwwwwwwwwwww
139 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 13:46:26.44 ID:egHPItlD.net] まあ c++ がうまくいってればこんなに言語がたくさんできることはなかっただろうね。 c++ の存在意義は今や高級な機能をどれだけランタイム速度落とさずに入れられるのかの 実験場って位置づけかな。
140 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 13:55:53.69 ID:L5aebztM.net] C++は完璧な言語だとか口が割けても言えないのは間違いないが、Rustなんて言語ですらない汚物使うくらいならC++使うわなあ
141 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 15:45:07.57 ID:+h/lSeC6.net] ID:KYsAJ7k0のコードのRust版まだー?
142 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 16:40:52.54 ID:GfXNw50M.net] >>133 rlsあるし十分やん
143 名前:あ mailto:sage [2017/10/25(水) 18:10:38.69 ID:Wj9s3Y5p.net] TSは手段と目的がたまに入れ替わるのが見てるとちょっもモヤモヤするな。 C#が最近もう一度好きになってきた。
144 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 19:10:42.88 ID:ajBcpsg9.net] >>138 まあまあ今ごろコンパイラに怒られてる頃だしもうちょっと待ってやろうぜwwwwww
145 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 20:35:19.01 ID:rCcyDoqV.net] rustスレよりもりあがっとるやんここ
146 名前:デフォルトの名無しさん [2017/10/25(水) 20:59:03.30 ID:EAW9qNH5.net] cに名前空間とラムダとattribute((cleanup))が入るだけでもだいぶ助かるのに。 なんでcの規格のバージョンアップは遅いんだ? c++みたく3年毎にしてくれたらいいのに。
147 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 21:12:25.50 ID:7dSKsD7g.net] >>142 あそこモジラの工作員しかいねえし Rustが言語ですらないただの汚物って正しい認識を共有できる人がちゃんといるのは素晴らしいと思う
148 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 22:58:44.78 ID:egHPItlD.net] >>143 C++みたく闇鍋状態にしたくないからだろ。
149 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 23:13:35.98 ID:GfXNw50M.net] モジラが2ch見てるわけねーだろ 糖質かよ
150 名前:デフォルトの名無しさん mailto:sage [2017/10/25(水) 23:16:03.33 ID:j3LwAfcI.net] rustをそこまで毛嫌いする必要もないと思うけどな rustのメモリオーナーシップモデルとかコードの改善に貢献するという話もあるし ちょっと気にはなってる。
151 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 00:20:17.07 ID:9syp6YaG.net] rustアンチって同一人物だろ コンパイル通らなくてイライラしてるんだね^^ コテ付けて、どうぞ
152 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 00:21:04.60 ID:T1ShqX6y.net] rustは何がそんなに駄目なんだろ そこ迄言われると学びたくなってくる
153 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 00:26:09.28 ID:9syp6YaG.net] >>149 他の言語にはない所有権システムが原因で学習コストが高い 使いこなせば強力だけどとても難しい機能 それで使いこなせてない人が「コンパイル通らない」って発狂してる 例えると、初めてHaskell言語触る人が「変数に代入出来ないから何も出来ない!Haskellは欠陥言語!」って言ってるような物
154 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 00:31:32.93 ID:zsf3GtyN.net] rustのコンパイルを通せない低級汚グラマーが 嫉妬で腐してるだけだろ 腐ってるのはテメーの言語センスだろってね
155 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 00:32:53.75 ID:9syp6YaG.net] Haskell言語って何だ 夜は誤字増えるから寝よう
156 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 00:50:43.34 ID:T1ShqX6y.net] >>150 なるほど、でも面白そうだな パフォーマンスは良いって聞くし haskellも好きだし一通り触ってみるかな
157 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 03:24:21.96 ID:EtDTWIur.net] まあ御託はいいからデータコピーなしの平衡二分木をRustで書いてからにしてくれよ Cのコードは出たぞ
158 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 05:10:18.37 ID:IaYxMsud.net] Haskellなら副作用だらけのコードは断固拒否するだけだが Rustで副作用を拒否すると延々と粘着されそう ついでにPythonは静的型を拒否するだけだが Goはジェネリクスがない件で永久にいじめられるんだろう
159 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 07:04:11.52 ID:hnEjL22C.net] Haskellは速さは捨てて副作用を無くすことに全振りしてるけど、Rustはそうではないからな
160 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 09:12:10.17 ID:ZXFAdbhr.net] Rustはunsafeつかえば(ffiしたほうがはやいだろうが)できないことはないと思ってるんだが違うのかな?
161 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 09:59:20.18 ID:tFGGFqQC.net] Goはいつものgoogleのフカしで持ち上げられてる感がプンプンするぜ。 単なる昔ながらのVM使ってない静的型付け言語を システムプログラミングとかいうバズワードを作って スクリプトしか描いたことない奴らにいかにも新しいものであるかのように錯覚させてる。
162 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 10:42:13.95 ID:1t2EMvpb.net] >>157 初めからプログラム全体をunsafeで囲ってある状態を仕様にすればいいのにな >>158 バズワードだろうがなんだろうが、速くて書きやすけりゃ正義よ
163 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 10:47:47.28 ID:Y5WhyQQy.net] 最近は新しいOSSもGoで書かれてるの多くてうんざりする 再来年辺りには「Goは終わった」とか言われだしてScalaと同じ道を辿るのわかりきってるのにWeb系の馬鹿共は何度同じ間違いを繰り返すのか
164 名前:デフォルトの名無しさん [2017/10/26(木) 11:10:35.34 ID:8qIiNs+I.net] 個人的にはDが一番純粋なc++ 後継って感じで頑張って欲しいんだけどなぁ まったく流行る兆しがない…… 別に新しい言語を求めてるんじゃないんだ。c++ からc互換を取り除いて標準ライブラリと文法見直してくれるだけでいいんだ
165 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 11:45:28.73 ID:xVKEuI/f.net] >>160 「新しいOSSもGoで書かれてるのが多」いのに 「再来年辺りには『Goは終わった』とか言われだ」すのか。すげえな まあGo2.0の漏れ聞く噂によると可能性なくもないんだが
166 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 11:47:37.13 ID:xVKEuI/f.net] >>161 GC言語な時点でそりゃねえわ 全く同じ理由でGoもC++の完全な後継ではないと思ってるけど
167 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 11:54:33.47 ID:Y5WhyQQy.net] >>162 Scalaという前例があるからね 特にビッグデータ系はScalaのOSSが多くて悲惨だよ 壮大な糞の山が残されてしまった
168 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 12:17:09.48 ID:xVKEuI/f.net] >>164 Scalaが廃れた理由は、言語のバージョンアップ戦略がクソof
169 名前:クソだったってのと コンパイル回りの性能が悪いっていう言語自体の特徴、 それから置き換えを狙っていたはずのJavaの進化に取り残されたことっていう色々と複合的な原因がある Goがその後追いをするかって言われると、 少なくとも書きやすさの面でC++がGoに勝てる目は向こう5年はないだろうし、 バージョン戦略は少なくとも1系の間は下位互換性崩さんだろうしな [] [ここ壊れてます]
170 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 12:19:58.53 ID:xVKEuI/f.net] 不安があるとするなら、なんか1系と完全に互換性なくすとか言われてるGo2.0なんだよな この辺の方針次第では、おっしゃる通り再来年にはゴミの山になってる可能性が無視できない Swiftがクソバージョンアップでもなんとか成功してるのはプラットフォーム囲い込んでるのがでかい
171 名前:デフォルトの名無しさん [2017/10/26(木) 12:27:59.75 ID:P+s05bng.net] AA木のRust版の移植を練習がてらやったぞ。 みんなunsafeが必要とか言ってるが、別に必要なくない? ポインタ演算もサイズの違う型の変換もしてるわけじゃないから生ポインタ扱う必要ないと思うんだけど。 だた、マジで愚直に移植したから全くRustっぽくはないし、 俺がバカなだけで無駄なオーバーヘッドが気づかんうちにいっぱい発生してるかもだから指摘よろしく。 一応何回か適当にinsertとremoveして正しく動いてるとこまでは確認してる。 みんなunsafe使わないとダメ的なこと言ってるから正直これでいいのか全然自信がない。
172 名前:デフォルトの名無しさん [2017/10/26(木) 12:28:38.79 ID:P+s05bng.net] #[derive(Debug)] struct Tree { value: i32, left: Option<Box<Tree>>, right: Option<Box<Tree>>, level: isize, } fn level(root: &Option<Box<Tree>>) -> isize { if root.is_none() { return 0; } root.as_ref().unwrap().level } fn left_end(root: &Option<Box<Tree>>) -> &Option<Box<Tree>> { if root.is_none() { root } else if root.as_ref().unwrap().left.is_none() { root } else { left_end(&root.as_ref().unwrap().left) } } (続く)
173 名前:デフォルトの名無しさん [2017/10/26(木) 12:29:34.82 ID:P+s05bng.net] fn right_end(root: &Option<Box<Tree>>) -> &Option<Box<Tree>> { if root.is_none() { root } else if root.as_ref().unwrap().right.is_none() { root } else { right_end(&root.as_ref().unwrap().right) } } fn skew(mut root: Option<Box<Tree>>) -> Option<Box<Tree>> { if root.is_none() { return root; } else if root.as_ref().unwrap().left.is_none() { return root; } else if root.as_ref().unwrap().left.as_ref().unwrap().level != root.as_ref().unwrap().level { return root; } let mut left = root.as_mut().unwrap().left.take(); root.as_mut().unwrap().left = left.as_mut().unwrap().right.take(); left.as_mut().unwrap().right = root; left } (まだ続く)
174 名前:デフォルトの名無しさん [2017/10/26(木) 12:30:37.02 ID:P+s05bng.net] fn split(mut root: Option<Box<Tree>>) -> Option<Box<Tree>> { if root.is_none() { return root; } else if root.as_ref().unwrap().right.is_none() { return root; } else if root.as_ref().unwrap().right.as_ref().unwrap().right.is_none() { return root; } else if root.as_ref().unwrap().right.as_ref().unwrap().right.as_ref().unwrap().level != root.as_ref().unwrap().level { return root; } let mut right = root.as_mut().unwrap().right.take(); root.as_mut().unwrap().right = right.as_mut().unwrap().left.take(); right.as_mut().unwrap().left = root; right.as_mut().unwrap().level += 1; right }
175 名前:デフォルトの名無しさん [2017/10/26(木) 12:31:04.94 ID:P+s05bng.net] fn decrease_level(mut root: Option<Box<Tree>>) -> Option<Box<Tree>> { if root.is_none() { return root; } let left_level = level(&root.as_ref().unwrap().left); let right_level = level(&root.as_ref().unwrap().right); let mut expected_level = 0; if left_level < right_level { expected_level = left_level + 1 } else { expected_level = right_level + 1 } if expected_level < root.as_ref().unwrap().level { root.as_mut().unwrap().level = expected_level; if root.as_ref().unwrap().right.is_some() { if expected_level < root.as_ref().unwrap().right.as_ref().unwrap().level { root.as_mut().unwrap().right.as_mut().unwrap().level = expected_level; } } } root }
176 名前:デフォルトの名無しさん [2017/10/26(木) 12:31:51.05 ID:P+s05bng.net] fn insert_tree(mut root: Option<Box<Tree>>, value: i32) -> Option<Box<Tree>> { if root.is_none() { root = Some(Box::new(Tree { value: value, left: None, right: None, level: 1, })); } else if value > root.as_ref().unwrap().value { root.as_mut().unwrap().right = insert_tree(root.as_mut().unwrap().right.take(), value); } else { root.as_mut().unwrap().left = insert_tree(root.as_mut().unwrap().left.take(), value); } root = skew(root); root = split(root); root }
177 名前:デフォルトの名無しさん [2017/10/26(木) 12:34:16.58 ID:P+s05bng.net] fn remove_tree(mut root: Option<Box<Tree>>, value: i32) -> Option<Box<Tree>> { if root.is_none() { return root; } else if value == root.as_ref().unwrap().value { if root.as_ref().unwrap().left.is_none() && root.as_ref().unwrap().right.is_none() { return None; } else if root.as_ref().unwrap().left.is_none() { let succ = { let end = left_end(&root.as_ref().unwrap().right); end.as_ref().unwrap().value }; root.as_mut().unwrap().right = remove_tree(root.as_mut().unwrap().right.take(), value); root.as_mut().unwrap().value = succ; } else { let pred = { let end = right_end(&root.as_ref().unwrap().left); end.as_ref().unwrap().value }; root.as_mut().unwrap().left = remove_tree(root.as_mut().unwrap().left.take(), value); root.as_mut().unwrap().value = pred; } } else if value > root.as_ref().unwrap().value { root.as_mut().unwrap().right = remove_tree(root.as_mut().unwrap().right.take(), value); } else { root.as_mut().unwrap().left = remove_tree(root.as_mut().unwrap().left.take(), value); } 関数途中です(1レスに収まらんかった)
178 名前:デフォルトの名無しさん [2017/10/26(木) 12:37:30.92 ID:P+s05bng.net] root = decrease_level(root.take()); root = skew(root.take()); root.as_mut().unwrap().right = skew(root.as_mut().unwrap().right.take()); if root.as_ref().unwrap().right.is_some() { root.as_mut().unwrap().right.as_mut().unwrap().right = skew(root.as_mut().unwrap().right.as_mut().unwrap().right.take()); } root = split(root.take()); root.as_mut().unwrap().right = split(root.as_mut().unwrap().right.take()); root } 終わり。 クソコードの上に長くてほんとすんません。 あと、おもてのコードでは一度もunsafeは使ってはないけど Option型のtakeメソッドが所有権を誤魔化すために裏でunsafe使ってる。 あとは、裏でも使ってないと思う。
179 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 12:39:25.88 ID:xVKEuI/f.net] Rustトーシロの初見だけどこんなにunwrap必要なの怖いって気分になるな…… CのポインタをOption<Box<>>で表現してるからしゃーないとはいえ
180 名前:デフォルトの名無しさん [2017/10/26(木) 12:39:26.85 ID:P+s05bng.net] ここまでやったらもう飽きた。 誰かメソッド構文とかコンビネータとかをきちんと使ったRustyなコードに書き換えて。
181 名前:あ mailto:sage [2017/10/26(木) 12:42:49.23 ID:+cEqlMCT.net] Rust嫌いな奴はCをすぐ引き合いに出すが、misraの案件やったら死ぬんじゃねえかなって思う。 GC言語も悪くはないぞ。ちゃんとGCの動き考えれば、正しく開放「されてない」理由もわかるだろ。 最初からデカイ配列を握って離さない、それを切り貼りして使う、みたいなJavaのプロジェクトあるしな。
182 名前:デフォルトの名無しさん [2017/10/26(木) 12:50:10.86 ID:P+s05bng.net] >>175 あくまでも愚直に書いてるからこんなにunwrapとas_refとas_mutだらけになる。 if letとかコンビネータとかをきちんと使えばこんなひどいコードにはならないよ。
183 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 16:47:19.95 ID:hnEjL22C.net] rustのコード<>だらけで読みにくい これはlispの括弧みたいに慣れたら読みやすいものなのか?
184 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 17:58:11.26 ID:9syp6YaG.net] >>153 難しいとは言ってもOOP→関数型のパラダイムシフトに比べれば簡単だけどね
185 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 20:01:45.08 ID:mFTohykf.net] >>154 おい、お前でてこいよ
186 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 21:09:45.15 ID:LcYnzbeR.net] rust も haskell も理解できても面倒だし無駄に言語に気使ってるだけじゃねーかって 思うんだが、信者はききやしない。。 「お前らは理解できないものを理解できる俺偉い」で思考停止しちゃってんだよ。
187 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 21:15:34.16 ID:hnEjL22C.net] 一番言語に気を遣わないといけないのはC++だがなw
188 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 21:19:35.59 ID:+/fzZ2Vi.net] 型っていうシステムが そもそも良くないっていうのは無いの?
189 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 21:46:13.96 ID:OTLFFL6d.net] >>181 出てきたが、お前まさかこんな汚いコード未満とCのコード比較させる気か?勝負にならん。解散 >>182 それならマシで、Rust信者の工作員はモジラブランドのためなら使えないものを世界中の企業に絶賛させるための工作をに熱心すぎてもうね
190 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 21:54:28.12 ID:PekP06rX.net] >>185 おめー流石に一から書いてもいない奴が言うセリフじゃねえよ Cライク信者からしても何様だてめえは
191 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 21:55:02.68 ID:mFTohykf.net] >>185 てめえがしね
192 名前:デフォルトの名無しさん [2017/10/26(木) 22:34:09.13 ID:P+s05bng.net] >>182 「俺偉い」はさすがにないわ。笑かすな。 Rustに移植してみての感想だけど、確かにコンパイルを通すのには苦労したけど、 通ってしまえばメモリーリークはないって安心感がある。これが重要。 特に今回はunsafe一度も使ってないからなおさら安心できる。 Cのほうのコード一通り眺めてメモリーリーク無いって確信できる? それができる超人君なら確かにRustは全く必要ないが。 Rustは君の嫌う面倒さと引き換えに安心を得ることができる言語。 むしろCで書いたコードにメモリーリークがあるのかないのか 自分の書いたコードに自信が持てないやつのためにこそRustがあると思ってる。 面倒だけが理由で思考停止しているのはどっちだ。 >>185 確かにこのコードは汚いよな。そこは自覚してる。
193 名前:マジで誰かRust風に書き換えてくれない? 動いたところまで確認したところで集中が切れてしまってもうやる気が出ない。 Rustはオブジェクト指向も関数型のパラダイムを両方とも持っているし、 きちんと書けばかなり綺麗で整ったコードに書き直せるはずなんだよ。 あと、Rustアンチに1つ聞きたいことがある。 Rustが嫌いってことはわかったけど、じゃあアンチ君の好きな(愛用してる)言語は何なの? その言語のメリット・デメリット含めて詳しく解説してくんない? [] [ここ壊れてます]
194 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 23:26:00.76 ID:LcYnzbeR.net] はっきり言わせてもらうけれど、 この規模のコードで書くのにそれだけ苦労する価値があると思えんが。 メモリリークについてもこの規模なら一通り見て、あるかないかくらい判断できるよ。 まあ主観といえば主観だけれど 本当に本心からこの程度のコードについてメモリリークを心配しちゃってるの? 言語を持ち上げるために無理に納得しようとしてない?
195 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 23:35:06.69 ID:9syp6YaG.net] そりゃこの程度の規模じゃRust使うメリット皆無だよ で、実際のプロジェクトがこの程度の規模なの?
196 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 23:35:07.35 ID:51LPFkSD.net] なんでこの規模に限定した話をされているの?
197 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 23:37:41.83 ID:9syp6YaG.net] Rustアンチスレ https://mevius.5ch.net/test/read.cgi/tech/1509028624/
198 名前:デフォルトの名無しさん mailto:sage [2017/10/26(木) 23:40:05.21 ID:JSzFTz38.net] ブラウザの性能が圧倒的にchromeより上になったらrustの優位性が証明されるけど。 それをまとうかな。
199 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 00:07:16.82 ID:xwp9Pca0.net] 性能の差で優位性を証明したことなんて今まであったっけ オブジェクト指向も関数型もiPhoneもみんな性能と関係ない価値観だったような
200 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 00:42:45.70 ID:5+s2yfDd.net] >>185 さすがにコード一行も書いてない奴が言っていいセリフじゃねえわ…… >>189 さすがに後出し条件がひどい。そもそも発端は「Rustでは(unsafe使わずに)木構造すら書けねえだろ」って煽りが発端で 「さすがに木構造くらい(unsafeなし)Rustででも書けるわ」ってのの話がこれだろ そりゃコンセプトが「安全性」なんだからCで書くより面倒なのは確かだし、この程度ならCの方がいいってのも当然だが、 そこを比較するために書いたもんじゃねえだろ
201 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 00:47:50.32 ID:/3yfU/y8.net] 見苦しくなってきたな
202 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 03:40:11.56 ID:LQlgBzJd.net] 流石に自演かすぎる…
203 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 06:31:17.46 ID:2A0a9mBA.net] >>183 そんなことはないと思うが 何か具体例ある?
204 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 06:34:38.22 ID:2A0a9mBA.net] >>195 言いたいことはわかるが その「この程度」のも全部快適に書けるのが理想なわけだよね この程度のをいっぱい書かなきゃいけなくなったときにこの調子じゃ萎える人も出てくるだろう
205 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 09:50:28.38 ID:T+eCoUsJ.net] >>195 安全性のためとか言って結局まともにかけないアルゴリズムがあることを見て見ぬふりの信者 健康のためなら死んでもいいを地で行ってるな これが宗教ってやつか
206 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 10:02:50.33 ID:LQlgBzJd.net] Rustが面倒そうなのは伝わったが C側の奴がコピペ野郎のくせに暴れてるクズすぎてなんとも
207 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 10:35:02.10 ID:aniL1VIL.net] >>200 まともに書けるけど無料で教えてくれる人が少ないだけだってそろそろ気付けよ 普通は健康のためではなくカネのためにやってるから
208 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 11:13:40.46 ID:T+eCoUsJ.net] というかさ、Rustのコードバグってるんだけどwwwww バwグwっwてwるwんwだwけwどwwwww remove_treeで要素Removeできてないwwwww Rustはコンパイル通れば安心できる(ドヤァ)とかいってバwグwっwてwるwwwww
209 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 11:26:28.21 ID:T+eCoUsJ.net] ここにRustは、安全性を高めると言いつつまともにアルゴリズムを書こうとすると制約回避のためにとてつもなく汚いコードになり、 バグもCより出やすくなることが公になりましたとさ ちゃんちゃん
210 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 11:40:28.33 ID:AXKOuk3Y.net] >>198 言語に気を遣わないとすぐ自分の足元を撃ち抜く言語であるということに同意しないということ? 具体例っていざ言われると困るなあ。ふと思い出した阿呆な失敗談を一つ挙げると、クラスの値型配列を作れちゃうところとか、クラスは絶対ポインタで持たないといけないDとは対照的に感じたな 常識的に考えたらクラスの値型配列なんてやったらダメなのはわかるんだけど、なぜかやってしまって、コンパイル通ってんのに思ってたのと違う挙動して困ったわ。こういう常識的に考えたらわかるけど、考えないといけない部分があるから言語に気を遣わないとやっていけん。 これは全然大したことない例だけど、なんか他にもあったような気もするし思い出したら書き込むわ
211 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 12:04:57.19 ID:aniL1VIL.net] 代入がなければ値型でもポインタでも同じ挙動だ だから、代入しようとしたらコンパイルが通らない言語が現れた
212 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 12:27:06.09 ID:Luz9kSs/.net] haskell追い出したら次はrustですか?
213 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 12:49:17.54 ID:aniL1VIL.net] 追い出す権利はないね あると思ってるやつは権利に甘えすぎ
214 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 12:53:49.35 ID:BmYygdVN.net] https://cpplover.blogspot.jp/2017/10/range-based-for.html まあこう言う馬鹿がいなくなるまでは 実際のコードについて議論したほうがいいとは思うよ。 別にrustとかhaskellが悪いとは思わんけれど、コードなんて実際に現場で機能するかどうかが 一番重要なわけだから。原理に走ると都合の悪いことを無視し始めるのは気に入らん。
215 名前:デフォルトの名無しさん [2017/10/27(金) 13:27:23.45 ID:OeXtCDV4.net] >>203 すまぬ。すまぬ。完全なうっかりミスだったわ。 訂正した。 fn remove_tree(mut root: Option<Box<Tree>>, value: i32) -> Option<Box<Tree>> { if root.is_none() { return root; } else if value == root.as_ref().unwrap().value { if root.as_ref().unwrap().left.is_none() && root.as_ref().unwrap().right.is_none() { return None; } else if root.as_ref().unwrap().left.is_none() { let succ = { let end = left_end(&root.as_ref().unwrap().right); end.as_ref().unwrap().value }; >> 訂正前 root.as_mut().unwrap().right = remove_tree(root.as_mut().unwrap().right.take(), value); >> 訂正後 root.as_mut().unwrap().right = remove_tree(root.as_mut().unwrap().right.take(), succ); root.as_mut().unwrap().value = succ; } else { let pred = { let end = right_end(&root.as_ref().unwrap().left); end.as_ref().unwrap().value }; >> 訂正前 root.as_mut().unwrap().right = remove_tree(root.as_mut().unwrap().right.take(), value); >> 訂正後 root.as_mut().unwrap().right = remove_tree(root.as_mut().unwrap().right.take(), pred); root.as_mut().unwrap().value = pred; } } else if value > root.as_ref().unwrap().value { root.as_mut().unwrap().right = remove_tree(root.as_mut().unwrap().right.take(), value); } else { root.as_mut().unwrap().left = remove_tree(root.as_mut().unwrap().left.take(), value); } ...
216 名前:デフォルトの名無しさん [2017/10/27(金) 14:02:45.56 ID:OeXtCDV4.net] >>204 何度も言ってるがこのコードが汚いのは制約回避のためじゃなくて、Cのコードを愚直に移植してるからだぞ。 CのNULLを表現するためにOption型を使用してるから、コンビネータとかを きちんと使わない限りはunwrapだらけになってコードが汚くなる。 Rustのコードが汚いんじゃなくてRustyに書いてないから汚いだけ。 同じことを何度も言わせないでくれ。 確かに、Rustはコンパイル通すために苦労するから、 執行錯誤してるうちにうっかりミスしやすくなるという考えはあるのかもな。 まあ、この程度のミスを犯す俺が単純にバカすぐるのか、これもRustの課題のひとつだと考えるかは 人によって意見が分かれてくるところじゃないか?みんなどう思う?
217 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 15:02:03.76 ID:aniL1VIL.net] カネもないし時間のゆとりもないからコードが汚くなった 言語よりもカネと時間の使い方が間違っている
218 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 17:07:21.98 ID:2A0a9mBA.net] >>205 クラスの値型配列はごく基本的で有用なデータ構造なんだけど…
219 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 17:26:21.22 ID:2A0a9mBA.net] いや俺もちゃんと具体例出すか。例えば class Point { public: double x; double y; }; だの Point3D だのが定義できて、 vector<Point> や Point v[..] が扱えなかったらシステムプログラミングなんかできやしない …かどうかは別として別に値型の配列は必要なデータ構造だし、 immutable であれば直感に反した動作もないのでは。 実際に用途の多くは inmutable なオブジェクトの配列で、 C++17 では vector<const T> が許容されるようになりそうな流れ。
220 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 17:40:16.82 ID:AXKOuk3Y.net] >>214 ああ、すまん。Dでは構造体は継承出来ない代わりに値型可能、クラスは継承出来る代わりに値型不能なんよ。そのイメージが残ってたわ。 継承したものを値型で混ぜ混ぜしてしまったというのが俺のミスなのです
221 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 18:04:05.75 ID:697iydar.net] 何でスレタイからHaskell外したんだよ それならGo外せよ
222 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 18:39:17.91 ID:BmYygdVN.net] なんか元々の C のコードを Rust に下から生じた問題みたいに言ってるけれど tree のアルゴリズムを実直に書けばそういうふうになるだろ。 それってつまり実直にアルゴリズムを記述するのに向いてないって言ってるようなもんだろ。
223 名前:あ mailto:sage [2017/10/27(金) 18:41:31.58 ID:872yUCAe.net] また無様なHaskellのコード見るの嫌だし、むしろスレタイには言語一切入れんでもいいだろ。 好きなら、なぜ好きかを推すだけで充分議論になるのに、 他の言語を貶めて、○○はゴミだから△△が良い、って論調にするのはちょっとおかしいんじゃないの? ホームレスが椅子で寝るの見て、俺はブラック企業戦士だけど屋根のある部屋で椅子で寝てるだけマシ、って言ってるように聞こえるよ。 好きで椅子で寝てるなら椅子寝のこだわりぐらい書けよ。パイプ椅子なら圧倒的に互い違い派だ、とか。
224 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 19:47:08.69 ID:aniL1VIL.net] 貶めるのが許せないという気持ちがよくわからない 例えば残業代未払いは許せるが貶めるのは許せないとか なんでそういう優先順位になったのか理解できない
225 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 20:10:28.34 ID:AXKOuk3Y.net] エアプガイジの言ってることわかる訳ないんだから絡むな
226 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 20:13:53.36 ID:AXKOuk3Y.net] Rust派の意見としては、 @TreeはCより汚いけど他のメリットが大きいから許せ Aもっとうまく書けるから俺が書いてやるぜ B副作用のある木は糞 どれ?
227 名前:デフォルトの名無しさん [2017/10/27(金) 22:02:47.00 ID:atz35ani.net] >>218 隔離スレだしな。 プログラマ自体、人口のほんの一部だし、複数の計算モデルが異なる言語を使いこなしてるのなんて更に希少種だから、もともと言語のマトモな比較が出来る奴が殆ど居ない。 だからここで言い合ってるのはおま環がデフォ。
228 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 22:13:38.27 ID:2kHVS/Sf.net] >>184 型がないと引数なり戻り値なりで与えられた情報をどう扱っていいかわからないでしょう
229 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 22:23:07.44 ID:W2Xgzzyi.net] 返り値が返るのも それも副作用って事にならないのはなんで?
230 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 23:02:40.27 ID:4WxMDiO8.net] 式に値があるのは副作用と言わないから
231 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 23:04:58.68 ID:2kHVS/Sf.net] >>224 主の作用だからだろ
232 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 23:23:42.05 ID:LQlgBzJd.net] >>218 無様なHaskellコードって?
233 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 23:45:39.75 ID:BmYygdVN.net] >>211 ちゃんと具体的にコードを書いてくれて議論しやすくしてくれたのはありがたい。 tree を rust で実装しろって言われたら 10 人中 9 人は Box と Option を 使ったそういう構造体作ると思う。
234 名前:デフォルトの名無しさん mailto:sage [2017/10/27(金) 23:47:59.22 ID:O21aknvD.net] >>214 Pointの例に限って言えば同意できないな 大量の小さなベクトルを扱うような場合、構造体を使うより各成分をそれぞれスカラー配列で持った方が効率いいよ キャッシュに乗りやすくなる C++系の言語で行
235 名前:持ちの方が好まれるのは、一番の理由は言語の性質上そのほうが扱いやすいからに過ぎない 最近は列指向DBなんかも普通に使われるようになって、データの列持ちが見直されつつある今、 列持ちのデータ構造をスマートに扱える言語があってもいいと思うわ [] [ここ壊れてます]
236 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 00:01:16.09 ID:rPyPw2Q2.net] >>229 Fortran, Juliaのことか?
237 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 00:03:34.74 ID:1i6fvk7+.net] >>227 >無様なHaskellのコード 908 :あ:2017/05/31(水) 09:15:21.09 ID:dc+IbjjD >>905 具体的に上げろと言われてもなぁ。 <T>を持ったenumがOptionかcar(T)とcdr(<T,T>)である時くらいかな。 これのことじゃないの?(適当)
238 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 00:24:09.93 ID:rPyPw2Q2.net] てか >>229 > 各成分をそれぞれスカラー配列で持った方が効率いいよ キャッシュに乗りやすくなる これってどういう演算の時にそうなるんです?
239 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 00:46:39.85 ID:pDpr3v8b.net] Rustアンチくんはペチパー はっきりわかんだね
240 名前:あ mailto:sage [2017/10/28(土) 00:51:22.50 ID:Nq0Bzlbk.net] >>219 許せないんじゃなくて、健全ではないよね、と。 なんせ改善せずとも、自分があたかもまともであるかのように思える一番楽な方法だし、進歩もない。 >>222 ホントに。好きなら好きで良いんだよ。 バカで比べる事ができないなら素直に信者してりゃ良いの。 狂信者が戦争起こすような真似をネットでまでやらんでもよろしい。 >>227 >>231 しかも、結局すごくひねり倒してグダグダ言った割に、最後まで動くコードが出てこなかったんだけっけ。
241 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 00:58:11.14 ID:Ng05dLeH.net] >>232 分かりやすいのはパディングが入るケース ループのベクトル化もスカラー配列の方が効きやすいらしい
242 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 01:07:07.63 ID:rPyPw2Q2.net] >>235 うーむ…… もしかしてPoint3Dのベクトルに一括して行列を掛けたりする状況を想定しているのか?
243 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 01:09:54.95 ID:Ng05dLeH.net] そういう状況でもない限りそもそもボトルネックにならないからな
244 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 01:16:42.42 ID:FXSZ1oP/.net] >>211 試行錯誤の過程でアルゴリズムぶっこわれるってのはよくあるが、そうならないためにテストコードがあるっちゃそうだから、 明確な欠点とは言えないかもな まさかスレに貼るサンプルコードにまでテストコードつけろなんて言えねえし。
245 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 04:09:54.80 ID:62CU1Qsk.net] >>234 ドアの奴なかな? あれならHaskellのコード出てただろ いつまで言ってるんだ
246 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 09:04:44.68 ID:C9milqrp.net] コード出すという行動ではなく コードが正義っていう知見への承認とか共感が欲しかったんじゃないか だから行動だけでは駄目
247 名前:あ mailto:sage [2017/10/28(土) 09:19:59.46 ID:Nq0Bzlbk.net] >>239 じゃ、いつまで、スレタイにはHaskellが、って言ってんだよ(笑)
248 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 10:25:15.53 ID:CAnYo5YI.net] なぜ私達は Python から Go に移行したのか https://frasco.io/why-we-switched-from-python-to-go-19581e27de7c
249 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 10:45:03.08 ID:rPyPw2Q2.net] よくあんな無様な知ったかぶりしといて人のこと無様とか言えるな
250 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 11:06:53.69 ID:pDpr3v8b.net] これだからペチプァは
251 名前:あ mailto:sage [2017/10/28(土) 11:20:03.53 ID:McmdGm+1.net] >>243 自分が無様だと思ってる奴に無様だと言われるのはさぞ辛かろうが、 俺が無様なのとHaskell書いたやつが無様なのは別の事象で、 同時に無様でありえるんだから、その指摘はナンセンスだろ。 その理解力でHaskell最高!と思ってるのも面白いな。Maybeの真髄だろ。事象を整理するのは。
252 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 11:28:14.87 ID:rPyPw2Q2.net] なんだこいつなんで俺がHaskell 信者みたいな前提で煽って来てんだ
253 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 11:36:54.21 ID:c+qfWZBO.net] もう最新規格のFortranで良いよ
254 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 12:01:24.16 ID:1i6fvk7+.net] Fortranに第一級関数がついてimplicit noneがデフォルトになってinterface文をもうちょっと短く書けるようになって引数の型指定をCみたいに書けるようになって 配列の大きさ指定の関数に組み込みでない関数を使えるようになってgfortranのbind(C)周りのバグを解消してくれたらFortranでいいよ
255 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 12:13:39.86 ID:pDpr3v8b.net] 西京言語PHPを使えばいいじゃん(いいじゃん)
256 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 12:20:24.44 ID:aTcnbQEE.net] PHPが、前世紀末に流行したPerlでCGIという極悪システムを撲滅した功績は大きい
257 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 12:31:15.99 ID:MXV4el39.net] mod_perlとだったら大して変わらん気がする
258 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 12:33:46.88 ID:pDpr3v8b.net] >PHPが、前世紀末に流行したPerlでCGIという極悪システムを撲滅した功績は大きい キリッ www
259 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 17:09:33.99 ID:GkEAGE6K.net] 皆がCGIという共通ルールを守る中 汎用性のない独自実装をしたphp
260 名前:デフォルトの名無しさん [2017/10/28(土) 17:24:26.31 ID:6pjbn+cV.net] まあ今更Perlとかって選択肢はないからね
261 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 17:31:59.24 ID:Hah9JG+z.net] FacebookはなんでPHP推しなの?
262 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 18:04:40.73 ID:D4ynCBSM.net] PHPをC++に変換するんだっけ むしろJavaをC++に変換するのを誰もやらない理由を知りたい
263 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 18:12:54.21 ID:z3Njt94H.net] >>256 Javaは事実上サーバーでしか使われていないので、 全くメリットがないから
264 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 18:27:47.92 ID:GkEAGE6K.net] phpのがサーバでしか使われてない印象 どっかで使ってる?
265 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 18:32:36.63 ID:GkEAGE6K.net] >>254 別にCGIはperlでなくてもいいだろ プロセスを起動するインタフェースのお約束だよな perlは文字列処理が得意だっただけで
266 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 19:01:45.06 ID:0vLNpJP2.net] PHPの特徴ってインスタンスの生存時間が極端に短い。ってこと。 request受けてからresponse返すまで。 だからGCが貧弱でも何の問題もないし。糞汚いコードでもメモリリークが問題にならない。
267 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 19:13:14.28 ID:PFwR8W+K.net] >>256 GCC news.mynavi.jp/news/2016/09/08/290/ あと、AndroidはJavaじゃないからノーカンなのかもしれないが、 以前はネイティブに全部変換していたのをやめた
268 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 19:51:46.92 ID:SOIebb5r.net] >>255 むしろPHPを積極的に潰そうとしてる印象なんだが クソ挙動しかしないウンコ製造機PHPを潰すためにHHVMは作られたんだぞ
269 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 20:44:53.33 ID:VLfN62TL.net] >>255 最初は何も考えずにお手軽に作れたからPHPだった 大きくなりすぎてから管理コストを考えてノロノロと移行を企てている そんなとこだろ
270 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 21:07:01.93 ID:ruX3/fgh.net] それ以上ペチパーの心のより所を叩くのはやめてやれw 彼ら、憤死してしまうでwww
271 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 21:37:38.45 ID:GkEAGE6K.net] >>260 言ってること滅茶苦茶だな
272 名前:デフォルトの名無しさん mailto:sage [2017/10/28(土) 21:57:38.28 ID:D4ynCBSM.net] 伝えようとすれば滅茶苦茶 隠そうとすればバレバレ だから型情報とか一生懸命伝えようとする言語が報われない
273 名前:デフォルトの名無しさん mailto:sage [2017/10/29(日) 03:03:23.28 ID:7slaGsXS.net] >>242 go 好きな人ってまともすぎてつまらんな。
274 名前:デフォルトの名無しさん mailto:sage [2017/10/29(日) 05:05:09.88 ID:ZPHcoPj2.net] >>261 ARTは全部変換なんてしてない 元からJITとAOTの複合
275 名前:デフォルトの名無しさん mailto:sage [2017/10/29(日) 05:05:25.10 ID:ZPHcoPj2.net] >>267 きんも
276 名前:デフォルトの名無しさん [2017/10/29(日) 17:16:13.61 ID:sv965ldD.net] >>268 gihyo.jp/lifestyle/clip/01/awt/201603/24 >しかし,AOT方式をいざ導入してみると,サイズの大きなアプリのインストールや, >一度に複数のアプリをアップデートするような場合にコンパイルに時間がかかり, >場合によっては20分程度かかるケースが存在していたようです。 >このインストール時間を問題と捉えて,Android NのARTでは,JIT方式をもう一度使うことになりました。
277 名前:デフォルトの名無しさん [2017/10/30(月) 08:01:20.39 ID:BetGXhC9.net] >>242 GOいいな
278 名前:デフォルトの名無しさん mailto:sage [2017/10/30(月) 10:22:57.04 ID:sonZMQS5.net] >>271 Goは色々足りないところも多いが、生産性にステガン振りしてるって点で評価できる Rubyみたいに前借りではない
279 名前:デフォルトの名無しさん mailto:sage [2017/10/30(月) 11:06:54.77 ID:ywxMmK0+.net] Rubyの教訓は、「Perlよりマシ」に全振りしたけどPythonと比べると大したことなかった
280 名前:デフォルトの名無しさん mailto:sage [2017/10/30(月) 17:27:48.73 ID:ExtYgMew.net] Goのどこに生産性があるんだよ
281 名前:あ mailto:sage [2017/10/30(月) 18:12:26.17 ID:53AKimFl.net] >>274 そりゃ、ひたすら書ける部分だろ。 迷わんぞ。書く量が多いだけで。 生産性と言うと表現力ばっかり取り上げられるが、単位時間あたりのアウトプットも見ないといかん。 その点、信じられないレベルで楽。
282 名前:デフォルトの名無しさん mailto:sage [2017/10/30(月) 19:01:45.29 ID:ExtYgMew.net] >>275 行数多くなるから生産性が高いように見えるだけだろ
283 名前:デフォルトの名無しさん mailto:sage [2017/10/30(月) 19:15:05.61 ID:LhEsAIcv.net] そいつは関数型しったか野郎なので話すだけ無駄 無知が無知なりの常識で頑張って答えてくれるかも知れないけど参考にはならないだろう
284 名前:デフォルトの名無しさん mailto:sage [2017/10/30(月) 20:23:14.16 ID:1YWjfXwW.net] 迷わずひたすらに書かれたF77のコード読みづらすぎ
285 名前:デフォルトの名無しさん mailto:sage [2017/10/30(月) 20:45:20.95 ID:uihdCXQ7.net] Goは構造体へのタグ埋め込みや、codegenまわりのツールが充実してるお陰で ボイラープレートコードを書かんでいいのがでかい それだけならLLでもできるが、テスト作ってから設置して実行するまでの作法が簡潔に固まってるのが更に強い 少なくとも時間当たりのテスト含めた成果物は他の言語と比べ物にならん
286 名前:デフォルトの名無しさん mailto:sage [2017/10/30(月) 21:31:16.17 ID:d6rNWUAL.net] 逆に、汎用ライブラリ書こうとするととたんにinterface地獄になってボイラープレート増えるんだがな だから、目の前の仕事の案件片付けるのに特化した言語だと思ってる
287 名前:デフォルトの名無しさん [2017/10/30(月) 22:18:12.05 ID:1mVUn5ql.net] >>221 ちょっといまさらだがRust版平衡木(AA木)をリファクタリングしたぞ。 まあ、だれも書いてくれそうになかったし、数日
288 名前:たったらまたやる気も出たから自分でやり直したわけだが。 基本的にはAだが、すべて当てはまるな。 RustはNull安全なのでOption型のチェックが必須、コンパイラに所有権を伝えるためas_ref等が必要、 デフォルトはイミュターブルのためミュータブルを扱うためにmutキーワードが必要などが主な理由。 そこら辺の安全性と引き換えに多少は目をつぶってくれという感じはある。 Bに関しては副作用もあるが、それよりもどちらかというと木構造の回転操作みたいな 変数の所有者が次々に代わるようなコードはRustでは所有権システムがあるため書きづらい。 とはいえ、前のコードに比べれば大分マシにはなったかと。 まあコードが綺麗か汚いかなんて個人の主観によるところが大きいから、まだ文句を言うやつもいると思うけど。。。 特に>>217 なんかには「どんなアルゴリズムだろうが言語によって最適な書き方は違う」 ということをきちんと理解してもらいたい。 あと、コードのリンクを貼るという手段があることを知った。 比較できるように全て載せておく。 C版 https://wandbox.org/permlink/fc1xI7dDCdOMgysC Rust版 before https://wandbox.org/permlink/cbzzpLw97K2Tydk1 Rust版 after https://wandbox.org/permlink/ppQOQREnDlpccpJV [] [ここ壊れてます]
289 名前:デフォルトの名無しさん mailto:sage [2017/10/30(月) 22:28:38.00 ID:LhEsAIcv.net] ほう
290 名前:あ mailto:sage [2017/10/31(火) 00:08:53.17 ID:VssU1hfB.net] >>276 そーでもないぞ。 >>277 関数型以外シッタカの意識だけ高い系に言われてもな。 人をディスるんじゃなくて、自分を高めれば? 無理なんだろうけど(笑)
291 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 00:13:46.41 ID:AszsXbkO.net] 関数型以外シッタカ←根拠なしのただのディス からの 人をディスるんじゃなくて自分を高めれば? 自戒かな?
292 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 00:16:52.10 ID:xO8W0Vv5.net] そいつの相手しても得るもん無いってことくらいはそろそろ分かって欲しい
293 名前:あ mailto:sage [2017/10/31(火) 00:17:14.17 ID:VssU1hfB.net] 言い返されてそれはみっともないリアクションだな。 よほど、関数型言語が好きなんだね(笑) 専スレ立ててやれよ。次世代言語でもないわ。
294 名前:あ mailto:sage [2017/10/31(火) 00:19:38.37 ID:VssU1hfB.net] 好きなら好きで良いのに、なぜ固執するかわからん。 ナイフで整備できるようにネジを全部マイナスネジにしたロシア(?)の戦車みたいな間抜けな話と同じように、目的に対して使う道具なんか考えりゃ良いのに。
295 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 00:26:46.01 ID:AszsXbkO.net] よほど関数型言語が好きなんだね←誰もそんなことは言っていない なぜ固執するかわからん←固執していない 誰と闘っているんだコイツは。少なくとも俺じゃねえな
296 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 00:39:43.26 ID:H/nTnETZ.net] おまえら旧世代猿人類どもはウンコブラシのプェチピィのゲリクソピィでもプリプリしてろ
297 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 01:21:58.60 ID:nWIRKYZE.net] >>281 コンパイル通らんのを試行錯誤してる間に答えが出てしまった悲しみ まとめてもらって感謝。勉強してみるわ
298 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 07:32:43.21 ID:nUaOreAB.net] >>281 比較を載せてくれてありがたい。 やっぱり C -> rust before -> rust after となっていくごとに読みづらくなってるんだけれど。。
299 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 07:35:28.96 ID:u9ib2mEN.net] >>270 それの何が反論になってると? 元から速度云々関係なしにネイティブ変換できない部分があったんだよ
300 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 09:37:19.94 ID:EcpjGxny.net] >>291 root.as_ref().unwrap().level を root->level と書いて良いというシンタックスシュガーを導入すれば良い気がする
301 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 09:56:03.51 ID:nWIRKYZE.net] unwrapはNoneだった場合にランタイムクラッシュする関数だから本来使ったらアカン関数 この辺はnil安全うたってる言語はおおむねそう
302 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 10:23:24.56 ID:2R0mp116.net] Goは最初期Javaかっていう後退レベルだし、Rustは木構造すら数日かかりで必要な難解言語だしでどっちもクソ言語 はいこれで仲直り
303 名前:デフォルトの名無しさん [2017/10/31(火) 10:43:17.86 ID:gJSMspm+.net] パラダイムシフトを強いる言語は地雷が多いな。 俺はリアクティブプログラミングで懲りた。
304 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 10:44:19.94 ID:Bl0tBU4z.net] 数日がかりというが兎と亀みたいにRust以外の言語は寝てたから Rustが一番早い
305 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 11:07:20.83 ID:AszsXbkO.net] その理屈だとCが一番じゃん?
306 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 11:21:14.97 ID:f3HKFkZK.net] 結局当面はC#系(TypeScript/Kotlin)の天下ということでよろしいか
307 名前:デフォルトの名無しさん [2017/10/31(火) 11:40:23.38 ID:YHJiaIXY.net] >>294 そういうこと。だからRust版 afterではunwrapはほとんど使用していない。 通常、Optionの中身を取り出すときはunwrap_or, unwrap_or_else, unwrap_or_default のどれかを使用してNoneだったときはどうするのか指定する。 unwrapを使用するときはアルゴリズム的に中身が存在しないこと自体がありえなくて、 Noneならバグと判断してむしろそのタイミングで落ちてバグを知らせてほしい時のみ使用する。 この仕組みによってNullが存在しない(いわゆるNull安全な)言語を実現している。 多少書くのは面倒だが「10億ドルの損失」に比べればこのくらいカワイイもんだろってこと。 ちなみにC#なんかでも導入が検討されているらしいが、既存コードとの互換性が保てないので難儀しているようだ。 Type scriptみたいにコンパイルオプション付ければいいのにとか俺は思うんだが、なんか理由があるのかな?
308 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 11:47:33.10 ID:f3HKFkZK.net] コンパイルオプションだと既存コードを一緒にビルドできなくなるだろ 互換性を絶対神とするC#に導入するなら、#pragmaでソースファイルごとにオプトインするか、 asyncみたいに修飾子で特定のスコープだけ解釈を変えるか、 デフォルトをnull非許容にするのは諦めてstring!にするかのいずれかだよ
309 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 12:45:40.51 ID:JU1cd7E4.net] Goが優れてる点はcode生成に最適化されてる点だと思う。 Goはメソッド定義が同じディレクトリ内なら何処でもできる。 つまりコード生成によってメソッドを追加できる。 ファイルでコード生成の箇所と自作の箇所をわけれる。
310 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 12:48:35.27 ID:JU1cd7E4.net] >>296 Rxはもっとシンプルな定義にできないのかなーって思う。 「全てはストリーム」という考え方はシンプルなのにいざ使おうとすると ライブラリは複雑すぎる。 もしかしたら言語まるごとRxの考え方で作ったら簡単になるんかな。 Rubyの作者がStreamって言語をつくってるけど、、、、完成しそうもないし
311 名前:デフォルトの名無しさん mailto:sage [2017/10/31(火) 15:40:47.27 ID:ivXWtcCM.net] rust で if root.is_none() { return 0; } root.as_ref().unwrap().level を match root { Some(node) => node.level, None => 0 } と書かないのは何故?所有権とかの問題?
312 名前:デフォルトの名無しさん [2017/10/31(火) 16:19:26.73 ID:YHJiaIXY.net] >>304 え?どっちでもいいよ? リファクタリング後のコードでは使用してないはずだけど。。。 それでもいいし root.as_ref() .map(|node| node.level) .unwrap_or_default() でもいいし if let Some(ref node) = *root { node.level } else { 0 } でもいい。どれを使うかは好みの問題。 ただし、>>304 のmatch文は正確にはこうなると思う。 match *root { Some(ref node) => node.level, None => 0, } rootはたぶん型が &T (借用) だから*で参照外しないといけないし、 ref は所有権を「移動」じゃなくて「借用」するために必要。
313 名前:デフォルトの名無しさん [2017/10/31(火) 17:24:30.09 ID:YHJiaIXY.net] >>304 >> リファクタリング後のコードでは使用してないはずだけど。。。 誤解を招くかもだな。すまぬ。 if root.is_none() { return 0; } root.as_ref().unwrap().level のほうはリファクタリング後のコードでは使用してないはずだけど。。。だな
314 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 08:38:18.68 ID:R9aAc8x6.net] なるほど。ありがとう。
315 名前:デフォルトの名無しさん mailto:sage [2017/11/02(木) 00:38:25.36 ID:0kOiRsC5.net] いいってことよ
316 名前:デフォルトの名無しさん mailto:sage [2017/11/02(木) 08:54:18.64 ID:N8nuZaLN.net] if not is_none 判定時に実行される、 コンパイラさんにも非noneと分かるコードパスでは unwrap省略できれば読み書きする際にもPanic起こさないと分かりやすいしシンプルになるな。 実際にも最適化でチェックのコードも吐かれてないだろうし。
317 名前:デフォルトの名無しさん [2017/11/02(木) 12:08:13.82 ID:jpQjT5m9.net] >>308 んん?ちょっと待て。良くないぞ 誰だぁ?俺の手柄を取ったヤツは?
318 名前:デフォルトの名無しさん [2017/11/02(木) 12:58:12.12 ID:jpQjT5m9.net] >>309 そのやり方は所有権システムの関係で難しいかもしれないな。 非noneが分かっていたとしても中身を取り出す時に所有権を移動する借用するのか決める必要がある。 そして、移動するにせよ借用するにせよ、取り出した時点から所有権システムの制約により その親にあたるOption型の変数がスコープを抜けるまでは参照不可になる。 移動する場合は、スコープが抜ければOption変数ごと一緒に消費されるはずなので問題ないと思うが、 借用の場合は、スコープを抜けるまでOption変数が参照不可のままじゃ困る場合も多いだろう。 結局は、if let や match 等のスコープを使って借用が終わるタイミングを コンパイラに知らせるための表現が必要になるんじゃないかと思う。 自分も所有権システムを完全に把握してるわけではないので、間違ってたら指摘してくれ。
319 名前:デフォルトの名無しさん mailto:sage [2017/11/02(木) 16:01:49.17 ID:24MXnSEE.net] panic の代わりに未定義動作を行うことで、最適化時にNone時の経路が取り除かれる unchecked_unwrap() とかある。 外部クレートだけど。
320 名前:デフォルトの名無しさん mailto:sage [2017/11/02(木) 18:20:00.53 ID:hBgfRlI6.net] FFIと静的型は相性悪いなあ
321 名前:デフォルトの名無しさん mailto:sage [2017/11/02(木) 21:04:39.70 ID:aCC/XP/X.net] 嫌われているプログラミング言語ランキング - Stack Overflow news.mynavi.jp/news/2017/11/02/073/
322 名前:デフォルトの名無しさん mailto:sage [2017/11/02(木) 21:06:15.09 ID:aCC/XP/X.net] 最も嫌われているプログラミング言語は?--Stack Overflowが調査結果を発表 https://japan.zdnet.com/article/35109803/
323 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 01:51:06.45 ID:8/ecCbDm.net] だから何度も言ってるだろ 型なし能なし未来なしの糞言語が 使ってる連中は今すぐ首吊ってなるべく苦しんで無様に血糞尿にまみれて死ねよ
324 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 01:55:11.36 ID:KPeHygtG.net] >>316 死ぬだけじゃダメだな 来世でも来来世でも苦しみ抜いてもらわないと
325 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 09:09:40.17 ID:8/ecCbDm.net] >>317 せやな 一族郎党末代まで呪われて地獄の業火で焼かれるべきだ
326 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 09:10:55.64 ID:FED00RZ3.net] その政策の予算をいくらまでなら払えるか考えよう 予算なしは能なし未来なし
327 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 10:56:17.26 ID:Z9aKc5RB.net] すまんが型なし言語って何ンゴ?
328 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 11:18:42.35 ID:4GoOMjot.net] 機械語のことかな?
329 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 11:44:21.79 ID:TD8MDvzA.net] 変数に型の無い言語か
330 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 14:34:55.34 ID:5BCFVkq4.net] Go言語で var 変数名 = 値
331 名前:フ表記の時は型を省略できるそうですが 値が数値で、値から型が確定できない場合はどうなるのでしょうか? 値から型を確定できるのは文字列型と真偽値くらいだと思いますが [] [ここ壊れてます]
332 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 14:43:12.88 ID:tw8puOLs.net] >>323 値に応じたデフォルトの型か決まっている
333 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 14:58:26.87 ID:5BCFVkq4.net] >>324 なるほど たしかにだいたい推測できますね ありがとうございました
334 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 15:00:00.55 ID:fYVptX6H.net] >>319 予算がないからクソゴミクズ汚物言語を使い続ける? 地獄に落ちろビチグソ野郎
335 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 15:50:26.42 ID:Tuvr4QS2.net] VBA は explicit 付ければ堅く書くこともできるんやで〜。 そんな書き方するやつあんまいないけど。。
336 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 16:36:07.91 ID:FED00RZ3.net] >>326 誘導尋問するなよ というかどうせ誘導するなら天国に誘導しろよ
337 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 17:02:16.49 ID:Ro85MhDs.net] >>320 PHPは型がないから とかおっしゃってるいつもの人だろ
338 名前:デフォルトの名無しさん mailto:sage [2017/11/03(金) 23:58:20.96 ID:HHSOzVXl.net] >>328 なーにが誘導尋問じゃ どんな理由があろうと下痢未満言語未満のぷぃーえっちぷぃーを使うことを肯定する時点でお前は地獄行きじゃ! 地獄でビチグソにまみれて二度と転生してくるな!!
339 名前:デフォルトの名無しさん mailto:sage [2017/11/04(土) 00:00:53.97 ID:I+CIRt80.net] 次スレはワッチョイつけないとな。 330みたいな異常者をNGするために。
340 名前:デフォルトの名無しさん mailto:sage [2017/11/04(土) 00:03:54.76 ID:gh0lmyH1.net] HHVMを使うという手もあるんじゃ
341 名前:あ mailto:sage [2017/11/04(土) 00:24:15.28 ID:CAYPLKQ7.net] と言うか、では実務ではウェブの案件には何をお使いで?と聞きたいな。 ホントに何なんだろ。
342 名前:デフォルトの名無しさん mailto:sage [2017/11/04(土) 00:42:18.37 ID:OREBcHC8.net] >>333 330じゃねーけど、フツーにRailsって答えそうではある フロントいらないAPIサーバならFlaskかGoかってところか
343 名前:デフォルトの名無しさん mailto:sage [2017/11/04(土) 00:42:59.68 ID:xCfQAlvJ.net] node + ts 未だにphpでlampとかもう(笑)も付かないレベル
344 名前:デフォルトの名無しさん mailto:sage [2017/11/04(土) 00:46:07.02 ID:sWNabS3I.net] 叩きは理想の言語とやらでRails越を越える フレームワークを作ってからしてくれ。
345 名前:デフォルトの名無しさん mailto:sage [2017/11/04(土) 02:10:05.95 ID:gh0lmyH1.net] 俺の中ではgoでgoaかな。swagger.jsonを介して通信周りもコード生成できる。 API設計するとclientライブラリまで一括して作れるからSPA開発が捗る。 TypeScriptのクライアントライブラリ生成してapiの返すjsonのinterfaceまで作ってくれるから至れり尽くせり。
346 名前:あ mailto:sage [2017/11/04(土) 02:22:57.88 ID:CAYPLKQ7.net] Railsか。なるほどありがち。 APIサーバはGoとかnode確かに便利。 tsは置いといて。 あれやるくらいならc#とnancyで書いたほうが余程安定する。寿命の面でも。 そして.net coreすごいわ。 TSは最近イケイケドンドン過ぎる気がする。 イシューは閉じれてないけど、次以降のリリースに頑張るわ、ところでこれ!新機能盛りました! みたいなノリ。
347 名前:デフォルトの名無しさん mailto:sage [2017/11/04(土) 08:30:20.53 ID:xYAYvDdv.net] nodeはnodeで闇深いがな……あいつ結構非自明なメモリリーク起こしやがる ts on nodeってその辺解決できてるのか?
348 名前:デフォルトの名無しさん mailto:sage [2017/11/04(土) 08:35:04.21 ID:xCfQAlvJ.net] で。おまえは実務ではウェブの案件には何をお使いで? PHPとか言って笑いを取る必要はないぞ
349 名前:デフォルトの名無しさん mailto:sage [2017/11/04(土) 09:38:29.95 ID:ZfOcIIq3.net] Django 何だかんだ言われてるけど強いよこいつは
350 名前:あ mailto:sage [2017/11/04(土) 13:55:52.44 ID:CAYPLKQ7.net] >>340 何でも使う。書捨てでビューがあればphp ビューがあって書捨てじゃなけりゃasp.net Tomcatとservletは嫌い。 安定したAPIサーバはGoかc#とNancy。 nodeは個人用。 イントラ多いから、デプロイ先がWindowsサーバで、セットアップが必要な処理系は入れづらいのよね。 phpは過去の案件ですでに入ってたり、だいたいIISは動いてる。
351 名前:デフォルトの名無しさん mailto:sage [2017/11/04(土) 15:34:33.21 ID:F1n0Y3Pu.net] ウチはseaside.st
352 名前:デフォルトの名無しさん mailto:sage [2017/11/04(土) 18:58:28.17 ID:xCfQAlvJ.net] >>342 浅く広くの器用貧乏なんだね どうりで、知識はあるけど深い話になるとボロがでるわけで
353 名前:あ mailto:sage [2017/11/04(土) 22:22:28.71 ID:F/oA6Mmk.net] >>344 器用貧乏だろうなぁ。メインの言語以外は特に。 そもそもしばらくシステム屋じゃないし。 道具としては色々使うけど。用を果たせば良い部分と、趣味として使う分は別けてる。 流石に20代でもあるまいし、わきまえてるよ。仕事は。 ボロが出るというより、単純に知らんので参考になってる事も多いよ。
354 名前:デフォルトの名無しさん mailto:sage [2017/11/04(土) 22:23:05.19 ID:M2bfsYrO.net] しったかするから、自分の知らない領域ついても知識があるように見えるだけだぞ
355 名前:あ mailto:sage [2017/11/04(土) 22:28:21.22 ID:F/oA6Mmk.net] >>346 勝手にそう見てるだけで、俺自身が知ってるよ言ったことはあんま無いんじゃないかな。 俺はこう捉えてる、は話すけど。
356 名前:デフォルトの名無しさん mailto:sage [2017/11/04(土) 23:34:55.56 ID:M2bfsYrO.net] >>347 854 :デフォルトの名無しさん:2017/05/30(火) 13:17:09.64 ID:ynDKwlR5 851 >当たり前だがHaskellみたいに実行時に多相性を解決してる おいおい、Haskellの実装知ってんのか? Haskellで実行時に型情報が必要な多相性はほんの一部だ。 ほとんどの場合、コンパイル時に解決される。 863 :あ:2017/05/30(火) 16:00:40.31 ID:CncaY8jR 854 知ってるよ。実行時に多相性を「しない」のならその主張もわかるが、「ほとんどの場合しない」は「してる」だよ。 「施錠確認した?」「ほとんどしました」って、要は全く施錠の確認できてないのと変わらんよね。
357 名前:あ mailto:sage [2017/11/05(日) 00:07:40.19 ID:NGm20Afw.net] >>348 おお、それは知ってたから。 あんまりと書いてるからわかるだろうけど。
358 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 01:40:33.90 ID:LYbC1fh+.net] >>341 scaffoldがないのが非常に残念 俺は言語としてはPythonが好きなのに、webとなると無意識にRailsを選ぶようになってしまった
359 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 11:59:20.40 ID:3qpI8vVt.net] 器用貧乏の対義語に名前をつけたい サンクコスト貧乏かな
360 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 12:02:14.14 ID:KWRWj+y1.net] Railsって未だに生産性高いんか。 PHPがパクっていろんなフレームワーク作ってるけど
361 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 12:11:59.33 ID:/wBATO2P.net] ペチパーって何であんなにフレームワーク作りたがるんだろうな 自己主張が強いのか、ママの愛が足りなくて承認欲求に飢えてるのか
362 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 12:16:38.92 ID:KWRWj+y1.net] >>353 たかがテンプレートエンジンがでしゃばりやがって感ある。 でもインスタンスの生存時間が短いから開発者に優しい言語ではある。 まぁwebScoketとか繋ぎっぱなしにするような仕組みには弱くなるけど
363 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 12:26:54.29 ID:LYbC1fh+.net] >>352 なんだかんだであれは死なないよ 資産が豊富で、webのラピッドプロトタイピングにおいては群を抜いておる Railsライクな他言語のフレームワークがRailsを羨ましがる場面はあっても、恐らくその逆はない
364 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 12:
] [ここ壊れてます]
365 名前:51:00.18 ID:CS19J9AT.net mailto: 慣れの世界って感じもするけどな 俺はテンプレートエンジンより、Reactで書くほうが最近は楽なのでtypescriptで書いちゃうことが多いな サーバサイドも必要ならrustかJavaでちょろって感じ [] [ここ壊れてます]
366 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 13:29:53.61 ID:KWRWj+y1.net] 時代はSPAの方向を向いている中あえて今Rails使うメリットってあるんかな。 最初からWebAPI提供できたほうがいいし。 React覚えるとモバイルももれなく作れるのがいい
367 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 14:06:42.08 ID:k+vH6ph9.net] Node.jsとTypeScript使っとけば幸せになれるということ?
368 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 14:17:26.71 ID:o4zLpSg/.net] >>358 webassemblyの時代が来るまではね
369 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 14:50:39.74 ID:PoYQIzOm.net] wasm時代の覇権がどうなるか想像出来ん とりあえずC++は安定だろうけど
370 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 15:02:45.09 ID:/wBATO2P.net] PHP使ってれば食いっぱぐれることはないやろ ガイジどもが作った負の遺産を保守し続ける楽なお仕事が半永久的にあるで
371 名前:あ mailto:sage [2017/11/05(日) 15:14:12.83 ID:kqNrnSiP.net] >>351 器用貧乏の反対は、ホントにその役職に居なければ「大先生」とか「教授」だろ。
372 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 15:32:04.98 ID:3qpI8vVt.net] フレームワークやIDEを ドラえもんの道具にたとえると四次元ポケット
373 名前:デフォルトの名無しさん [2017/11/05(日) 20:51:56.70 ID:vWNY+clC.net] >>361 真っ先に自動化されるか、見捨てられるシステムだな。
374 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 20:55:20.91 ID:Fa7z1jl7.net] COBOLやJavaならわかるけどPHPではなあ ある日突然消えてなくなったところで大した問題のないゴミばかりだろ
375 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 21:28:49.35 ID:wTe1xxd0.net] おい、アスペチプァさんを馬鹿にするなよ 彼らが本気出したらお前ら血便漏らして死ぬようなコード書くぞ
376 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 21:40:31.01 ID:RFcD7Uma.net] 日本の技術力ガーとか言ってたくせに 結局全部嘘ばかり バカチョン以下やでホンマ そりゃペチパーが闊歩しますわ Rustアンチくんはペチパー はっきりわかんだね これだからペチプァは それ以上ペチパーの心のより所を叩くのはやめてやれw 彼ら、憤死してしまうでwww ペチパーって何であんなにフレームワーク作りたがるんだろうな 自己主張が強いのか、ママの愛が足りなくて承認欲求に飢えてるのか おい、アスペチプァさんを馬鹿にするなよ マジキチ
377 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 23:19:35.12 ID:wTe1xxd0.net] >>367 巣へお帰り 自称次世代言語議論スレ[PHP PHP PHP] [無断転載禁止]©2ch.net mevius.2ch.net/test/read.cgi/tech/1506823587/
378 名前:デフォルトの名無しさん mailto:sage [2017/11/05(日) 23:22:51.31 ID:2EuxY2gH.net] ペチアンチの面白語録非難してる奴って胸に突き刺さって抜けないペチパーか?
379 名前:あ mailto:sage [2017/11/06(月) 00:12:29.28 ID:/hMSyilp.net] 好きの反対は無関心になるはずだしな。 嫌いな事と言うのは、実は興味があったり、かつて好きだった事があったり、強制され抵抗できなかった惨めさがあったりするもんだ。 あまり人の憎しみを面白半分で扱ってはいかんな。
380 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 01:15:12.61 ID:TNQjb5Zj.net] >>357 SPAは一番最初のローディングがアホみたいに遅いじゃん これ解決するためだけにSSRもやるの辛い じゃあ最初からSPAいらないやってなる
381 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 01:24:21.52 ID:HP5doPtx.net] 【泥沼】 京都市のシステム開発失敗、IT企業に7億5千万円の損害賠償請求 企業側は支払い拒否 hayabusa9.5ch.net/test/read.cgi/news/1509849067/
382 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 07:18:27.19 ID:9YhppvEm.net] >>371 dynamic importが実装されている現状から言って最初のローディングが遅いって問題は解決する。というかminifyすれば十分小さい。 せいぜい500kbとかでしょ開発中は10MBとかだったりしてビビるけど。
383 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 07:21:45.70 ID:9YhppvEm.net] >>371 後、最初のローディングが遅い問題がSSRで解決するって初耳なんだけど。 どっちかというとSEO的な問題の解決かと
384 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 09:16:46.62 ID:MQujfIpu.net] >>374 意味不明 順序的な動作いらないし負荷や遅延も減るんだから速いだろ
385 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 09:17:47.31 ID:TNQjb5Zj.net] >>373 最初のローディングを早くするのとSEOできるっていう二つがSSRのメリットだと言われてないか? それからSPAの初回表示が5000msとかかかるのは、DOMを構築する処理のせいだろ? 500kbというのはjsのサイズか?ファイルがいくら小さくてもな… dynamic importは調べてもよくわからなかったが、解決するというなら良いことだ
386 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 09:18:45.46 ID:MQujfIpu.net] >>373 これも意味不明 スクリプトのサイズは飽くまでグロスの転送量の問題であって 動的モジュール読み込みだろうと結局初動が重けりゃ処理遅延するし
387 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 09:20:16.78 ID:MQujfIpu.net] >>376 だよなあ… こいつ絶対エアプだわ
388 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 10:13:51.90 ID:YDBkedHo.net] >>367 Rustアンチスレ立てられる原因になったと自認してる俺だが、 PHPはゴミだと思ってるぞ安心しろ
389 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 11:07:45.63 ID:T8PAAaKN.net] cobol, fortran, vb あたりも相当恨みを買ってる言語だが、ここでの php への 恨みはそんなもんじゃないな。。 使ったことないからわからんが、そこまで嫌われるのは興味あるわ。
390 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 16:11:09.26 ID:9YhppvEm.net] >>377 俺の勘違いなのか? 動的ローディング使えばルーティングで該当ページが開く時にネットワークアクセスするから初回転送量は抑えられるだろ。 DOMの構築が遅いっていうのも意味がわかんないな。 現在表示している画面以外のレンダリングも裏でやってるとでも思ってるのか?
391 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 16:32:50.51 ID:SH+6BLR2.net] PHPは使う必要ないの?
392 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 16:40:37.06 ID:zYnuoH4p.net] 無い
393 名前:あ mailto:sage [2017/11/06(月) 17:06:37.01 ID:slDUJGNU.net] >>381 仮想DOMを作ってDOMツリーに展開していく部分でしょ、初回を早くするためのSSRって。 割と時間掛かる上に描画がロックしがちだから、最初からHTMLとしてDOMツリー渡して、仮想DOMとあとからバインドするんじゃねえの? 該当ページが開く前にロード、じゃなくて、初回の話でしょ。
394 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 17:43:13.17 ID:YFPXBPxU.net] むしろ「使い慣れてるから」とかいうクソペチパーの戯れ事以外でぷぃーえっちぷぃーなんて使う理由あるならそっちの方が聞きたい
395 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 18:15:38.15 ID:SH+6BLR2.net] PHPが滅んだとしてその穴を埋める言語って何?Js?
396 名前:あ mailto:sage [2017/11/06(月) 18:47:27.87 ID:slDUJGNU.net] phpの良い所なぁ。 楽な部分だと、nginx+php-fpmでも、apacheでも、IISでも、ファイル置くだけで動く所が一番初心者には楽なんじゃないの? あれやってるとContent-Typeとかヘッダを覚えない!なんて言うPerl使いももういねぇんだし。 aspやasp.netもまぁ同じ部類か。 unicornもsupervisordもforeverもpm2も要らない、サーバのポートを使う事もない。 リバースプロキシも要らない。リバースプロキシがヘッダを触ろうが
397 名前:割と平気。 こんな言語あんま無いぞ。良いか悪いかは別としても。 [] [ここ壊れてます]
398 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 20:08:38.89 ID:XMp+x8Af.net] >>387 そういうレベルの奴が遊ぶからウンコ量産機になるっていう話なんだよなあ
399 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 20:40:54.59 ID:9YhppvEm.net] >>384 はー。なるほど。そこがボトルネックになるっていうのか。 じゃあSPA使わないという選択肢が一番だな。おつかれ。
400 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 20:42:12.76 ID:HSJSgREc.net] お手軽魔法のLAMP
401 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 21:16:04.27 ID:Ei8rpFR6.net] 仮想DOMからDOMツリーに展開するのとHTMLをレンダリングしてDOMツリーを構築するのと どっちが速いかって自明じゃないよね? 「HTMLとしてDOMツリー渡して」とか書いてるところを見ると、そこコスト0と思ってるとか?
402 名前:あ mailto:sage [2017/11/06(月) 21:57:40.34 ID:/hMSyilp.net] >>388 単にうんこも作れると言うことだ。 >>389 古き良きFormとポストバックでも何でもすれば良いよ。 >>391 微妙な所では?プロファイルはしてないけど。 DOMツリーも、仮想DOMからどうエレメント作ってるかにもよると思うし、リフロー、リペイントが何回起きるかにもよると思うが、 HTMLとしてDOMツリーを渡して一番得なのは、DOMツリーを解釈したレンダツリーをレイアウトする所まで決定的関数になるから取り敢えず形としては一発で書けるという認識だった。 だから、AMPではレイアウト計算が走らんように、ロード後にサイズが変わる画像は使えない、みたいな縛りを入れてると思ってたよ。 違ったら教えて。
403 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 22:45:29.40 ID:hux2/GU9.net] SSRの実装次第じゃね。情報が古いことを許容するならキャッシュしたレンダリング結果を返すという手もある。
404 名前:デフォルトの名無しさん mailto:sage [2017/11/06(月) 23:47:45.62 ID:MQujfIpu.net] >>387 ぶっちゃけPHP貶すやつはプログラマの経験浅いだけだろと思う 言語がどんだけクソだろうと、結局PHPほど、短時間でパッケージ売れて取り回しが楽な環境他にないからな
405 名前:デフォルトの名無しさん [2017/11/06(月) 23:55:59.09 ID:UKBp9co4.net] >>370 > 好きの反対は無関心になるはずだしな。 じゃ、対偶と裏は何? 煽りじゃなくて純粋に疑問
406 名前:あ mailto:sage [2017/11/06(月) 23:58:52.19 ID:/hMSyilp.net] >>393 まぁ、つまるところaspのUpdatePanelだな。 何回歴史を回ってるんだかわからん。 >>394 取り敢えずPHPをdisればウケるという安易な芸風なのか、本気で憎んでるのかはわからんが、ホントに便利だと思うよ。 作者の言う通り、歯ブラシなんだと思う。
407 名前:あ mailto:sage [2017/11/07(火) 00:08:23.71 ID:BP2Kxffy.net] >>395 裏とか対偶を取ると何か意味がぼやける気がするが。 好きならば、関心がある 好きでないならば、関心は無い 関心が無いならば、好きではない 嫌いならば、関心がある 嫌いでないならば、関心は無い 関心が無いならば、嫌いではない 「関心」を共通項として消しこんでしまうから好きと嫌いが直結してるように見えるが、 本質的には好きと嫌いは全く違う感情として捉えるべきだと昔習ったよ。精神医学か臨床心理学かどっちかで。 そうしないと凄く嫌いな状態が好き、みたいなややこしいドMとかメンヘラ感情を説明出来なくなる。
408 名前:デフォルトの名無しさん mailto:sage [2017/11/07(火) 01:23:02.74 ID:yN+d3e/T.net] 頭にプリプリうんこの詰まったペチプリパァのおじちゃん 年収200万なのに生きてて恥ずかしくないの?
409 名前:デフォルトの名無しさん mailto:sage [2017/11/07(火) 01:43:06.64 ID:JlqCGsEJ.net] WP納品してセキュリティも保守も拡張も考えなくていいならPHPで勝手にすればって感じだけど まぁ関わりたくないよね
410 名前:デフォルトの名無しさん mailto:sage [2017/11/07(火) 04:40:28.24 ID:G20ApN4s.net] phpがというより動的言語が嫌なんだよなぁ。 リファクタリングとかIDE支援が期待できない。 だからhackなら良さそうなんだけどだれも使おうとしないのはなんで
411 名前:デフォルトの名無しさん mailto:sage [2017/11/07(火) 04:58:43.28 ID:G20ApN4s.net] GoをGAE/Goで使うとインフラもセットで完成した状態で使えるしオススメ。 dockerも、結局インフラ構築と変わんないから触らないで済ましたい
412 名前:デフォルトの名無しさん mailto:sage [2017/11/07(火) 12:20:53.38 ID:iCCdSanC.net] >>400 その理屈なら、DOM操作をIDEで支援する方が良さそう 静的型がないhtmlは終わコンになる
413 名前:デフォルトの名無しさん mailto:sage [2017/11/07(火) 12:39:38.98 ID:e73yffVV.net] >>402 reactがけっこう静的型html感ある。特にtypescriptでpropsのinterfaceをちゃんと定義した場合ね。
414 名前:デフォルトの名無しさん mailto:sage [2017/11/07(火) 19:58:30.70 ID:SHDG9lem.net] react もなんかだいぶごっつくなってきちゃってるね。 大丈夫なんだろうか。
415 名前:デフォルトの名無しさん [2017/11/08(水) 02:44:50.04 ID:fAd0cb4n.net] >>397 395ではないがなるほど。 でも、好きを+1、嫌いを-1、無関心を0と言うふうに数直線で見ると0を挟んで好き嫌いって反対という感じなんだよなぁ。 どMとかは虚数とか。
416 名前:デフォルトの名無しさん mailto:sage [2017/11/08(水) 05:31:11.16 ID:aIBytdYn.net] >>248 実際Fortranって最新規格を見ると超素晴らしいんだよな…… コンパイラを見ると実装が全然追いついて無くてしょぼーんってなる >配列の大きさ指定の関数に組み込みでない関数を使えるようになって よくわからんがもしparameterized derived typesのことなら最近gccにも実装された
417 名前:デフォルトの名無しさん mailto:sage [2017/11/08(水) 06:30:17.43 ID:giBp8lNc.net] CやFortranはやっぱ根幹だわ。 枯れて信頼性の高い処理系から、最新機能 を装備した処理系までとバラエティに富み、 常に進化し続けている。
418 名前:デフォルトの名無しさん mailto:sage [2017/11/08(水) 06:50:29.08 ID:aIBytdYn.net] CもFortranも規格だけは刷新され続けているのに実際使える範囲はC99やF95で止まってるけどな Cを止めてるのは主にVC++だけど
419 名前:デフォルトの名無しさん mailto:sage [2017/11/08(水) 07:58:32.73 ID:hM94b8vG.net] そりゃ基本はC++の処理系だし、Cには関心ないんだろ。 それにそもそも、VC++がC11に対応したからといってC11が普及するとも思えんがな。 誰が使いたがるんだろう、あれ。
420 名前:あ mailto:sage [2017/11/08(水) 08:05:45.96 ID:agAHXRVA.net] >>405 好きが実軸なら、嫌いは虚軸だよ。
421 名前:デフォルトの名無しさん mailto:sage [2017/11/08(水) 08:06:51.37 ID:HmOnpGK3.net] C++が糞だから使いたくない人はCくらいしか選択しないだろう。
422 名前:デフォルトの名無しさん mailto:sage [2017/11/08(水) 23:41:09.61 ID:8TXwlHft.net] swiftむずい
423 名前:デフォルトの名無しさん [2017/11/09(木) 08:24:27.56 ID:6+7/preV.net] Cもラムダ式(かBlocks)とattribute((cleanup))入るだけで随分と楽になるのに。。。 規格更新が遅すぎるんだよ。
424 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 08:43:42.68 ID:F+Mngyv/.net] それな。特にBlocks
425 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 09:20:27.50 ID:C6Hnpcf+.net] jsの世界のbabelみたく新規格をとりあえずすぐ使えるaltCみたいなものを作ればいいんじゃないの?
426 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 09:40:41.51 ID:F+Mngyv/.net] は?
427 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 09:45:23.55 ID:aP107Usi.net] 昔、Cfront と呼ばれるものがあってね。。
428 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 10:19:46.53 ID:ddqlamp+.net] Blocksは江添にクソって批判されてたような C++との互換性考えたらラムダ式が現実的かと
429 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 10:20:31.70 ID:PlmGILRr.net] 規格または実装のどちらかが遅すぎる法則 これ9割当たるだろ
430 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 10:27:48.86 ID:xB437NUI.net] 最悪なのは「実装がバグだらけ!」
431 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 11:20:20.07 ID:Ks0zwITf.net] 自己書き換えコードが禁止されてるからCでラムダ式とかが考えられてこないんだろうな。
432 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 11:53:29.71 ID:rCwX7bXU.net] いやCなら単純に関数定義と関数ポインタ渡しの構文糖衣でいいだろ
433 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 12:05:07.58 ID:F+Mngyv/.net] C++のラムダ式とか最適化のおばけやんけ あれCに入れれるのか?
434 名前:デフォルトの名無しさん [2017/11/09(木) 12:55:14.10 ID:lGQpurza.net] 素直にC++使わないのは何故。
435 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 14:14:40.60 ID:F+Mngyv/.net] よくわからんし苦手だから
436 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 15:25:39.37 ID:EdyTgEfO.net] C++のラムダは文法、型付けともに最悪だろ 第一templateもautoもないCでどうやって持ち運ぶんだよ それにBlocksもそうだけど 気軽に他言語からのFFIができなくなるんじゃないか 基本的なAPIにこういうのが使われだしたら他が困る……
437 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 15:40:59.87 ID:EdyTgEfO.net] あとC++ラムダもBlocksもローカル変数をキャプチャーする糞仕様だし そんなのがABIとして定まってしまうと、例えばD言語が関数ポインタとスタックポインタのペアだけでやってるみたいな シンプルかつより優れた実装を取ってる組が迷惑するだろ
438 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 16:51:04.80 ID:Ks0zwITf.net] Cの戻り値が一つしか出来ないというのも意味わからないよな。 2つのレジスターに値をセットして戻せばできるのにな。
439 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 17:23:41.36 ID:RK6L6tnV.net] 評価した結果,値を2つ持つって方が意味わからん気がする 複数の戻り値を表すならタプルみたいなもので1つの値にしてしまうのが一般的だと思うけどCでそれは流石に…という感じ
440 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 17:53:57.52 ID:EdyTgEfO.net] x86_64のSysVみたいに環境によっては レジスタ2つ分程度なら構造体で返してもrax, rdx使ってくれるぞ それに10個とかになると結局構造体返しと同じになるだろうから区別する理由がない
441 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 18:05:25.89 ID:Ks0zwITf.net] 引数は複数なのに戻り値は一つって対称性が乱れてるからな。 引数が一つってきまってるなら戻り値が一つでもいいんだけどな。
442 名前:あ mailto:sage [2017/11/09(木) 18:32:55.15 ID:RgVZiOIN.net] まー、今更呼び出し規約変更するのも虚しい結果に至るだろ。
443 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 18:40:38.48 ID:xkkUp3yc.net] 俺は今の言語が解析しにくいのが不満 xmlみたいにシリアライズ容易であって欲しい プログラムからコードを作成したり ビジュアル的にコードを表現したり出来ていいと思う これが出来てやっと次のステージにすすめると思う
444 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 18:56:04.11 ID:aP107Usi.net] それ lisp やんけ
445 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 19:02:43.09 ID:xkkUp3yc.net] >>434 全然駄目だ 俺には読めないw xmlとかcsvとか形式が決まってた方がいいな
446 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 19:09:29.48 ID:xkkUp3yc.net] htmlみたいにxmlでフローの書けるプログラムが組めるような言語とか次の覇権を握る 次世代はプログラムの自動生成がメインに来ると思うな モジュールのビジュアル化 それらを組み合わせるAIとか10年後のスタンダードになると思う
447 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 19:49:14.84 ID:7aPgmrKc.net] >>431 カリー化祭
448 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 21:03:11.32 ID:rakEZX+F.net] Apache Jellyは全然流行らなかったな。
449 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 21:08:41.44 ID:F+Mngyv/.net] ID:aP107Usiじゃないけど、俺も言いたい それLispやんけ
450 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 21:17:49.45 ID:PlmGILRr.net] 確かに人間の能力で解析できるのはLisp程度かもしれないが 次世代AIだったらLispは甘え
451 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 22:00:27.03 ID:xkkUp3yc.net] c#は構文解析やるのも字句解析やるのも 結構疲れる こんなんじゃ
452 名前:ビジュアル開発できないじゃん IDEなんてリソースエディタまわり強化するぐらいしか進化する先ねーのに 言語複雑にしてっと自分のクビしめっぞ [] [ここ壊れてます]
453 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 22:18:45.81 ID:6LULX4BS.net] C#はRoslyn使えば一発でAST取れるぞ MSのコンパイラというのは開発ツールのための言語サービスなんだよ
454 名前:デフォルトの名無しさん [2017/11/09(木) 22:47:28.93 ID:6+7/preV.net] CもABI変えない範囲で新機能は追加してほしい
455 名前:デフォルトの名無しさん mailto:sage [2017/11/09(木) 22:53:10.61 ID:Hmz/S4uV.net] 常にデ/シリアライズ可能って良さげだな ある時点のスタックトレースを丸ごとダンプして、丸ごと状態を復元できる
456 名前:あ mailto:sage [2017/11/10(金) 00:01:05.74 ID:QEw38nat.net] >>436 なんかxmlを通すと形が変わる処理系なかったっけ? SGML通した覚えがある。 ビジュアルなフローを繋いでいくとなると、LabVIEWとか色々あるじゃん。流行らなかったやつだと.netのワークフローとかあったし、 最近だとnode-redとか、Amazonのフローとか。 >>444 仮想マシンを一時停止にするほうが気が楽。
457 名前:デフォルトの名無しさん mailto:sage [2017/11/10(金) 00:51:01.42 ID:D7HJ1e1B.net] みんなー、Nimでにむにむしよっ
458 名前:デフォルトの名無しさん mailto:sage [2017/11/10(金) 01:42:31.25 ID:z2GdfpnL.net] むにゃ
459 名前:デフォルトの名無しさん mailto:sage [2017/11/10(金) 08:03:25.78 ID:ZxotU10g.net] >>445 そうじゃないニム 例えばニムね、Reduxのある時点のStoreを丸ごとjsonにニムしたら バグとかニムとかの再現に便利だと思ったニムンゴよ
460 名前:あ mailto:sage [2017/11/10(金) 12:48:28.65 ID:ryCkgWWn.net] >>448 仮想マシン一時停止にしてスナップショット撮って、再開するのは不便だって事かな。 まぁ確かに不便か。 まあ、普通WPF書いてればモデルクラスにMVVMしてるだろうし、そいつをシリアライズしとけば良いと思うけどね。Reduxみたいに、となると。
461 名前:デフォルトの名無しさん mailto:sage [2017/11/10(金) 13:30:04.92 ID:K9cBfZ0u.net] みんなー、Nimでにむにむしよっ
462 名前:デフォルトの名無しさん mailto:sage [2017/11/10(金) 13:55:44.53 ID:nhsl7iAw.net] >>444 Smalltalk?
463 名前:デフォルトの名無しさん mailto:sage [2017/11/10(金) 16:56:43.44 ID:MvZMhhNL.net] フォンノイマンマシーンではデータとプログラムの区別とかレジスターとかはないから メモリーをコピーするだけで実行時と同じになるんだよな。
464 名前:デフォルトの名無しさん mailto:sage [2017/11/10(金) 17:35:03.38 ID:JCZVtJuy.net] fortranって学生の頃に触ったけどなんか独自性あったっけ?basicと変わんないような気がしたけど
465 名前:デフォルトの名無しさん mailto:sage [2017/11/10(金) 18:41:24.13 ID:QuLzQogR.net] >>453 numpyに匹敵する強力な配列アクセスと、明示的なfunctionとsubroutineの区別、引数の入力専用や出力専用を明示するintent機能、moduleなどの便利な機能がfortran90あたりから加わった 学生の頃に触るfortranは77が多いのでfortanはゴミという認識の人は多い
466 名前:あ mailto:sage [2017/11/10(金) 18:41:29.45 ID:ryCkgWWn.net] >>452 ところが、メモリを完全に再現する方法がどんどんめんどくさくなってきて、逆にコンピュータ自体はどんどん高速になって、仮想マシンごと取るのが一番楽になってきてしまった。 データとプログラムの区別もつけ始めたしね。 >>453 pureな関数に対して、forallとかつけるだけでバラして実行にしてくれるとか、十年くらい前から、do concurrent で同時実行してくれるとか、でかい計算機使わないとあんまりメリット見えない便利機能とかが独自機能とかかな。
467 名前:デフォルトの名無しさん mailto:sage [2017/11/10(金) 20:31:42.80 ID:pbDFhipo.net] >>453 C99のrestrictや複素数、VLA等の「C++に無いのにどこから出てきた」みたいなのは Fortran対抗だったりするんだぜ その後も改
468 名前:定は続いて今のFortranは驚くほど色んなことができるし速度面は依然最強格 実装があればね(´・ω・`) [] [ここ壊れてます]
469 名前:デフォルトの名無しさん mailto:sage [2017/11/10(金) 20:36:22.60 ID:Qc9ud9aj.net] Juliaを持ち上げる奴は大抵Fortranを古そうというだけで食わず嫌いしてるよね Fortranをちゃんと触ったことがあれば、今更Juliaなんか全く必要ないことがわかる
470 名前:デフォルトの名無しさん mailto:sage [2017/11/10(金) 20:45:03.48 ID:pbDFhipo.net] ま、Fortranは構文がきもいからね…… あと実装(
471 名前:デフォルトの名無しさん mailto:sage [2017/11/10(金) 21:03:32.57 ID:TE3zp5kQ.net] Juliaは関数を返す関数があるから……
472 名前:デフォルトの名無しさん mailto:sage [2017/11/10(金) 22:39:10.79 ID:XT30o+c8.net] Fortran触ったことないゆとりの自分に、Fortranで3rd packageの導入・管理する方法を教えてくださらんか……
473 名前:デフォルトの名無しさん mailto:sage [2017/11/11(土) 00:15:52.24 ID:TutobSU6.net] スクリプト言語ならソースを置くだけか、Cに丸投げだもんな スクリプトとCを笑う者はパッケージ管理に泣く
474 名前:デフォルトの名無しさん mailto:sage [2017/11/11(土) 01:12:49.38 ID:w1UaSNW0.net] >>460 良いように言えばFortranはC言語と同じく下層で使われる言語なので 管理はOSのパッケージマネージャでやらないといけない 悪いように言えば、管理するほどライブラリがない
475 名前:あ mailto:sage [2017/11/11(土) 01:39:43.40 ID:X8lWnCzG.net] そもそも、ベンダが出すライブラリが一番速い。 その話は残念ながらできん、といったところかな。
476 名前:デフォルトの名無しさん mailto:sage [2017/11/11(土) 09:56:56.01 ID:nIHGEsH/.net] >>461 そう考えるとcargoやgoはよくやってるって気分になるな
477 名前:デフォルトの名無しさん mailto:sage [2017/11/11(土) 10:05:48.57 ID:SE28YWv1.net] 他の言語だとあんまり思わないんだけど、 CやFortranの話になると何故か 「LD_LIBRARY_PATHの通っている領域に置くだけじゃん……」 って思う
478 名前:デフォルトの名無しさん mailto:sage [2017/11/11(土) 10:45:06.02 ID:nIHGEsH/.net] >>465 例えばプロジェクトAではlibevent2.0を、プロジェクトBでは2.1を使ってる場合どうすんの? 1. LD_LIBRARY_PATHをプロジェクト毎にdirenvかなんかで切り替える 2. -Lオプションで切り替える 3. RustでいうcargoやRubyでいうBundleを手動で頑張る どれがベストプラクティス?
479 名前:デフォルトの名無しさん mailto:sage [2017/11/11(土) 11:34:57.45 ID:SE28YWv1.net] >>466 静的ライブラリなら-Lでいいんじゃね? ベストプラクティスかは知らんけど
480 名前:デフォルトの名無しさん mailto:sage [2017/11/11(土) 11:35:47.08 ID:yM7WeBzy.net] >>466 マシン二台用意しろよ
481 名前:デフォルトの名無しさん mailto:sage [2017/11/11(土) 11:37:39.35 ID:SGA9z9gD.net] >>466 プロジェクト違うとライブラリだけじゃなく設定ファイルとかリソースファイルとかも変わるんじゃない? そのための環境「変数」なんだと思うがね
482 名前:デフォルトの名無しさん mailto:sage [2017/11/11(土) 12:37:04.44 ID:oec9ZFSW.net] dockerみたいなのでやるってこと?
483 名前:デフォルトの名無しさん mailto:sage [2017/11/11(土) 13:41:00.49 ID:w1UaSNW0.net] んな大げさな、切り替えたいだけならpkgconfigでいい
484 名前:デフォルトの名無しさん mailto:sage [2017/11/11(土) 14:37:05.82 ID:p8tTAq8V.net] てかそこまで動的に切り替えが必要かまず考えた方がいいのでは?
485 名前:デフォルトの名無しさん mailto:sage [2017/11/11(土) 14:44:58.04 ID:6gUapX1N.net] プロジェクトのディレクトリ内に適当に置いとけばいいじゃんあほらし
486 名前:あ mailto:sage [2017/11/11(土) 14:46:30.00 ID:X8lWnCzG.net] ちゃんとmakefile書け、じゃない?
487 名前:デフォルトの名無しさん mailto:sage [2017/11/11(土) 19:13:47.36 ID:GuHfXsWY.net] >>405 好きの反対は嫌い 無関心の反対は有関心 好きも嫌いも有関心
488 名前:あ mailto:sage [2017/11/11(土) 19:29:47.46 ID:X8lWnCzG.net] >>475 なるほどまとまってる。
489 名前:デフォルトの名無しさん mailto:sage [2017/11/11(土) 21:31:25.39 ID:okinluKI.net] 抽象度が低すぎる単語はポリコレ違反なんだな だから性別や宗教等を特定できないレベルまで抽象化する
490 名前:あ mailto:sage [2017/11/11(土) 21:45:47.01 ID:X8lWnCzG.net] 好きも嫌いも、言葉は同じでも指すものが違うからな。 可愛さ余ってなんとやら。
491 名前:デフォルトの名無しさん mailto:sage [2017/11/11(土) 21:51:19.82 ID:APGqg
] [ここ壊れてます]
492 名前:m8b.net mailto: Goみたくメッセージパッシングう方式での並行性に非常に優れていて、そこそこ速いML言語とか誰か作らないかな… [] [ここ壊れてます]
493 名前:デフォルトの名無しさん [2017/11/11(土) 21:57:29.82 ID:rbpvu0L2.net] >>479 何に使う?
494 名前:デフォルトの名無しさん mailto:sage [2017/11/11(土) 22:02:28.22 ID:APGqgm8b.net] >>480 Webのサーバーサイドでのプログラミングとか?
495 名前:デフォルトの名無しさん mailto:sage [2017/11/11(土) 22:34:13.35 ID:w1UaSNW0.net] F#がもうそうなってるんじゃね
496 名前:デフォルトの名無しさん mailto:sage [2017/11/12(日) 02:51:49.32 ID:oBq+ACHI.net] あれ?かつて次代の大物言語とかいわれてたelixirは入ってないの?
497 名前:デフォルトの名無しさん [2017/11/12(日) 04:47:18.74 ID:QTXr6k0W.net] そもそも関心があるかどうか関心を持った時点で関心があるから 関心が無いものは思いつかないものでないと関心が無いと言えない。
498 名前:デフォルトの名無しさん [2017/11/12(日) 05:23:32.70 ID:VleGsMX6.net] >484 心理学の話はもういいよ。言語の話しようぜ。
499 名前:デフォルトの名無しさん mailto:sage [2017/11/12(日) 10:22:15.49 ID:uKLz7AXa.net] 俺の哲学的考察ドヤァ
500 名前:デフォルトの名無しさん [2017/11/12(日) 11:35:37.08 ID:oQrEnmVF.net] 次世代言語の話をしろ
501 名前:デフォルトの名無しさん mailto:sage [2017/11/12(日) 13:19:42.48 ID:kuWG9Wn6.net] 日常会話にもプログラミングにも使える言語とか誰か作れよ 厳密に文法定義するだけだからできるやろ
502 名前:デフォルトの名無しさん mailto:sage [2017/11/12(日) 13:39:49.42 ID:K3cKPiCK.net] 需要、なし!w
503 名前:デフォルトの名無しさん [2017/11/12(日) 13:47:57.09 ID:VleGsMX6.net] >>488 ここ数年で広辞苑に「うざい」が載るようになったように日常会話は時代によって変容する。 つまり、日常会話に使う言語は「厳密に文法定義する」こと自体が不可能に近い。 だから厳密に文法定義できるプログラミング専用の言語が必要になった。 そして日常会話に使う言語を「時代によって変容できない」ようにすることも不可能だ。
504 名前:デフォルトの名無しさん mailto:sage [2017/11/12(日) 14:11:37.87 ID:fZbwcKqG.net] プログラミング言語も時代によって変わる 逆に変化しないプログラミング言語は取り残されていく
505 名前:デフォルトの名無しさん mailto:sage [2017/11/12(日) 14:35:52.57 ID:0gPm23+K.net] lojban使えば?PEGで構文解析できる人工言語で新しい単語も導入できる プログラミング言語を覚えるより遥かに大変だけど
506 名前:デフォルトの名無しさん mailto:sage [2017/11/12(日) 15:35:12.54 ID:kuWG9Wn6.net] >>492 ざっと見たけど糞やん 読み方あいまいやん bridi ブリヂか? バリディか? 頭がブリブリなのか?
507 名前:デフォルトの名無しさん mailto:sage [2017/11/12(日) 16:32:04.38 ID:QTXr6k0W.net] PEGは一文字ごとにメモリーを消費する。
508 名前:デフォルトの名無しさん mailto:sage [2017/11/12(日) 21:31:44.94 ID:vqK3o1OI.net] そんなことよりponyの話をしようぜ
509 名前:デフォルトの名無しさん mailto:sage [2017/11/12(日) 21:59:29.66 ID:enOCqUCD.net] >>495 初耳だったのでちょっと調べてみたけど面白そう。是非とも良さを語ってほしい
510 名前:デフォルトの名無しさん mailto:sage [2017/11/12(日) 23:54:49.92 ID:7OkSLCD0.net] >>491 その進化論っぽい思想ももう聞き飽きた
511 名前:デフォルトの名無しさん mailto:sage [2017/11/13(月) 00:08:48.90 ID:lPXXv2fZ.net] 変わらないでいいじゃんもう
512 名前:デフォルトの名無しさん mailto:sage [2017/11/13(月) 04:56:24.27 ID:bOYgOiq+.net] 変わり続けることとは変わらない法則である。 したがって変わらないことこそ変わることなのだ。
513 名前:デフォルトの名無しさん mailto:sage [2017/11/13(月) 10:15:23.68 ID:3/3Obauk.net] Pony Julia Crystal Nim いいからv1.0になって出直してこい系言語
514 名前:デフォルトの名無しさん mailto:sage [2017/11/13(月) 12:34:31.66 ID:QzWBzm7Q.net] 次世代言語議論スレなのでセーフ
515 名前:デフォルトの名無しさん mailto:sage [2017/11/13(月) 13:05:38.64 ID:TpgUuavl.net] 本当に並列化で速度を稼ぎたい場合は オーソドックスな手法で並列化するので・・・ というか割と稀 それとは別に、UIを固めないためだけの並列化が鬱陶しくて async/awaitがあればかなり楽になるから、それでいいやって
516 名前:デフォルトの名無しさん mailto:sage [2017/11/13(月) 13:39:53.23 ID:VLsI+U4t.net] >>501 コロコロ言語仕様が変わるのは次世代言語じゃなくてお遊び言語だろ 言語仕様が固まってから、さて次世代的にどういう用途が向いてるだろうかって議論するべきじゃないのか?
517 名前:デフォルトの名無しさん mailto:sage [2017/11/13(月) 13:47:15.36 ID:TUCXx069.net] >>502 結局、モジュラリティー高くなるように書けや って話でどんなツール、言語が出てきても関係ないっていう気はする。 ツール、言語を強要するよりかは アンチパターンとして急いでる時にはどうしても依存しまくったコード 書いちゃうよねってなことを教えた方がなんぼかまともな気がしてる。
518 名前:デフォルトの名無しさん mailto:sage [2017/11/13(月) 13:58:49.36 ID:QzWBzm7Q.net] >>503 「言語仕様が固まってない」って「前のバージョンのコードが動かない」って意味か? 「推奨される、もしくは書きやすいコードの書き方が変わる」って意味ならC++でさえC++11以前と以降では全然違うし、「言語仕様が固まっている」言語なんてCくらいしか思いつかないんだけど。
519 名前:デフォルトの名無しさん mailto:sage [2017/11/13(月) 14:09:32.75 ID:VLsI+U4t.net] 前者の意味だが、文法自体に変更なくとも、標準ライブラリのAPIが変わってしまうのも含むな Scalaとかマイナーバージョン変わるだけで文法変わってなくてもコンパイル失敗するとかあったろ
520 名前:デフォルトの名無しさん mailto:sage [2017/11/13(月) 14:27:30.98 ID:QzWBzm7Q.net] 前のバージョンのコードが動くことって、今職場で使える言語を語るのには大切だと思うけど、未来を語るのにそんなに大切だろうか? むしろ試行錯誤して、ダメな所はダメな所として直して文法を綺麗に整理してくれている分、C++みたいなキメラ感溢れる追加機能よりも期待が持てると思うんだけど まあ俺はScala知らんし、Juliaなんかはdeprecatedになった機能はちゃんと警告してくれるし、いきなり機能削除で困ったことがないから出て来る感想かも知らんけど
521 名前:デフォルトの名無しさん mailto:sage [2017/11/13(月) 15:57:56.72 ID:bOYgOiq+.net] CPUみたいに特殊な命令をコードの最初の行に書けば 上位のモードに移行するみたいな仕様にすればいいのにな。
522 名前:デフォルトの名無しさん mailto:sage [2017/11/13(月) 16:18:40.93 ID:wtJ6F+YY.net] それ旧仕様もメンテし続けないといけなくなるやつ
523 名前:デフォルトの名無しさん mailto:sage [2017/11/13(月) 16:30:03.90 ID:htvgMwwk.net] DockerのコンテナとかGoで書いてるらしいね これからどんどんコンテナってつかわれるみたいだからその関係でGoって人気でてきたの? もしかしたらこれから一気に流行るの?
524 名前:デフォルトの名無しさん mailto:sage [2017/11/13(月) 17:21:04.18 ID:Uh06NB8u.net] いろいろ突っ込みたいがキリがないので、 Docker使う分にはGoを意識する機会は全く無いから関係ないとだけ言っておこう
525 名前:デフォルトの名無しさん mailto:sage [2017/11/13(月) 20:45:40.38 ID:loSXLH9Q.net] >>503 それswiftにも同じこと言えんの? 正直swiftの先進性には感謝する。関数型言語に興味を持つきっかけになった。 だがGo並に仕様を固めてから公開してほしかった。もうswift4? swift0.4だろボケ
526 名前:デフォルトの名無しさん mailto:sage [2017/11/13(月) 22:22:24.83 ID:IfkrQMwx.net] Swift Xへようこそ。 世界一ピュアなキス ここから未来が始まります。
527 名前:デフォルトの名無しさん mailto:sage [2017/11/14(火) 06:53:56.25 ID:l1fCT6kS.net] Elixirのプロダクトらしい https://masto.news/2017/11/12/pleroma/
528 名前:デフォルトの名無しさん mailto:sage [2017/11/14(火) 07:58:21.96 ID:7LtHkkfv.net] マス丼が来てないのに何言ってだこつい
529 名前:デフォルトの名無しさん mailto:sage [2017/11/14(火) 10:55:56.21 ID:/ce101S1.net] >>512 林檎信者に刺されたくないからあえて名前出さなかったんだが、まさにswiftは念頭にあった あれが言語になれてる理由は他ならぬ林檎がごり押ししてプラットフォームを囲い込んでるだけなんだよな
530 名前:デフォルトの名無しさん mailto:sage [2017/11/14(火) 12:29:50.19 ID:RmEPBl/7.net] 作った人退職しちゃったけどどうなの?
531 名前:デフォルトの名無しさん mailto:sage [2017/11/14(火) 13:16:41.60 ID:9gqQQ/8Y.net] 数ヶ月転職先で働いてまたやめたよ
532 名前:デフォルトの名無しさん mailto:sage [2017/11/14(火) 14:18:27.95 ID:MOxq3KBn.net] 言語開発者って企業戦士としては碌なのいないな ヘルスバーグくらいか
533 名前:デフォルトの名無しさん mailto:sage [2017/11/14(火) 14:35:21.01 ID:/4y+2Kom.net] まつもとさん
534 名前:デフォルトの名無しさん mailto:sage [2017/11/14(火) 16:29:24.82 ID:MOxq3KBn.net] Matzはエンタープライズ系ITからの典型的なドロップアウト勢じゃなかったっけ?
535 名前:あ mailto:sage [2017/11/14(火) 18:20:56.55 ID:j+l8jijk.net] ケントンプソンとかは?ベル研。 ジョンバッカスもずっとIBMだったような。 Wolframもずっとアカデミックな人で、途中で会社立ち上げてずっとmathmaticaを責任持って作ってるイメージ。
536 名前:デフォルトの名無しさん mailto:sage [2017/11/14(火) 22:33:33.05 ID:XnMPPPKZ.net] >>516 swiftが登場したばっかのときは良かったんだよ。その後 何度も下位互換性がない仕様変更が繰り返されて開発者が疲弊していった。 正直言語仕様も複雑化の一途を取っているrustのメモリオーナーシップモデルも取り入れるって話も聞いたし、正直つらみがます一方。 androidのkotlinが羨ましくみえる。
537 名前:デフォルトの名無しさん mailto:sage [2017/11/14(火) 22:56:58.69 ID:r3vvhD4+.net] ビャーネはずっとモルスタいるだろ
538 名前:デフォルトの名無しさん mailto:sage [2017/11/14(火) 23:28:52.46 ID:bj4U4qLx.net] 確かRustの主要開発者の一人が林檎行ってswiftやってんだっけか? Rustもまあ言語仕様お世辞にも簡単とは言えんが、1.0以降下位互換性崩してないところは評価できるわな
539 名前:デフォルトの名無しさん mailto:sage [2017/11/15(水) 09:17:27.90 ID:IgzwHXKJ.net] Rust は所有権とかボローイングとか、そもそもパーサーの方もまともに 理解できてねーじゃんとか思ってしまう。
540 名前:デフォルトの名無しさん mailto:sage [2017/11/15(水) 10:50:32.41 ID:FBksKtwj.net] >>526 まあそもそもRustはモジラの提灯のための言語モドキで、プログラミング用途じゃないからな
541 名前:デフォルトの名無しさん mailto:sage [2017/11/15(水) 10:54:30.02 ID:FBksKtwj.net] モジラ「これからは安全性!所有権!(って言っとけば金とれるわ。言語自体の出来?適当でいいじゃん)」 泥箱「Rust使ってます!(って言っとけばモジラが提灯代くれるし使ってないけど言っとこ)」
542 名前:デフォルトの名無しさん [2017/11/15(水) 16:31:11.01 ID:SRCReWD1.net] 例の糖質くんやんけw
543 名前:デフォルトの名無しさん mailto:sage [2017/11/15(水) 23:13:54.26 ID:1FFyJZta.net] >>523 kotlinも使いやすさ的にはGroovyから一部劣化してるとこもあるが 今生きてる言語の中では一番まともな解だと思う 正直StaticなGroovyまんまだけど
544 名前:デフォルトの名無しさん [2017/11/15(水) 23:16:35.27 ID:FbV3pGD5.net] いい言語とは誰にでも直感的に理解できる言語
545 名前:デフォルトの名無しさん mailto:sage [2017/11/16(木) 00:18:06.40 ID:acyFWWoZ.net] PHPのことですね わかります
546 名前:デフォルトの名無しさん [2017/11/16(木) 00:22:54.15 ID:GeiRTeeW.net] https://i.imgur.com/QxDQgbx.png
547 名前:デフォルトの名無しさん mailto:sage [2017/11/16(木) 00:51:54.74 ID:ht25sMap.net] >>531 直感は人それぞれだから 誰もが平等だという直感もあれば、強者だけ生き残り弱者は淘汰されるという直感もある
548 名前:デフォルトの名無しさん [2017/11/16(木) 01:17:20.88 ID:72Ez3v5k.net] 意味不明
549 名前:デフォルトの名無しさん mailto:sage [2017/11/16(木) 06:20:26.03 ID:AGAujnJo.net] 直感で感じるんだ
550 名前:デフォルトの名無しさん mailto:sage [2017/11/16(木) 06:23:29.47 ID:NRQldjte.net] 直観でわかるようになるようになるまで練習するならわかるけれど 初めから直観でわかる言語はないだろ。
551 名前:デフォルトの名無しさん [2017/11/16(木) 09:08:03.07 ID:e/Hz7FiQ.net] 何か一つの言語を知っていれば直感的に判る言語 その名もパイソン
552 名前:デフォルトの名無しさん mailto:sage [2017/11/16(木) 10:31:57.62 ID:V2bWakot.net] Pythonは「なんでこれができてこれができ
553 名前:ネいのか」という変な例外が少ないのがいいよね RubyとかPoweShellのような驚異に満ちた楽しい言語を触ってから戻るとすごく安心する [] [ここ壊れてます]
554 名前:あ mailto:sage [2017/11/16(木) 10:34:50.06 ID:2XWbEkjP.net] それはあるな。 メソッド第一引数のselfを隠さなかったり、構文だとpassが存在したり、 他の言語では言語仕様を工夫して誤魔化した部分に諦めを見せてくれる。
555 名前:デフォルトの名無しさん mailto:sage [2017/11/16(木) 12:47:14.41 ID:YitAO71u.net] perl on Rails は何でコケたのかな
556 名前:デフォルトの名無しさん mailto:sage [2017/11/16(木) 12:59:02.32 ID:T2x72Red.net] OSコマンドインジェクションを考慮しなければならない用途では特に価値のない言語だから
557 名前:あ mailto:sage [2017/11/16(木) 12:59:15.71 ID:2XWbEkjP.net] perl自体時代遅れという風潮と、perlはゴミ!という今のphpディスの空気感そのものみたいなのがあったからでは? 結果、まともに書いてないperlは問題だったが、まともなperlスクリプトは今でも生き残ってるしそんなに問題視もされない(というか意識もされないレベル)になったけど。 今のphpディスは、今35〜40くらいの世代がperlを叩きまくってたのと被って、健全には見えんな。
558 名前:あ mailto:sage [2017/11/16(木) 13:01:54.55 ID:2XWbEkjP.net] >>542 RoRでも本来は考慮すべきだよ。バッククォートの再定義とかそういう話になるかもしれんが。
559 名前:デフォルトの名無しさん mailto:sage [2017/11/16(木) 13:59:59.88 ID:Uttk70vk.net] >>543 perlが生き残ってるってどこの話だよ 生き残ってるってだけならそれこそCOBOLだって生き残ってるわ perlが生き残ってるような環境ならPHPみたいな汚物を肯定もできるんだろうな胸糞悪い
560 名前:デフォルトの名無しさん mailto:sage [2017/11/16(木) 14:46:50.92 ID:MKSMN107.net] 昔からperlは宣伝がうまい 「なんでlinuxができてperlができないのか」ってつっこみ入れるだけで普及する
561 名前:あ mailto:sage [2017/11/16(木) 19:22:40.75 ID:2XWbEkjP.net] >>545 カーネルのソースにも沢山いるし、あとはrpm -q --whatrequires gitってやってみれば? 確かまだいると思う。メインコマンドじゃないけど。 胸糞悪い環境でgit commitしてるんだね。
562 名前:あ mailto:sage [2017/11/16(木) 19:23:07.70 ID:2XWbEkjP.net] 惨めだね、知らないって。
563 名前:デフォルトの名無しさん mailto:sage [2017/11/16(木) 19:44:36.44 ID:81E2YZma.net] しかし perl はやっぱきついよ。 あんなにコンテクストに依存して記号の意味が与えられる言語、 他にないと思う。
564 名前:デフォルトの名無しさん mailto:sage [2017/11/16(木) 20:26:22.33 ID:vK+1Iebs.net] Perlはワンライナーでしか使わない、汎用sed, awk
565 名前:デフォルトの名無しさん mailto:sage [2017/11/16(木) 20:35:42.27 ID:eh41w0lb.net] 惨めだね。知らないって(ブーメラン)
566 名前:あ mailto:sage [2017/11/16(木) 21:15:20.63 ID:eALYWwoT.net] ブーメランでも飛ぶだけマシだろ。
567 名前:デフォルトの名無しさん mailto:sage [2017/11/16(木) 21:19:39.67 ID:MKSMN107.net] >>549 まあその程度で罪悪感を覚えるような正義感の強いコミュニティが あったらいいなと思う
568 名前:デフォルトの名無しさん mailto:sage [2017/11/16(木) 23:23:00.85 ID:acyFWWoZ.net] 頭がパーのP PerlとPHP ウンポコピー ガイジ専用
569 名前:あ mailto:sage [2017/11/17(金) 00:05:33.90 ID:fbp8aPNo.net] まー仕事してりゃ、嫌な言語の1つや2つ、保守する羽目になることもあるだろ。 ディスは簡単だが、その言語がなぜ使われたかまで考えると意外にディスる気も無くなるし「なるほどなあ…」と苦笑いにもなる。 ガイジ専用、と言って切り捨ててると、ガイジでも出来る事が出来てないままの、自分の実質ガイジ以下の部分に目をつぶることになるぞ。
570 名前:デフォルトの名無しさん [2017/11/17(金) 00:13:11.61 ID:3GAWOghK.net] >>538 pythonでのバイナリ配列内の特定の1バイト(0x00)の検索方法がよくわからん
571 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 00:34:25.8
] [ここ壊れてます]
572 名前:8 ID:zgI+QNxN.net mailto: 今どき新規でPerlとPHP選んでるようじゃ ガイジ扱いされてもしゃーない [] [ここ壊れてます]
573 名前:あ mailto:sage [2017/11/17(金) 00:46:46.98 ID:fbp8aPNo.net] 誰がどこで「新規でperl」って書いたのか、書いてないものが書いてあるように見えるのってちょっと精神的に破綻してるよね。
574 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 04:51:47.78 ID:J/ECuHX9.net] >>545 これは恥ずかしいな Linux触ってたら普通に知ってる事なのに
575 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 08:09:54.21 ID:zgI+QNxN.net] >>558 ? 新規で〜の話をしただけで、別に君を非難したわけじゃないぞ? 大丈夫か?
576 名前:あ mailto:sage [2017/11/17(金) 08:43:14.48 ID:GmVBN0UX.net] >>560 >>545 からの流れかと。安価つけないのってメリットあるんだな
577 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 08:51:26.95 ID:smNhjLrp.net] 「ここは後でちゃんと作るはずだからperlでテキトーに実装しておこう」 ↓ 数年後: 誰も読めない長大perlコード
578 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 09:28:46.29 ID:RcEAFZjI.net] perlは正規表現でごちょごちょやるなら現役じゃないの?
579 名前:デフォルトの名無しさん [2017/11/17(金) 09:30:57.21 ID:4WTZydzp.net] ソフト開発では使わない ツールならまだある
580 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 09:43:20.07 ID:RcEAFZjI.net] rebuildfmの中の人とか小飼弾とか。 できるエンジニアはもとperl使いってイメージある
581 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 10:15:32.65 ID:ZScfeBfL.net] 知ったかくんちょっと調子乗って人のこと侮辱し過ぎでしょ
582 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 10:16:31.43 ID:j/YEi+T5.net] なんでperlが残ってること誇ってんの?汚点じゃん perlがあまりに保守性悪くてリプレイスできないけど機能自体を捨てたらキレる老害がいるから化石のように残ってるだけ 要するにCOBOLと同じ。残ってることは恥 それを逆に誇ってるんだから、そりゃー世の中にPHPみたいな汚物がはびこる訳だわ
583 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 10:38:06.37 ID:n+fIjN+j.net] perlは確かに難読化言語だけれども、一回わかってしまえば PHPみたいに仕様が変な部分はほぼない……と思う PHPって内部で変換を繰り返して変な結果が帰ってきたり 数学関数の解釈が間違ってたりするんだろ?
584 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 12:01:52.43 ID:ymzw4hJ5.net] perlのソフトdisってる人は開発当時の時代背景知ってて言ってんの?
585 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 12:33:52.99 ID:1DLi6wpZ.net] perl6開発当時の時代背景は知ってる
586 名前:あ mailto:sage [2017/11/17(金) 13:08:49.38 ID:GmVBN0UX.net] >>567 言うに事欠いてそれかよw 読めるように書いたらちゃんと読めるし、何より 「新しく作るコストと現行のものを保守する(していく)コスト」の天秤の問題だし、 枯れきった環境ってのは大事じゃん。 ついていけないから置いてるんじゃなくて、それはそれで良いから置いてるんだよ。 誇るも何も、それより良い物作ってコミットすれば良いんじゃない?それより誇りたいなら。 物にはついてくるよ、みんな。
587 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 13:16:32.70 ID:AQwbboRb.net] Perlは変な書き方もできるが PHPの頭のおかしな仕様に振りまわされることに比べたら いたって普通。
588 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 13:34:15.46 ID:D7vYYt8n.net] 比較対象が PHP ってところからすでにおかしいだろ。
589 名前:556 mailto:sage [2017/11/17(金) 15:18:37.34 ID:YsVDcKgI.net] >>556 わかったわ
590 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 15:35:55.87 ID:oWV9tUcB.net] マクロアセンブラ―みたいにマクロC言語
591 名前:チて出てこないかな。 これがあれば絶対使いたいんだけど。 [] [ここ壊れてます]
592 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 15:47:49.21 ID:4x0i5wmi.net] マクロPHP 或いは altPHPトランスパイラは銅ですか?
593 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 15:53:27.78 ID:i5UkdOT+.net] 次世代言語スレで新規じゃない話してる奴ってなんなんだ
594 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 16:44:20.35 ID:m4E+5Wqt.net] >>575 #define または template がすでにその用途である
595 名前:デフォルトの名無しさん [2017/11/17(金) 17:04:41.52 ID:YsVDcKgI.net] >>575 マクロにも名前空間が欲しい
596 名前:デフォルトの名無しさん [2017/11/17(金) 17:05:42.90 ID:YsVDcKgI.net] >>575 あとatteibute((cleanup))も標準になって欲しい
597 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 18:00:58.30 ID:LjyHvP/L.net] ひどい雑談スレだな
598 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 18:15:52.88 ID:i5UkdOT+.net] まずなんで次世代言語スレでPerlの話題が上がるんだよ せめてPerl6以外のPerlの話は禁止しろ
599 名前:あ mailto:sage [2017/11/17(金) 18:41:24.13 ID:GmVBN0UX.net] >>577 過去にあったものより、良かったり違う思想だったりするものを議論するのに、 「知らない、話題にも上げなくて良い、知らなくても良い、どうせゴミだから。知らないけどね」って無責任と思うけど。
600 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 18:50:07.33 ID:qV/IIJ5J.net] 次世代言語を議論する上で引き合いに出すならアリって感じか。 となると perl から得られる最大の教訓はなんだ。 使いやすくても読み難いものは宜しくない、と。 APL もそうか。
601 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 18:53:26.65 ID:i5UkdOT+.net] >>583 >>577 の「新規」は>>558 、>>560 、>>561 のレスを見て思ったことを書いたんだが、そのレスはそれに対する返答か?
602 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 18:57:28.86 ID:ymzw4hJ5.net] バージョンに6はつけるなという教訓
603 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 18:59:24.46 ID:i5UkdOT+.net] >>584 の意味でperlに触れるのはありだと思うけど、当時の状況が云々とか未だに残ってるperlは恥だとか新しく作るコストが云々とかはスレ違い以外の何者でもない
604 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 19:03:58.95 ID:RD2my8vU.net] perl の教訓は python, ruby に受け継がれてるからいいんだよ。
605 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 19:05:11.13 ID:i5UkdOT+.net] Rubyってなんの教訓を生かしたんだ
606 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 20:49:48.84 ID:RcEAFZjI.net] rubyは最初からオブジェクト指向を言語仕様に含めた。 だから基本型もクラスなんだろ?
607 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 21:38:37.78 ID:EkFnC7lu.net] Rubyは設計者やVM実装者があっても大学院生レベルの知識で四苦八苦してるから 過去言語で解決済みの問題も顰みにならって抱え込んじゃってる 他言語のパクりの塊で元ネタを知らない大衆にはウケる面もあるけど正直新しみは何も無い言語
608 名前:あ mailto:sage [2017/11/17(金) 22:02:56.27 ID:fbp8aPNo.net] >>584 アリどころか、違う思想、って言葉が使えなくなるでしょ。 perlの最大の教訓は、お前はEAXレジスタか、みたいな変数の使い方はやっぱり書くときは楽だけど読みづらいとか、 <>みたいな、便利なんだけど、それが正しい姿だと断言しづらい構文は辞めよう、ってとこみたいな負の部分と、 間接参照は正しく使えば可読性を下げずにうまくコードを短くできるみたいな正の部分色々あると思うよ。
609 名前:あ mailto:sage [2017/11/17(金) 22:04:52.82 ID:fbp8aPNo.net] >>585 そうだよ。 新規だから次世代言語を使うべきだ、なんて新しい筆箱買ってもらった子供みたいな真似はするべきじゃない。
610 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 22:08:54.79 ID:ZScfeBfL.net] >>593 おまえはいったい>>577 をどう解釈しているんだ 俺はそんなこと一言も書いてねえぞ 書いてないものが書いてあるように見えるのってちょっと精神的に破綻してるよね。ってやつか
611 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 23:11:15.08 ID:zgI+QNxN.net] >>573 ワロピオ
612 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 23:28:57.50 ID:RD2my8vU.net] python なんかは明らかに書き方の自由
613 名前:度を落とす方向で perl の教訓を活かしてる。 ruby に関しては以下の感じらしい。 https://www.ruby-lang.org/ja/documentation/ruby-from-other-languages/to-ruby-from-perl/ まあ古い言語を勉強すると老人が鬱陶しいというのはあると思うけど 勉強として悪くはないよ。 [] [ここ壊れてます]
614 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 23:36:00.31 ID:zgI+QNxN.net] 苦労することが美徳だと死んでるあのお爺ちゃん、おりゅ?
615 名前:あ mailto:sage [2017/11/17(金) 23:51:54.59 ID:fbp8aPNo.net] >>594 お前が何を言ってるかわからん。 次世代言語のスレで、古い言語の話をすべきでない、に対して、古い言語知らないと新しい言語が相対的に「新しい」じゃなくなるよね、次世代じゃないよね、って。前や今が無いと次はありえないんだから。 そこで、切り口として、「新規で作成するなら旧、現世代の言語なんてあり得ないよね」という論旨を受けて、 「そんなこと無いよね、今でもいっぱい使われてるし、その上に成り立ってんじゃん?旧、現世代があり得ないという理由が、我々は次世代言語を持っているから」なら、 それは子供が新しい筆箱買ってもらって嬉しくて今使ってる筆箱わざと壊して、意気揚々と新しい筆箱を持っていくようなもんだよね、建設的じゃないよね。 って話をしたつもりだが。
616 名前:デフォルトの名無しさん mailto:sage [2017/11/17(金) 23:52:28.39 ID:RD2my8vU.net] クソ言語メンテするよりかは クソ言語の歴史を学ぶ方が苦労は少ないと思うよ。
617 名前:あ mailto:sage [2017/11/18(土) 00:01:16.23 ID:EluHaO9U.net] 皆が苦労した歴史のつまみ食いできる奴らの方が圧倒的に楽だし、そうすべきじゃん。苦労自体はせずに、>>555 で言う苦笑いだよ。 それに、それが本来あるべき姿の「昔の苦労」ってやつだろ。
618 名前:あ mailto:sage [2017/11/18(土) 00:01:49.78 ID:EluHaO9U.net] >>599 そのとおりだと思う
619 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 00:47:30.46 ID:1bJyC4s0.net] ペェ〜ルとプェチピィは真性糞ゴミで 未だにそんな言語しか使えない連中は糞以下の蛆虫って みんな共通認識もってるんだからそれでいいじゃん
620 名前:あ mailto:sage [2017/11/18(土) 00:59:36.61 ID:qQnEMcHh.net] 日下部の名台詞「ということにしたいのですね」が浮かんだわw 今日日、perlしか書けない奴なんか絶滅してるか、片手間にsed代わりにperl使う他の言語使える奴になってるだろ。
621 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 01:11:50.72 ID:+edZtTCr.net] あは自分が全く相手にされてないことに気付いてないのだろうか perl以前にその冗長で可読性の低い自然言語をなんとかすることを考えたら? 君みたいな人は話し言葉や書き言葉に対してもプログラミング言語なんかと同じように論理的に距離をおいて考えることを身につけるといい だいぶマシになるから
622 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 01:47:08.81 ID:w2/CbKAa.net] すまん。>>598 の翻訳だれか頼む
623 名前:あ mailto:sage [2017/11/18(土) 01:56:14.42 ID:qQnEMcHh.net] まあ、建設的な事も意見も言わずに、論旨も汲まずにシンプルに発言だけを否定していくと楽だよね。 俺もそうしようかなと思うぐらい。
624 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 01:57:35.94 ID:+edZtTCr.net] 多分だけど、 新規とはいえ、経験やライブラリといった既存資産は開発生産性に大きく寄与するものである。 それでもなお新しい言語を使いたいなら、捨てるものに見合った見返りがあることを証明すべきである。 そのためには我々は既存言語を知らねばならないのだ。 という趣旨のことが言いたいんだと思う
625 名前:あ mailto:sage [2017/11/18(土) 02:01:09.24 ID:qQnEMcHh.net] >>604 端的に書くと理解できない、一つ一つ説明すると冗長だと言う。 毎回随分な事言うなぁ。 まぁ、相手にされてないのだろうか、という相手をしてもらえるだけ広栄だと思っとくわ。
626 名前: [] [ここ壊れてます]
627 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 02:05:40.25 ID:w2/CbKAa.net] >>607 サンクス。だいぶわかりやすい。 もしかして、そもそも>>577 の >>558 の >誰がどこで「新規でperl」って書いたのか、書いてないものが書いてあるように見えるのってちょっと精神的に破綻してるよね。 に対する反応としての >>577 の >次世代言語スレで新規じゃない話してる奴ってなんなんだ だって伝わってないのか??? 俺は「新規で作成するなら旧、現世代の言語なんてあり得ないよね」とか一言も言ってないのに、その意見への反論を俺にぶつけられても意味わからんぞ??
628 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 02:06:52.93 ID:w2/CbKAa.net] >>608 端的冗長以前に文が下手糞。 >>607 を見習え
629 名前:あ mailto:sage [2017/11/18(土) 02:09:29.60 ID:qQnEMcHh.net] >>607 ちょっと違う。 既存のものとは世代が違う「次世代」というものを議論したいならば、 少なくとも既存の物がどういうもので、何かその「次世代」と違うのかわからん、単なる「新しいよくあるゴミ」ではないと言えない、ってのが前半。 旧世代言語はもう使うべきではない、と言う発想が、「旧世代言語は語れるほど知らないが、もううんざりして嫌いだし、次世代言語は楽しそうだから」と言う所から来てるなら、 ほんとに新しいおもちゃを「道具だ」と言い張って、今まで立派に道具として成り立っていた道具をわざわざ壊して捨ててまで学校に持っていく子供と精神性が変わらん、と言ってる。 見返りはその道具が本当に良いものであれば、あとからついてくるから割とどうでも良い。 考え方の問題。
630 名前:あ mailto:sage [2017/11/18(土) 02:09:54.22 ID:qQnEMcHh.net] >>610 違うよ
631 名前:あ mailto:sage [2017/11/18(土) 02:11:25.91 ID:qQnEMcHh.net] >>609 伝わってないな。 だって、次世代言語スレで、旧世代言語を無視できる方が頭おかしいと思ってるから。
632 名前:あ mailto:sage [2017/11/18(土) 02:13:33.66 ID:qQnEMcHh.net] >>611 三行目、「わからん、単なる」→「わからんと、単なる」だな。ごめん。
633 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 02:15:43.13 ID:pKok+plq.net] Uberが言語(と称する何かを)発表したけどもろPythonよな 言語ではない気がするが一応 docs.pyro.ai/
634 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 02:17:27.19 ID:w2/CbKAa.net] >>613 俺は「旧世代言語を無視しろ」とは少なくとも>>577 で言ってないぞ ただ、「新規でperl使う話してない」っていうから、「新規プロジェクトに使う言語の話しろよ」って書いただけだぞ
635 名前:あ mailto:sage [2017/11/18(土) 02:24:02.32 ID:qQnEMcHh.net] >>615 これ割と面白いな。ナナメに読んだ感じpythonに確率分布と確率勾配なんかの計算をを苦しみのない形でライブラリとしてのっけてる感じ。 >>616 あ、なるほど。それは読み違えてたわ。 マジで申し訳ない。 ただ、新規プロジェクトなら余計に過去の苦しみは引っ張り出してきて、「本プロジェクトの課題と目的」みたいな節に並べるかもしれん。
636 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 02:24:39.50 ID:w2/CbKAa.net] 「旧世代言語はもう使うべきではない」とか「新規で作成するなら旧、現世代の言語なんてあり得ないよね」とかって俺の意見じゃないんだよな なのにその意見への反論持ってこられても意味わかんね〜 たしか、ちっちゃい子供ってAさんとBさんの意見の違いを区別出来ずに自分or他人になるんだっけ? こんなん困るわ
637 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 02:26:56.40 ID:w2/CbKAa.net] やっぱそこか ちょっと他の人に聞きたいんだけどさ 俺は 「旧世代言語はもう使うべきではない」とか「新規で作成するなら旧、現世代の言語なんてあり得ないよね」とか言ってるように見えた?
638 名前:あ mailto:sage [2017/11/18(土) 02:28:53.50 ID:qQnEMcHh.net] >>618 すまなんだ。IDまで見てなかったわ。そもそも俺もちょくちょくID変わるし。
639 名前:あ mailto:sage [2017/11/18(土) 02:30:56.33 ID:qQnEMcHh.net] そこまで個の意見読めてるのか俺も気になる。 赤くなるのは俺ぐらいのスレだし。
640 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 06:18:04.79 ID:MB5v83Xq.net] 覚えた言語を捨てる勇気が無い奴は、その言語を肯定して 自分に言い訳をする卑怯者だよ。
641 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 07:09:31.95 ID:Q2wZVPR6.net] ガイジばっかだな
642 名前:デフォルトの名無しさん [2017/11/18(土) 10:21:01.98 ID:9bGbf/q7.net] 自己紹介かな?
643 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 10:59:14.98 ID:lptBNr7G.net] >>619 簡単な話 そいつの相手してもなーんも得るもん無いから君は最初から放置
644 名前:すべきだった そいつは病的なしったか自己弁護野郎で 自分の頭の悪いことすらを、文章の「端的冗長」などという問題に置き換えちゃってる それも、何度も何度も何度も何度も、絶対最後はそういう逃げに走ってる 悲しく単調な茶番劇 [] [ここ壊れてます]
645 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 11:33:42.61 ID:ptgryUw4.net] 端的に説明するとそうなるね
646 名前:あ mailto:sage [2017/11/18(土) 11:53:18.33 ID:F+BjC4W7.net] 間違った事は言ってないつもりだし、明らかに間違えたら認めてるぞ。 冗長だから理解できない、話が下手だから理解できない、に俺は持ってって無いじゃん。
647 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 12:06:38.87 ID:qKgE/Foz.net] あガガイのガイ ペェ〜ルヴォーイか?
648 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 12:07:15.85 ID:qKgE/Foz.net] それとも屁臭いプェチのゲリクソピィ虫か?
649 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 12:07:56.35 ID:qKgE/Foz.net] 頭の$見えてるぞ はやくプェチピィを保守する工程に戻るんだ
650 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 12:07:56.84 ID:D8muQy7+.net] 何回か間違って認めているのに同じ間違いを繰り返すのは、学習能力のないガイジとしか言いようがない 話してる最中に「もしかして俺が間違ってるかも」って疑ったりしないんだろうな
651 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 12:30:01.33 ID:lptBNr7G.net] 高速逆走ボケ老人「なんてこった!ワシ以外の全員が逆走しとる!」
652 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 13:08:47.79 ID:9rFYKu0I.net] そもそもパールやプィエッチピィを少しでも評価する下痢クソ野郎がなんで次世代言語議論スレにいるのか 俺にはわかりましぇーん
653 名前:あ mailto:sage [2017/11/18(土) 13:40:56.71 ID:F+BjC4W7.net] >>633 そりゃ極端だろ。
654 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 13:57:53.12 ID:zdXSEhFu.net] perlやphpしか選択肢がなかった貧しい時代もあったんですよ!!!
655 名前:あ mailto:sage [2017/11/18(土) 13:59:11.15 ID:F+BjC4W7.net] 普通にCで書いてたり、極端なところだとbashのcgiとかもあったなぁ。
656 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 14:04:31.33 ID:9rFYKu0I.net] 選択肢がなかった。それは残念、悲しい時代でしたね だからこそそれは否定されなければいけないと思うんですけど その時代を肯定しないと精神崩壊するような老害がなんでこのスレにいるのかって聞いてるんですよー
657 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 14:05:36.40 ID:zdXSEhFu.net] >>637 あっさんを馬鹿にするやつはPで殴り殺すぞ!この野蛮人!
658 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 14:07:15.03 ID:9rFYKu0I.net] 汚物できゃっきゃしてるやつの方が野蛮人ではありませんこと?
659 名前:あ mailto:sage [2017/11/18(土) 15:33:24.85 ID:eanOOMuW.net] >>637 単に否定されるべき、ではなくて、より高度に「専用品」が作られてきたようなもんで、 要は適材適所なのよ。今のperlの残り方見てもわかるように。 濫用はもちろんいかんが。
660 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 16:05:50.83 ID:9rFYKu0I.net] ウンコの適所って? それしか選択肢がなかった哀しい時代ならともかく今ウンコの適所を探すやつがなんでここにいるのって何度言ったらわかるのかねー?
661 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 18:24:47.03 ID:ZQLxHiSg.net] タイムリーにスラドの新システムがperlだな 結局perlが可搬性最強ということらしい
662 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 19:14:21.75 ID:9Hd4TP3A.net] 最近の言語ってclassは無くなって構造体にメソッド生やしてclassっぽく使える言語が多いイメージだけど この場合の設計はオブジェクト指向的にするのが多いのかな
663 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 19:54:43.23 ID:/CJztcmS.net] そういうのは基盤領域が中心だから、 ビジネスドメインのモデリングとは違ってデータはデータとして真面目に設計するでしょ
664 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 20:24:42.14 ID:ZQLxHiSg.net] ああいうのって、ウィンドウライブラリみたいな実装継承が中心になるようなやつは 面倒くさいんだろなーと思って眺めてる というより初期のOOPLが実装継承が中心だったのは まさにウィンドウライブラリ作り
665 名前:たかったからだろうな GUIをHTMLにできるようになったからウィンドウライブラリから開放されたみたいな勝手な想像 [] [ここ壊れてます]
666 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 21:53:31.79 ID:u/9oqFXg.net] P言語っていうウィキペディアの記事あるけど、Pythonに失礼すぎん?
667 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 22:31:09.78 ID:ZQLxHiSg.net] MicrosoftのP言語じゃないのかよw
668 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 22:37:11.57 ID:KYuTS+5W.net] P-Code のことかと思ったぜ
669 名前:デフォルトの名無しさん mailto:sage [2017/11/18(土) 22:50:10.69 ID:nVR7ASrc.net] ヒカシュー プラスチックス P-MODEL
670 名前:あ mailto:sage [2017/11/19(日) 00:07:06.15 ID:LuozPxgy.net] 適所を探すと言うより、最初からそれが無難な手だとわかってるから使うんだよなぁ。 適所を探して彷徨ってるのは、それこそ現世代で活用方法がイマイチ定まってない、次世代言語だと思うけど。 いちおう補足するが、単に旧世代、現世代言語を使う事を肯定して次世代言語を否定してるんじゃないからな。 それで充分なら、それを使えばいいってだけで。 僕鉛筆削れないから、ケータイに打ち込んでメモします、それが正しい。この時代鉛筆なんか使わないっしょ、常識的に考えて。削れないと言うか、削らなくて済むことを美徳として受け取ってほしい、みたいな極論に走るんじゃなくて、 鉛筆使うと手で擦ると汚れる、ボールペンって一回書いたら消せない、だからケータイでメモします。電池が切れると読めないって問題は認識してます。って話であるべきだと思うって事。
671 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 00:25:54.36 ID:pBpWIwqa.net] すまん三行でお願い
672 名前:あ mailto:sage [2017/11/19(日) 00:31:10.87 ID:LuozPxgy.net] 確実に使えると断言できるなら何でも使えばいい。 確実にこれにハマる!と断言しづらいのは次世代言語と言われる言語の方 ただし、次世代言語を否定して、旧世代言語を肯定してる訳じゃない、次世代言語が肯定できるならばそれもよい。かな。
673 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 00:31:32.72 ID:sfWxFlOB.net] 鉛筆とか携帯とか子供のおもちゃとか謎の比喩なんなん?
674 名前:あ mailto:sage [2017/11/19(日) 00:36:48.49 ID:LuozPxgy.net] なんでもないよ。もし理解できないなら可哀想だなと思ったゆえの空回りだから。
675 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 00:40:49.43 ID:IgGN+feq.net] 意訳 旧世代言語には実績があるので使いどころは明らか。 対して、次世代言語はそれを模索している最中だ。 明らかに次世代言語が適しているという明確な理由がない限り、実績のある旧世代言語の方が推奨されるのは当然であろう。 なぜこう書けないのか
676 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 01:05:24.17 ID:kYPwLJsc.net] たとえば、>>654 を正常な人間が書いたとしたら、 (もし理解できないとしたら可哀想だな、つまり、)理解しやすいように配慮した。 (空回りだから、と言いたいが、冒頭の「なんでもないよ」と被るので省こう) という思考をすると思うんだよな 彼はADHDなので書いたそばから頭から抜け落ちてて、こういう頭の中でのフィードバックが機能してないんだろう
677 名前:あ mailto:sage [2017/11/19(日) 01:15:07.73 ID:LuozPxgy.net] >>656 そんなに高尚なもんでもなく、単なる嫌味だよ。残念だけど。
678 名前:あ mailto:sage [2017/11/19(日) 01:24:47.29 ID:LuozPxgy.net] >>655 旧世代言語が推奨される、とは言ってない。 次世代言語を推奨するに足る明確な理由があるのであれば、そうすべきとは言ってる。 「実績」を根拠にした「使いどころ」の2行目に対して、2行目はひとつの代名詞で受けるのもどうかと思うし、そもそも「それら」複数で受けるべきでもないんじゃないの? 実績と使いどころって前提に対して出す結論が「適す」「推奨」なのも変じゃん。 それでいいならそう書くけど。 次世代、現次世代の二者択一ではなくて「そもそも買ってくりゃいい」
679 名前:あ mailto:sage [2017/11/19(日) 01:27:40.75 ID:LuozPxgy.net] 途中で書き込み押しちゃった。 「そもそも買ってくりゃ良い」「既存のものが望む言語ではないが存在する」
680 名前:ネら、それは、どちらの言語も選ばずに問題解決するんだし、作りたいものの性質によってベストも変わるんじゃない? [] [ここ壊れてます]
681 名前:あ mailto:sage [2017/11/19(日) 01:31:04.27 ID:LuozPxgy.net] >>658 ごめん、よく読んだら行数無茶苦茶だったわ。代名詞で、受けてるのは三行目な。
682 名前:デフォルトの名無しさん [2017/11/19(日) 02:51:34.18 ID:QT7cD2cz.net] >>657 , 658 言葉遣い(言語定義)に関して「変」とか「べき」とか相手が間違っているかのように言っているが、 使い方が仕様として定められているプログラミング言語とは違い、 自然言語では「大多数の人間が直感的に理解できる」言葉遣いこそが一般的に好まれる傾向が強い。 つまり、自然言語の場合は自分以外の大多数の他人の総意により言葉遣いの正しさが決定される。 そして、君は言葉は>>655 と比べて大多数に対して理解されやすい言葉なのだろうか? 嫌味というのは上記のように反語のかたちで使用する方が相手は理解しやすいと私は思う。 (わざと相手に理解されないようにさりげなく使用する嫌味もあるが) 「理解してほしい」という気持ちがあるのならば、言葉選びには多少注意を払ったほうが賢明だ。
683 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 03:32:31.76 ID:aH5RZwMw.net] ただでさえ壊滅的な文章力なのに、嫌味やら比喩やらぶっ込もうとしてさらに壊滅的になった結果がこれなんどなあ
684 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 03:48:17.16 ID:sfWxFlOB.net] 知識も文章力もガバガバなのに嫌味だけは一丁前にぶち込んでくるの凄いわ
685 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 03:57:01.75 ID:5+BpDy9G.net] 文章力はガバガバ、文章力を指摘されたら怒って相手の理解力に転化しようとしてたこともあったけど、本人は人の意見もちゃんと区別出来ない理解力 すごい奴だ
686 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 08:29:39.37 ID:kYPwLJsc.net] >>655 の「それ」が指すのって、実績かもしれないし使いどころかもしれないし前文の文意全体かもしれないけど どれでも意味は変わらないので曖昧なままでいいと正常な人間は判断するんだよ ADHDの人みたいにそんなことをいちいち確定させないと頭のスタックがオーバーフローしてしまう、なんてことはないの
687 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 09:22:17.02 ID:kYPwLJsc.net] 一般論と自分の意見をごっちゃにしてるのは彼のレスが読みづらい大きな一因だな。 (彼以外にとって)>>655 があくまで一般論を述べているのは明らかであり、だから旧世代言語を使えという主張ではない。 俺はできれば次世代言語を使いたいという個人的意見を入れたいなら>>655 の後に付け足すだけでいい。 一般的な事実+主張 という教科書的な論述の形になる。
688 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 09:33:41.74 ID:d5pZv6yX.net] お前らガイジをデバッグしてやってるつもりかもしれんが そーいうのは医者かそいつの身内に任せとけ そんなカンタンに直らないことだから放置されて今に至ったの分かるでしょ? 今後も、基本的にそいつは放置され行く運命なんよ…
689 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 10:52:39.44 ID:udpY6AOX.net] >>645 今の知識から適当に過去を想像するとそう見えるのかもしれないけど、 Smalltalk も C++ も全くそれに当てはまらない。
690 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 11:51:15.79 ID:pBpWIwqa.net] 大学とかの学術系の人達って、オブジェクト指向言語を、 GUIのWindow制御と関係付けられて語られるのを 非常に嫌がるよね。
691 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 12:14:49.69 ID:udpY6AOX.net] だってそれ一部の linux の gui だけだからなあ 要は「きっとそうに違いない」レベルの嘘なんだもん
692 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 12:16:52.00 ID:udpY6AOX.net] 嘘は言い過ぎか。俗説というのかな。
693 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 12:40:38.90 ID:rjDl7x2h.net] linux系の人達はシェルスクリプトでできることをC言語 (に似た言語) で書くのが嫌がる 「でもスクリプトでGUIは無理だよね」とかいう人は 自分自身が「スクリプトを非常に嫌がる人」だと自覚すればいい 他人のことは気にするな
694 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 13:56:02.98 ID:pBpWIwqa.net] MicrosoftもWindowsのGUIプログラミングにオブジェクト指向を最大限 利用してたけどな
695 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 15:53:23.83 ID:PchCVsrm.net] 動的な要素が必要なものなら必然的にオブジェクト指向的な何かはでてくるだろうね。 逆にアルゴリズムみたいな静的なコードにはあんま馴染まない。
696 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 16:05:17.87 ID:8GqCvnDK.net] >>645 やってみればわかると思うが ウィンドウシステムの実装で多用するのは 継承よりもコンポジションだ
697 名前:あ mailto:sage [2017/11/19(日) 17:06:50.76 ID:LuozPxgy.net] 直感的に理解した気分になれれば、正誤は気にしない。 これは理解に苦しむわ。
698 名前:あ mailto:sage [2017/11/19(日) 17:10:27.69 ID:LuozPxgy.net] ADHDと言う病名がつく前から、「してはいけない、気をつけるべきこと」と指導教官に言われて徹底した事だけどな。議論の際の言葉の揺れは。 文は長くなれど語彙を少なく、時制の一致、代名詞は慎重に使用、もし使用するならば数詞は一致させる。 議論ごっこしたいだけならもう黙るわ。健全でもなんでもないよ。
699 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 17:33:49.09 ID:wGu3G50A.net] >>677 議論ごっこって具体的にどういうことを指してるの? 健全でもなんでもない、ってことは不健全でもないと理解していいの?じゃあ何が言いたいんだ? あまりにも曖昧すぎる
700 名前:678 mailto:sage [2017/11/19(日) 17:42:29.27 ID:wGu3G50A.net] 君自身は気付いてないみたいだけど、君の文章を君の言うような基準で評価するとこうなるんだよ 落ち着いて他の人のレスをじっくり読んでみると、曖昧な言葉遣いに見えて意外と厳密な言葉で書かれてることがわかるはずだよ 君自身のレスに比べれば遥かにね
701 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 17:51:34.62 ID:5+BpDy9G.net] 言葉の揺れは注意されたようだが、文章力は指導しきれなかったようだな 指導教官に出会う前は今の文体+表記揺れだったんだろうか 指導教官の苦労が垣間見えて涙が出ますよ
702 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 17:54:31.63 ID:rjDl7x2h.net] 大企業の偉い人でも決算や証明書に嘘を書いてしまう 一般人が文章を正確に書けるわけがない 嘘を書いたとしても反省したり罰を受けたりするようなシステムはもうないよ
703 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 17:57:34.18 ID:ij9+MaWL.net] 怒られた小学生のようないいわけ
704 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 18:04:01.39 ID:wGu3G50A.net] >>680 変に単語だけ注意したのが失敗だったのかもね それによって、ただでさえADHDで文章構成が苦手だったのが余計に単語に気を取られて全体を見れなくなってしまったんだろう 俺の上司もADHDだったけど、逆に全体の構成はおかしくなくて単語がおかしいタイプだったから、彼の文章に比べればずっと読みやすかった
705 名前:683 mailto:sage [2017/11/19(日) 18:07:44.39 ID:wGu3G50A.net] すまん自分で言っときながら曖昧だな 683の「彼」は「あ」を指す
706 名前:あ mailto:sage [2017/11/19(日) 18:55:31.75 ID:LuozPxgy.net] 伸びるなぁ
707 名前:あ mailto:sage [2017/11/19(日) 19:00:18.55 ID:LuozPxgy.net] >>678 以前、スレタイに議論がついていた頃にもうやってる、その話。 読んできて。二回するの嫌。 >>679 曖昧だよ。 >>680 苦労されてましたな。まぁそのおかげで英語で論文出すときに訳に苦労しない論文がかけてるし、知財部に怒られることもなく割と通るし、 先生様々だよ。 >>683 だってこれで苦労してねえもんなぁ。 誤解の余地が生まれるほど歪めて読みやすさを作らないと読めない時点でどうかと思うが。
708 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 19:31:13
] [ここ壊れてます]
709 名前:.14 ID:D9ZDsmXZ.net mailto: >>668 SmalltalkがGUIのために作られたのは純然たる事実じゃね 例え本人が否定していたとしてもそうだろう >>670 WindowsでもOWLから数えてMFC、VCL、WinFormsと歴代のGUIクラスライブラリは 全部実装継承中心だったぞ。JavaもそうだしNext→Macもそう [] [ここ壊れてます]
710 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 19:57:50.03 ID:5+BpDy9G.net] 今時学振とかでもとにかく一目でわかるように書けって指導されるのに、わかりやすさが二の次なんてことは断じてないゾ
711 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 20:21:05.83 ID:n7dw0jCn.net] 日本語についてはわかりやすさを重視するのに、 プログラミング言語となると抽象化が著しい関数型を推すお前らがわからない
712 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 20:26:43.14 ID:8AE8ty3K.net] COBOLは可読性が高いと言われて無かった?
713 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 20:48:08.24 ID:ij9+MaWL.net] mapとか内包表記は読みやすいからしょうがないね
714 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 20:54:36.63 ID:IgGN+feq.net] >>690 単位時間あたりで読める文字数を可読性と定義するなら可読性は極めて高い
715 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 21:17:43.05 ID:5+BpDy9G.net] 時間当たりのスクロール量を可読性と定義するならたしかに関数型言語は可読性が極めて低いな
716 名前:デフォルトの名無しさん mailto:sage [2017/11/19(日) 22:05:52.67 ID:CbJdE71W.net] >>687 SmalltalkはOS(しかしユーザーが全体を理解可能な)を目指して作られているからGUIがすべてではないよ? ▼Smalltalkの底を流れる設計思想 web.archive.org/web/20041016084842/http://marimpod.homeip.net/chomswiki/24#
717 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 00:18:08.04 ID:1/JOn/hh.net] 別にGUIだけではないが、GUIが最初からあったのも事実だろう
718 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 04:12:09.45 ID:SzQBx5h9.net] >>695 かなり初期(Smalltalk-72、74)にGUIは整えられたが、この時点で継承機構はなかった squab.no-ip.com/collab/uploads/61/smalltalk-72-1977.jpg そしてその後Smalltalk-76で継承機構が入ったのも、GUIだけのためじゃない (例えば、Smalltalk-76でGUIに使われるクラス数の割合を調べてみたら分かる) GUIはつねに&あくまでもSmalltalkの大きな野望(?)の一部にすぎないよ ジョブズみたいなのが色々見せられても、結局GUIスゲーで終わっちゃったって話はあるかもしれんけど https://pbs.twimg.com/media/DM3GJ4lUIAESUOx.jpg https://pbs.twimg.com/media/DM3GODAVwAEg3rP.jpg
719 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 04:48:00.39 ID:F1FX2mqd.net] >>696 その漫画クヤシク
720 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 05:54:47.96 ID:HaLrPJzK.net] >>697 ほらよ つ https://www.shogakukan.co.jp/books/09187569
721 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 08:17:47.25 ID:ste5Kj49.net] 一部だけ切り出すと学習漫画みたいだな。
722 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 08:33:10.27 ID:uxY9p7WM.net] いかつい絵柄の進研ゼミ
723 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 09:43:36.06 ID:1/JOn/hh.net] >>696 貴重な資料をありがとう で、物は言いようみたいであれだけど、Smalltalkの歴史はそのままOOPの歴史であり GUIを実装する試行錯誤の歴史なんだから、継承が後からなのはむしろ当然で 継承がGUIに有効なことの左証では
724 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 11:23:22.73 ID:rQ5oV85S.net] >>701 > 継承がGUIに有効なことの左証では 実装継承がGUIに *も* 有効な事はだれも否定してないと思うよ ID:ZQLxHiSg の > というより初期のOOPLが実装継承が中心だったのは > まさにウィンドウライブラリ作りたかったから や ID:D9ZDsmXZ の > SmalltalkがGUIのために作られたのは純然たる事実じゃね > 例え本人が否定していたとしてもそうだろう というように、GUIやそれに
725 名前:付随するウインドウシステムの構築のみに実装継承の目的を限定したり SmalltalkがGUIだけのために進化してきたかのような言い方は少々視野が狭すぎませんか?という話 [] [ここ壊れてます]
726 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 11:43:35.09 ID:lEG6T20x.net] 値型のメンバー変数を作れない言語だったら 無駄なポインタを減らすために実装継承が有効だろう
727 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 15:33:48.50 ID:upeMVrL4.net] GUIはオブジェクト指向のインスタンスだしょ。 インスタンスは抽象化の具現化の一つで抽象化とは 実体のない仮想的なオブジェクトの集合であり、 その存在を具現化して表現してしまった瞬間 それは実体化し具現化してしまうのだよ。
728 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 20:36:31.84 ID:F1FX2mqd.net] >>698 ありがと! 面白そうだなこれ
729 名前:デフォルトの名無しさん mailto:sage [2017/11/20(月) 21:00:50.26 ID:O0QjCqg/.net] 新人プログラマがPHPを学ぶべき理由 https://qiita.com/Gazelle/items/8817a472f33d5163a5fd
730 名前:デフォルトの名無しさん mailto:sage [2017/11/21(火) 00:59:44.39 ID:lnnQeNMw.net] PHP書いてるのなんてジャップランド土人村の頭がチンパンジーのエスアイアイのオサールサンダヨーだけだよー
731 名前:デフォルトの名無しさん mailto:sage [2017/11/21(火) 01:16:15.02 ID:LMCDauea.net] https://hhvm.com/blog/2017/09/18/the-future-of-hhvm.html PHPといえば顔本のHHVMの今後 HHVMは来年にはPHP5のサポートを落として、PHP7には寄せずにHack言語に絞るそうな やっぱり顔本もPHPは焼き払いたいんだな。Hack言語とやらがどれだけPHPから脱却できるか
732 名前:デフォルトの名無しさん mailto:sage [2017/11/21(火) 01:31:02.78 ID:wI5wFT4b.net] 技術選定の段階でいい加減にPHPを選んだクズ野郎は 相当恨まれてそうだな いやどこの下痢糞プェチピィ現場でもそうだろうけど
733 名前:デフォルトの名無しさん [2017/11/21(火) 02:04:29.26 ID:XgRd72eK.net] Hack言語はダメだろ。発表から大分立ってるのに進展が遅い。 フェイスブックの中でも重視されてないだろ? 必要性があるならどんどん開発してるはず。
734 名前:デフォルトの名無しさん mailto:sage [2017/11/21(火) 04:32:17.44 ID:1CMkZgYy.net] それぞれ問題に対して最適な言語というものがあるわけで 何もかもに適した言語というのは存在しないよ。
735 名前:デフォルトの名無しさん mailto:sage [2017/11/21(火) 08:13:20.38 ID:wI5wFT4b.net] 何もかもに適してない言語ならありそうだな いやどのPのこととは言わないがな?
736 名前:あ mailto:sage [2017/11/21(火) 08:13:51.83 ID:QsmG8G9Z.net] 単にディスるだけなら簡単だからな。 とはいえ、phpなんかにも「一番無難」以外に新しいメリット入れてかないとな。 もちろん他の次世代言語も「一番無難」を目指す所はあったほうがいいと思う。 .netに対してIIS、javaに対してTomcatみたいに、Dockerとか仕組みごと出す前にその言語の用のアプリケーションコンテナを強く押せば、一定のパイはあると思うんだが。
737 名前:デフォルトの名無しさん mailto:sage [2017/11/21(火) 08:46:28.66 ID:JYBkdGYB.net] PL/Iのことか 理路整然としてて意外と良い言語だそ 業務系がC系やVBに流れることなくこのままの方向で進化してれば、業務系の開発は今よりずっとマシなものになってたと思う
738 名前:デフォルトの名無しさん mailto:sage [2017/11/21(火) 22:27:55.44 ID:z7TaMi5f.net] Smalltalkって何であんなにゴミなの?
739 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 00:13:25.96 ID:rbs65c9L.net] PHPのどこが無難やねん PHPでまともにシステム作れてた案件1割もなかったわ
740 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 00:19:45.97 ID:H40m9dAW.net] WebとGUIのデザインって時代背景に依存する消耗品じゃね?
741 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 01:10:13.88 ID:1Sdpbsa5.net] >>7
742 名前:08 面白いなHackは独自言語に進化するんだ。 そう言えばHackのXHPって面白いな。 ReactにおけるJSXみたいなもの。 PHPではhtmlコード部分はただのテキストでHTML 部分の構文がどうだろうと無視されるけどXHPはHackの処理系で妥当性が検証される。 メリットとしては事前に構文がチェックされるのと XSS対策くらいだろうか?詳しい人に聞きたい。 Reactみたいに独自のタグが作れるとかだったら面白いな。 [] [ここ壊れてます]
743 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 06:55:53.18 ID:2YdhEIzW.net] >>715 今頃来ても遅いよ
744 名前:あ mailto:sage [2017/11/22(水) 08:40:43.24 ID:MjBhGus4.net] >>716 結構あるぞ。
745 名前:デフォルトの名無しさん [2017/11/22(水) 09:16:12.81 ID:vFQO0703.net] 求人みると未だにphpが一番多くね
746 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 10:02:13.08 ID:eHFeMVAT.net] >>710 単純に旧PHPのサポートしなきゃいけなかったから実体反映遅れてんじゃねえの? 最近のHHVMはHackのバイトコード実行する機能入れてるし 文法はシラネ
747 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 13:15:10.00 ID:0VsrTrOA.net] >>721 日本全体で見れば店員や肉体労働の求人が多いのと同じことでは。
748 名前:デフォルトの名無しさん [2017/11/22(水) 13:51:58.93 ID:h8Su9zOg.net] >>723 なるほど、頭を使わんでいい仕事は求人が多いってことか。 なんかすげー納得した。 それを言われて気づいたんだが、「PHPが世界で一番使われてる言語だから一番良い言語」って理屈は 「ハンバーガーとコーラが世界で一番売れている食べ物だから一番うまい食べ物」って理屈と同じってことだな。
749 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 17:56:25.22 ID:GZ19t0eq.net] >>714 > PL/Iのことか > 理路整然としてて意外と良い言語だそ 言語仕様が大きな言語は最初から慎重に言語設計がされているから理路整然としているし その後で言語仕様の拡張をしてもグダグダになりにくい(理路整然さを保った拡張が可能なことが多い) これはPL/Iだけでなくそれ以降に開発された(各々の開発時点で最も複雑とされた)言語であるAlgol 68やAdaでも同様 > 業務系がC系やVBに流れることなくこのままの方向で進化してれば、業務系の開発は今よりずっとマシなものになってたと思う Cのように本来は小さく単純なものとして産まれた言語は拡張に耐えるような基本設計になっていないので 拡張するとグダグダになり勝ち ちょうど最初から巨大なビルとして設計されたビルは通路(人の動線)やエレベーターや水回りや電気系統などが整然と配置され その後の多少の拡張や変更にもそれらの整然さが余り乱されないですむが、最初に小さな建物として作られた旅館が 色々と増築を受けると通路(特に避難通路)が迷路の如くなり電気配線や水回りの配管もほとんど誰も知らない謎めいた代物に なるのと似ている
750 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 18:00:15.91 ID:NgxFNsMl.net] Java や C# は巨大ビルですか?それとも旅館ですか?
751 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 18:40:29.63 ID:/zFKpQSs.net] PL/M はどうなん?
752 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 19:52:21.96 ID:my8MUI48.net] PCは部品を増設できるからダメ SIMロックしたスマホが最強に儲かる ってことだろ
753 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 22:10:06.01 ID:DU4siyMG.net] >>721 メンテナンス放り出す奴が多いんだろ。
754 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 00:57:55.01 ID:rvi39iUw.net] >>723 >>724 ここ最近で一番的確なレスだね
755 名前:デフォルトの名無しさん [2017/11/23(木) 09:13:02.77 ID:XBDj7YCq.net] >>724 という勘違いな。 頭使わないのは、仕事じゃなくて単なる作業だからいずれは機械に取って変わられる。 どんな仕事
756 名前:ナも、マトモな奴はちゃんと頭使ってる、って事が社会に出たら分かるよ。 [] [ここ壊れてます]
757 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 09:16:33.31 ID:SpN6ohaw.net] 実際にはExelのマクロ使えば数秒で終わるような作業を 毎日数時間かけてタラタラ打ち込んで給料を貰ってる事務職は大量にいるよね
758 名前:デフォルトの名無しさん [2017/11/23(木) 09:22:09.16 ID:XBDj7YCq.net] >>732 そのとおりだ。 それで稼いだカネをITに注ぎ込んてくれるんで、プログラマーの仕事が有る、っていうのも事実だけどな。
759 名前:デフォルトの名無しさん [2017/11/23(木) 10:22:33.43 ID:e8aKLB85.net] >>731 なにぃ⤴!? 社会に出てるのに分からなかったよぉ。俺ってバカなんだなぁ⤴ 社会に出てる君にはそのことが分かるんだろうなぁ⤴wwwww すごいなぁ⤴wwww 少しまじめにレスすると「社会に出たら、まともな奴ってかなり少ないことが分かった」というのが俺の経験則だな。 大した根拠もなく、他人に勝手な偏見を持った発言をするのは控えたほうがいいと思うよ。 「こいつ、まともな人間じゃないな」と思われる危険性があるよ。
760 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 11:10:08.14 ID:e22cyQaC.net] 多数決だから まともなじゃない事象があっても確率が51%になるまで無視するから見えない
761 名前:あ mailto:sage [2017/11/23(木) 11:44:04.90 ID:HFglKCpm.net] 多数決は単なるきれいな暴力だからな。 きれいにお前らを封殺したいんよ、って意思表示も込められるくらいに腹に据えかねてるときしか使わん。
762 名前:あ mailto:sage [2017/11/23(木) 11:45:01.64 ID:HFglKCpm.net] 票が足らん?普段出ないような社員を「幅広い意見を募るため」と集めたるわ、ぐらいの時。
763 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 11:54:58.61 ID:KI69K7qK.net] >>733 だから、事務社員様の仕事を奪わないように、 業務モデルを効率化することなく 紙の上でやっていたことをPC上でやって 最終的に紙に印刷できなければならないのさ。 全ては事務社員様の雇用のために。
764 名前:あ mailto:sage [2017/11/23(木) 13:26:26.64 ID:VyGloF6k.net] 紙に印字できないといかんのはどっちかと言うと事務方よりITでないエンジニアの人の方がこだわるイメージだけどな。 医者は昔相手にしたことあるけど、常に野戦病院と化しても運用できる体制にこだわってたし、実際何度か近い大惨事を経験した。 機械屋も同じで、明るければ読める形での設計資料、過去整備記録、縮退運転切り替え要領書みたいなのにこだわってたな。 入力が楽になるのは素晴らしいけど、入力したものが必要な時って平常時とは限らない、みたいな思想だった。 いずれも、事務方のほうが力弱いから、負けた方の事務方は「今この場には必要ないかもしれませんが、こうすべきと言われてるのでオール電子化は反対です」と端的に言いよるけどね。
765 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 13:40:51.84 ID:DqyU4UwD.net] >>738 日本の受託ITにそれを批判する資格は無いんだよなあ 業務モデルを変えられないからIT屋に開発の仕事があるんだよ システムに合わせて業務変えられる民族なら、そもそも大抵の案件は出来合いのパッケージ使えば終わりということになっちゃう
766 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 13:50:02.49 ID:rvi39iUw.net] >>738 ウンコードにウンコード激盛大将軍してウンコードを積む作業を生み出す 現代の錬金術師ペチパー様のことかね?
767 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 19:36:28.54 ID:ZEemQUxM.net] Googleが採用決めたSwiftが覇権で決まりか
768 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 19:42:20.30 ID:rvi39iUw.net] バカ「うーん、これは適材適所だからPHP!wこれもPHP!wあれもPHP!w」
769 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 19:55:54.
] [ここ壊れてます]
770 名前:79 ID:fGVRHt7J.net mailto: >>742 まだバージョン0.4 なんでしょ?w [] [ここ壊れてます]
771 名前:デフォルトの名無しさん [2017/11/23(木) 20:55:11.34 ID:H0+gJnL1.net] AppleがSwiftやめるらしいが・・
772 名前:デフォルトの名無しさん [2017/11/23(木) 21:07:15.98 ID:99G+dhLG.net] >>734 >大した根拠もなく、他人に勝手な偏見を持った発言 724みたいなのも居るしね。 おま環で判断してないで、より良いものを探したら?
773 名前:デフォルトの名無しさん [2017/11/23(木) 21:11:45.46 ID:y4EH93iG.net] GoogleがSwiftってことはC++の代替ってことだよな。 あれ、Go言語はどうなるんだ。
774 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 21:13:15.54 ID:ZEemQUxM.net] >>745 やめるわけがない iOS 11やmacOS High Sierraで内部での採用も順調に増えてる
775 名前:デフォルトの名無しさん [2017/11/23(木) 21:31:24.03 ID:e8aKLB85.net] >>746 ん?ごめん。ちょっと意味が分からない。もう少し詳しく説明してくれ。
776 名前:デフォルトの名無しさん [2017/11/23(木) 22:09:26.36 ID:NGg/SBGT.net] 未だにObjective-Cのほうが安全という事実
777 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 09:28:48.51 ID:i/MfPYN1.net] うちは社内の保守的なエンジニアのおかげでSwift移行しなかった。 現状を見れば良い判断だったと思う。 RustもいずれSwiftと同じことになると思う。
778 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 10:17:28.01 ID:dmeeOCgJ.net] Swiftはプラットフォーム囲ってるからまだ無茶が効く 囲ってる訳でもないRustが同じことなんてしたら一瞬で客が離れるだけだわ。火狐の現状がRustの未来だ
779 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 10:22:52.20 ID:oidK8tqZ.net] RustはABIを安定させないことで最適化と改良の余地を残しているから 1アプリで完結するようなのはいいけど、基礎的なものを置きかえるには適さないんだよね サイズの問題もあるし ま、こんなこといったらC++含めて全部不適格だけどな C言語とJavaぐらいしか残らん
780 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 11:05:30.58 ID:qT2L8rY5.net] Fortran 使おうぜ
781 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 11:19:01.17 ID:KPD3W4uL.net] implicit、none(笑)
782 名前:デフォルトの名無しさん [2017/11/24(金) 13:55:24.14 ID:jGNvQKc+.net] まあ確かに、イミュータブルによる安全高速化、動的ってんなら既にHaskell、Erlang、Crystalとか有るので、Rustが何を目指してるかは俺には不明だが、Rustファンでその辺知ってる人居る?
783 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 16:59:13.92 ID:U+xL4cDR.net] Rust は haskell と同じ道をたどるんじゃねーの? ファン層も似たようなもんでしょ。 なんか理解しずらい高級な機能があるから覚えるとどや顔できるって感じで。
784 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 17:13:50.15 ID:ue40dD9y.net] >>756 GCのアルゴリズムが副作用だらけなのにイミュータブルとか嘘つくのをやめよう RustはGC無しがデフォルト 副作用はある程度容認する これなら嘘つかなくてすむ
785 名前:デフォルトの名無しさん [2017/11/24(金) 17:26:27.92 ID:jGNvQKc+.net] >>758 既存言語を貶してもRustの価値が上がるわけ無いじゃん。 GC無しってのはアプローチの一つなんだから、既存言語の改良では済まない「何か」を何故可決できるのかを訴求しなきゃ、「僕の考えた最強言語」で終わっちゃうってだけだよ?
786 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 17:41:02.84 ID:ue40dD9y.net] >>759 価値は上げなくてもいい 実際に上げなくても、上がった上がったって嘘つくだけでも別にいいよ 嘘に寛容な世界とはそういう世界だ だが、もし本当に価値を上げたいなら嘘つかない方法を考えた方がいいんじゃないか
787 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 18:49:38.61 ID:oidK8tqZ.net] GCってのは副作用を前提としたCPU上で副作用無しの世界を作る舞台装置なんだから 意味的な文
788 名前:蛯付けてもしょうがないだろ 「GCはリアルタイム性落ちるし並列化にも適さないから糞」とか性能の話なら言っていい [] [ここ壊れてます]
789 名前:デフォルトの名無しさん [2017/11/24(金) 18:59:37.89 ID:jGNvQKc+.net] >>760 何だ思い付き厨か、つまらん。 何でGCがポイントなのかも知らんのだろ。
790 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 20:47:57.51 ID:PBABpGxA.net] Rustつこてるもんは嘘つきってことでおk?
791 名前:デフォルトの名無しさん [2017/11/24(金) 20:51:48.12 ID:jGNvQKc+.net] >>763 お前さんの脳内世界でお好きにどうぞ。 計算モデルが違うもんを比較する事に意味があると言うなら、別に止めはしない。
792 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 20:53:34.51 ID:dpb7W7tM.net] Cに回帰しようよ
793 名前:デフォルトの名無しさん [2017/11/24(金) 21:35:13.18 ID:8Hl3EYId.net] >>756 , >> 759 Rustが目指しているのは基本的にはC++の後継。 C++との一番の違いは、Cとの互換性を捨てることで、より厳格(安全)に書けるようにすること。 厳格であることを実現するために、型システムとメモリ管理などについて比較的新しい概念を導入している。 型システム、イミュタービリティやその他の構文に関してはHaskellの影響を強く受けている。 メモリ管理については、従来のC++ではプログラマがメモリ安全を保障するしかなかったが、 C++14以降のスマートポインタやそれに伴うメモリオーナーシップの概念の影響を受けて、 所有権、借用(参照)、ライフタイム(3つ合わせて所有権システムなどと呼ばれる)という形で構文にそれらを組み込むことで、 コンパイラがメモリ安全を保障することができるようにした。 ただし、あくまでC++の後継なので比較的簡単にFFI(Cを呼ぶ)ことができるようにという点も意識して作られている。 だから、unsafeを使えば生ポインタを直に使えるように設計されている。 Haskellとの違いはGCを使っていないこととミュータブルも扱えるようにしていること等で、 結局、それらはC++並みの実行速度を実現するため。 他にも細かい違いは多々あるが、大まかにはこんなところかな。
794 名前:デフォルトの名無しさん [2017/11/24(金) 23:50:42.23 ID:IDv/pXr5.net] >>765 コンテナ系(hashmap等)を標準でサポートしてくれ
795 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 11:23:50.59 ID:IlEVZyoE.net] hashmapを仲間にしたら自動的にジェネリクスとGCが仲間になるパターン だから仲間にしない
796 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 11:32:23.12 ID:0CVryiWG.net] <generic.h>という伝説の凶悪なやつがあるぞ
797 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 12:28:18.18 ID:8YG3Nyuz.net] コンテナを提供するのに GC も Generics も要らんだろ
798 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 12:42:05.98 ID:fhJ9yNRw.net] >>726 本質的には複雑に積み上げられた旅館でしょ 多少はリフォームして整理されてるけど
799 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 12:52:41.30 ID:IlEVZyoE.net] >>770 ただのコンテナではなく標準のコンテナだろ GCとGenericsを使わずに標準やってる感を出せるか?
800 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 13:04:31.47 ID:0CVryiWG.net] qsortがあるんだからいけるいける 全部void*で
801 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 13:31:58.11 ID:IlEVZyoE.net] qsortの闇は深い void*もあるが、要素の比較が本当にO(1)なのかどうかの責任を呼び出し側に転嫁する
802 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 13:50:07.83 ID:mxSpQEHX.net] なんだその責任って
803 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 14:01:56.85 ID:OgtFvRib.net] 結局、型とgeneric(もしくはマクロ)をいい感じに統合するのって かなり難しいんだろう。 アドホックなやり方になりやすい。
804 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 14:38:33.35 ID:jw2r+SZ3.net] そこでC++ですよ
805 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 14:52:25.29 ID:8YG3Nyuz.net] 比較のオーダーはcのqsortに限らずなんでもそうだろ なんだかんだ言って C++ はよく出来てるよね。 constexp なんて他の言語も見習って欲しい
806 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 20:04:53.59 ID:FJeVGVwT.net] Fortranのparameterもその類いだっけ?
807 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 20:53:43.09 ID:OgtFvRib.net] >>778 あんなもんチューリング完全厨のおもちゃにしかなっとらんわ。 コード生成系のがまだマシじゃねーかと思う。
808 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 02:10:49.51 ID:346jd0X/.net] スレタイにjava君も入れてあげて〜 使用人口の多い言語ですお
809 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 03:30:42.95 ID:2SXqucAT.net] >>778 C++のconstexprなんて後発もいいとこだろ 本格的な先鞭としてD言語のCTFEがあって、その前にも幾らかある
810 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 09:00:59.28 ID:d0SJzNDY.net] 新興言語って少なくない割合でただの企業が持ち上げて広告収入に使ってるだけの詐欺なんだよな M$のTypescript然り、顔本のD然り、mozillaのRust然り、TypesafeのScala然り やっぱ実績の積み上がってる言語でないと信用ならん
811 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 10:19:24.37 ID:9HhrSf+y.net] >>783 両端十分な実績があるのですがそれは
812 名前:デフォルトの名無しさん [2017/11/26(日) 11:09:29.55 ID:2p4Fc6MR.net] >>784 まぁ、実績のあるなしなんて個人の主観によって変わるからな。 >>783 にとってはJava, C++, JavaScriptくらいの言語じゃないと実績があるとは言えないんだろう。 振興言語がそれらと同じ実績を持つためには一体どれだけの年月がかかることやら。
813 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 11:48:04.80 ID:CTy0yG7t.net] TypeScriptはともかくScalaは負債ばかりを残して消えた逆実績じゃね 唯一褒められる点としては関数型を流行させたこととKotlinを生み出したことかな
814 名前:デフォルトの名無しさん [2017/11/26(日) 12:05:21.53 ID:5kKfR77D.net] C++がモダン言語の基本なので小学校で教えるべき。
815 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 12:16:59.36 ID:WC95tXr9.net] すまん、C++を全て理解してしている奴おる?
816 名前:デフォルトの名無しさん [2017/11/26(日) 12:27:10.16 ID:5kKfR77D.net] 基本であるC++の理解なくして言語を語ることはできない。
817 名前:デフォルトの名無しさん [2017/11/26(日) 12:38:08.71 ID:jDig0YaY.net] >>783 林檎教団のSwiftも仲間に入れてあげて
818 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 12:44:57.21 ID:d0SJzNDY.net] >>790 Swiftは別に林檎以外で使ってるやついないしええんちゃう? 信者と信者相手にコード書く仕事してる人は大変だろうけど
819 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 12:50:49.50 ID:d0SJzNDY.net] Scalaは分かりやすい詐欺の典型だな あれのせいでログ基盤まわりのOSSは焼け野原になってる CoffeeScriptもちょっと古いが同類事例 GoやらTypescriptやらRustもそのうちそうなる Dはバズるまえに自滅したのが幸い
820 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 12:59:29.11 ID:2dqUl+IZ.net] 変な言語を使うとSCALAの様に開発が止まる危険性があるから 企業はリスクを回避するために独自の言語をつかって思い道理の仕様にできるように するのだろうな。
821 名前:デフォルトの名無しさん [2017/11/26(日) 13:04:59.50 ID:pQh5Iwo2.net] >>792 TypeScriptは大丈夫でしょ Goは危なそう。Dartの前例があるし RustはGCが邪魔でパフォーマンスが必要な一部の分野でしか使われないだろうからそんなに流行らないだろうし多分問題ない
822 名前:デフォルトの名無しさん [2017/11/26(日) 13:32:35.13 ID:2p4Fc6MR.net] >>794 Rust は Web assembly で化けることに儚い期待を抱いている。 でも、正直 Web assembly はそのうち GC に対応するって言ってるし、 GC に対応したらGo, C#とかが Web assembly に対応するって言ってるから そっちに取られるんだろうなぁとも思ってる。 そ
823 名前:烽サも Web assembly が普及すること自体いつになることやら。 [] [ここ壊れてます]
824 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 13:36:26.39 ID:prdTxomD.net] しかし CoffeeScript って何がだめだったん? es2015, typescript がそれなりにうまくいってるのを見るとよくわからんところなんだが。
825 名前:デフォルトの名無しさん [2017/11/26(日) 14:20:08.38 ID:pQh5Iwo2.net] >>796 ・構文が独特なのでJSerが手を出しにくい ・動的型付けなのでJSの根本的な問題解決にはなっていない
826 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 14:30:45.34 ID:qaxo00/7.net] >>793 Scalaって開発停止したの?
827 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 14:53:16.27 ID:d0SJzNDY.net] >>796 提灯記事にかける金と、企業間根回しの差 M$は金をかけまくって提灯記事を書かせまくり、Googleに根回ししてAngularをTypescriptで書き直させた 要するに大企業が本気で詐欺をやっただけ
828 名前:デフォルトの名無しさん [2017/11/26(日) 14:55:47.77 ID:pQh5Iwo2.net] >>799 こいついつものモジラアンチ君やん
829 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 15:49:18.98 ID:G/Azh+n8.net] sで始まる言語のうんこ率は異常だな
830 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 15:52:03.66 ID:yaxsKkRl.net] 言語そのものはともかくとして、狂信的な信者が付いてる印象。
831 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 15:52:09.22 ID:WC95tXr9.net] S言語
832 名前:デフォルトの名無しさん [2017/11/26(日) 16:50:11.59 ID:pQh5Iwo2.net] Pから始まる言語の間違えだろ
833 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 17:15:50.59 ID:F+UxV2LO.net] >>800 別人だが確かに言い回し似てたな……アレと同類はさすがに勘弁 Sで始まる言語っていうと、 Swift、Scala、Smalltalk、SMLがこのスレでよく見るやつだが 確かに信者がうるさい言語だな
834 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 17:37:24.93 ID:WC95tXr9.net] Swift信者とかおったっけ?
835 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 17:42:43.44 ID:XFPVp9gV.net] >>804 おっさんなんでpascalとprologしか思い浮かばない
836 名前:デフォルトの名無しさん [2017/11/26(日) 17:48:25.70 ID:pQh5Iwo2.net] >>807 Python/Perl/PHP
837 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 17:51:22.14 ID:WC95tXr9.net] なんでやPythonはええ言語やろ
838 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 18:40:28.50 ID:Keof52t0.net] Smalltalkは儲のロートルっぷりが笑えるがそれはさておき アンチの低脳っぷり(「うんこ」連発)と粘着が常軌を逸してて笑えない いずれにせよ迷惑だからこっちくんな
839 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 20:27:35.67 ID:692DDN1+.net] Pythonはたまたま流行ったお陰で便利なライブラリが沢山あるというだけで、言語仕様だけ見ると別に良い言語ではないよね
840 名前:あ mailto:sage [2017/11/26(日) 20:44:39.06 ID:9F+mQkF+.net] >>811 シンプルで良くない? 他の言語だと空ブロック書くところにpassって書かないといかんところなんか滅茶苦茶良い割り切りだと思うけど。 変な構文で逃げるんじゃなくて、基本構文の上でNOP書かせるとか潔いと思うけどな。 メソッド第一引数を隠さない、とか。
841 名前:デフォルトの名無しさん [2017/11/26(日) 20:50:16.59 ID:pQh5Iwo2.net] >>812 動的の時点で
842 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 20:50:40.88 ID:R1JePoM2.net] Smalltalkは信者のキモさだけは圧勝してるけど、言語自体の出来はTcl/Tkにも劣る
843 名前: mailto:sage [2017/11/26(日) 20:55:55.94 ID:rNgJnhxq.net] Python は private なメンバにもアクセスし放題だからね、言語としてどうかしていると思うときもある その場しのぎのお助け機能満載なところはあるね
844 名前:あ mailto:sage [2017/11/26(日) 20:59:00.64 ID:9F+mQkF+.net] >>813 型がなければ解決できない問題、ってのはあんまり無いからな。 型があるから解決できる、という触れ込みをあまり本気にしてもどうかと思う。 単に管理できない人が居るというだけ。 単なるlint目的なら、静的解析でもすりゃ良いと思うよ。 型がある言語には大体、型を無視できる構文があるようなもんで、ダックタイプにはダックタイプの利点がある。
845 名前:あ mailto:sage [2017/11/26(日) 21:06:26.91 ID:9F+mQkF+.net] >>815 作法とルールの違いだろうな。 やっては行けないっぽい事をマナーとして守れるか、 やっては行けないっぽい事を一律排斥するか。 後者で仕組み上排斥した上で、それでもどうしても必要だと構文を作ると、そこから「コンパイルは通るけど動かすと動かない」みたいに破綻する。結局動的より酷い。 void*に一度キャストするとか、リフレクションするとか、スタック書き換えるとか。極端だけど。 だから俺は紳士協定止まりで良いと思うけど。 「出来ないことはチェックされるんだから、チェックされないならやって良いんでしょ」みたいな奴が増えるのは、本来のメリットを壊してるようなもんだと思うけどね。
846 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 21:15:49.49 ID:tn24fxAD.net] 根回しといえば GCCにGoが速攻入ったのってどう考えても利権だと思うんだけど GNUはGoogleに乗っ取られてるんだろうな
847 名前:あ mailto:sage [2017/11/26(日) 21:25:46.01 ID:9F+mQkF+.net] >>818 もともとgccgoがあったからなぁ。 利権も何も、普通にgccのコミッタだった人がGoogleの人で、その人が「メインラインに取り込むわ」って言い出したのが7年前だぞ。 gcj外してgo入れようぜって言い出したのはたしかRed Hatの人。
848 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 21:38:43.34 ID:hdv2mB5M.net] >>814 その程度の嫌いでアンチ続ける執念がキモイわ
849 名前:デフォルトの名無しさん [2017/11/26(日) 21:39:41.93 ID:ejHa0S8T.net] Go人気なのか オブジェクト指向勢から嫌われてたのに なんかのフレームワークとか流行りのOAuth2とかが実装し易いとかあるん?
850 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 21:44:08.66 ID:jBgPnQyL.net] 気持ちよくおしゃべりしているあは依存型も知らん様子
851 名前: mailto:sage [2017/11/26(日) 21:51:01.31 ID:rNgJnhxq.net] まだ gcj の方が役に立つと思うのだが…openJDK に移行してしまったようだね
852 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 22:09:01.03 ID:692DDN1+.net] Idrisの話でもする?
853 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 22:26:19.56 ID:9HhrSf+y.net] TSやFlowtypeは明らかに救済だろ 地獄のごった煮なフロントエンドに一筋の光をもたらした 実案件でTS使ってるが、素のJSなら確実に破綻していた
854 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 22:30:22.25 ID:2SXqucAT.net] >>824 おう、Idrisの話をしよう
855 名前:あ mailto:sage [2017/11/26(日) 23:23:32.48 ID:9F+mQkF+.net] >>822 依存型が、いわゆる依存積みたいなものの事を言ってるなら、それこそ的外れ。 >>823 gcj、あんま良いところ無かったからな。 AOTぐらいだけど、パフォーマンスは落ちがちだったし。
856 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 23:24:09.06 ID:WC95tXr9.net] >>811 確かに
857 名前:あ mailto:sage [2017/11/26(日) 23:33:46.45 ID:9F+mQkF+.net] 積だけじゃなくて、和もそうだな。 どーせTypeScriptのUnionTypesあたりの、直和型と見せかけて、undefinedなんかも入りうる気持ち悪いものをありがたがってるんだろうけど。 それこそ意識高いHaskeller様で、何かとても良い空論でも教えてくれるのかもしれんけどな。
858 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 23:36:35.81 ID:jBgPnQyL.net] >>822 単に「型が無ければ解決できない問題は無いからなあ」という馬鹿発言を嘲笑してるだけだぞ 酒が抜けるまでレスすんな。酒飲んでないでそんなレスしかできないならトリップ付けてろ。NGに入れといてやるから
859 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 23:40:05.59 ID:i1z8rFU6.net] >>821 標準ライブラリが充実してる。 httpサーバが簡単に作れる。各種プロトコルも標準ライブラリに入ってる。 例えばsshもopensshに頼らずに自前で実装してる。 結果として外部依存が少ないバイナリが作れる。 https://mattn.kaoriya.net/software/lang/go/20170111165324.htm ってところが魅力。 あとオブジェクト指向的には継承の簡易さに対してデメリットがでかいことがわかってきたからgoの方向性はそんなに変でもないと思う。 後はコンパイルが早い。と言うかコンパイルの速さのために 言語仕様を妥協してるところがある。(継承がないのもコンパイルの速さを優先してる)
860 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 00:14:50.55 ID:kgsU8O53.net] 継承がない場合、GUIライブラリはどういう形に落ち着くんだろう?
861 名前:デフォルトの名無しさん [2017/11/27(月) 00:19:16.06 ID:VTdrxhpK.net] >>832 インターフェイスじゃね
862 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 01:24:38.90 ID:RuMmCyGV.net] E言語作ろうぜ
863 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 01:43:28.34 ID:HZrBFFjJ.net] >>830 横からすまんが、 依存型を使ったことがないゆとりの俺に依存型がないと解決できない問題の例を教えてはくれないか……
864 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 04:02:10.71 ID:UW/5w9w8.net] >>835 配列の静的な境界チェック
865 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 07:45:57.79 ID:2gW8tPht.net] Rustの静的型チェックは確かに発見困難なバグを見つけてくれる感ある 他のしょーもない言語の型チェックは ふつうにテスト書けば見つかるようなエラーしか見つからんので 正直、動的型付けとくらべて優位性が無いわ
866 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 08:00:20.85 ID:lA4+sBYi.net] (一般的な)静的型が本領発揮するのは運用開始後に手を入れるときだろ 依存関係が完璧に把握できるからな
867 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 08:06:57.76 ID:BLxyIU7+.net] GGG言語は熱い
868 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 08:17:35.26 ID:Q9OySQec.net] MLまでいかなくてもPascalでも使ったことあれば>>837 のような幼い感想は出てこないと思うので なんだか微笑ましい
869 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 08:59:52.64 ID:4bHQN/8n.net] 静的型とちゃんとしたIDEならカーソル箇所のメンバを使ってる元とメンバが依存してる先が自動的に一瞬で全部表示される grep(笑) 作りっぱなしで逃げられる開発なら型なんかいらないと思うよ
870 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 09:00:19.33 ID:oelMhkLH.net] Rustでコード書けない低脳勢の嫉妬が心地よいわ
871 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 09:53:28.95 ID:AnhEBxtH.net] >>835 「遅くて実用に耐えないが明快で仕様を満たしていることが分かる関数」と 「速いけど複雑で仕様を満たしているか分からない関数」が数学的に等価であることを示せる あるいは求められている仕様を型として表現することで、その型を返す関数は仕様通りであることを示せる 証明駆動開発は依存型じゃないとできない
872 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 10:24:46.55 ID:yqPvbQsf.net] >>842 RustをHaskellで置き換えたら数スレ前によく見たやつになる
873 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 10:27:49.38 ID:yqPvbQsf.net] やっぱRustもHaskellも、強烈な選民思想を産み出すという点で、 この世に存在したらいけない言語だなほんと
874 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 10:33:41.71 ID:Q9OySQec.net] 他を使ったこともないやつがいきなり先進的なのを使うと 全てがそのひとつの手柄みたいに思えてしまうんだよな C#のときもD言語のときもよく見た
875 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 10:46:19.87 ID:kgsU8O53.net] そういえばhaskellの主張してた奴消えたな
876 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 11:17:42.08 ID:qLynQL2e.net] 話は聞かせてもらったぞ 静的型と動的型のうち選民思想が強い方が滅亡する
877 名前:あ mailto:sage [2017/11/27(月) 11:30:52.56 ID:gxJYhWYL.net] >>830 酒飲んでないぞ。 >>836 レンジチェックとか静的解析で割となんとでもなるでしょ。安物の解析ツール使ってるならアレだけど。
878 名前:あ mailto:sage [2017/11/27(月) 11:31:28.76 ID:gxJYhWYL.net] >>837 あれぐらい縛るなら俺は両手を上げて賛成する。
879 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 11:58:44.95 ID:Q9OySQec.net] 配列の境界チェックぐらいなら気の利いた処理系ならなんとでもなるが、 そういう類のをユーザー定義できると想像するといい
880 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 13:08:54.03 ID:nLFkP6Tp.net] 静的型づけと動的型づけのほかにも強い型づけと弱い型づけがあるぞ。 両方を合わせると4パターンあることを考えたほうがいいぞ。
881 名前:デフォルトの名無しさん [2017/11/27(月) 14:31:06.76 ID:VTdrxhpK.net] >>852 弱い動的型付けは存在しないから3パターンだぞ
882 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 14:33:43.01 ID:Q9OySQec.net] 動的型付けでも、異なる型を混ぜた時に自動で変換されるのとエラーになるのがある そういうやつのことじゃないの? いや>>852 に訊かないとわからないけど
883 名前:デフォルトの名無しさん [2017/11/27(月) 14:52:39.00 ID:VTdrxhpK.net] >>854 弱い型付けってのはキャストはエラーはかずに出来るけどメモリぶっ壊して全く違う所でエラー起きたりするCとかC++みたいな奴の事だぞ
884 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 15:04:23.55 ID:Q9OySQec.net] >>855 その定義だとreinterpret_castができるやつは全部弱型になるだろ んで、その定義でもObjCのid型やOO風拡張付きアセンブラやForthなんかは動的弱型じゃね まあ>>825 にry
885 名前:デフォルトの名無しさん [2017/11/27(月) 15:06:30.80 ID:VTdrxhpK.net] >>856 ObjCは分からんが unsafeブロックとかで限定的に弱い型付け許してる言語もあるけどそういうのは基本的に弱い型付けとは言わないね
886 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 15:12:29.84 ID:Q9OySQec.net] 一般的にはnominalで暗黙の型変換を許さないやつがstring typeだと思うぜ
887 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 15:13:04.01 ID:Q9OySQec.net] /string/strong/ (苦笑
888 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 15:19:26.38 ID:RuMmCyGV.net] 情弱言語 情強言語
889 名前:あ mailto:sage [2017/11/27(月) 17:59:38.96 ID:gxJYhWYL.net] 選民思想ってどういう意味なんだろう?
890 名前:デフォルトの名無しさん [2017/11/27(月) 20:05:56.25 ID:ioN0hnnU.net] >>861 神に選ばれたとか生まれながらの血筋とか、 とにかく一部の選ばれた人間のみを良しとする思想。 白人至上主義みたいになのが代表的なものだろうな。 そのぐらいググれば出ると思うけど。
891 名前:あ mailto:sage [2017/11/27(月) 20:15:59.53 ID:YD13FB3m.net] >>862 選民思想自体の意味はわかるよ。 言語に対して選民思想がある、ってのがわからん。 知れば選民なの?って感じ。 一見さんお断り、紹介制ね、セミナー・講習・試験受けてねー(笑) でもあるまいし、なんか知ろうとする努力を放棄して便利な言葉でごまかしてるように見えるって事。
892 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 20:20:31.71 ID:AFwfxdAR.net] くっさ
893 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 20:27:37.84 ID:Q9OySQec.net] >>845 のことなら強烈な自己肯定感と言い換えてもいいんじゃね たかが2chの言葉遣いに厳密に意味を当てはめてもしょうがない
894 名前:あ mailto:sage [2017/11/27(月) 20:40:26.85 ID:YD13FB3m.net] なるほど。自己肯定感を他者への否定で裏打ちしてるような人たち、か。 いるな。Ruby使いが全体的にそんな印象。
895 名前:デフォルトの名無しさん [2017/11/27(月) 21:24:06.34 ID:HF1f2kGW.net] おまえらみんなそんな感じじゃんw
896 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 21:30:42.30 ID:zgUQvI9i.net] 自分が使ってる言語以外は覚えるの面倒だから滅べっていう奴だな。 わかりやすいし、正直だとは思うが恥ずかしい言い分だということも理解しておいた方がいい。
897 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 21:32:45.76 ID:zgUQvI9i.net] >>818 go はそもそもシンタックスがパースしやすいようになってるから 実装が楽だって話だろ。
898 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 22:33:25.18 ID:pxmyvyPz.net] そもそもgccのgoってメンテされてないのでは?1.2くらいで止まってなかったっけ?
899 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 22:35:11.55 ID:pxmyvyPz.net] >>868 言語を2つくらい学ぶとそれ以降はソンナ手間でもなくなってくけどな? 最近は学習しやすいべ。 それよりエコシステムの使い勝手が大事。 nodejsは最近やっとまともになってきた
900 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 22:42:59.78 ID:zgUQvI9i.net] >>871 まあ個人的な見解になるんだが そういう奴のいうところの「覚える」ってのは機能だったりシンタックスについて すみずみまで覚えるってことだったりするわけよ。 なんか周りにも自分にもハードル上げちゃって原理主義に走ってしまうって感じ。 言語を覚えるっつっても人によってとらえ方はだいぶ差はあるかもね。
901 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 23:03:54.83 ID:BLxyIU7+.net] 頭にウンポコピーのプェチピがつまった動的池沼型なしウンコマンがまた喚いてるようだね うるさいゴミ虫だな!つぶれちゃえ、プチッw
902 名前: mailto:sage [2017/11/27(月) 23:17:01.33 ID:b0u4s5jJ.net] >>872 >機能だったりシンタックスについてすみずみまで覚えるってこと 最近になって、当方主力のC/C++についても、これを諦めることにしました、楽になりました…
903 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 23:36:34.04 ID:kgsU8O53.net] C++を「覚えて」いるやつなんて数えられる程度だろう
904 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 00:19:59.65 ID:j/VePoOF.net] >>872 それこそ忘れたらググればいいし、 IDE連携でfixも出来る。 機能の存在を知ってることが重要だよね。 あと大概の概念は言語間で共有してる。
905 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 01:13:03.69 ID:oL6iYiK7.net] 共有してるが細かい違いがストレスになったりしない?特に「ぼくのかんがえたさいきょうのOO」は辛い
906 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 01:57:11.51 ID:5aM4mai7.net] >>877 おいPHPの悪口はやめろ
907 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 09:52:26.16 ID:LMrici0y.net] 例のオライリーのrust本やっと出たようだな
908 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 10:47:18.80 ID:oqWjNxDa.net] 型システムの概念はC++とHaskellですら共有してる 一方、オブジェクト指向の概念は共有してないのでストレスになる
909 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 21:52:49.31 ID:+Ls9Kpqr.net] 昔はこの手のスレだと、補完が効くのは静的型だけだから動的型はダメだ!的な 無知丸出しのカキコミしてたJavaドカタを良く見たけど、 最近は流石に学習したのか、そういうの減ったね
910 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 22:32:58.71 ID:XwHAt9fz.net] とはいえpythonの補完はpycharmでさえたまにしょっぱい結果になるがな
911 名前:デフォルトの名無しさん [2017/11/28(火) 23:57:11.98 ID:S3oF2yyz.net] つうか補完って個人的にはうざいからいらない。 補完ってそんな有難いかねぇ。
912 名前:デフォルトの名無しさん mailto:sage [2017/11/29(水) 00:01:06.36 ID:Ro7m+vSG.net] >>883 ガイジかな?
913 名前:デフォルトの名無しさん mailto:sage [2017/11/29(水) 00:28:23.95 ID:LyP2QHxX.net] どのみちJavaScriptはクソなのは事実
914 名前:デフォルトの名無しさん [2017/11/29(水) 01:08:31.46 ID:ZTL4r6Le.net] jsが糞だなんて世界の共通認識やろ
915 名前:デフォルトの名無しさん [2017/11/29(水) 01:32:48.31 ID:/BpqyHHR.net] 何でやjsは最高やろ javascriptはうんこだけど
916 名前:デフォルトの名無しさん mailto:sage [2017/11/29(水) 01:34:30.49 ID:wq9Dycsx.net] jsはブラウザ標準だから広まってるけど実際かなりの変態言語だよね 大分マシになってきてるけど
917 名前:あ mailto:sage [2017/11/29(水) 08:18:33.62 ID:fb/gmNyy.net] phpは、protectedとか何だかんだ大先生が要るって言うものはつけたけど、正直必要性がわからんね、みたいな事を作者が言ってるぐらいだからな。 JSはあの変態具合がじつに良い。
918 名前:デフォルトの名無しさん mailto:sage [2017/11/29(水) 10:31:45.07 ID:/xS4M0rU.net] >>881 ダメだろ。動的言語の言語仕様として正確な補完は不可能。 PHPとかPHPDocで追跡できるようにもできるけど、結局ドキュメント部分だから 信用できるとは限らないし
919 名前:デフォルトの名無しさん mailto:sage [2017/11/29(水) 10:35:30.46 ID:/xS4M0rU.net] >>889 ポリシーがない作者の言語は大体そう。 投票制で機能の実装を決めるって結局糞になる一方だと思うんだけど。 swiftも最近はそうだっけ?
920 名前:デフォルトの名無しさん mailto:sage [2017/11/29(水) 11:19:53.91 ID:ags1OwXJ.net] ハンバーガーとコーラとWindowsが多数派になったおかげで、少数派の自己肯定感が強い
921 名前:あ mailto:sage [2017/11/29(水) 12:52:13.36 ID:fb/gmNyy.net] >>891 作者は、ポリシーがないのがポリシーみたいな人だしな。 たまに引数の順序とか違うけど、仕方ねえじゃん。積み重ねってあるんだから。それに便利さって尺度あるじゃん?とか、 自然言語だって言語学者が整理して作ったら英語なんかと全然違う整然としたもの出来るけど、それってホントに実用になるかはわからんよね。 って開き直ってるからな。 goto実装したときのやり取りとか滅茶苦茶面白かった。 譲れない部分以外は適当に決めろよ、俺使わねえし、みたいな方向性もアリだとは思う。
922 名前:あ mailto:sage [2017/11/29(水) 12:55:46.19 ID:fb/gmNyy.net] >>890 補完が無いからダメ、を否定してるんでは? 「補完なんか無くても書ける」レベルのやつが書けばいいんだよ、っていう主張かと。 そんで、俺はそれでいいと思う。 補完が無くても大体間違いようがない、っていう使い方はあるもんだし。システムハンガリアンじゃない、本当の意味の方のハンガリアンとか。
923 名前:デフォルトの名無しさん mailto:sage [2017/11/29(水) 13:46:28.77 ID:N4X6syzD.net] >>894 その読解力でよく人に訂正できるな 間違ってるのはお前だよ
924 名前:あ mailto:sage [2017/11/29(水) 16:23:39.89 ID:fb/gmNyy.net] >>895 是非説明して欲しい
925 名前:デフォルトの名無しさん mailto:sage [2017/11/29(水) 17:20:07.57 ID:0SzzSOSo.net] >>896 是非も糞もお前以外正しく解釈してるんだからかき混ぜんな
926 名前:デフォルトの名無しさん mailto:sage [2017/11/29(水) 17:33:20.21 ID:jE6TKqng.net] 最近の言語なんて全部ポリシーないじゃん。 他の言語で流行ってる機能だからうちも入れよう みたいな話ばっか。
927 名前:あ mailto:sage [2017/11/29(水) 18:31:36.52 ID:fb/gmNyy.net] >>897 見えないすべての他人の代弁者ご苦労様。
928 名前:デフォルトの名無しさん mailto:sage [2017/11/29(水) 18:51:31.66 ID:/xS4M0rU.net] >>898 Go言語はポリシーあるけどね。と言うかGoogle社内で使うための言語として 進化してきたって感じ? 結局C++コードベースで作ってきたシステムがコンパイルするたびに40分とかかかるようになってきたから、Go言語でそこを改善した。 具体的には継承を使わないようにしたり パッケージ間の依存関係を極力抑えるために敢えてDRY原則無視したり。 後プリプロセッサを削除してパッケージシステムをしっかりしたもの(未使用なパッケージをimportしたらコンパイルエラー) にしたり。
929 名前:デフォルトの名無しさん mailto:sage [2017/11/29(水) 22:33:45.37 ID:0SzzSOSo.net] Goとか見るに、googleって意外と線形代数使わないのかなあ?
930 名前:デフォルトの名無しさん mailto:sage [2017/11/29(水) 22:55:35.66 ID:xEIA2DIf.net] tensorflowを作ってるんだぞ?使ってるに決まってるだろw
931 名前:デフォルトの名無しさん mailto:sage [2017/11/29(水) 23:01:31.92 ID:v9jZdRV7.net] そういうのはpython使ってんじゃないの?
932 名前:デフォルトの名無しさん mailto:sage [2017/11/29(水) 23:38:03.94 ID:0SzzSOSo.net] goは線形代数使わない用途向けか? TensorFlow for goで全部やってるってわけでもなかろうし>>903 の言う通りだろうか?
933 名前:あ mailto:sage [2017/11/30(木) 00:01:53.15 ID:5c50KJX1.net] Gr
934 名前:umpyも単純に書くと遅いしな。 速度を出したいならcとインラインアセンブラで書くだろうし、大規模に走らせるならHPC系に載せやすいfortranとかベンダのCだろうし、 気楽に書きたいならpythonで良いし、 その為に何か言語を、って手段と目的が入れ替わってる気がする。 既存の道具で目的が果たせるならそれで良い分野だろ、それ。 [] [ここ壊れてます]
935 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 00:15:23.93 ID:ZeZezy1g.net] Cとインラインアセンブラで書いた数学コードなんて今時見たことねえよ
936 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 00:21:22.97 ID:ZeZezy1g.net] Cで数学コード書く奴いるけどあいつら凄いわ 俺なんかFortanの形状引き継ぎ配列使わない縛りでも発狂しそうになるのに、さらにサポート少ないCでよくやるわ
937 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 00:25:37.10 ID:ZeZezy1g.net] いや、Cとインラインアセンブラって、もしかしてあれか。よく知らんけど、CPUベンダーが実装してるような何かか
938 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 00:25:51.08 ID:6I05rtBK.net] >>907 ゲーム目的とかならCでやるんじゃないの。 と言っても今は優秀なゲームエンジンが無料の時代だから意味ないかもだけど。
939 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 00:27:36.54 ID:4oSM3dIJ.net] Numerical Recipes in C にはお世話になりました
940 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 00:30:03.93 ID:ZeZezy1g.net] >>909 しれっとC++にしてEigenかublasかなんか混ぜたりしない?そうでもない? あれCで書いてる奴本当に凄いと思うわ
941 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 00:48:55.61 ID:RJLQhcO3.net] いいニンクの日は過ごせましたか
942 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 02:40:07.39 ID:3Jq96VTV.net] アドベントカレンダー見てたら地味にelmユーザ増えてる? reduxきっかけで流れてきたユーザー居るのかね
943 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 02:43:19.27 ID:3Jq96VTV.net] >>911 すげーかもしれんがそういう低レベルのコードを書くプログラマーっていま日本にどれだけいるんだろうな。もはや大手ゲームベンダーも他社のゲームエンジンに頼る時代だし
944 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 04:01:07.03 ID:aR0OMF8n.net] みんなC言語が分ってるのが当たり前だと思ってたけど、 最近はC言語は知らないのが前提らしい 低レベルプログラミングという本が殆どC言語の解説書なのは驚いた。
945 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 06:58:09.24 ID:DHC1c6S+.net] elmのアドベントカレンダー 2つめ全然埋まらなくてブチ凹む
946 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 08:03:32.96 ID:uu2PxLG/.net] Cについて知っててもらわんと色々説明しづらい部分があると思うんだが 大丈夫なんかね。
947 名前:あ mailto:sage [2017/11/30(木) 08:34:13.82 ID:pYUAd/ci.net] >>909 流体のシミュレーション書いたことある。 多分同業は同じように内製してるか、か今は外注するかしてるけど、ガチの方のシミュレーションでは結構使う。
948 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 09:05:16.03 ID:6I05rtBK.net] >>916 ここで宣伝してよ。elmのメリット何? 使ってて気持ちいい?開発環境って使いやすい?
949 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 09:09:00.14 ID:TiHNvA1L.net] >>914 あんなもんCで書いてて嫌にならないのは怠惰さの足りない奴でしょ そういうのをやらされる/やる人が減るのは健全なことだと思う
950 名前:あ mailto:sage [2017/11/30(木) 11:03:50.95 ID:pYUAd/ci.net] 新しい言語を作ってそしてメンテしていくほうが面倒だと知ってるからな。 トランスパイラに近い闇マクロがCにはあるので、その辺で逃げるが勝ちの部分もある。
951 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 11:23:43.51 ID:6I05rtBK.net] >>921 C11ってジェネリクスがあるの? 正直プリプロセッサで頑張れば何でもありな気もする。 ライナスがあんだけCだけ大好きっ子なのは何か
952 名前:るんだろうね。 [] [ここ壊れてます]
953 名前:あ mailto:sage [2017/11/30(木) 12:55:43.51 ID:pYUAd/ci.net] >>922 思ってるようなジェネリクスとは多分違うけど型ジェネリクスで型から、呼び出される関数と引数を列挙してswitchみたいな事は出来る。それをマクロに書いたら型ごとに呼び出される関数が切り替わるように書ける。 けど使わん。ポインタなんかであっさり意図してない呼び出しになったりする事がままある。 ただの文字置換として展開出来るように書くほうが無難だと未だに思ってる。
954 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 13:26:07.53 ID:aR0OMF8n.net] 違うジェネリックスが出来る前は 関数の名前の後ろに_intとかつけなければ同じことはマクロでも出来なかったんだよ
955 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 13:37:31.49 ID:SJCWnhNZ.net] 標準機能だけでtgmath.hを実現できなかったから補うように追加したものではあるけど そもそもサンプル以外でtgmath.hを実際に使っているところを見たことない
956 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 13:57:00.88 ID:6I05rtBK.net] >>925 >tgmath.h そんなのあるんか、正直Cは10年以上書いてないから知らんかった。 www.c-lang.org/detail/tgmath_h.html 型総称マクロかー。linuxとかでもそう言うの駆使して進化した書き方してんのかな。 Cって二段構えなんだよね。マクロでプリプロセスするから結構、動的な処理もかける。obj-cも初期の頃はマクロで出来てるって聞いた。 それが現在でもiOSで健在だし、結構良く出来てる。 例えば、obj-cのコンテキストとcのコンテキストが明確に分離できてる。 正直c++よりobj-cのほうが好き cの資産を利用できるし。なによりc++より言語仕様が理解しやすい。
957 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 14:34:01.14 ID:uu2PxLG/.net] まじめに20年以上c++追ってればこれほどコンパイラ毎に動作の異なる言語もないことはわかるよ。 残念ながらlinuxコードにあるプリプロセスマクロのがよっぽど安定してる。
958 名前:デフォルトの名無しさん [2017/11/30(木) 15:30:31.34 ID:xynddTwh.net] Cもattribute((cleanup))が標準ならなぁ
959 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 15:38:19.11 ID:TiHNvA1L.net] LispならともかくCのマクロはちょっと……
960 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 15:44:49.65 ID:SJCWnhNZ.net] 今更Cプリプロセッサが派手に変わることなんて無いもんな、そりゃド安定よ しかしそろそろローカル変数名はマクロで置換されない程度の改良は欲しい
961 名前:あ mailto:sage [2017/11/30(木) 16:06:05.26 ID:pYUAd/ci.net] >>924 ヘッダごと切り替えて、typedef自体も定義してたんじゃねえの?そういう時は。
962 名前:あ mailto:sage [2017/11/30(木) 16:09:24.35 ID:pYUAd/ci.net] >>929 ハイジェニックでない事が予想もつかない活用()を生み出せる原点では? bashかなにかのソースでびっくりしたことがある。十年以上前かな。
963 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 17:58:05.82 ID:TiHNvA1L.net] >>932 なんだ?Cの悪口か? そもそも文章下手くそなくせに「活用()」とか独特な用語使ったり、突然bashの話始まったりして何が言いたいのかわからん
964 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 18:04:13.66 ID:6I05rtBK.net] TypeScriptでジェネリクス使っててちょっと複雑なことをしようとすると とたんにしんどくなるのを体験して、型がない世界が羨ましいと思ったことはある。 (本末転倒感) メタプログラミング部分を動的言語に任せてハイブリットにするというのが ありかもしれない。 メタプログラミングツールの例 moapp.hateblo.jp/entry/2017/06/30/210636
965 名前:あ mailto:sage [2017/11/30(木) 18:14:08.53 ID:pYUAd/ci.net] >>933 悪口じゃなくて、良くも悪くも無茶苦茶書けるのが良い所だって言ってるんだが。 今回はちゃんと会話できてる相手が居る以上、最低限、読もう
966 名前:と思ったら読めると思うが、なんか特別な説明要るの?怠惰な人には。 あとごめん、shのソースだった。見たらわかる。 http://minnie.tuhs.org/cgi-bin/utree.pl?file=V7/usr/src/cmd/sh [] [ここ壊れてます]
967 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 18:17:01.73 ID:7wApdvUL.net] >>934 TSやJavaのような型消去のジェネリックはいわば単なるLintの一種 メタプログラミングに使えるようなものじゃないよ テンプレート方式じゃないなら.NETみたいにリフレクションでジェネリック型をnewできたりするような実行時サポートがないと ジェネリックを活かしたメタプログラミングは無理
968 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 19:06:08.45 ID:JKXpXDoa.net] >>792 >>793 Scala をdisってんのかよ? 大人気動画サイトのドワンゴで使われてるって知らないのか? Scalaにおける最適なDependency Injectionの方法を考察する ?なぜドワンゴアカウントシステムの生産性は高いのか? https://qiita.com/pab_tech/items/1c0bdbc8a61949891f1f
969 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 19:07:53.21 ID:JKXpXDoa.net] AndroidアプリでのKotlin利用が増加中、Googleもサポート https://www.infoq.com/jp/news/2017/11/kotlin-android-adoption-support
970 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 19:09:50.98 ID:3Jq96VTV.net] >>937 ニュース見てないのか? このタイミングでドワンゴの生産性はscalaのおかげって、 思いっきりディスってるとしか。 scalaのイメージ落ちたわ
971 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 19:10:03.54 ID:JKXpXDoa.net] SwiftやObjective-Cから開発者が離れつつある? Xamarinのトレンドは本物か www.itmedia.co.jp/pcuser/articles/1711/29/news089.html
972 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 19:11:51.21 ID:JKXpXDoa.net] >>939 いくらなんでも、すぐに釣られすぎじゃね? ドワンゴがScala使ってるのは↓で知ったよ。 https://anond.hatelabo.jp/20171129214218
973 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 20:07:57.37 ID:TiHNvA1L.net] >>935 話し通じてるってなんだ?会話できてる人がいることと>>932 の文が荒れていることにはなんの相関もないし、>>932 をちゃんと読めていることを明示している人はいないぞ 要約するとこうか? Cのマクロはハイジェニックでないが故に良い 何が良いかというと、予想もしない活用()を生み出せる所である だとするとこの活用()に込められたニュアンスはなんだ?
974 名前:デフォルトの名無しさん [2017/11/30(木) 20:17:15.63 ID:sboMNgKS.net] ニコ動の問題にアカウントシステム関係なく無い? 何がどう破綻してるのか謎だし こじつけで無理やり並べてるだけだろ
975 名前:あ mailto:sage [2017/11/30(木) 20:35:16.45 ID:5c50KJX1.net] >>942 解ってると明示する必要が無いのが、解ってるって事そのものだろ。 会話と文章が荒れてる事と相関がないと言うなら、文章の荒れと表現力に相関も無く、あるのは単純な読み手の理解力の問題では? ()に込められた意味? もはやCのソースとしては成り立ってないような構文すら許される所。 せっかく探して貼ったんだから、どの.cでも良いから読んできたらホントに一瞬でなんの事言ってるかわかる。
976 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 20:41:59.13 ID:TiHNvA1L.net] >>944 そのレスに触れているのが俺だけなのによくそんなこと言えるな。前に黙っている多数の意見はわからないから代弁しない方が良いみたいなこと書いてたくせに自分は良いのか? 貼ってくれたshのソース見たわ。おまえこのmac.hのマクロの使い方はいいものだって思うのか? いやこのマクロの使い方のどの辺がいいんだ?
977 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 21:05:16.87 ID:aDlGM/9P.net] ニコ生は今、Rust で書き直しているらしい これからは、Rust, Elixir の2択じゃないの?
978 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 21:06:38.21 ID:4oSM3dIJ.net] 襟臭
979 名前:あ mailto:sage [2017/11/30(木) 21:39:53.99 ID:5c50KJX1.net] >>945 代弁してないじゃんw 必要無いのが解ってるって事だ、って言ってるだけで、皆は解ってるから明示してない、って主張じゃない。 「犬はワンって鳴くよね」と「皆はワンって鳴いたからあれが犬だと理解してる」の違い。 この表記が良いとは言ってないだろ。だから「予想もつかない活用()」なんだよ。 >>935 で言ったように「良くも悪くも無茶苦茶書けること」自体が良い事だって言ってるの。
980 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 21:44:38.87 ID:ZeZezy1g.net] >>948 おまえに触れると面倒だからみんな触れてないんだよ そこんところ勘違いしてるのは良くない
981 名前:あ mailto:sage [2017/11/30(木) 21:45:42.64 ID:5c50KJX1.net] >>949 今回はわりと正しい事言ってる自信はあったんだがな。
982 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 21:46:36.22 ID:q+NcGFmb.net] >>948 はあ?Cのマクロが良いものだって言うんならせめて良い使い方の例持って来いや
983 名前:あ mailto:sage [2017/11/30(木) 21:47:31.29 ID:5c50KJX1.net] 一回名無しに戻って、煽りを辞めて書いたらどうなるかやってみるか。
984 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 21:47:46.37 ID:q+NcGFmb.net] おっとID変わったけどID:TiHNvA1Lな
985 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 21:49:32.82 ID:xrLQLoOt.net] >>946 なるほど。Rustで書いてるってモジラの提灯持ちすることで金をもらってる訳か 本当にRustで書けるわきゃねーからな
986 名前:あ mailto:sage [2017/11/30(木) 21:50:17.24 ID:5c50KJX1.net] >>951 #define swap(a, b) \ do { typeof(a) __tmp = (a); (a) = (b); (b) = __tmp; } while (0) なんて良いマクロじゃない?kernelのswap。
987 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 21:52:29.74 ID:6I05rtBK.net] >>946 そういう新しい言語にすぐ飛びつくようじゃ終わりなんじゃ。
988 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 21:59:56.00 ID:q+NcGFmb.net] >>955 それはハイジェニックでない、無茶苦茶書いてる良い例ですか? あとコピペしたけどコンパイル通らん
989 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 22:02:10.12 ID:q+NcGFmb.net] >>948 あと、 『代弁してないじゃんw 必要無いのが解ってるって事だ、って言ってるだけで、皆は解ってるから明示してない、って主張じゃない。 「犬はワンって鳴くよね」と「皆はワンって鳴いたからあれが犬だと理解してる」の違い。』 って何?面倒だから放置されてるそうだけどw
990 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 22:15:03.46 ID:ZeZezy1g.net] >>950 おまえが間違ってると思うし、読みにくいと思う。 それでよくそこまで相手を煽れるなと感心までする。 正直ウザいし二度と書き込まないで欲しい
991 名前:あ mailto:sage [2017/11/30(木) 22:15:56.48 ID:5c50KJX1.net] >>957 だから、無茶苦茶書くのが良い例なんじゃなくて、無茶苦茶書ける余地があることに意義を見出してるんだが。 コンパイル通らんのは何て出てんの? kernel.hから取ってきた事は覚えてるが、俺のアンチョコが間違ってるかもしれん。 #define pf(fmt, val) fprintf(stderr, #val " = " fmt ";\n", val); これは割と無茶してるかな。出典不明。 >>958 そうだなぁ、これは俺が悪かったかもしれん。
992 名前:あ mailto:sage [2017/11/30(木) 22:16:56.76 ID:5c50KJX1.net] >>959 思う分には個人の自由だからな。 よくぞそこまで煽らせるなぁ、とも思うが。
993 名前:あ mailto:sage [2017/11/30(木) 22:18:18.81 ID:5c50KJX1.net] >>906 と>>907 がたった6分で矛盾してるし、まぁそういう人なんだろう。
994 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 22:18:33.66 ID:+950NXzu.net] コンパイル通らんとか言ってる奴はマジで言ってんのか? そんな理解度でよくCの話題に絡もうと思ったな
995 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 22:20:02.16 ID:q+NcGFmb.net] >>960 ハイジェニックでなく、滅茶苦茶書けるのが利点って言っておきながら、それをしたコードは悪いコードってどういうことやねん。 それハイジェニックな方がいいってことじゃん。何言ってんだ あと、おまえは文が下手なことはいい加減認めろ この関連何度目だよ
996 名前:あ mailto:sage [2017/11/30(木) 22:21:51.05 ID:5c50KJX1.net] >>964 悪いコードとも言ってないだろ。 コード自体は良い悪い自体言ってない。書く奴が好きに書ければそれで良い。 よく読め。
997 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 22:22:18.54 ID:
] [ここ壊れてます]
998 名前:q+NcGFmb.net mailto: あとエラーコードはstray ‘¥’ in programって奴だな cのマクロなるべく避けてるし、正直初めて見た >>963 ちょっとideonにでも書いて動いてる状態紹介してくれんか? [] [ここ壊れてます]
999 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 22:23:05.85 ID:ZeZezy1g.net] >>962 Cは見るけどインラインアセンブラは見ないってことなんだけど、お判りにならない?
1000 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 22:24:20.86 ID:+950NXzu.net] >>966 swapの後ろについてる¥マーク取ったら動くよ 見たらわかるだろ
1001 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 22:26:50.85 ID:q+NcGFmb.net] >>968 あ、動いたわ。これ改行の代わりか 久々に見たわ。ありがとう
1002 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 22:32:07.23 ID:q+NcGFmb.net] >>965 あのさあ。ハイジェニックなマクロはちゃんとメリットあってハイジェニックなの ハイジェニックでないことが良いって言っておきながら、ハイジェニックな良い例を挙げられないってどういうこと? 色々書けることそのものなんて、ハイジェニックなことの利点と比べたらゴミみたいな利点なわけ www.pro.or.jp/~fuji/mybooks/cdiag/cdiag.8.2.html みたいなコード量産可能になることがハイジェニックなことより重いって思ってるわけ?
1003 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 22:33:22.07 ID:+950NXzu.net] ていうか、kernelから引用するならもっと良いマクロあると思うんだが container_ofとか d.hatena.ne.jp/big-eyed-hamster/touch/20091226/1261754005 でもC言語大好きだった頃は凄いと思ったが、いま見たら全然しょーもないわ
1004 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 22:56:29.10 ID:xSwrNC9m.net] まだフルHDに対応できてないニコ動
1005 名前:あ mailto:sage [2017/11/30(木) 22:59:11.95 ID:5c50KJX1.net] c11が実行できるところだと実行できると思う。pfの便利さもわかる。 ideoneはc11が動かんからcでは確認できないけど、c++14だと動いた。 https://ideone.com/0PBzBG このままtest.cでも動くんじゃないかな。 スマホからでほかの環境めんどくさくて見てない。ごめん。
1006 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 23:01:14.04 ID:q+NcGFmb.net] >>973 あー。いや。マクロ動かないのは完全に俺が悪かった。申し訳ない
1007 名前:あ mailto:sage [2017/11/30(木) 23:01:40.03 ID:5c50KJX1.net] >>970 知ってるよ。利点は。lispまだ使ってるしな。 >>971 それより、maxとminと、min_not_zeroの方が好き。
1008 名前:あ mailto:sage [2017/11/30(木) 23:03:30.70 ID:5c50KJX1.net] >>974 これは俺も煽って申し訳ない。
1009 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 23:09:55.30 ID:6I05rtBK.net] そういやプリプロセッサが乗ってる言語って最新の言語では見ないよな。 Go言語は意図的に削ったのは分かるんだけど(コンパイル速度優先のため) 他のはどういう理由なんだろうな。swiftとかあったほうがいいと思うんだが
1010 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 23:14:35.31 ID:SJCWnhNZ.net] 構文として統合されたマクロならむしろ盛況な気がする DやTemplate Haskellやcamlp[45]が散々こねくりまわして、nimにもrustにも Cプリプロセッサのような、言語からも独立して使えるようなマクロはないけどさ
1011 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 23:20:37.73 ID:7wApdvUL.net] >>977 単純にダサいからだよ 言語設計者にとってみれば、自分の言語はテキストマクロに頼らないと使い物にならないゴミですと恥を晒してるようなもんだ
1012 名前:デフォルトの名無しさん mailto:sage [2017/11/30(木) 23:30:56.56 ID:SJCWnhNZ.net] まあC言語のポータビリティの高さはマクロがテキストマクロってことが大きい 構文マクロだと、複数のコンパイラによって拡張構文がちょっとずつ違うみたいな状況には対応できん 次世代言語が実用に耐えてるのは処理系が「まだ」ひとつしかないって面もあると思う
1013 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 04:30:35.34 ID:PZ2907El.net] Cのマクロは性能低いからな。 ワンパスだしな。
1014 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 07:30:06.98 ID:lcmprfyj.net] >>945 すまんが今来た俺もお前が手
1015 名前:抜き過ぎると思うわ 分かんないなら無闇に質問するんじゃなく勉強するか じふには理解できないものと諦めろよ。 自分に理解できないのは相手が悪いみたいな態度は、 もっとこう、なんでも分かる人にしか許されないと思うぞ それに相手ちゃんと質問に詳しく答えてくれてるじゃん。 以上。 [] [ここ壊れてます]
1016 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 08:36:21.42 ID:LZY9k/Ly.net] どうせあが言ってる事はまた理解できない事だろうから、俺が理解できないのもこいつが悪いに違いない まあ仕方無いかもしれないな
1017 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 08:45:25.80 ID:z9aMt2sx.net] cのマクロで言いたかったことは 別にcのマクロが良いものだって話ではなくて、 高級な機能のマクロでバカが作ったものより 低級な機能でも優秀な人が作った枯れた技術のが安定するってことなんだけどな。
1018 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 09:35:14.98 ID:z9aMt2sx.net] >>977 include 処理とか, Boost みたいに高級な事すると恐ろしいコンパイル時間になることが分かったからでしょ。 あれのせいでファイル分割しないのがベストなプログラミングとかいう奴まで出始めたわけで。。 まあそういう実験所を提供してるってのはc++の良いところな気もするけどね。 実験に巻き込まれたくはないけど。
1019 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 10:04:19.13 ID:79R00kdr.net] あと話してると混乱するからしゃーない
1020 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 10:26:42.51 ID:AT8KOZxB.net] >>985 >include 処理とか, Boost みたいに高級な事すると恐ろしいコンパイル時間になることが分かったからでしょ。 これ。 インクルード処理にマクロを使ってるからな。 例えばpsコマンドのソースをコンパイルする時<sys/stat.h>を37回includeしようとするらしい。 こういうのがソースの依存関係が大きくなるに従って指数関数的に増えていく。 結果としてコンパイルに40分とかかかるように。 Goは上記のコンパイルの無駄な時間から生まれたらしい。 詳細は https://talks.golang.org/2012/splash.article
1021 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 11:14:31.93 ID:PZ2907El.net] 40分とか掛かるのはPSの話じゃないし、 40分が30分くらいに短縮したってだけじゃん。
1022 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 16:40:31.22 ID:JvjHpkLi.net] マトモな実用OSでC以外の言語で記述したの 何かある?
1023 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 17:05:34.67 ID:/r1khpVM.net] つ Windows
1024 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 18:24:31.52 ID:zV3aJam4.net] 次スレのタイトル考えた 現行のままでもいいけど 文字数制限(48byte)には注意 次世代言語Part8[Elm Nim Julia Elixir Crystal] 次世代言語Part8[C#7.2 C++17 Java9 ES2017 PHP7.2] (他Python3.6)
1025 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 18:43:38.78 ID:LZY9k/Ly.net] 次世代言語議論スレ[略] で良いじゃん、毎度揉めるなら。 2ぐらいに各言語入れとけば?
1026 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 19:35:24.94 ID:bdQhlFjB.net] sで始まるウンコ言語が入ってなかったら何でもいい
1027 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 19:46:14.85 ID:eSQZEdvI.net] Scratchか
1028 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 19:49:58.10 ID:ytACGBKw.net] scheme?
1029 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 20:23:48.63 ID:A20bJ4Ix.net] メジャー言語はいらないと思う 代わりにRustやSwift, Kotlin, Hack等の新興言語入れればいい
1030 名前:デフォルトの名無しさん [2017/12/01(金) 21:30:52.08 ID:WAbW55aH.net] いやHACKは無いわ
1031 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 21:44:59.50 ID:/r1khpVM.net] ぜんぶメジャーだろ
1032 名前:デフォルトの名無しさん mailto:sage [2017/12/01(金) 22:03:57.26 ID:jFvanr8n.net] hackはnull安全だからあり。 elmも仲間に入れて
1033 名前:デフォルトの名無しさん [2017/12/01(金) 22:32:36.12 ID:opEEFYgA.net] ワッチョイよろ
1034 名前:1001 [Over 1000 Thread.net] このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 43日 4時間 40分 58秒
1035 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています