文字数制限きついので改題
スレタイ以外の言語もok
前スレ
次世代言語議論スレ[Rust Kotlin Haskell]第6世代
http://mevius.5ch.net/test/read.cgi/tech/1503924817/
探検
次世代言語Part7[Go Rust Swift Kotlin TypeScript]
レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん
2017/10/19(木) 17:51:38.66ID:EPSDvC752017/10/19(木) 17:56:35.46ID:EPSDvC75
そろそろSwiftとTypeScript入れときたかったので
2017/10/19(木) 19:23:30.17ID:33xh/nBB
5chってなんだよ
2017/10/19(木) 19:35:46.24ID:C3Fl3waR
2ちゃんねる、正式に「5ちゃんねる」に名称変更!色々あって5chが誕生!
http://www.yukawanet.com/51096/archives/5274335.html
http://www.yukawanet.com/51096/archives/5274335.html
2017/10/19(木) 23:31:42.71ID:nu6ztsFr
TSは普通に現代だろ
生JSはもうやれない
生JSはもうやれない
2017/10/19(木) 23:43:07.41ID:1zFRkFBm
生JSもVSCodeによってコード補完がTypeScriptと比べてさほど遜色ないレベルにまで引き上げられたからなあ
結局MSが本気で開発環境を作ればどんな言語でもゴリ押しできることが証明されてしまった
結局MSが本気で開発環境を作ればどんな言語でもゴリ押しできることが証明されてしまった
2017/10/20(金) 00:38:29.46ID:2lESXdgM
次世代というか、2010年代の企業発の静的型付け言語でまとめてみた
まだ載ってないのだとNim Hack Julia Crystal辺りがいいのかな
まだ載ってないのだとNim Hack Julia Crystal辺りがいいのかな
2017/10/20(金) 01:01:22.11ID:eMg2A2/G
9デフォルトの名無しさん
2017/10/20(金) 01:56:31.26ID:Ka6W9rl7 >>6
JS含む動的言語は大抵ダックタイピングって時点で補完が効かないじゃん。
個人的には「ダックタイピングのほうがインターフェース書かなくて済むから
手軽で良い」って言ってる奴がマジで理解できん
補完できなきゃどのメソッド呼べるのかいちいちコードかドキュメント見に行かんとならんからむしろ面倒
JS含む動的言語は大抵ダックタイピングって時点で補完が効かないじゃん。
個人的には「ダックタイピングのほうがインターフェース書かなくて済むから
手軽で良い」って言ってる奴がマジで理解できん
補完できなきゃどのメソッド呼べるのかいちいちコードかドキュメント見に行かんとならんからむしろ面倒
2017/10/20(金) 02:15:40.71ID:yLtxI7rs
>>9
型が決まってれば動的言語だろうと補完できるでしょ
型が決まってれば動的言語だろうと補完できるでしょ
11デフォルトの名無しさん
2017/10/20(金) 02:54:33.08ID:Ka6W9rl712デフォルトの名無しさん
2017/10/20(金) 03:57:09.23ID:YyMx7jsp >>9
最初にコード補完をIDEに組み込んだのは動的言語
最初にコード補完をIDEに組み込んだのは動的言語
13デフォルトの名無しさん
2017/10/20(金) 04:05:45.74ID:Ka6W9rl714デフォルトの名無しさん
2017/10/20(金) 05:20:27.14ID:VprmOZRL >>13
皆さんよくご存じのVBです。
皆さんよくご存じのVBです。
2017/10/20(金) 06:44:15.18ID:dSzguJuu
>>14
バカいうんじゃないSmalltalkに決まっとるがな
バカいうんじゃないSmalltalkに決まっとるがな
16デフォルトの名無しさん
2017/10/20(金) 06:50:33.12ID:VprmOZRL2017/10/20(金) 07:06:06.25ID:eMg2A2/G
>>9
ホンコレンゴ
ホンコレンゴ
2017/10/20(金) 11:11:11.05ID:P8/EFRxC
>>16
何を調べるにしてもウィキペ情報は参考程度に留めておいたほうがいいよ
ご多分に漏れずこの件に関しても間違っていてちょっとググっただけでも
少なくとも1980年代にはコンテキストを考慮した補完機能を有するAliceというPascalのIDEが出ていることがわかる
http://www.atarimagazines.com/v6n2/Alice.html
だから動的言語が初かの真偽はともかくVBがしかも1990年代にもなってから「最初」ということはあり得ない
何を調べるにしてもウィキペ情報は参考程度に留めておいたほうがいいよ
ご多分に漏れずこの件に関しても間違っていてちょっとググっただけでも
少なくとも1980年代にはコンテキストを考慮した補完機能を有するAliceというPascalのIDEが出ていることがわかる
http://www.atarimagazines.com/v6n2/Alice.html
だから動的言語が初かの真偽はともかくVBがしかも1990年代にもなってから「最初」ということはあり得ない
2017/10/20(金) 13:06:03.49ID:6HQ5gdkc
動的か静的かよりも暗黙に型変換するのかしないのかのが重要。
2017/10/20(金) 14:49:05.79ID:RMJRt52l
typescriptの凄さってIDEの機能言語に組み込んだことだよな。
リファクタリングの機能を言語に用意してるから、
どのエディターでも使える。
リファクタリングの機能を言語に用意してるから、
どのエディターでも使える。
2017/10/20(金) 14:53:55.28ID:yLtxI7rs
2017/10/20(金) 14:55:26.74ID:yLtxI7rs
>>11
JSDocとコード補完と何か関係あるの?
JSDocとコード補完と何か関係あるの?
2017/10/20(金) 18:06:03.89ID:yevn4/qi
折角の補完機能ガン無視してVimで書いててすまん
Vimに補完つけると重いんだよな
Vimに補完つけると重いんだよな
2017/10/20(金) 18:12:51.51ID:UMfeFQLW
vimの補間が重い…?
2017/10/20(金) 18:49:47.42ID:yevn4/qi
Jedi-vimとか謎に重くならん?
あれ?そうでもない?
あれ?そうでもない?
2017/10/20(金) 18:59:15.83ID:YvXWjlAq
>>20
MSは昔からやってるけどね
MSにとって目新しいのは、コンパイラ及びエディタをコード補完やリファクタリングに対応させるためのオープンなプロトコルを策定したこと
これほど早い段階でそのレベルにまで達するのはMSにしかできないこと
MSは昔からやってるけどね
MSにとって目新しいのは、コンパイラ及びエディタをコード補完やリファクタリングに対応させるためのオープンなプロトコルを策定したこと
これほど早い段階でそのレベルにまで達するのはMSにしかできないこと
2017/10/20(金) 21:43:00.33ID:x/nMj/Ym
誰だよ未だにプログラミング言語未満のRustをスレタイにいれてるやつ
ハロワ以上のプログラムをことごとくコンパイル弾く欠陥品、言語としての体をなしていない
ハロワ以上のプログラムをことごとくコンパイル弾く欠陥品、言語としての体をなしていない
2017/10/20(金) 22:07:39.64ID:6WjQxFol
普通にrestでwebserverたててるが…
2017/10/20(金) 22:07:46.81ID:6WjQxFol
Rustね
2017/10/20(金) 22:29:29.77ID:dSzguJuu
名前間違う時点でろくすっぽ使ってないのバレバレ
2017/10/20(金) 22:33:08.26ID:6WjQxFol
晩酌してたのとRest APIと混ざったんだよ
めちゃめちゃ使ってるっちゅーの
めちゃめちゃ使ってるっちゅーの
32デフォルトの名無しさん
2017/10/20(金) 23:15:48.68ID:KNQSc5p/ 自動補完は正直うざいからオフにする
2017/10/20(金) 23:58:05.68ID:K0f4yEve
>>31
じゃあさくっと木構造実装してみてよ
じゃあさくっと木構造実装してみてよ
34デフォルトの名無しさん
2017/10/21(土) 00:09:44.49ID:WA0WypxL2017/10/21(土) 00:44:54.19ID:DO/riCmW
まあそれが一番素直な実装だね。
問題は循環するかもなグラフの場合。持ち主が曖昧になるから。
問題は循環するかもなグラフの場合。持ち主が曖昧になるから。
2017/10/21(土) 01:18:33.12ID:EatcavDb
2017/10/21(土) 02:15:10.99ID:VqKLKVGY
問題はTypeScriptに対して競合としてflowがあることだよな。
Reactを使うのにTypeScript使っててすごく便利なんだけどReactがflow押ししそうで怖い。
Reactを使うのにTypeScript使っててすごく便利なんだけどReactがflow押ししそうで怖い。
38デフォルトの名無しさん
2017/10/21(土) 03:03:32.99ID:WA0WypxL2017/10/21(土) 05:46:24.53ID:VmqPmNn/
>>37
Web系に言語は作れないってのはさすがにCoffeeやDartで世間に理解されたと信じたい
Web系に言語は作れないってのはさすがにCoffeeやDartで世間に理解されたと信じたい
40デフォルトの名無しさん
2017/10/21(土) 10:28:21.87ID:wl/wLs0J >>20
IDEの機能を言語に組み込むぐらい、LISPもSmalltalkもとっくの昔にやってるじゃん。
IDEの機能を言語に組み込むぐらい、LISPもSmalltalkもとっくの昔にやってるじゃん。
41デフォルトの名無しさん
2017/10/21(土) 10:29:25.77ID:wl/wLs0J おまえらが次世代と呼んでいる機能のほとんどが60年代の再発明だなw
2017/10/21(土) 11:01:34.95ID:sh0YDQHh
>>37
うちの案件フロウ使ってるわ
最初の技術選定でクソ馬鹿野郎が生JS選択したせい
しかも途中で辞職、いやいなくなってくれてせいせいしたが
んで、どうしようもないから後付けでフロウ
クソみたいな生JSに後から挿入れられるのはメリットだわな
ライブラリの対応はゴミだけど
うちの案件フロウ使ってるわ
最初の技術選定でクソ馬鹿野郎が生JS選択したせい
しかも途中で辞職、いやいなくなってくれてせいせいしたが
んで、どうしようもないから後付けでフロウ
クソみたいな生JSに後から挿入れられるのはメリットだわな
ライブラリの対応はゴミだけど
2017/10/21(土) 11:46:16.50ID:DO/riCmW
>>41
まあそういうところもあるけど、Rust なんかはだいぶ機能を整理した方かなとは思うよ。
実際に作って使ってみるとボローイングの解決しづらさがよくわかるってのはある。
理論と実践は繰り返してなんぼ。
まあそういうところもあるけど、Rust なんかはだいぶ機能を整理した方かなとは思うよ。
実際に作って使ってみるとボローイングの解決しづらさがよくわかるってのはある。
理論と実践は繰り返してなんぼ。
2017/10/21(土) 12:04:58.67ID:SwYl7d2P
言語レベルのリファクタリングを備えたTypeScript 2.5がリリース
https://www.infoq.com/jp/news/2017/10/typescript-2-5-refactoring
https://www.infoq.com/jp/news/2017/10/typescript-2-5-refactoring
2017/10/21(土) 13:02:01.91ID:VqKLKVGY
>>42
Typescriptも該当ディレクトリ内にXXXX.d.ts(XXXは生jsのファイル名)を置くだけで
型が付与できるけどな。しかも生jsの箇所をいじらずに。
どっちがいいかは何とも言えないが。
Typescriptも該当ディレクトリ内にXXXX.d.ts(XXXは生jsのファイル名)を置くだけで
型が付与できるけどな。しかも生jsの箇所をいじらずに。
どっちがいいかは何とも言えないが。
2017/10/21(土) 13:03:37.91ID:VqKLKVGY
jsというかTypeScriptを使ってるんだけど。async-awaitマジでいいわ
と思ったが例えばclassのコンストラクタをasync対応してくれたらな〜って思うわ
初期化時に非同期関数使いたいと詰む。
と思ったが例えばclassのコンストラクタをasync対応してくれたらな〜って思うわ
初期化時に非同期関数使いたいと詰む。
2017/10/21(土) 13:38:53.78ID:ZiJpfJlj
>>46
c#でずいぶんお世話になってるから嬉しいわ
c#でずいぶんお世話になってるから嬉しいわ
2017/10/21(土) 13:51:38.02ID:sh0YDQHh
>>45
ま?
ま?
2017/10/21(土) 14:20:00.52ID:SGUxbDYw
>>46
わざわざasyncのinitializeメソッド作るの馬鹿らしいよな、仕方ないんだけど
わざわざasyncのinitializeメソッド作るの馬鹿らしいよな、仕方ないんだけど
2017/10/21(土) 14:32:26.28ID:7p4/5GBE
>>46
constructor() {
(async () => {
await this.hogeAsync();
})();
}
インスタンス作成側ではawait newとかできないけど、分かってて使えば
今のとここれで特に問題ないわ。
constructor() {
(async () => {
await this.hogeAsync();
})();
}
インスタンス作成側ではawait newとかできないけど、分かってて使えば
今のとここれで特に問題ないわ。
2017/10/21(土) 18:32:34.18ID:VqKLKVGY
52あ
2017/10/21(土) 18:53:01.32ID:RC5niii92017/10/21(土) 19:06:53.76ID:guA6ZzKE
コンストラクタ非同期にしたい時は>>51の言ってる問題があるから、値をセットするだけのprivate constructor準備してpublicは別に公開したほうがいい
例↓
class Hoge{
private constructor(public foo:string){}
async create():Promise<Hoge>{
const foo=await asyncFunction();
return new Hoge(foo);
}
}
例↓
class Hoge{
private constructor(public foo:string){}
async create():Promise<Hoge>{
const foo=await asyncFunction();
return new Hoge(foo);
}
}
2017/10/21(土) 21:09:59.24ID:sahtjmhq
>>41
lisper召喚したいのか?
lisper召喚したいのか?
2017/10/21(土) 22:04:06.57ID:HyKk2sND
Lisperとかもしいるなら是非来て欲しい
2017/10/21(土) 22:07:10.31ID:1X5jAkAY
LisperはSmalltalker以上にめんどくさいぞやめとけ
57デフォルトの名無しさん
2017/10/21(土) 23:03:18.92ID:P/rJp3kV2017/10/22(日) 01:10:34.37ID:yUcYB3x3
めんどくささを恐れてはならぬ。
2017/10/22(日) 01:34:14.15ID:jKdYjftV
その通り
テキストエディタで打ったコードにこそ温もりがある
補完や静的解析なんて邪道
日本人ならPHPを使うべき
テキストエディタで打ったコードにこそ温もりがある
補完や静的解析なんて邪道
日本人ならPHPを使うべき
60デフォルトの名無しさん
2017/10/22(日) 01:56:35.88ID:bmxwOMJ161デフォルトの名無しさん
2017/10/22(日) 02:06:21.14ID:ZsHOZNag HSPだろ。
2017/10/22(日) 02:11:19.39ID:IdeA6XVs
ひまわり ちゃうかな
2017/10/22(日) 05:30:54.86ID:MmMCQJb7
Elixirってダメなん?将来性ないの?
サーバーがCowboyとかいう変なやつになるからダメなのかな
サーバーがCowboyとかいう変なやつになるからダメなのかな
2017/10/22(日) 09:43:14.05ID:jKdYjftV
2017/10/22(日) 11:54:18.65ID:r0jppfs8
2017/10/22(日) 12:05:58.19ID:HAzBzhoi
>>52の内容なら型アノテーションに頼らずとも型推論だけでいけるだろう。
2017/10/22(日) 13:12:06.46ID:yUcYB3x3
2017/10/22(日) 15:32:24.31ID:bmxwOMJ1
>>64
それはあくまで偏見の塊の君の個人的意見だろ。
そんなこと言い出したら
「日本人はもともと職人気質の人間が多いから
使いこなすのに職人レベルの技術が求められるC++と相性がいい。
だからC++こそ日本人のための言語だ。」
なんていう、今俺が適当に作ったトンデモ論法でも通っちまうだろうが。
それはあくまで偏見の塊の君の個人的意見だろ。
そんなこと言い出したら
「日本人はもともと職人気質の人間が多いから
使いこなすのに職人レベルの技術が求められるC++と相性がいい。
だからC++こそ日本人のための言語だ。」
なんていう、今俺が適当に作ったトンデモ論法でも通っちまうだろうが。
69あ
2017/10/22(日) 15:36:36.11ID:dq05v2c82017/10/22(日) 15:57:37.80ID:rLFHcAK9
2017/10/22(日) 20:08:52.70ID:yoTgiwcF
>>68
いや、日本人はPHPでしょ
空気読んで面倒臭いことはナーナーにして
今が良ければそれでよし
当事者がたんまりお金盗って無事退職した後、
年単位越しでツケ払って大騒ぎ
PHPですか?いいえ、日本です
いや、日本人はPHPでしょ
空気読んで面倒臭いことはナーナーにして
今が良ければそれでよし
当事者がたんまりお金盗って無事退職した後、
年単位越しでツケ払って大騒ぎ
PHPですか?いいえ、日本です
2017/10/22(日) 21:46:29.44ID:c7gPCMa+
日本の技術力ガーとか言ってたくせに
結局全部嘘ばかり
バカチョン以下やでホンマ
そりゃペチパーが闊歩しますわ
結局全部嘘ばかり
バカチョン以下やでホンマ
そりゃペチパーが闊歩しますわ
2017/10/22(日) 23:53:22.71ID:sz7LIs8a
ponyはまだまだマイナーだな
2017/10/23(月) 03:02:27.50ID:vIdD1XI1
haskellがやっと外れたなwスレタイ
2017/10/23(月) 03:18:43.18ID:7Pp5HgLl
PHp本当に速くなったからな
相変わらずポーリングも特殊操作でしかできないクソだけど
相変わらずポーリングも特殊操作でしかできないクソだけど
2017/10/23(月) 04:14:09.67ID:1oD0q36r
異常者の迷言「PHPは日本人」「日本人はPHP」
2017/10/23(月) 08:27:35.76ID:+M73J5jp
気に食わない奴でも合法なら許す
違法なら許さない
この優先順位を歪めるから無法地帯になるのだ
違法なら許さない
この優先順位を歪めるから無法地帯になるのだ
2017/10/23(月) 08:52:16.45ID:xr09IWoG
>>70
Elixirってrubyに強く影響受けてる言語なんだよな。
Phoenix触ってたらRailsの匂いを感じる。
でも今は動的言語は弱い気がする。Elixir + 型 が欲しい
TypeScriptが触ってて気持ちいいからサーバサイドもJSがいい気がする。
Elixirってrubyに強く影響受けてる言語なんだよな。
Phoenix触ってたらRailsの匂いを感じる。
でも今は動的言語は弱い気がする。Elixir + 型 が欲しい
TypeScriptが触ってて気持ちいいからサーバサイドもJSがいい気がする。
2017/10/23(月) 10:51:25.73ID:WMNCDJb0
Elixirの問題は込み入ったことやるとErlangに足突っ込まなきゃいけないことで
プロダクションコードに突っ込むには人材要求が高すぎること
プロダクションコードに突っ込むには人材要求が高すぎること
2017/10/23(月) 14:31:56.92ID:f3vYk0Y4
結局ネットワーク系統のエラー処理は低レイヤーに突っ込んでいかないとどうにもならんよ。
抽象レイヤーでなんとかしたいって願望はわかるけどさ。
抽象レイヤーでなんとかしたいって願望はわかるけどさ。
2017/10/23(月) 17:32:43.36ID:KBSkknSp
Elixir(というかBEAM=ErlangVM)の場合はプロセス復活のために型情報が必要だし
静的にしたからって型情報は省略できない
静的にしたからって型情報は省略できない
83デフォルトの名無しさん
2017/10/23(月) 19:47:51.56ID:fT3gFD4f C++を書きたくないんだが代替言語は今だとrustとdどっちがゆうぼ?
最近はnimと言うのが注目されてるとも聞いたが……
最近はnimと言うのが注目されてるとも聞いたが……
2017/10/23(月) 20:22:06.86ID:ANMjmVZt
誠に残念ながら今そのポジションはGoの一強
2017/10/23(月) 20:45:12.65ID:LSzHPC1F
Cよりスピード出るのはNimだけ!
2017/10/23(月) 20:50:25.75ID:Y0tE+5bm
ジャップランド土人村企業が詐欺のために求めているのはPHPだけ!
2017/10/23(月) 21:14:10.32ID:kb3Oh+Sb
どうかんかえてもRustだろ
2017/10/23(月) 21:25:58.19ID:xr09IWoG
2017/10/23(月) 21:47:48.94ID:C8zrSpyb
Rustは言語と名乗れる水準に達してないのでGo
深くシステムに触るのには向いてないがな
深くシステムに触るのには向いてないがな
90デフォルトの名無しさん
2017/10/23(月) 22:05:15.62ID:fT3gFD4f Goなのか……
他言語が純粋な次世代Cを目指してる中、Goは微妙に設計思想が違うイメージだからあえて外したんだが……やっぱりgoogle正義なのか
他言語が純粋な次世代Cを目指してる中、Goは微妙に設計思想が違うイメージだからあえて外したんだが……やっぱりgoogle正義なのか
2017/10/23(月) 22:05:44.54ID:f3vYk0Y4
92デフォルトの名無しさん
2017/10/23(月) 22:17:08.30ID:fT3gFD4f2017/10/23(月) 22:32:24.88ID:QdR3J7Zg
>>90
goとか言ってる連中の言うこと本気にするなよ。
goは数年周期でバズってるだけでC++の代替なら
Dかrustって考えは間違ってないしrust理解できないやつが
こことrustスレで騒いでるだけだぞ。
Dはもう流行らんだろうが、rustは学習コストより標準ライブラリの弱さが面倒。
自分で書くか外部ライブラリに依存しまくるかで基本的なスレッドプールすら無い。
低レベル向けだから結局自分で書くならrustでいいし、それが嫌ならDでいいよ。
rustとD位の差なら正直好みの差。
goとか言ってる連中の言うこと本気にするなよ。
goは数年周期でバズってるだけでC++の代替なら
Dかrustって考えは間違ってないしrust理解できないやつが
こことrustスレで騒いでるだけだぞ。
Dはもう流行らんだろうが、rustは学習コストより標準ライブラリの弱さが面倒。
自分で書くか外部ライブラリに依存しまくるかで基本的なスレッドプールすら無い。
低レベル向けだから結局自分で書くならrustでいいし、それが嫌ならDでいいよ。
rustとD位の差なら正直好みの差。
94デフォルトの名無しさん
2017/10/23(月) 22:40:54.47ID:5YqbDQKx >>92
ならやっぱりrustじゃない?
bindgen使えばc++のヘッダもパースしてc ffi用のglue code生成してくれる。
bindgenがどの程度まで万能かは俺もよくは知らんけど、
mozillaがfirefox quantumでservoとgeckoの橋渡しのために使ってるくらいだから
結構まともに動くんじゃないかとは思ってる。
ならやっぱりrustじゃない?
bindgen使えばc++のヘッダもパースしてc ffi用のglue code生成してくれる。
bindgenがどの程度まで万能かは俺もよくは知らんけど、
mozillaがfirefox quantumでservoとgeckoの橋渡しのために使ってるくらいだから
結構まともに動くんじゃないかとは思ってる。
2017/10/23(月) 23:08:38.91ID:Y0tE+5bm
おまんらの大好き ぷ〜えちピーーブリブリッ でも使えばええじゃろw
96デフォルトの名無しさん
2017/10/23(月) 23:35:53.28ID:b+23gIO2 みんなサンクス。
Goは学習コスト低いらしいから後追いでもなんとかなりそうだし、とりあえずrustで書いてみることにするわ
一刻も早くc++ が絶滅する事を祈る
Goは学習コスト低いらしいから後追いでもなんとかなりそうだし、とりあえずrustで書いてみることにするわ
一刻も早くc++ が絶滅する事を祈る
2017/10/24(火) 00:05:09.11ID:9ZgmGLcB
TypeScriptとGoを交互に触ってるけど
やっぱりnull安全な言語とそうじゃない言語の差が際立つな。
Goのほうは早速null pointerアクセスで落ちる。
やっぱりnull安全な言語とそうじゃない言語の差が際立つな。
Goのほうは早速null pointerアクセスで落ちる。
2017/10/24(火) 00:39:57.10ID:7j3gEWSq
c++が絶滅したら今c++で書かれてる様々なコードベースが色んな言語に分裂するんだぜ
バベルの塔
バベルの塔
2017/10/24(火) 00:51:24.05ID:MROfWTvM
バベルの塔を高くし過ぎたからしょうがないね
100デフォルトの名無しさん
2017/10/24(火) 01:31:49.56ID:KQRKQofh >>93
既存のまともに動いてるCコード移植しようとしてまともにコンパイルも通らなかった経験からまともな言語の水準に達してないといってるわけだが
少なくともRustでものが書けると信じこんでるお前よりはRust理解してるぞ
既存のまともに動いてるCコード移植しようとしてまともにコンパイルも通らなかった経験からまともな言語の水準に達してないといってるわけだが
少なくともRustでものが書けると信じこんでるお前よりはRust理解してるぞ
101デフォルトの名無しさん
2017/10/24(火) 02:18:45.70ID:EjQaHC6N102デフォルトの名無しさん
2017/10/24(火) 07:07:12.19ID:ZX4BnJ5l >>101
まずRustの木構造をちゃんと動くように書いてから言えよ
まずRustの木構造をちゃんと動くように書いてから言えよ
103デフォルトの名無しさん
2017/10/24(火) 08:36:29.96ID:uX1ymmQB rust で木構造云々言ってる奴って、コンパイラすら通せない rust コードしか書けない奴だろ。
Cで書いてあった平衡木のライブラリを rust に移植したけど、
> それに対して余計なアロケーション発生させずにappendとdelete実装してみてくれよ
こんなん普通に出来るぞ。
Option<Node> に get_or_insert() するだけ。
かなり苦労したのは木の回転だけど、それでも rust 用に頭を使ったら、
take() して mem::swap, mem::swap, mem::swap, そして代入の 5 行で終わり。
全体を通して余計なアロケーションなんて普通に無い。
rust は学習コスト結構高いけど、初歩の初歩で躓いた落ちこぼれ>>100,>>102 とかは何を言う権利も無いよ。
Cで書いてあった平衡木のライブラリを rust に移植したけど、
> それに対して余計なアロケーション発生させずにappendとdelete実装してみてくれよ
こんなん普通に出来るぞ。
Option<Node> に get_or_insert() するだけ。
かなり苦労したのは木の回転だけど、それでも rust 用に頭を使ったら、
take() して mem::swap, mem::swap, mem::swap, そして代入の 5 行で終わり。
全体を通して余計なアロケーションなんて普通に無い。
rust は学習コスト結構高いけど、初歩の初歩で躓いた落ちこぼれ>>100,>>102 とかは何を言う権利も無いよ。
104デフォルトの名無しさん
2017/10/24(火) 10:27:36.72ID:rYGI+fQg Cのコードを示せないrustアンチは糞ゴミだけど、動くコードを示していない>>103も何も言えていない
105デフォルトの名無しさん
2017/10/24(火) 11:02:52.32ID:pkngrV2F 自分の頭を撃ち抜くCのプログラム書いても運良く助かってる人は
Rustのコンパイル通せなくなるよね
Rustのコンパイル通せなくなるよね
106デフォルトの名無しさん
2017/10/24(火) 11:29:48.61ID:Bfcpp5kd そういう、Rustのコンパイルが通らなければ危険なコードって決めつけるRust信者本当にうぜえ
Rustが言語として表現できる範囲が狭いのをごまかすための方便でしかないのに
Rustが言語として表現できる範囲が狭いのをごまかすための方便でしかないのに
107デフォルトの名無しさん
2017/10/24(火) 11:31:23.83ID:9ZgmGLcB TypeScriptは本家のplaygroundを触るだけで凄さが分かるんだけど
https://www.typescriptlang.org/play/
rustってそういうのある?ちょっと試すとかできる?
https://www.typescriptlang.org/play/
rustってそういうのある?ちょっと試すとかできる?
108デフォルトの名無しさん
2017/10/24(火) 11:33:53.63ID:Pu0WJP1A109デフォルトの名無しさん
2017/10/24(火) 13:43:56.97ID:wa8jpGkt >>107
ググるとかしない人?単にTypeScript宣伝したいだけ?
https://play.rust-lang.org/
もとよりゆるふわTypeScript使いがRustのコンパイルを通せるとも思えないので端から試す気ゼロだろうけど…
ググるとかしない人?単にTypeScript宣伝したいだけ?
https://play.rust-lang.org/
もとよりゆるふわTypeScript使いがRustのコンパイルを通せるとも思えないので端から試す気ゼロだろうけど…
110デフォルトの名無しさん
2017/10/24(火) 13:56:01.66ID:Bfcpp5kd 選ばれた人しかコンパイラ通せない言語とかそれプログラミング言語って言えないよね
111デフォルトの名無しさん
2017/10/24(火) 14:30:25.93ID:9ZgmGLcB112デフォルトの名無しさん
2017/10/24(火) 16:07:36.55ID:0CxPdYg4 AltJSであるtsとRustのブラウザ上で動くplaygroundの機能差を語りたかったの?マジで?
Rustサゲしてる人はこの程度ってレッテル貼っていいの?
Rustサゲしてる人はこの程度ってレッテル貼っていいの?
113デフォルトの名無しさん
2017/10/24(火) 16:17:29.04ID:VubGQCWP 単にプロダクト開発のスキルの違いだな
MSの開発環境チームのメンバーはHelloWorldの代わりにインテリセンス実装するんだろう
MSの開発環境チームのメンバーはHelloWorldの代わりにインテリセンス実装するんだろう
114デフォルトの名無しさん
2017/10/24(火) 16:23:54.68ID:rmRTTRfd115デフォルトの名無しさん
2017/10/24(火) 18:42:18.67ID:bbIPnu9e なぜrustの対抗馬にTypeScriptが挙がるのかまるで理解できない
用途が全然違うだろ……
用途が全然違うだろ……
116デフォルトの名無しさん
2017/10/24(火) 19:07:54.15ID:x0LH18ak WebAssemblyが期待されてるから、あながち間違いでもない
117デフォルトの名無しさん
2017/10/24(火) 21:40:46.56ID:eZrIsy4p >>113
ほんとMSってそういう所は笑えるくらいすごいよな
Rust開発者たちも見習ってほしい
一応rustもコード補完にrlsとかいうヤツあるけどなんかまだいまいちなんだよな。
vscodeにrust(rls)っていうエクテンション入れて使ってるんだけど、
クロージャ書いてるときは補完が効かないのは俺だけ?
あとlint?(エラー・警告を赤・緑の下線で表示してくれるやつ)が
時々なんの前触れもなく急に無反応になるんだけどそれも俺だけ?
ほんとMSってそういう所は笑えるくらいすごいよな
Rust開発者たちも見習ってほしい
一応rustもコード補完にrlsとかいうヤツあるけどなんかまだいまいちなんだよな。
vscodeにrust(rls)っていうエクテンション入れて使ってるんだけど、
クロージャ書いてるときは補完が効かないのは俺だけ?
あとlint?(エラー・警告を赤・緑の下線で表示してくれるやつ)が
時々なんの前触れもなく急に無反応になるんだけどそれも俺だけ?
118デフォルトの名無しさん
2017/10/24(火) 22:14:01.00ID:FaGN7Q1b 少人数のMS社員が片手間でVSCode作ってみたら一瞬で天下獲れちゃいましたというチート集団
MSがRust推せば余裕でGo潰してベターC++の定番を奪えるだろうな
MSがRust推せば余裕でGo潰してベターC++の定番を奪えるだろうな
119デフォルトの名無しさん
2017/10/24(火) 22:51:21.66ID:z3aqO0G+ 片手間ってことはないし、エディタ作成なんてのは人数増やせばいいものでもない。
まあチート軍団ってのは確かだけど。
しかし Rust とか c++ みたいに教条主義的な言語ってやっぱ信者が湧くね。
わかりやすくていいとは思うけど。
まあチート軍団ってのは確かだけど。
しかし Rust とか c++ みたいに教条主義的な言語ってやっぱ信者が湧くね。
わかりやすくていいとは思うけど。
120デフォルトの名無しさん
2017/10/24(火) 23:14:23.65ID:MOiTAdLh 片手間とか余裕とか、良い子は絶対に真似してはいけない情報ばっかり教えるんだよな
そんなところに信者を集めたら怠け者の集団ができそうだ
そんなところに信者を集めたら怠け者の集団ができそうだ
121デフォルトの名無しさん
2017/10/25(水) 00:51:09.03ID:KYsAJ7k0 >>36じゃないけど、雑に平衡木(AA木)Cで実装してみた。
つってもWikipediaのまるコピだが。
#include <stdio.h>
#include <stdlib.h>
typedef struct tree {
int value;
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);
}
}
(続く)
つってもWikipediaのまるコピだが。
#include <stdio.h>
#include <stdlib.h>
typedef struct tree {
int value;
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);
}
}
(続く)
122デフォルトの名無しさん
2017/10/25(水) 00:51:31.44ID:KYsAJ7k0 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;
}
(まだ続く)
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;
}
(まだ続く)
123デフォルトの名無しさん
2017/10/25(水) 00:52:33.16ID:KYsAJ7k0 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;
}
(続く)
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;
}
(続く)
124デフォルトの名無しさん
2017/10/25(水) 00:52:56.15ID:KYsAJ7k0 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;
}
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;
}
125デフォルトの名無しさん
2017/10/25(水) 00:53:17.67ID:KYsAJ7k0 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;
}
肝心の関数まで遠いなほんと
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;
}
肝心の関数まで遠いなほんと
126デフォルトの名無しさん
2017/10/25(水) 00:55:17.25ID:KYsAJ7k0 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;
}
おしまい。 まじこんなクソコードに何レスもついやしてすまん。
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;
}
おしまい。 まじこんなクソコードに何レスもついやしてすまん。
127デフォルトの名無しさん
2017/10/25(水) 00:56:55.22ID:KYsAJ7k0 改めて書いてみて思ったが、平衡木って平衡保つための操作がポインタのつけかえ多くて
確かにRustにはキツそうだなとか思ったり
データコピーなし縛りで実装するのはRust歴1週間の自分には無理そうだ
確かにRustにはキツそうだなとか思ったり
データコピーなし縛りで実装するのはRust歴1週間の自分には無理そうだ
128デフォルトの名無しさん
2017/10/25(水) 01:27:50.62ID:egHPItlD Rust 的にはそんなに派手に持ち主変えるな、もしくはコピーを使えって感覚なんだろう。
そういうのは上のレイヤーだったら正しいと思うけど、アルゴリズムなコードの場合は
ちと厳しいかもしれん。
付け替えが頻繁に発生する構造の場合は
int parent[]; int right[]; int left[];
みたいな配列実装しろてな記事は見た事なるな。
直感的ではないけど速度は出るし、まあ慣れてる奴からすればどっちも一緒といえば一緒かな。
そういうのは上のレイヤーだったら正しいと思うけど、アルゴリズムなコードの場合は
ちと厳しいかもしれん。
付け替えが頻繁に発生する構造の場合は
int parent[]; int right[]; int left[];
みたいな配列実装しろてな記事は見た事なるな。
直感的ではないけど速度は出るし、まあ慣れてる奴からすればどっちも一緒といえば一緒かな。
129デフォルトの名無しさん
2017/10/25(水) 01:53:05.61ID:KYsAJ7k0 そういう、どうしても生ポインタごそごそつけかえる必要がある基幹アルゴリズムは、unsafeでくるんでやれって感じなのかね
実際この平衡木の実体が複数スレッドから独立に操作されるとか考えると割と困る
実際この平衡木の実体が複数スレッドから独立に操作されるとか考えると割と困る
130デフォルトの名無しさん
2017/10/25(水) 06:54:35.09ID:2hh4Hzpf gitみたいに、古いデータを消去することなく
しかも変更のない部分はいちいちコピーしないアルゴリズムを考えるんだ
そうすれば古い方のデータに別スレッドから安全にアクセスできるよ
しかも変更のない部分はいちいちコピーしないアルゴリズムを考えるんだ
そうすれば古い方のデータに別スレッドから安全にアクセスできるよ
131デフォルトの名無しさん
2017/10/25(水) 10:38:32.59ID:1aquIA8S 結局たかが赤黒木すらRustでは書けないって認識でいいの?
ほんとプログラミング言語名乗るなよ
ほんとプログラミング言語名乗るなよ
132デフォルトの名無しさん
2017/10/25(水) 10:59:08.02ID:2hh4Hzpf133デフォルトの名無しさん
2017/10/25(水) 11:14:21.26ID:j3LwAfcI Rustの問題は後発のくせにIDE連携が弱すぎる。
KotlinとかSwiftとか後発の言語は大概IDEと一緒に提供してるから
最初から補完がきっちり効く。
Goも昔はイマイチだったけど改善してるから許せる。
TypeScriptは言語そのものにIDE連携のための機能をたっぷり盛り込んでいるから
見習ってほしいって話。
初学者程IDE連携が必要だからな。言語仕様が優れてていても
ツールとして使い勝手が良くなきゃ使わんよ。
それにRustの立ち位置って
OS開発とブラウザ開発くらいしかメリットが思い浮かばんのだけども
CLIならGoだし
WebならPHPとかRubyとかGoとか乱立状態だし
WEBのクライアントサイドならTypeScriptだし
スマホならKotlinかSwiftかObjC
このどこにRustが入り込むの?
KotlinとかSwiftとか後発の言語は大概IDEと一緒に提供してるから
最初から補完がきっちり効く。
Goも昔はイマイチだったけど改善してるから許せる。
TypeScriptは言語そのものにIDE連携のための機能をたっぷり盛り込んでいるから
見習ってほしいって話。
初学者程IDE連携が必要だからな。言語仕様が優れてていても
ツールとして使い勝手が良くなきゃ使わんよ。
それにRustの立ち位置って
OS開発とブラウザ開発くらいしかメリットが思い浮かばんのだけども
CLIならGoだし
WebならPHPとかRubyとかGoとか乱立状態だし
WEBのクライアントサイドならTypeScriptだし
スマホならKotlinかSwiftかObjC
このどこにRustが入り込むの?
134デフォルトの名無しさん
2017/10/25(水) 11:47:25.56ID:2hh4Hzpf そもそもC++があまり成功してないから改善するためにRustがある
C/C++と合計して考えるとJavaより上だけど合計しなければC++は成功してないよ
C/C++と合計して考えるとJavaより上だけど合計しなければC++は成功してないよ
135デフォルトの名無しさん
2017/10/25(水) 12:31:23.13ID:L5aebztM C++が成功してないwwwwwwwwwww
どこの平行宇宙ですかwwwwwwwwwwwwwwwww
どこの平行宇宙ですかwwwwwwwwwwwwwwwww
136デフォルトの名無しさん
2017/10/25(水) 13:46:26.44ID:egHPItlD まあ c++ がうまくいってればこんなに言語がたくさんできることはなかっただろうね。
c++ の存在意義は今や高級な機能をどれだけランタイム速度落とさずに入れられるのかの
実験場って位置づけかな。
c++ の存在意義は今や高級な機能をどれだけランタイム速度落とさずに入れられるのかの
実験場って位置づけかな。
137デフォルトの名無しさん
2017/10/25(水) 13:55:53.69ID:L5aebztM C++は完璧な言語だとか口が割けても言えないのは間違いないが、Rustなんて言語ですらない汚物使うくらいならC++使うわなあ
138デフォルトの名無しさん
2017/10/25(水) 15:45:07.57ID:+h/lSeC6 ID:KYsAJ7k0のコードのRust版まだー?
139デフォルトの名無しさん
2017/10/25(水) 16:40:52.54ID:GfXNw50M >>133
rlsあるし十分やん
rlsあるし十分やん
140あ
2017/10/25(水) 18:10:38.69ID:Wj9s3Y5p TSは手段と目的がたまに入れ替わるのが見てるとちょっもモヤモヤするな。
C#が最近もう一度好きになってきた。
C#が最近もう一度好きになってきた。
141デフォルトの名無しさん
2017/10/25(水) 19:10:42.88ID:ajBcpsg9 >>138
まあまあ今ごろコンパイラに怒られてる頃だしもうちょっと待ってやろうぜwwwwww
まあまあ今ごろコンパイラに怒られてる頃だしもうちょっと待ってやろうぜwwwwww
142デフォルトの名無しさん
2017/10/25(水) 20:35:19.01ID:rCcyDoqV rustスレよりもりあがっとるやんここ
143デフォルトの名無しさん
2017/10/25(水) 20:59:03.30ID:EAW9qNH5 cに名前空間とラムダとattribute((cleanup))が入るだけでもだいぶ助かるのに。
なんでcの規格のバージョンアップは遅いんだ?
c++みたく3年毎にしてくれたらいいのに。
なんでcの規格のバージョンアップは遅いんだ?
c++みたく3年毎にしてくれたらいいのに。
144デフォルトの名無しさん
2017/10/25(水) 21:12:25.50ID:7dSKsD7g145デフォルトの名無しさん
2017/10/25(水) 22:58:44.78ID:egHPItlD >>143
C++みたく闇鍋状態にしたくないからだろ。
C++みたく闇鍋状態にしたくないからだろ。
146デフォルトの名無しさん
2017/10/25(水) 23:13:35.98ID:GfXNw50M モジラが2ch見てるわけねーだろ
糖質かよ
糖質かよ
147デフォルトの名無しさん
2017/10/25(水) 23:16:03.33ID:j3LwAfcI rustをそこまで毛嫌いする必要もないと思うけどな
rustのメモリオーナーシップモデルとかコードの改善に貢献するという話もあるし
ちょっと気にはなってる。
rustのメモリオーナーシップモデルとかコードの改善に貢献するという話もあるし
ちょっと気にはなってる。
148デフォルトの名無しさん
2017/10/26(木) 00:20:17.07ID:9syp6YaG rustアンチって同一人物だろ
コンパイル通らなくてイライラしてるんだね^^
コテ付けて、どうぞ
コンパイル通らなくてイライラしてるんだね^^
コテ付けて、どうぞ
149デフォルトの名無しさん
2017/10/26(木) 00:21:04.60ID:T1ShqX6y rustは何がそんなに駄目なんだろ
そこ迄言われると学びたくなってくる
そこ迄言われると学びたくなってくる
150デフォルトの名無しさん
2017/10/26(木) 00:26:09.28ID:9syp6YaG >>149
他の言語にはない所有権システムが原因で学習コストが高い
使いこなせば強力だけどとても難しい機能
それで使いこなせてない人が「コンパイル通らない」って発狂してる
例えると、初めてHaskell言語触る人が「変数に代入出来ないから何も出来ない!Haskellは欠陥言語!」って言ってるような物
他の言語にはない所有権システムが原因で学習コストが高い
使いこなせば強力だけどとても難しい機能
それで使いこなせてない人が「コンパイル通らない」って発狂してる
例えると、初めてHaskell言語触る人が「変数に代入出来ないから何も出来ない!Haskellは欠陥言語!」って言ってるような物
151デフォルトの名無しさん
2017/10/26(木) 00:31:32.93ID:zsf3GtyN rustのコンパイルを通せない低級汚グラマーが
嫉妬で腐してるだけだろ
腐ってるのはテメーの言語センスだろってね
嫉妬で腐してるだけだろ
腐ってるのはテメーの言語センスだろってね
152デフォルトの名無しさん
2017/10/26(木) 00:32:53.75ID:9syp6YaG Haskell言語って何だ
夜は誤字増えるから寝よう
夜は誤字増えるから寝よう
153デフォルトの名無しさん
2017/10/26(木) 00:50:43.34ID:T1ShqX6y154デフォルトの名無しさん
2017/10/26(木) 03:24:21.96ID:EtDTWIur まあ御託はいいからデータコピーなしの平衡二分木をRustで書いてからにしてくれよ
Cのコードは出たぞ
Cのコードは出たぞ
155デフォルトの名無しさん
2017/10/26(木) 05:10:18.37ID:IaYxMsud Haskellなら副作用だらけのコードは断固拒否するだけだが
Rustで副作用を拒否すると延々と粘着されそう
ついでにPythonは静的型を拒否するだけだが
Goはジェネリクスがない件で永久にいじめられるんだろう
Rustで副作用を拒否すると延々と粘着されそう
ついでにPythonは静的型を拒否するだけだが
Goはジェネリクスがない件で永久にいじめられるんだろう
156デフォルトの名無しさん
2017/10/26(木) 07:04:11.52ID:hnEjL22C Haskellは速さは捨てて副作用を無くすことに全振りしてるけど、Rustはそうではないからな
157デフォルトの名無しさん
2017/10/26(木) 09:12:10.17ID:ZXFAdbhr Rustはunsafeつかえば(ffiしたほうがはやいだろうが)できないことはないと思ってるんだが違うのかな?
158デフォルトの名無しさん
2017/10/26(木) 09:59:20.18ID:tFGGFqQC Goはいつものgoogleのフカしで持ち上げられてる感がプンプンするぜ。
単なる昔ながらのVM使ってない静的型付け言語を
システムプログラミングとかいうバズワードを作って
スクリプトしか描いたことない奴らにいかにも新しいものであるかのように錯覚させてる。
単なる昔ながらのVM使ってない静的型付け言語を
システムプログラミングとかいうバズワードを作って
スクリプトしか描いたことない奴らにいかにも新しいものであるかのように錯覚させてる。
159デフォルトの名無しさん
2017/10/26(木) 10:42:13.95ID:1t2EMvpb160デフォルトの名無しさん
2017/10/26(木) 10:47:47.28ID:Y5WhyQQy 最近は新しいOSSもGoで書かれてるの多くてうんざりする
再来年辺りには「Goは終わった」とか言われだしてScalaと同じ道を辿るのわかりきってるのにWeb系の馬鹿共は何度同じ間違いを繰り返すのか
再来年辺りには「Goは終わった」とか言われだしてScalaと同じ道を辿るのわかりきってるのにWeb系の馬鹿共は何度同じ間違いを繰り返すのか
161デフォルトの名無しさん
2017/10/26(木) 11:10:35.34ID:8qIiNs+I 個人的にはDが一番純粋なc++ 後継って感じで頑張って欲しいんだけどなぁ
まったく流行る兆しがない……
別に新しい言語を求めてるんじゃないんだ。c++ からc互換を取り除いて標準ライブラリと文法見直してくれるだけでいいんだ
まったく流行る兆しがない……
別に新しい言語を求めてるんじゃないんだ。c++ からc互換を取り除いて標準ライブラリと文法見直してくれるだけでいいんだ
162デフォルトの名無しさん
2017/10/26(木) 11:45:28.73ID:xVKEuI/f163デフォルトの名無しさん
2017/10/26(木) 11:47:37.13ID:xVKEuI/f164デフォルトの名無しさん
2017/10/26(木) 11:54:33.47ID:Y5WhyQQy165デフォルトの名無しさん
2017/10/26(木) 12:17:09.48ID:xVKEuI/f >>164
Scalaが廃れた理由は、言語のバージョンアップ戦略がクソofクソだったってのと
コンパイル回りの性能が悪いっていう言語自体の特徴、
それから置き換えを狙っていたはずのJavaの進化に取り残されたことっていう色々と複合的な原因がある
Goがその後追いをするかって言われると、
少なくとも書きやすさの面でC++がGoに勝てる目は向こう5年はないだろうし、
バージョン戦略は少なくとも1系の間は下位互換性崩さんだろうしな
Scalaが廃れた理由は、言語のバージョンアップ戦略がクソofクソだったってのと
コンパイル回りの性能が悪いっていう言語自体の特徴、
それから置き換えを狙っていたはずのJavaの進化に取り残されたことっていう色々と複合的な原因がある
Goがその後追いをするかって言われると、
少なくとも書きやすさの面でC++がGoに勝てる目は向こう5年はないだろうし、
バージョン戦略は少なくとも1系の間は下位互換性崩さんだろうしな
166デフォルトの名無しさん
2017/10/26(木) 12:19:58.53ID:xVKEuI/f 不安があるとするなら、なんか1系と完全に互換性なくすとか言われてるGo2.0なんだよな
この辺の方針次第では、おっしゃる通り再来年にはゴミの山になってる可能性が無視できない
Swiftがクソバージョンアップでもなんとか成功してるのはプラットフォーム囲い込んでるのがでかい
この辺の方針次第では、おっしゃる通り再来年にはゴミの山になってる可能性が無視できない
Swiftがクソバージョンアップでもなんとか成功してるのはプラットフォーム囲い込んでるのがでかい
167デフォルトの名無しさん
2017/10/26(木) 12:27:59.75ID:P+s05bng AA木のRust版の移植を練習がてらやったぞ。
みんなunsafeが必要とか言ってるが、別に必要なくない?
ポインタ演算もサイズの違う型の変換もしてるわけじゃないから生ポインタ扱う必要ないと思うんだけど。
だた、マジで愚直に移植したから全くRustっぽくはないし、
俺がバカなだけで無駄なオーバーヘッドが気づかんうちにいっぱい発生してるかもだから指摘よろしく。
一応何回か適当にinsertとremoveして正しく動いてるとこまでは確認してる。
みんなunsafe使わないとダメ的なこと言ってるから正直これでいいのか全然自信がない。
みんなunsafeが必要とか言ってるが、別に必要なくない?
ポインタ演算もサイズの違う型の変換もしてるわけじゃないから生ポインタ扱う必要ないと思うんだけど。
だた、マジで愚直に移植したから全くRustっぽくはないし、
俺がバカなだけで無駄なオーバーヘッドが気づかんうちにいっぱい発生してるかもだから指摘よろしく。
一応何回か適当にinsertとremoveして正しく動いてるとこまでは確認してる。
みんなunsafe使わないとダメ的なこと言ってるから正直これでいいのか全然自信がない。
168デフォルトの名無しさん
2017/10/26(木) 12:28:38.79ID:P+s05bng #[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)
}
}
(続く)
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)
}
}
(続く)
169デフォルトの名無しさん
2017/10/26(木) 12:29:34.82ID:P+s05bng 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
}
(まだ続く)
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
}
(まだ続く)
170デフォルトの名無しさん
2017/10/26(木) 12:30:37.02ID:P+s05bng 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
}
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
}
171デフォルトの名無しさん
2017/10/26(木) 12:31:04.94ID:P+s05bng 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
}
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
}
172デフォルトの名無しさん
2017/10/26(木) 12:31:51.05ID:P+s05bng 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
}
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
}
173デフォルトの名無しさん
2017/10/26(木) 12:34:16.58ID:P+s05bng 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レスに収まらんかった)
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レスに収まらんかった)
174デフォルトの名無しさん
2017/10/26(木) 12:37:30.92ID:P+s05bng 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使ってる。
あとは、裏でも使ってないと思う。
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使ってる。
あとは、裏でも使ってないと思う。
175デフォルトの名無しさん
2017/10/26(木) 12:39:25.88ID:xVKEuI/f Rustトーシロの初見だけどこんなにunwrap必要なの怖いって気分になるな……
CのポインタをOption<Box<>>で表現してるからしゃーないとはいえ
CのポインタをOption<Box<>>で表現してるからしゃーないとはいえ
176デフォルトの名無しさん
2017/10/26(木) 12:39:26.85ID:P+s05bng ここまでやったらもう飽きた。
誰かメソッド構文とかコンビネータとかをきちんと使ったRustyなコードに書き換えて。
誰かメソッド構文とかコンビネータとかをきちんと使ったRustyなコードに書き換えて。
177あ
2017/10/26(木) 12:42:49.23ID:+cEqlMCT Rust嫌いな奴はCをすぐ引き合いに出すが、misraの案件やったら死ぬんじゃねえかなって思う。
GC言語も悪くはないぞ。ちゃんとGCの動き考えれば、正しく開放「されてない」理由もわかるだろ。
最初からデカイ配列を握って離さない、それを切り貼りして使う、みたいなJavaのプロジェクトあるしな。
GC言語も悪くはないぞ。ちゃんとGCの動き考えれば、正しく開放「されてない」理由もわかるだろ。
最初からデカイ配列を握って離さない、それを切り貼りして使う、みたいなJavaのプロジェクトあるしな。
178デフォルトの名無しさん
2017/10/26(木) 12:50:10.86ID:P+s05bng179デフォルトの名無しさん
2017/10/26(木) 16:47:19.95ID:hnEjL22C rustのコード<>だらけで読みにくい
これはlispの括弧みたいに慣れたら読みやすいものなのか?
これはlispの括弧みたいに慣れたら読みやすいものなのか?
180デフォルトの名無しさん
2017/10/26(木) 17:58:11.26ID:9syp6YaG >>153
難しいとは言ってもOOP→関数型のパラダイムシフトに比べれば簡単だけどね
難しいとは言ってもOOP→関数型のパラダイムシフトに比べれば簡単だけどね
181デフォルトの名無しさん
2017/10/26(木) 20:01:45.08ID:mFTohykf >>154
おい、お前でてこいよ
おい、お前でてこいよ
182デフォルトの名無しさん
2017/10/26(木) 21:09:45.15ID:LcYnzbeR rust も haskell も理解できても面倒だし無駄に言語に気使ってるだけじゃねーかって
思うんだが、信者はききやしない。。
「お前らは理解できないものを理解できる俺偉い」で思考停止しちゃってんだよ。
思うんだが、信者はききやしない。。
「お前らは理解できないものを理解できる俺偉い」で思考停止しちゃってんだよ。
183デフォルトの名無しさん
2017/10/26(木) 21:15:34.16ID:hnEjL22C 一番言語に気を遣わないといけないのはC++だがなw
184デフォルトの名無しさん
2017/10/26(木) 21:19:35.59ID:+/fzZ2Vi 型っていうシステムが
そもそも良くないっていうのは無いの?
そもそも良くないっていうのは無いの?
185デフォルトの名無しさん
2017/10/26(木) 21:46:13.96ID:OTLFFL6d186デフォルトの名無しさん
2017/10/26(木) 21:54:28.12ID:PekP06rX187デフォルトの名無しさん
2017/10/26(木) 21:55:02.68ID:mFTohykf >>185
てめえがしね
てめえがしね
188デフォルトの名無しさん
2017/10/26(木) 22:34:09.13ID:P+s05bng >>182
「俺偉い」はさすがにないわ。笑かすな。
Rustに移植してみての感想だけど、確かにコンパイルを通すのには苦労したけど、
通ってしまえばメモリーリークはないって安心感がある。これが重要。
特に今回はunsafe一度も使ってないからなおさら安心できる。
Cのほうのコード一通り眺めてメモリーリーク無いって確信できる?
それができる超人君なら確かにRustは全く必要ないが。
Rustは君の嫌う面倒さと引き換えに安心を得ることができる言語。
むしろCで書いたコードにメモリーリークがあるのかないのか
自分の書いたコードに自信が持てないやつのためにこそRustがあると思ってる。
面倒だけが理由で思考停止しているのはどっちだ。
>>185
確かにこのコードは汚いよな。そこは自覚してる。
マジで誰かRust風に書き換えてくれない?
動いたところまで確認したところで集中が切れてしまってもうやる気が出ない。
Rustはオブジェクト指向も関数型のパラダイムを両方とも持っているし、
きちんと書けばかなり綺麗で整ったコードに書き直せるはずなんだよ。
あと、Rustアンチに1つ聞きたいことがある。
Rustが嫌いってことはわかったけど、じゃあアンチ君の好きな(愛用してる)言語は何なの?
その言語のメリット・デメリット含めて詳しく解説してくんない?
「俺偉い」はさすがにないわ。笑かすな。
Rustに移植してみての感想だけど、確かにコンパイルを通すのには苦労したけど、
通ってしまえばメモリーリークはないって安心感がある。これが重要。
特に今回はunsafe一度も使ってないからなおさら安心できる。
Cのほうのコード一通り眺めてメモリーリーク無いって確信できる?
それができる超人君なら確かにRustは全く必要ないが。
Rustは君の嫌う面倒さと引き換えに安心を得ることができる言語。
むしろCで書いたコードにメモリーリークがあるのかないのか
自分の書いたコードに自信が持てないやつのためにこそRustがあると思ってる。
面倒だけが理由で思考停止しているのはどっちだ。
>>185
確かにこのコードは汚いよな。そこは自覚してる。
マジで誰かRust風に書き換えてくれない?
動いたところまで確認したところで集中が切れてしまってもうやる気が出ない。
Rustはオブジェクト指向も関数型のパラダイムを両方とも持っているし、
きちんと書けばかなり綺麗で整ったコードに書き直せるはずなんだよ。
あと、Rustアンチに1つ聞きたいことがある。
Rustが嫌いってことはわかったけど、じゃあアンチ君の好きな(愛用してる)言語は何なの?
その言語のメリット・デメリット含めて詳しく解説してくんない?
189デフォルトの名無しさん
2017/10/26(木) 23:26:00.76ID:LcYnzbeR はっきり言わせてもらうけれど、
この規模のコードで書くのにそれだけ苦労する価値があると思えんが。
メモリリークについてもこの規模なら一通り見て、あるかないかくらい判断できるよ。
まあ主観といえば主観だけれど
本当に本心からこの程度のコードについてメモリリークを心配しちゃってるの?
言語を持ち上げるために無理に納得しようとしてない?
この規模のコードで書くのにそれだけ苦労する価値があると思えんが。
メモリリークについてもこの規模なら一通り見て、あるかないかくらい判断できるよ。
まあ主観といえば主観だけれど
本当に本心からこの程度のコードについてメモリリークを心配しちゃってるの?
言語を持ち上げるために無理に納得しようとしてない?
190デフォルトの名無しさん
2017/10/26(木) 23:35:06.69ID:9syp6YaG そりゃこの程度の規模じゃRust使うメリット皆無だよ
で、実際のプロジェクトがこの程度の規模なの?
で、実際のプロジェクトがこの程度の規模なの?
191デフォルトの名無しさん
2017/10/26(木) 23:35:07.35ID:51LPFkSD なんでこの規模に限定した話をされているの?
192デフォルトの名無しさん
2017/10/26(木) 23:37:41.83ID:9syp6YaG193デフォルトの名無しさん
2017/10/26(木) 23:40:05.21ID:JSzFTz38 ブラウザの性能が圧倒的にchromeより上になったらrustの優位性が証明されるけど。
それをまとうかな。
それをまとうかな。
194デフォルトの名無しさん
2017/10/27(金) 00:07:16.82ID:xwp9Pca0 性能の差で優位性を証明したことなんて今まであったっけ
オブジェクト指向も関数型もiPhoneもみんな性能と関係ない価値観だったような
オブジェクト指向も関数型もiPhoneもみんな性能と関係ない価値観だったような
195デフォルトの名無しさん
2017/10/27(金) 00:42:45.70ID:5+s2yfDd196デフォルトの名無しさん
2017/10/27(金) 00:47:50.32ID:/3yfU/y8 見苦しくなってきたな
197デフォルトの名無しさん
2017/10/27(金) 03:40:11.56ID:LQlgBzJd 流石に自演かすぎる…
198デフォルトの名無しさん
2017/10/27(金) 06:31:17.46ID:2A0a9mBA199デフォルトの名無しさん
2017/10/27(金) 06:34:38.22ID:2A0a9mBA200デフォルトの名無しさん
2017/10/27(金) 09:50:28.38ID:T+eCoUsJ201デフォルトの名無しさん
2017/10/27(金) 10:02:50.33ID:LQlgBzJd Rustが面倒そうなのは伝わったが
C側の奴がコピペ野郎のくせに暴れてるクズすぎてなんとも
C側の奴がコピペ野郎のくせに暴れてるクズすぎてなんとも
202デフォルトの名無しさん
2017/10/27(金) 10:35:02.10ID:aniL1VIL203デフォルトの名無しさん
2017/10/27(金) 11:13:40.46ID:T+eCoUsJ というかさ、Rustのコードバグってるんだけどwwwww
バwグwっwてwるwんwだwけwどwwwww
remove_treeで要素Removeできてないwwwww
Rustはコンパイル通れば安心できる(ドヤァ)とかいってバwグwっwてwるwwwww
バwグwっwてwるwんwだwけwどwwwww
remove_treeで要素Removeできてないwwwww
Rustはコンパイル通れば安心できる(ドヤァ)とかいってバwグwっwてwるwwwww
204デフォルトの名無しさん
2017/10/27(金) 11:26:28.21ID:T+eCoUsJ ここにRustは、安全性を高めると言いつつまともにアルゴリズムを書こうとすると制約回避のためにとてつもなく汚いコードになり、
バグもCより出やすくなることが公になりましたとさ
ちゃんちゃん
バグもCより出やすくなることが公になりましたとさ
ちゃんちゃん
205デフォルトの名無しさん
2017/10/27(金) 11:40:28.33ID:AXKOuk3Y >>198
言語に気を遣わないとすぐ自分の足元を撃ち抜く言語であるということに同意しないということ?
具体例っていざ言われると困るなあ。ふと思い出した阿呆な失敗談を一つ挙げると、クラスの値型配列を作れちゃうところとか、クラスは絶対ポインタで持たないといけないDとは対照的に感じたな
常識的に考えたらクラスの値型配列なんてやったらダメなのはわかるんだけど、なぜかやってしまって、コンパイル通ってんのに思ってたのと違う挙動して困ったわ。こういう常識的に考えたらわかるけど、考えないといけない部分があるから言語に気を遣わないとやっていけん。
これは全然大したことない例だけど、なんか他にもあったような気もするし思い出したら書き込むわ
言語に気を遣わないとすぐ自分の足元を撃ち抜く言語であるということに同意しないということ?
具体例っていざ言われると困るなあ。ふと思い出した阿呆な失敗談を一つ挙げると、クラスの値型配列を作れちゃうところとか、クラスは絶対ポインタで持たないといけないDとは対照的に感じたな
常識的に考えたらクラスの値型配列なんてやったらダメなのはわかるんだけど、なぜかやってしまって、コンパイル通ってんのに思ってたのと違う挙動して困ったわ。こういう常識的に考えたらわかるけど、考えないといけない部分があるから言語に気を遣わないとやっていけん。
これは全然大したことない例だけど、なんか他にもあったような気もするし思い出したら書き込むわ
206デフォルトの名無しさん
2017/10/27(金) 12:04:57.19ID:aniL1VIL 代入がなければ値型でもポインタでも同じ挙動だ
だから、代入しようとしたらコンパイルが通らない言語が現れた
だから、代入しようとしたらコンパイルが通らない言語が現れた
207デフォルトの名無しさん
2017/10/27(金) 12:27:06.09ID:Luz9kSs/ haskell追い出したら次はrustですか?
208デフォルトの名無しさん
2017/10/27(金) 12:49:17.54ID:aniL1VIL 追い出す権利はないね
あると思ってるやつは権利に甘えすぎ
あると思ってるやつは権利に甘えすぎ
209デフォルトの名無しさん
2017/10/27(金) 12:53:49.35ID:BmYygdVN https://cpplover.blogspot.jp/2017/10/range-based-for.html
まあこう言う馬鹿がいなくなるまでは
実際のコードについて議論したほうがいいとは思うよ。
別にrustとかhaskellが悪いとは思わんけれど、コードなんて実際に現場で機能するかどうかが
一番重要なわけだから。原理に走ると都合の悪いことを無視し始めるのは気に入らん。
まあこう言う馬鹿がいなくなるまでは
実際のコードについて議論したほうがいいとは思うよ。
別にrustとかhaskellが悪いとは思わんけれど、コードなんて実際に現場で機能するかどうかが
一番重要なわけだから。原理に走ると都合の悪いことを無視し始めるのは気に入らん。
210デフォルトの名無しさん
2017/10/27(金) 13:27:23.45ID:OeXtCDV4 >>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); }
...
すまぬ。すまぬ。完全なうっかりミスだったわ。
訂正した。
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); }
...
211デフォルトの名無しさん
2017/10/27(金) 14:02:45.56ID:OeXtCDV4 >>204
何度も言ってるがこのコードが汚いのは制約回避のためじゃなくて、Cのコードを愚直に移植してるからだぞ。
CのNULLを表現するためにOption型を使用してるから、コンビネータとかを
きちんと使わない限りはunwrapだらけになってコードが汚くなる。
Rustのコードが汚いんじゃなくてRustyに書いてないから汚いだけ。
同じことを何度も言わせないでくれ。
確かに、Rustはコンパイル通すために苦労するから、
執行錯誤してるうちにうっかりミスしやすくなるという考えはあるのかもな。
まあ、この程度のミスを犯す俺が単純にバカすぐるのか、これもRustの課題のひとつだと考えるかは
人によって意見が分かれてくるところじゃないか?みんなどう思う?
何度も言ってるがこのコードが汚いのは制約回避のためじゃなくて、Cのコードを愚直に移植してるからだぞ。
CのNULLを表現するためにOption型を使用してるから、コンビネータとかを
きちんと使わない限りはunwrapだらけになってコードが汚くなる。
Rustのコードが汚いんじゃなくてRustyに書いてないから汚いだけ。
同じことを何度も言わせないでくれ。
確かに、Rustはコンパイル通すために苦労するから、
執行錯誤してるうちにうっかりミスしやすくなるという考えはあるのかもな。
まあ、この程度のミスを犯す俺が単純にバカすぐるのか、これもRustの課題のひとつだと考えるかは
人によって意見が分かれてくるところじゃないか?みんなどう思う?
212デフォルトの名無しさん
2017/10/27(金) 15:02:03.76ID:aniL1VIL カネもないし時間のゆとりもないからコードが汚くなった
言語よりもカネと時間の使い方が間違っている
言語よりもカネと時間の使い方が間違っている
213デフォルトの名無しさん
2017/10/27(金) 17:07:21.98ID:2A0a9mBA >>205
クラスの値型配列はごく基本的で有用なデータ構造なんだけど…
クラスの値型配列はごく基本的で有用なデータ構造なんだけど…
214デフォルトの名無しさん
2017/10/27(金) 17:26:21.22ID:2A0a9mBA いや俺もちゃんと具体例出すか。例えば
class Point { public: double x; double y; }; だの Point3D だのが定義できて、
vector<Point> や Point v[..] が扱えなかったらシステムプログラミングなんかできやしない
…かどうかは別として別に値型の配列は必要なデータ構造だし、
immutable であれば直感に反した動作もないのでは。
実際に用途の多くは inmutable なオブジェクトの配列で、
C++17 では vector<const T> が許容されるようになりそうな流れ。
class Point { public: double x; double y; }; だの Point3D だのが定義できて、
vector<Point> や Point v[..] が扱えなかったらシステムプログラミングなんかできやしない
…かどうかは別として別に値型の配列は必要なデータ構造だし、
immutable であれば直感に反した動作もないのでは。
実際に用途の多くは inmutable なオブジェクトの配列で、
C++17 では vector<const T> が許容されるようになりそうな流れ。
215デフォルトの名無しさん
2017/10/27(金) 17:40:16.82ID:AXKOuk3Y >>214
ああ、すまん。Dでは構造体は継承出来ない代わりに値型可能、クラスは継承出来る代わりに値型不能なんよ。そのイメージが残ってたわ。
継承したものを値型で混ぜ混ぜしてしまったというのが俺のミスなのです
ああ、すまん。Dでは構造体は継承出来ない代わりに値型可能、クラスは継承出来る代わりに値型不能なんよ。そのイメージが残ってたわ。
継承したものを値型で混ぜ混ぜしてしまったというのが俺のミスなのです
216デフォルトの名無しさん
2017/10/27(金) 18:04:05.75ID:697iydar 何でスレタイからHaskell外したんだよ
それならGo外せよ
それならGo外せよ
217デフォルトの名無しさん
2017/10/27(金) 18:39:17.91ID:BmYygdVN なんか元々の C のコードを Rust に下から生じた問題みたいに言ってるけれど
tree のアルゴリズムを実直に書けばそういうふうになるだろ。
それってつまり実直にアルゴリズムを記述するのに向いてないって言ってるようなもんだろ。
tree のアルゴリズムを実直に書けばそういうふうになるだろ。
それってつまり実直にアルゴリズムを記述するのに向いてないって言ってるようなもんだろ。
218あ
2017/10/27(金) 18:41:31.58ID:872yUCAe また無様なHaskellのコード見るの嫌だし、むしろスレタイには言語一切入れんでもいいだろ。
好きなら、なぜ好きかを推すだけで充分議論になるのに、
他の言語を貶めて、○○はゴミだから△△が良い、って論調にするのはちょっとおかしいんじゃないの?
ホームレスが椅子で寝るの見て、俺はブラック企業戦士だけど屋根のある部屋で椅子で寝てるだけマシ、って言ってるように聞こえるよ。
好きで椅子で寝てるなら椅子寝のこだわりぐらい書けよ。パイプ椅子なら圧倒的に互い違い派だ、とか。
好きなら、なぜ好きかを推すだけで充分議論になるのに、
他の言語を貶めて、○○はゴミだから△△が良い、って論調にするのはちょっとおかしいんじゃないの?
ホームレスが椅子で寝るの見て、俺はブラック企業戦士だけど屋根のある部屋で椅子で寝てるだけマシ、って言ってるように聞こえるよ。
好きで椅子で寝てるなら椅子寝のこだわりぐらい書けよ。パイプ椅子なら圧倒的に互い違い派だ、とか。
219デフォルトの名無しさん
2017/10/27(金) 19:47:08.69ID:aniL1VIL 貶めるのが許せないという気持ちがよくわからない
例えば残業代未払いは許せるが貶めるのは許せないとか
なんでそういう優先順位になったのか理解できない
例えば残業代未払いは許せるが貶めるのは許せないとか
なんでそういう優先順位になったのか理解できない
220デフォルトの名無しさん
2017/10/27(金) 20:10:28.34ID:AXKOuk3Y エアプガイジの言ってることわかる訳ないんだから絡むな
221デフォルトの名無しさん
2017/10/27(金) 20:13:53.36ID:AXKOuk3Y Rust派の意見としては、
@TreeはCより汚いけど他のメリットが大きいから許せ
Aもっとうまく書けるから俺が書いてやるぜ
B副作用のある木は糞
どれ?
@TreeはCより汚いけど他のメリットが大きいから許せ
Aもっとうまく書けるから俺が書いてやるぜ
B副作用のある木は糞
どれ?
222デフォルトの名無しさん
2017/10/27(金) 22:02:47.00ID:atz35ani >>218
隔離スレだしな。
プログラマ自体、人口のほんの一部だし、複数の計算モデルが異なる言語を使いこなしてるのなんて更に希少種だから、もともと言語のマトモな比較が出来る奴が殆ど居ない。
だからここで言い合ってるのはおま環がデフォ。
隔離スレだしな。
プログラマ自体、人口のほんの一部だし、複数の計算モデルが異なる言語を使いこなしてるのなんて更に希少種だから、もともと言語のマトモな比較が出来る奴が殆ど居ない。
だからここで言い合ってるのはおま環がデフォ。
223デフォルトの名無しさん
2017/10/27(金) 22:13:38.27ID:2kHVS/Sf >>184
型がないと引数なり戻り値なりで与えられた情報をどう扱っていいかわからないでしょう
型がないと引数なり戻り値なりで与えられた情報をどう扱っていいかわからないでしょう
224デフォルトの名無しさん
2017/10/27(金) 22:23:07.44ID:W2Xgzzyi 返り値が返るのも
それも副作用って事にならないのはなんで?
それも副作用って事にならないのはなんで?
225デフォルトの名無しさん
2017/10/27(金) 23:02:40.27ID:4WxMDiO8 式に値があるのは副作用と言わないから
226デフォルトの名無しさん
2017/10/27(金) 23:04:58.68ID:2kHVS/Sf >>224
主の作用だからだろ
主の作用だからだろ
227デフォルトの名無しさん
2017/10/27(金) 23:23:42.05ID:LQlgBzJd >>218
無様なHaskellコードって?
無様なHaskellコードって?
228デフォルトの名無しさん
2017/10/27(金) 23:45:39.75ID:BmYygdVN >>211
ちゃんと具体的にコードを書いてくれて議論しやすくしてくれたのはありがたい。
tree を rust で実装しろって言われたら 10 人中 9 人は Box と Option を
使ったそういう構造体作ると思う。
ちゃんと具体的にコードを書いてくれて議論しやすくしてくれたのはありがたい。
tree を rust で実装しろって言われたら 10 人中 9 人は Box と Option を
使ったそういう構造体作ると思う。
229デフォルトの名無しさん
2017/10/27(金) 23:47:59.22ID:O21aknvD >>214
Pointの例に限って言えば同意できないな
大量の小さなベクトルを扱うような場合、構造体を使うより各成分をそれぞれスカラー配列で持った方が効率いいよ
キャッシュに乗りやすくなる
C++系の言語で行持ちの方が好まれるのは、一番の理由は言語の性質上そのほうが扱いやすいからに過ぎない
最近は列指向DBなんかも普通に使われるようになって、データの列持ちが見直されつつある今、
列持ちのデータ構造をスマートに扱える言語があってもいいと思うわ
Pointの例に限って言えば同意できないな
大量の小さなベクトルを扱うような場合、構造体を使うより各成分をそれぞれスカラー配列で持った方が効率いいよ
キャッシュに乗りやすくなる
C++系の言語で行持ちの方が好まれるのは、一番の理由は言語の性質上そのほうが扱いやすいからに過ぎない
最近は列指向DBなんかも普通に使われるようになって、データの列持ちが見直されつつある今、
列持ちのデータ構造をスマートに扱える言語があってもいいと思うわ
230デフォルトの名無しさん
2017/10/28(土) 00:01:16.09ID:rPyPw2Q2 >>229
Fortran, Juliaのことか?
Fortran, Juliaのことか?
231デフォルトの名無しさん
2017/10/28(土) 00:03:34.74ID:1i6fvk7+232デフォルトの名無しさん
2017/10/28(土) 00:24:09.93ID:rPyPw2Q2233デフォルトの名無しさん
2017/10/28(土) 00:46:39.85ID:pDpr3v8b Rustアンチくんはペチパー
はっきりわかんだね
はっきりわかんだね
234あ
2017/10/28(土) 00:51:22.50ID:Nq0Bzlbk235デフォルトの名無しさん
2017/10/28(土) 00:58:11.14ID:Ng05dLeH236デフォルトの名無しさん
2017/10/28(土) 01:07:07.63ID:rPyPw2Q2237デフォルトの名無しさん
2017/10/28(土) 01:09:54.95ID:Ng05dLeH そういう状況でもない限りそもそもボトルネックにならないからな
238デフォルトの名無しさん
2017/10/28(土) 01:16:42.42ID:FXSZ1oP/ >>211
試行錯誤の過程でアルゴリズムぶっこわれるってのはよくあるが、そうならないためにテストコードがあるっちゃそうだから、
明確な欠点とは言えないかもな
まさかスレに貼るサンプルコードにまでテストコードつけろなんて言えねえし。
試行錯誤の過程でアルゴリズムぶっこわれるってのはよくあるが、そうならないためにテストコードがあるっちゃそうだから、
明確な欠点とは言えないかもな
まさかスレに貼るサンプルコードにまでテストコードつけろなんて言えねえし。
239デフォルトの名無しさん
2017/10/28(土) 04:09:54.80ID:62CU1Qsk240デフォルトの名無しさん
2017/10/28(土) 09:04:44.68ID:C9milqrp コード出すという行動ではなく
コードが正義っていう知見への承認とか共感が欲しかったんじゃないか
だから行動だけでは駄目
コードが正義っていう知見への承認とか共感が欲しかったんじゃないか
だから行動だけでは駄目
242デフォルトの名無しさん
2017/10/28(土) 10:25:15.53ID:CAnYo5YI なぜ私達は Python から Go に移行したのか
https://frasco.io/why-we-switched-from-python-to-go-19581e27de7c
https://frasco.io/why-we-switched-from-python-to-go-19581e27de7c
243デフォルトの名無しさん
2017/10/28(土) 10:45:03.08ID:rPyPw2Q2 よくあんな無様な知ったかぶりしといて人のこと無様とか言えるな
244デフォルトの名無しさん
2017/10/28(土) 11:06:53.69ID:pDpr3v8b これだからペチプァは
245あ
2017/10/28(土) 11:20:03.53ID:McmdGm+1 >>243
自分が無様だと思ってる奴に無様だと言われるのはさぞ辛かろうが、
俺が無様なのとHaskell書いたやつが無様なのは別の事象で、
同時に無様でありえるんだから、その指摘はナンセンスだろ。
その理解力でHaskell最高!と思ってるのも面白いな。Maybeの真髄だろ。事象を整理するのは。
自分が無様だと思ってる奴に無様だと言われるのはさぞ辛かろうが、
俺が無様なのとHaskell書いたやつが無様なのは別の事象で、
同時に無様でありえるんだから、その指摘はナンセンスだろ。
その理解力でHaskell最高!と思ってるのも面白いな。Maybeの真髄だろ。事象を整理するのは。
246デフォルトの名無しさん
2017/10/28(土) 11:28:14.87ID:rPyPw2Q2 なんだこいつなんで俺がHaskell 信者みたいな前提で煽って来てんだ
247デフォルトの名無しさん
2017/10/28(土) 11:36:54.21ID:c+qfWZBO もう最新規格のFortranで良いよ
248デフォルトの名無しさん
2017/10/28(土) 12:01:24.16ID:1i6fvk7+ Fortranに第一級関数がついてimplicit noneがデフォルトになってinterface文をもうちょっと短く書けるようになって引数の型指定をCみたいに書けるようになって
配列の大きさ指定の関数に組み込みでない関数を使えるようになってgfortranのbind(C)周りのバグを解消してくれたらFortranでいいよ
配列の大きさ指定の関数に組み込みでない関数を使えるようになってgfortranのbind(C)周りのバグを解消してくれたらFortranでいいよ
249デフォルトの名無しさん
2017/10/28(土) 12:13:39.86ID:pDpr3v8b 西京言語PHPを使えばいいじゃん(いいじゃん)
250デフォルトの名無しさん
2017/10/28(土) 12:20:24.44ID:aTcnbQEE PHPが、前世紀末に流行したPerlでCGIという極悪システムを撲滅した功績は大きい
251デフォルトの名無しさん
2017/10/28(土) 12:31:15.99ID:MXV4el39 mod_perlとだったら大して変わらん気がする
252デフォルトの名無しさん
2017/10/28(土) 12:33:46.88ID:pDpr3v8b >PHPが、前世紀末に流行したPerlでCGIという極悪システムを撲滅した功績は大きい
キリッ
www
キリッ
www
253デフォルトの名無しさん
2017/10/28(土) 17:09:33.99ID:GkEAGE6K 皆がCGIという共通ルールを守る中
汎用性のない独自実装をしたphp
汎用性のない独自実装をしたphp
254デフォルトの名無しさん
2017/10/28(土) 17:24:26.31ID:6pjbn+cV まあ今更Perlとかって選択肢はないからね
255デフォルトの名無しさん
2017/10/28(土) 17:31:59.24ID:Hah9JG+z FacebookはなんでPHP推しなの?
256デフォルトの名無しさん
2017/10/28(土) 18:04:40.73ID:D4ynCBSM PHPをC++に変換するんだっけ
むしろJavaをC++に変換するのを誰もやらない理由を知りたい
むしろJavaをC++に変換するのを誰もやらない理由を知りたい
257デフォルトの名無しさん
2017/10/28(土) 18:12:54.21ID:z3Njt94H258デフォルトの名無しさん
2017/10/28(土) 18:27:47.92ID:GkEAGE6K phpのがサーバでしか使われてない印象
どっかで使ってる?
どっかで使ってる?
259デフォルトの名無しさん
2017/10/28(土) 18:32:36.63ID:GkEAGE6K260デフォルトの名無しさん
2017/10/28(土) 19:01:45.06ID:0vLNpJP2 PHPの特徴ってインスタンスの生存時間が極端に短い。ってこと。
request受けてからresponse返すまで。
だからGCが貧弱でも何の問題もないし。糞汚いコードでもメモリリークが問題にならない。
request受けてからresponse返すまで。
だからGCが貧弱でも何の問題もないし。糞汚いコードでもメモリリークが問題にならない。
261デフォルトの名無しさん
2017/10/28(土) 19:13:14.28ID:PFwR8W+K >>256
GCC
http://news.mynavi.jp/news/2016/09/08/290/
あと、AndroidはJavaじゃないからノーカンなのかもしれないが、
以前はネイティブに全部変換していたのをやめた
GCC
http://news.mynavi.jp/news/2016/09/08/290/
あと、AndroidはJavaじゃないからノーカンなのかもしれないが、
以前はネイティブに全部変換していたのをやめた
262デフォルトの名無しさん
2017/10/28(土) 19:51:46.92ID:SOIebb5r263デフォルトの名無しさん
2017/10/28(土) 20:44:53.33ID:VLfN62TL264デフォルトの名無しさん
2017/10/28(土) 21:07:01.93ID:ruX3/fgh それ以上ペチパーの心のより所を叩くのはやめてやれw
彼ら、憤死してしまうでwww
彼ら、憤死してしまうでwww
265デフォルトの名無しさん
2017/10/28(土) 21:37:38.45ID:GkEAGE6K >>260
言ってること滅茶苦茶だな
言ってること滅茶苦茶だな
266デフォルトの名無しさん
2017/10/28(土) 21:57:38.28ID:D4ynCBSM 伝えようとすれば滅茶苦茶
隠そうとすればバレバレ
だから型情報とか一生懸命伝えようとする言語が報われない
隠そうとすればバレバレ
だから型情報とか一生懸命伝えようとする言語が報われない
267デフォルトの名無しさん
2017/10/29(日) 03:03:23.28ID:7slaGsXS >>242
go 好きな人ってまともすぎてつまらんな。
go 好きな人ってまともすぎてつまらんな。
268デフォルトの名無しさん
2017/10/29(日) 05:05:09.88ID:ZPHcoPj2269デフォルトの名無しさん
2017/10/29(日) 05:05:25.10ID:ZPHcoPj2 >>267
きんも
きんも
270デフォルトの名無しさん
2017/10/29(日) 17:16:13.61ID:sv965ldD >>268
http://gihyo.jp/lifestyle/clip/01/awt/201603/24
>しかし,AOT方式をいざ導入してみると,サイズの大きなアプリのインストールや,
>一度に複数のアプリをアップデートするような場合にコンパイルに時間がかかり,
>場合によっては20分程度かかるケースが存在していたようです。
>このインストール時間を問題と捉えて,Android NのARTでは,JIT方式をもう一度使うことになりました。
http://gihyo.jp/lifestyle/clip/01/awt/201603/24
>しかし,AOT方式をいざ導入してみると,サイズの大きなアプリのインストールや,
>一度に複数のアプリをアップデートするような場合にコンパイルに時間がかかり,
>場合によっては20分程度かかるケースが存在していたようです。
>このインストール時間を問題と捉えて,Android NのARTでは,JIT方式をもう一度使うことになりました。
271デフォルトの名無しさん
2017/10/30(月) 08:01:20.39ID:BetGXhC9 >>242
GOいいな
GOいいな
272デフォルトの名無しさん
2017/10/30(月) 10:22:57.04ID:sonZMQS5273デフォルトの名無しさん
2017/10/30(月) 11:06:54.77ID:ywxMmK0+ Rubyの教訓は、「Perlよりマシ」に全振りしたけどPythonと比べると大したことなかった
274デフォルトの名無しさん
2017/10/30(月) 17:27:48.73ID:ExtYgMew Goのどこに生産性があるんだよ
275あ
2017/10/30(月) 18:12:26.17ID:53AKimFl >>274
そりゃ、ひたすら書ける部分だろ。
迷わんぞ。書く量が多いだけで。
生産性と言うと表現力ばっかり取り上げられるが、単位時間あたりのアウトプットも見ないといかん。
その点、信じられないレベルで楽。
そりゃ、ひたすら書ける部分だろ。
迷わんぞ。書く量が多いだけで。
生産性と言うと表現力ばっかり取り上げられるが、単位時間あたりのアウトプットも見ないといかん。
その点、信じられないレベルで楽。
276デフォルトの名無しさん
2017/10/30(月) 19:01:45.29ID:ExtYgMew >>275
行数多くなるから生産性が高いように見えるだけだろ
行数多くなるから生産性が高いように見えるだけだろ
277デフォルトの名無しさん
2017/10/30(月) 19:15:05.61ID:LhEsAIcv そいつは関数型しったか野郎なので話すだけ無駄
無知が無知なりの常識で頑張って答えてくれるかも知れないけど参考にはならないだろう
無知が無知なりの常識で頑張って答えてくれるかも知れないけど参考にはならないだろう
278デフォルトの名無しさん
2017/10/30(月) 20:23:14.16ID:1YWjfXwW 迷わずひたすらに書かれたF77のコード読みづらすぎ
279デフォルトの名無しさん
2017/10/30(月) 20:45:20.95ID:uihdCXQ7 Goは構造体へのタグ埋め込みや、codegenまわりのツールが充実してるお陰で
ボイラープレートコードを書かんでいいのがでかい
それだけならLLでもできるが、テスト作ってから設置して実行するまでの作法が簡潔に固まってるのが更に強い
少なくとも時間当たりのテスト含めた成果物は他の言語と比べ物にならん
ボイラープレートコードを書かんでいいのがでかい
それだけならLLでもできるが、テスト作ってから設置して実行するまでの作法が簡潔に固まってるのが更に強い
少なくとも時間当たりのテスト含めた成果物は他の言語と比べ物にならん
280デフォルトの名無しさん
2017/10/30(月) 21:31:16.17ID:d6rNWUAL 逆に、汎用ライブラリ書こうとするととたんにinterface地獄になってボイラープレート増えるんだがな
だから、目の前の仕事の案件片付けるのに特化した言語だと思ってる
だから、目の前の仕事の案件片付けるのに特化した言語だと思ってる
281デフォルトの名無しさん
2017/10/30(月) 22:18:12.05ID:1mVUn5ql >>221
ちょっといまさらだがRust版平衡木(AA木)をリファクタリングしたぞ。
まあ、だれも書いてくれそうになかったし、数日たったらまたやる気も出たから自分でやり直したわけだが。
基本的には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
ちょっといまさらだがRust版平衡木(AA木)をリファクタリングしたぞ。
まあ、だれも書いてくれそうになかったし、数日たったらまたやる気も出たから自分でやり直したわけだが。
基本的には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
282デフォルトの名無しさん
2017/10/30(月) 22:28:38.00ID:LhEsAIcv ほう
283あ
2017/10/31(火) 00:08:53.17ID:VssU1hfB284デフォルトの名無しさん
2017/10/31(火) 00:13:46.41ID:AszsXbkO 関数型以外シッタカ←根拠なしのただのディス
からの
人をディスるんじゃなくて自分を高めれば?
自戒かな?
からの
人をディスるんじゃなくて自分を高めれば?
自戒かな?
285デフォルトの名無しさん
2017/10/31(火) 00:16:52.10ID:xO8W0Vv5 そいつの相手しても得るもん無いってことくらいはそろそろ分かって欲しい
286あ
2017/10/31(火) 00:17:14.17ID:VssU1hfB 言い返されてそれはみっともないリアクションだな。
よほど、関数型言語が好きなんだね(笑)
専スレ立ててやれよ。次世代言語でもないわ。
よほど、関数型言語が好きなんだね(笑)
専スレ立ててやれよ。次世代言語でもないわ。
287あ
2017/10/31(火) 00:19:38.37ID:VssU1hfB 好きなら好きで良いのに、なぜ固執するかわからん。
ナイフで整備できるようにネジを全部マイナスネジにしたロシア(?)の戦車みたいな間抜けな話と同じように、目的に対して使う道具なんか考えりゃ良いのに。
ナイフで整備できるようにネジを全部マイナスネジにしたロシア(?)の戦車みたいな間抜けな話と同じように、目的に対して使う道具なんか考えりゃ良いのに。
288デフォルトの名無しさん
2017/10/31(火) 00:26:46.01ID:AszsXbkO よほど関数型言語が好きなんだね←誰もそんなことは言っていない
なぜ固執するかわからん←固執していない
誰と闘っているんだコイツは。少なくとも俺じゃねえな
なぜ固執するかわからん←固執していない
誰と闘っているんだコイツは。少なくとも俺じゃねえな
289デフォルトの名無しさん
2017/10/31(火) 00:39:43.26ID:H/nTnETZ おまえら旧世代猿人類どもはウンコブラシのプェチピィのゲリクソピィでもプリプリしてろ
290デフォルトの名無しさん
2017/10/31(火) 01:21:58.60ID:nWIRKYZE291デフォルトの名無しさん
2017/10/31(火) 07:32:43.21ID:nUaOreAB292デフォルトの名無しさん
2017/10/31(火) 07:35:28.96ID:u9ib2mEN293デフォルトの名無しさん
2017/10/31(火) 09:37:19.94ID:EcpjGxny294デフォルトの名無しさん
2017/10/31(火) 09:56:03.51ID:nWIRKYZE unwrapはNoneだった場合にランタイムクラッシュする関数だから本来使ったらアカン関数
この辺はnil安全うたってる言語はおおむねそう
この辺はnil安全うたってる言語はおおむねそう
295デフォルトの名無しさん
2017/10/31(火) 10:23:24.56ID:2R0mp116 Goは最初期Javaかっていう後退レベルだし、Rustは木構造すら数日かかりで必要な難解言語だしでどっちもクソ言語
はいこれで仲直り
はいこれで仲直り
296デフォルトの名無しさん
2017/10/31(火) 10:43:17.86ID:gJSMspm+ パラダイムシフトを強いる言語は地雷が多いな。
俺はリアクティブプログラミングで懲りた。
俺はリアクティブプログラミングで懲りた。
297デフォルトの名無しさん
2017/10/31(火) 10:44:19.94ID:Bl0tBU4z 数日がかりというが兎と亀みたいにRust以外の言語は寝てたから
Rustが一番早い
Rustが一番早い
298デフォルトの名無しさん
2017/10/31(火) 11:07:20.83ID:AszsXbkO その理屈だとCが一番じゃん?
299デフォルトの名無しさん
2017/10/31(火) 11:21:14.97ID:f3HKFkZK 結局当面はC#系(TypeScript/Kotlin)の天下ということでよろしいか
300デフォルトの名無しさん
2017/10/31(火) 11:40:23.38ID:YHJiaIXY >>294
そういうこと。だからRust版 afterではunwrapはほとんど使用していない。
通常、Optionの中身を取り出すときはunwrap_or, unwrap_or_else, unwrap_or_default
のどれかを使用してNoneだったときはどうするのか指定する。
unwrapを使用するときはアルゴリズム的に中身が存在しないこと自体がありえなくて、
Noneならバグと判断してむしろそのタイミングで落ちてバグを知らせてほしい時のみ使用する。
この仕組みによってNullが存在しない(いわゆるNull安全な)言語を実現している。
多少書くのは面倒だが「10億ドルの損失」に比べればこのくらいカワイイもんだろってこと。
ちなみにC#なんかでも導入が検討されているらしいが、既存コードとの互換性が保てないので難儀しているようだ。
Type scriptみたいにコンパイルオプション付ければいいのにとか俺は思うんだが、なんか理由があるのかな?
そういうこと。だからRust版 afterではunwrapはほとんど使用していない。
通常、Optionの中身を取り出すときはunwrap_or, unwrap_or_else, unwrap_or_default
のどれかを使用してNoneだったときはどうするのか指定する。
unwrapを使用するときはアルゴリズム的に中身が存在しないこと自体がありえなくて、
Noneならバグと判断してむしろそのタイミングで落ちてバグを知らせてほしい時のみ使用する。
この仕組みによってNullが存在しない(いわゆるNull安全な)言語を実現している。
多少書くのは面倒だが「10億ドルの損失」に比べればこのくらいカワイイもんだろってこと。
ちなみにC#なんかでも導入が検討されているらしいが、既存コードとの互換性が保てないので難儀しているようだ。
Type scriptみたいにコンパイルオプション付ければいいのにとか俺は思うんだが、なんか理由があるのかな?
301デフォルトの名無しさん
2017/10/31(火) 11:47:33.10ID:f3HKFkZK コンパイルオプションだと既存コードを一緒にビルドできなくなるだろ
互換性を絶対神とするC#に導入するなら、#pragmaでソースファイルごとにオプトインするか、
asyncみたいに修飾子で特定のスコープだけ解釈を変えるか、
デフォルトをnull非許容にするのは諦めてstring!にするかのいずれかだよ
互換性を絶対神とするC#に導入するなら、#pragmaでソースファイルごとにオプトインするか、
asyncみたいに修飾子で特定のスコープだけ解釈を変えるか、
デフォルトをnull非許容にするのは諦めてstring!にするかのいずれかだよ
302デフォルトの名無しさん
2017/10/31(火) 12:45:40.51ID:JU1cd7E4 Goが優れてる点はcode生成に最適化されてる点だと思う。
Goはメソッド定義が同じディレクトリ内なら何処でもできる。
つまりコード生成によってメソッドを追加できる。
ファイルでコード生成の箇所と自作の箇所をわけれる。
Goはメソッド定義が同じディレクトリ内なら何処でもできる。
つまりコード生成によってメソッドを追加できる。
ファイルでコード生成の箇所と自作の箇所をわけれる。
303デフォルトの名無しさん
2017/10/31(火) 12:48:35.27ID:JU1cd7E4 >>296
Rxはもっとシンプルな定義にできないのかなーって思う。
「全てはストリーム」という考え方はシンプルなのにいざ使おうとすると
ライブラリは複雑すぎる。
もしかしたら言語まるごとRxの考え方で作ったら簡単になるんかな。
Rubyの作者がStreamって言語をつくってるけど、、、、完成しそうもないし
Rxはもっとシンプルな定義にできないのかなーって思う。
「全てはストリーム」という考え方はシンプルなのにいざ使おうとすると
ライブラリは複雑すぎる。
もしかしたら言語まるごとRxの考え方で作ったら簡単になるんかな。
Rubyの作者がStreamって言語をつくってるけど、、、、完成しそうもないし
304デフォルトの名無しさん
2017/10/31(火) 15:40:47.27ID:ivXWtcCM rust で
if root.is_none() {
return 0;
}
root.as_ref().unwrap().level
を
match root {
Some(node) => node.level,
None => 0
}
と書かないのは何故?所有権とかの問題?
if root.is_none() {
return 0;
}
root.as_ref().unwrap().level
を
match root {
Some(node) => node.level,
None => 0
}
と書かないのは何故?所有権とかの問題?
305デフォルトの名無しさん
2017/10/31(火) 16:19:26.73ID:YHJiaIXY >>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 は所有権を「移動」じゃなくて「借用」するために必要。
え?どっちでもいいよ?
リファクタリング後のコードでは使用してないはずだけど。。。
それでもいいし
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 は所有権を「移動」じゃなくて「借用」するために必要。
306デフォルトの名無しさん
2017/10/31(火) 17:24:30.09ID:YHJiaIXY >>304
>> リファクタリング後のコードでは使用してないはずだけど。。。
誤解を招くかもだな。すまぬ。
if root.is_none() {
return 0;
}
root.as_ref().unwrap().level
のほうはリファクタリング後のコードでは使用してないはずだけど。。。だな
>> リファクタリング後のコードでは使用してないはずだけど。。。
誤解を招くかもだな。すまぬ。
if root.is_none() {
return 0;
}
root.as_ref().unwrap().level
のほうはリファクタリング後のコードでは使用してないはずだけど。。。だな
307デフォルトの名無しさん
2017/11/01(水) 08:38:18.68ID:R9aAc8x6 なるほど。ありがとう。
308デフォルトの名無しさん
2017/11/02(木) 00:38:25.36ID:0kOiRsC5 いいってことよ
309デフォルトの名無しさん
2017/11/02(木) 08:54:18.64ID:N8nuZaLN if not is_none 判定時に実行される、
コンパイラさんにも非noneと分かるコードパスでは
unwrap省略できれば読み書きする際にもPanic起こさないと分かりやすいしシンプルになるな。
実際にも最適化でチェックのコードも吐かれてないだろうし。
コンパイラさんにも非noneと分かるコードパスでは
unwrap省略できれば読み書きする際にもPanic起こさないと分かりやすいしシンプルになるな。
実際にも最適化でチェックのコードも吐かれてないだろうし。
310デフォルトの名無しさん
2017/11/02(木) 12:08:13.82ID:jpQjT5m9311デフォルトの名無しさん
2017/11/02(木) 12:58:12.12ID:jpQjT5m9 >>309
そのやり方は所有権システムの関係で難しいかもしれないな。
非noneが分かっていたとしても中身を取り出す時に所有権を移動する借用するのか決める必要がある。
そして、移動するにせよ借用するにせよ、取り出した時点から所有権システムの制約により
その親にあたるOption型の変数がスコープを抜けるまでは参照不可になる。
移動する場合は、スコープが抜ければOption変数ごと一緒に消費されるはずなので問題ないと思うが、
借用の場合は、スコープを抜けるまでOption変数が参照不可のままじゃ困る場合も多いだろう。
結局は、if let や match 等のスコープを使って借用が終わるタイミングを
コンパイラに知らせるための表現が必要になるんじゃないかと思う。
自分も所有権システムを完全に把握してるわけではないので、間違ってたら指摘してくれ。
そのやり方は所有権システムの関係で難しいかもしれないな。
非noneが分かっていたとしても中身を取り出す時に所有権を移動する借用するのか決める必要がある。
そして、移動するにせよ借用するにせよ、取り出した時点から所有権システムの制約により
その親にあたるOption型の変数がスコープを抜けるまでは参照不可になる。
移動する場合は、スコープが抜ければOption変数ごと一緒に消費されるはずなので問題ないと思うが、
借用の場合は、スコープを抜けるまでOption変数が参照不可のままじゃ困る場合も多いだろう。
結局は、if let や match 等のスコープを使って借用が終わるタイミングを
コンパイラに知らせるための表現が必要になるんじゃないかと思う。
自分も所有権システムを完全に把握してるわけではないので、間違ってたら指摘してくれ。
312デフォルトの名無しさん
2017/11/02(木) 16:01:49.17ID:24MXnSEE panic の代わりに未定義動作を行うことで、最適化時にNone時の経路が取り除かれる unchecked_unwrap() とかある。
外部クレートだけど。
外部クレートだけど。
313デフォルトの名無しさん
2017/11/02(木) 18:20:00.53ID:hBgfRlI6 FFIと静的型は相性悪いなあ
314デフォルトの名無しさん
2017/11/02(木) 21:04:39.70ID:aCC/XP/X 嫌われているプログラミング言語ランキング - Stack Overflow
http://news.mynavi.jp/news/2017/11/02/073/
http://news.mynavi.jp/news/2017/11/02/073/
315デフォルトの名無しさん
2017/11/02(木) 21:06:15.09ID:aCC/XP/X 最も嫌われているプログラミング言語は?--Stack Overflowが調査結果を発表
https://japan.zdnet.com/article/35109803/
https://japan.zdnet.com/article/35109803/
316デフォルトの名無しさん
2017/11/03(金) 01:51:06.45ID:8/ecCbDm だから何度も言ってるだろ
型なし能なし未来なしの糞言語が
使ってる連中は今すぐ首吊ってなるべく苦しんで無様に血糞尿にまみれて死ねよ
型なし能なし未来なしの糞言語が
使ってる連中は今すぐ首吊ってなるべく苦しんで無様に血糞尿にまみれて死ねよ
317デフォルトの名無しさん
2017/11/03(金) 01:55:11.36ID:KPeHygtG318デフォルトの名無しさん
2017/11/03(金) 09:09:40.17ID:8/ecCbDm319デフォルトの名無しさん
2017/11/03(金) 09:10:55.64ID:FED00RZ3 その政策の予算をいくらまでなら払えるか考えよう
予算なしは能なし未来なし
予算なしは能なし未来なし
320デフォルトの名無しさん
2017/11/03(金) 10:56:17.26ID:Z9aKc5RB すまんが型なし言語って何ンゴ?
321デフォルトの名無しさん
2017/11/03(金) 11:18:42.35ID:4GoOMjot 機械語のことかな?
322デフォルトの名無しさん
2017/11/03(金) 11:44:21.79ID:TD8MDvzA 変数に型の無い言語か
323デフォルトの名無しさん
2017/11/03(金) 14:34:55.34ID:5BCFVkq4 Go言語で
var 変数名 = 値
の表記の時は型を省略できるそうですが
値が数値で、値から型が確定できない場合はどうなるのでしょうか?
値から型を確定できるのは文字列型と真偽値くらいだと思いますが
var 変数名 = 値
の表記の時は型を省略できるそうですが
値が数値で、値から型が確定できない場合はどうなるのでしょうか?
値から型を確定できるのは文字列型と真偽値くらいだと思いますが
324デフォルトの名無しさん
2017/11/03(金) 14:43:12.88ID:tw8puOLs >>323
値に応じたデフォルトの型か決まっている
値に応じたデフォルトの型か決まっている
325デフォルトの名無しさん
2017/11/03(金) 14:58:26.87ID:5BCFVkq4326デフォルトの名無しさん
2017/11/03(金) 15:00:00.55ID:fYVptX6H327デフォルトの名無しさん
2017/11/03(金) 15:50:26.42ID:Tuvr4QS2 VBA は explicit 付ければ堅く書くこともできるんやで〜。
そんな書き方するやつあんまいないけど。。
そんな書き方するやつあんまいないけど。。
328デフォルトの名無しさん
2017/11/03(金) 16:36:07.91ID:FED00RZ3329デフォルトの名無しさん
2017/11/03(金) 17:02:16.49ID:Ro85MhDs330デフォルトの名無しさん
2017/11/03(金) 23:58:20.96ID:HHSOzVXl331デフォルトの名無しさん
2017/11/04(土) 00:00:53.97ID:I+CIRt80 次スレはワッチョイつけないとな。
330みたいな異常者をNGするために。
330みたいな異常者をNGするために。
332デフォルトの名無しさん
2017/11/04(土) 00:03:54.76ID:gh0lmyH1 HHVMを使うという手もあるんじゃ
333あ
2017/11/04(土) 00:24:15.28ID:CAYPLKQ7 と言うか、では実務ではウェブの案件には何をお使いで?と聞きたいな。
ホントに何なんだろ。
ホントに何なんだろ。
334デフォルトの名無しさん
2017/11/04(土) 00:42:18.37ID:OREBcHC8335デフォルトの名無しさん
2017/11/04(土) 00:42:59.68ID:xCfQAlvJ node + ts
未だにphpでlampとかもう(笑)も付かないレベル
未だにphpでlampとかもう(笑)も付かないレベル
336デフォルトの名無しさん
2017/11/04(土) 00:46:07.02ID:sWNabS3I 叩きは理想の言語とやらでRails越を越える
フレームワークを作ってからしてくれ。
フレームワークを作ってからしてくれ。
337デフォルトの名無しさん
2017/11/04(土) 02:10:05.95ID:gh0lmyH1 俺の中ではgoでgoaかな。swagger.jsonを介して通信周りもコード生成できる。
API設計するとclientライブラリまで一括して作れるからSPA開発が捗る。
TypeScriptのクライアントライブラリ生成してapiの返すjsonのinterfaceまで作ってくれるから至れり尽くせり。
API設計するとclientライブラリまで一括して作れるからSPA開発が捗る。
TypeScriptのクライアントライブラリ生成してapiの返すjsonのinterfaceまで作ってくれるから至れり尽くせり。
338あ
2017/11/04(土) 02:22:57.88ID:CAYPLKQ7 Railsか。なるほどありがち。
APIサーバはGoとかnode確かに便利。
tsは置いといて。
あれやるくらいならc#とnancyで書いたほうが余程安定する。寿命の面でも。
そして.net coreすごいわ。
TSは最近イケイケドンドン過ぎる気がする。
イシューは閉じれてないけど、次以降のリリースに頑張るわ、ところでこれ!新機能盛りました!
みたいなノリ。
APIサーバはGoとかnode確かに便利。
tsは置いといて。
あれやるくらいならc#とnancyで書いたほうが余程安定する。寿命の面でも。
そして.net coreすごいわ。
TSは最近イケイケドンドン過ぎる気がする。
イシューは閉じれてないけど、次以降のリリースに頑張るわ、ところでこれ!新機能盛りました!
みたいなノリ。
339デフォルトの名無しさん
2017/11/04(土) 08:30:20.53ID:xYAYvDdv nodeはnodeで闇深いがな……あいつ結構非自明なメモリリーク起こしやがる
ts on nodeってその辺解決できてるのか?
ts on nodeってその辺解決できてるのか?
340デフォルトの名無しさん
2017/11/04(土) 08:35:04.21ID:xCfQAlvJ で。おまえは実務ではウェブの案件には何をお使いで?
PHPとか言って笑いを取る必要はないぞ
PHPとか言って笑いを取る必要はないぞ
341デフォルトの名無しさん
2017/11/04(土) 09:38:29.95ID:ZfOcIIq3 Django
何だかんだ言われてるけど強いよこいつは
何だかんだ言われてるけど強いよこいつは
342あ
2017/11/04(土) 13:55:52.44ID:CAYPLKQ7 >>340
何でも使う。書捨てでビューがあればphp
ビューがあって書捨てじゃなけりゃasp.net
Tomcatとservletは嫌い。
安定したAPIサーバはGoかc#とNancy。
nodeは個人用。
イントラ多いから、デプロイ先がWindowsサーバで、セットアップが必要な処理系は入れづらいのよね。
phpは過去の案件ですでに入ってたり、だいたいIISは動いてる。
何でも使う。書捨てでビューがあればphp
ビューがあって書捨てじゃなけりゃasp.net
Tomcatとservletは嫌い。
安定したAPIサーバはGoかc#とNancy。
nodeは個人用。
イントラ多いから、デプロイ先がWindowsサーバで、セットアップが必要な処理系は入れづらいのよね。
phpは過去の案件ですでに入ってたり、だいたいIISは動いてる。
343デフォルトの名無しさん
2017/11/04(土) 15:34:33.21ID:F1n0Y3Pu ウチはseaside.st
344デフォルトの名無しさん
2017/11/04(土) 18:58:28.17ID:xCfQAlvJ345あ
2017/11/04(土) 22:22:28.71ID:F/oA6Mmk >>344
器用貧乏だろうなぁ。メインの言語以外は特に。
そもそもしばらくシステム屋じゃないし。
道具としては色々使うけど。用を果たせば良い部分と、趣味として使う分は別けてる。
流石に20代でもあるまいし、わきまえてるよ。仕事は。
ボロが出るというより、単純に知らんので参考になってる事も多いよ。
器用貧乏だろうなぁ。メインの言語以外は特に。
そもそもしばらくシステム屋じゃないし。
道具としては色々使うけど。用を果たせば良い部分と、趣味として使う分は別けてる。
流石に20代でもあるまいし、わきまえてるよ。仕事は。
ボロが出るというより、単純に知らんので参考になってる事も多いよ。
346デフォルトの名無しさん
2017/11/04(土) 22:23:05.19ID:M2bfsYrO しったかするから、自分の知らない領域ついても知識があるように見えるだけだぞ
347あ
2017/11/04(土) 22:28:21.22ID:F/oA6Mmk348デフォルトの名無しさん
2017/11/04(土) 23:34:55.56ID:M2bfsYrO >>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
知ってるよ。実行時に多相性を「しない」のならその主張もわかるが、「ほとんどの場合しない」は「してる」だよ。
「施錠確認した?」「ほとんどしました」って、要は全く施錠の確認できてないのと変わらんよね。
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
知ってるよ。実行時に多相性を「しない」のならその主張もわかるが、「ほとんどの場合しない」は「してる」だよ。
「施錠確認した?」「ほとんどしました」って、要は全く施錠の確認できてないのと変わらんよね。
350デフォルトの名無しさん
2017/11/05(日) 01:40:33.90ID:LYbC1fh+351デフォルトの名無しさん
2017/11/05(日) 11:59:20.40ID:3qpI8vVt 器用貧乏の対義語に名前をつけたい
サンクコスト貧乏かな
サンクコスト貧乏かな
352デフォルトの名無しさん
2017/11/05(日) 12:02:14.14ID:KWRWj+y1 Railsって未だに生産性高いんか。
PHPがパクっていろんなフレームワーク作ってるけど
PHPがパクっていろんなフレームワーク作ってるけど
353デフォルトの名無しさん
2017/11/05(日) 12:11:59.33ID:/wBATO2P ペチパーって何であんなにフレームワーク作りたがるんだろうな
自己主張が強いのか、ママの愛が足りなくて承認欲求に飢えてるのか
自己主張が強いのか、ママの愛が足りなくて承認欲求に飢えてるのか
354デフォルトの名無しさん
2017/11/05(日) 12:16:38.92ID:KWRWj+y1 >>353
たかがテンプレートエンジンがでしゃばりやがって感ある。
でもインスタンスの生存時間が短いから開発者に優しい言語ではある。
まぁwebScoketとか繋ぎっぱなしにするような仕組みには弱くなるけど
たかがテンプレートエンジンがでしゃばりやがって感ある。
でもインスタンスの生存時間が短いから開発者に優しい言語ではある。
まぁwebScoketとか繋ぎっぱなしにするような仕組みには弱くなるけど
355デフォルトの名無しさん
2017/11/05(日) 12:26:54.29ID:LYbC1fh+ >>352
なんだかんだであれは死なないよ
資産が豊富で、webのラピッドプロトタイピングにおいては群を抜いておる
Railsライクな他言語のフレームワークがRailsを羨ましがる場面はあっても、恐らくその逆はない
なんだかんだであれは死なないよ
資産が豊富で、webのラピッドプロトタイピングにおいては群を抜いておる
Railsライクな他言語のフレームワークがRailsを羨ましがる場面はあっても、恐らくその逆はない
356デフォルトの名無しさん
2017/11/05(日) 12:51:00.18ID:CS19J9AT 慣れの世界って感じもするけどな
俺はテンプレートエンジンより、Reactで書くほうが最近は楽なのでtypescriptで書いちゃうことが多いな
サーバサイドも必要ならrustかJavaでちょろって感じ
俺はテンプレートエンジンより、Reactで書くほうが最近は楽なのでtypescriptで書いちゃうことが多いな
サーバサイドも必要ならrustかJavaでちょろって感じ
357デフォルトの名無しさん
2017/11/05(日) 13:29:53.61ID:KWRWj+y1 時代はSPAの方向を向いている中あえて今Rails使うメリットってあるんかな。
最初からWebAPI提供できたほうがいいし。
React覚えるとモバイルももれなく作れるのがいい
最初からWebAPI提供できたほうがいいし。
React覚えるとモバイルももれなく作れるのがいい
358デフォルトの名無しさん
2017/11/05(日) 14:06:42.08ID:k+vH6ph9 Node.jsとTypeScript使っとけば幸せになれるということ?
359デフォルトの名無しさん
2017/11/05(日) 14:17:26.71ID:o4zLpSg/ >>358
webassemblyの時代が来るまではね
webassemblyの時代が来るまではね
360デフォルトの名無しさん
2017/11/05(日) 14:50:39.74ID:PoYQIzOm wasm時代の覇権がどうなるか想像出来ん
とりあえずC++は安定だろうけど
とりあえずC++は安定だろうけど
361デフォルトの名無しさん
2017/11/05(日) 15:02:45.09ID:/wBATO2P PHP使ってれば食いっぱぐれることはないやろ
ガイジどもが作った負の遺産を保守し続ける楽なお仕事が半永久的にあるで
ガイジどもが作った負の遺産を保守し続ける楽なお仕事が半永久的にあるで
363デフォルトの名無しさん
2017/11/05(日) 15:32:04.98ID:3qpI8vVt フレームワークやIDEを
ドラえもんの道具にたとえると四次元ポケット
ドラえもんの道具にたとえると四次元ポケット
364デフォルトの名無しさん
2017/11/05(日) 20:51:56.70ID:vWNY+clC >>361
真っ先に自動化されるか、見捨てられるシステムだな。
真っ先に自動化されるか、見捨てられるシステムだな。
365デフォルトの名無しさん
2017/11/05(日) 20:55:20.91ID:Fa7z1jl7 COBOLやJavaならわかるけどPHPではなあ
ある日突然消えてなくなったところで大した問題のないゴミばかりだろ
ある日突然消えてなくなったところで大した問題のないゴミばかりだろ
366デフォルトの名無しさん
2017/11/05(日) 21:28:49.35ID:wTe1xxd0 おい、アスペチプァさんを馬鹿にするなよ
彼らが本気出したらお前ら血便漏らして死ぬようなコード書くぞ
彼らが本気出したらお前ら血便漏らして死ぬようなコード書くぞ
367デフォルトの名無しさん
2017/11/05(日) 21:40:31.01ID:RFcD7Uma 日本の技術力ガーとか言ってたくせに
結局全部嘘ばかり
バカチョン以下やでホンマ
そりゃペチパーが闊歩しますわ
Rustアンチくんはペチパー
はっきりわかんだね
これだからペチプァは
それ以上ペチパーの心のより所を叩くのはやめてやれw
彼ら、憤死してしまうでwww
ペチパーって何であんなにフレームワーク作りたがるんだろうな
自己主張が強いのか、ママの愛が足りなくて承認欲求に飢えてるのか
おい、アスペチプァさんを馬鹿にするなよ
マジキチ
結局全部嘘ばかり
バカチョン以下やでホンマ
そりゃペチパーが闊歩しますわ
Rustアンチくんはペチパー
はっきりわかんだね
これだからペチプァは
それ以上ペチパーの心のより所を叩くのはやめてやれw
彼ら、憤死してしまうでwww
ペチパーって何であんなにフレームワーク作りたがるんだろうな
自己主張が強いのか、ママの愛が足りなくて承認欲求に飢えてるのか
おい、アスペチプァさんを馬鹿にするなよ
マジキチ
368デフォルトの名無しさん
2017/11/05(日) 23:19:35.12ID:wTe1xxd0 >>367
巣へお帰り
自称次世代言語議論スレ[PHP PHP PHP] [無断転載禁止]©2ch.net
http://mevius.2ch.net/test/read.cgi/tech/1506823587/
巣へお帰り
自称次世代言語議論スレ[PHP PHP PHP] [無断転載禁止]©2ch.net
http://mevius.2ch.net/test/read.cgi/tech/1506823587/
369デフォルトの名無しさん
2017/11/05(日) 23:22:51.31ID:2EuxY2gH ペチアンチの面白語録非難してる奴って胸に突き刺さって抜けないペチパーか?
370あ
2017/11/06(月) 00:12:29.28ID:/hMSyilp 好きの反対は無関心になるはずだしな。
嫌いな事と言うのは、実は興味があったり、かつて好きだった事があったり、強制され抵抗できなかった惨めさがあったりするもんだ。
あまり人の憎しみを面白半分で扱ってはいかんな。
嫌いな事と言うのは、実は興味があったり、かつて好きだった事があったり、強制され抵抗できなかった惨めさがあったりするもんだ。
あまり人の憎しみを面白半分で扱ってはいかんな。
371デフォルトの名無しさん
2017/11/06(月) 01:15:12.61ID:TNQjb5Zj372デフォルトの名無しさん
2017/11/06(月) 01:24:21.52ID:HP5doPtx 【泥沼】 京都市のシステム開発失敗、IT企業に7億5千万円の損害賠償請求 企業側は支払い拒否
http://hayabusa9.5ch.net/test/read.cgi/news/1509849067/
http://hayabusa9.5ch.net/test/read.cgi/news/1509849067/
373デフォルトの名無しさん
2017/11/06(月) 07:18:27.19ID:9YhppvEm >>371
dynamic importが実装されている現状から言って最初のローディングが遅いって問題は解決する。というかminifyすれば十分小さい。
せいぜい500kbとかでしょ開発中は10MBとかだったりしてビビるけど。
dynamic importが実装されている現状から言って最初のローディングが遅いって問題は解決する。というかminifyすれば十分小さい。
せいぜい500kbとかでしょ開発中は10MBとかだったりしてビビるけど。
374デフォルトの名無しさん
2017/11/06(月) 07:21:45.70ID:9YhppvEm375デフォルトの名無しさん
2017/11/06(月) 09:16:46.62ID:MQujfIpu376デフォルトの名無しさん
2017/11/06(月) 09:17:47.31ID:TNQjb5Zj >>373
最初のローディングを早くするのとSEOできるっていう二つがSSRのメリットだと言われてないか?
それからSPAの初回表示が5000msとかかかるのは、DOMを構築する処理のせいだろ?
500kbというのはjsのサイズか?ファイルがいくら小さくてもな…
dynamic importは調べてもよくわからなかったが、解決するというなら良いことだ
最初のローディングを早くするのとSEOできるっていう二つがSSRのメリットだと言われてないか?
それからSPAの初回表示が5000msとかかかるのは、DOMを構築する処理のせいだろ?
500kbというのはjsのサイズか?ファイルがいくら小さくてもな…
dynamic importは調べてもよくわからなかったが、解決するというなら良いことだ
377デフォルトの名無しさん
2017/11/06(月) 09:18:45.46ID:MQujfIpu378デフォルトの名無しさん
2017/11/06(月) 09:20:16.78ID:MQujfIpu379デフォルトの名無しさん
2017/11/06(月) 10:13:51.90ID:YDBkedHo380デフォルトの名無しさん
2017/11/06(月) 11:07:45.63ID:T8PAAaKN cobol, fortran, vb あたりも相当恨みを買ってる言語だが、ここでの php への
恨みはそんなもんじゃないな。。
使ったことないからわからんが、そこまで嫌われるのは興味あるわ。
恨みはそんなもんじゃないな。。
使ったことないからわからんが、そこまで嫌われるのは興味あるわ。
381デフォルトの名無しさん
2017/11/06(月) 16:11:09.26ID:9YhppvEm >>377
俺の勘違いなのか?
動的ローディング使えばルーティングで該当ページが開く時にネットワークアクセスするから初回転送量は抑えられるだろ。
DOMの構築が遅いっていうのも意味がわかんないな。
現在表示している画面以外のレンダリングも裏でやってるとでも思ってるのか?
俺の勘違いなのか?
動的ローディング使えばルーティングで該当ページが開く時にネットワークアクセスするから初回転送量は抑えられるだろ。
DOMの構築が遅いっていうのも意味がわかんないな。
現在表示している画面以外のレンダリングも裏でやってるとでも思ってるのか?
382デフォルトの名無しさん
2017/11/06(月) 16:32:50.51ID:SH+6BLR2 PHPは使う必要ないの?
383デフォルトの名無しさん
2017/11/06(月) 16:40:37.06ID:zYnuoH4p 無い
384あ
2017/11/06(月) 17:06:37.01ID:slDUJGNU >>381
仮想DOMを作ってDOMツリーに展開していく部分でしょ、初回を早くするためのSSRって。
割と時間掛かる上に描画がロックしがちだから、最初からHTMLとしてDOMツリー渡して、仮想DOMとあとからバインドするんじゃねえの?
該当ページが開く前にロード、じゃなくて、初回の話でしょ。
仮想DOMを作ってDOMツリーに展開していく部分でしょ、初回を早くするためのSSRって。
割と時間掛かる上に描画がロックしがちだから、最初からHTMLとしてDOMツリー渡して、仮想DOMとあとからバインドするんじゃねえの?
該当ページが開く前にロード、じゃなくて、初回の話でしょ。
385デフォルトの名無しさん
2017/11/06(月) 17:43:13.17ID:YFPXBPxU むしろ「使い慣れてるから」とかいうクソペチパーの戯れ事以外でぷぃーえっちぷぃーなんて使う理由あるならそっちの方が聞きたい
386デフォルトの名無しさん
2017/11/06(月) 18:15:38.15ID:SH+6BLR2 PHPが滅んだとしてその穴を埋める言語って何?Js?
387あ
2017/11/06(月) 18:47:27.87ID:slDUJGNU phpの良い所なぁ。
楽な部分だと、nginx+php-fpmでも、apacheでも、IISでも、ファイル置くだけで動く所が一番初心者には楽なんじゃないの?
あれやってるとContent-Typeとかヘッダを覚えない!なんて言うPerl使いももういねぇんだし。
aspやasp.netもまぁ同じ部類か。
unicornもsupervisordもforeverもpm2も要らない、サーバのポートを使う事もない。
リバースプロキシも要らない。リバースプロキシがヘッダを触ろうが割と平気。
こんな言語あんま無いぞ。良いか悪いかは別としても。
楽な部分だと、nginx+php-fpmでも、apacheでも、IISでも、ファイル置くだけで動く所が一番初心者には楽なんじゃないの?
あれやってるとContent-Typeとかヘッダを覚えない!なんて言うPerl使いももういねぇんだし。
aspやasp.netもまぁ同じ部類か。
unicornもsupervisordもforeverもpm2も要らない、サーバのポートを使う事もない。
リバースプロキシも要らない。リバースプロキシがヘッダを触ろうが割と平気。
こんな言語あんま無いぞ。良いか悪いかは別としても。
388デフォルトの名無しさん
2017/11/06(月) 20:08:38.89ID:XMp+x8Af >>387
そういうレベルの奴が遊ぶからウンコ量産機になるっていう話なんだよなあ
そういうレベルの奴が遊ぶからウンコ量産機になるっていう話なんだよなあ
389デフォルトの名無しさん
2017/11/06(月) 20:40:54.59ID:9YhppvEm390デフォルトの名無しさん
2017/11/06(月) 20:42:12.76ID:HSJSgREc お手軽魔法のLAMP
391デフォルトの名無しさん
2017/11/06(月) 21:16:04.27ID:Ei8rpFR6 仮想DOMからDOMツリーに展開するのとHTMLをレンダリングしてDOMツリーを構築するのと
どっちが速いかって自明じゃないよね?
「HTMLとしてDOMツリー渡して」とか書いてるところを見ると、そこコスト0と思ってるとか?
どっちが速いかって自明じゃないよね?
「HTMLとしてDOMツリー渡して」とか書いてるところを見ると、そこコスト0と思ってるとか?
392あ
2017/11/06(月) 21:57:40.34ID:/hMSyilp >>388
単にうんこも作れると言うことだ。
>>389
古き良きFormとポストバックでも何でもすれば良いよ。
>>391
微妙な所では?プロファイルはしてないけど。
DOMツリーも、仮想DOMからどうエレメント作ってるかにもよると思うし、リフロー、リペイントが何回起きるかにもよると思うが、
HTMLとしてDOMツリーを渡して一番得なのは、DOMツリーを解釈したレンダツリーをレイアウトする所まで決定的関数になるから取り敢えず形としては一発で書けるという認識だった。
だから、AMPではレイアウト計算が走らんように、ロード後にサイズが変わる画像は使えない、みたいな縛りを入れてると思ってたよ。
違ったら教えて。
単にうんこも作れると言うことだ。
>>389
古き良きFormとポストバックでも何でもすれば良いよ。
>>391
微妙な所では?プロファイルはしてないけど。
DOMツリーも、仮想DOMからどうエレメント作ってるかにもよると思うし、リフロー、リペイントが何回起きるかにもよると思うが、
HTMLとしてDOMツリーを渡して一番得なのは、DOMツリーを解釈したレンダツリーをレイアウトする所まで決定的関数になるから取り敢えず形としては一発で書けるという認識だった。
だから、AMPではレイアウト計算が走らんように、ロード後にサイズが変わる画像は使えない、みたいな縛りを入れてると思ってたよ。
違ったら教えて。
393デフォルトの名無しさん
2017/11/06(月) 22:45:29.40ID:hux2/GU9 SSRの実装次第じゃね。情報が古いことを許容するならキャッシュしたレンダリング結果を返すという手もある。
394デフォルトの名無しさん
2017/11/06(月) 23:47:45.62ID:MQujfIpu395デフォルトの名無しさん
2017/11/06(月) 23:55:59.09ID:UKBp9co4396あ
2017/11/06(月) 23:58:52.19ID:/hMSyilp397あ
2017/11/07(火) 00:08:23.71ID:BP2Kxffy >>395
裏とか対偶を取ると何か意味がぼやける気がするが。
好きならば、関心がある
好きでないならば、関心は無い
関心が無いならば、好きではない
嫌いならば、関心がある
嫌いでないならば、関心は無い
関心が無いならば、嫌いではない
「関心」を共通項として消しこんでしまうから好きと嫌いが直結してるように見えるが、
本質的には好きと嫌いは全く違う感情として捉えるべきだと昔習ったよ。精神医学か臨床心理学かどっちかで。
そうしないと凄く嫌いな状態が好き、みたいなややこしいドMとかメンヘラ感情を説明出来なくなる。
裏とか対偶を取ると何か意味がぼやける気がするが。
好きならば、関心がある
好きでないならば、関心は無い
関心が無いならば、好きではない
嫌いならば、関心がある
嫌いでないならば、関心は無い
関心が無いならば、嫌いではない
「関心」を共通項として消しこんでしまうから好きと嫌いが直結してるように見えるが、
本質的には好きと嫌いは全く違う感情として捉えるべきだと昔習ったよ。精神医学か臨床心理学かどっちかで。
そうしないと凄く嫌いな状態が好き、みたいなややこしいドMとかメンヘラ感情を説明出来なくなる。
398デフォルトの名無しさん
2017/11/07(火) 01:23:02.74ID:yN+d3e/T 頭にプリプリうんこの詰まったペチプリパァのおじちゃん
年収200万なのに生きてて恥ずかしくないの?
年収200万なのに生きてて恥ずかしくないの?
399デフォルトの名無しさん
2017/11/07(火) 01:43:06.64ID:JlqCGsEJ WP納品してセキュリティも保守も拡張も考えなくていいならPHPで勝手にすればって感じだけど
まぁ関わりたくないよね
まぁ関わりたくないよね
400デフォルトの名無しさん
2017/11/07(火) 04:40:28.24ID:G20ApN4s phpがというより動的言語が嫌なんだよなぁ。
リファクタリングとかIDE支援が期待できない。
だからhackなら良さそうなんだけどだれも使おうとしないのはなんで
リファクタリングとかIDE支援が期待できない。
だからhackなら良さそうなんだけどだれも使おうとしないのはなんで
401デフォルトの名無しさん
2017/11/07(火) 04:58:43.28ID:G20ApN4s GoをGAE/Goで使うとインフラもセットで完成した状態で使えるしオススメ。
dockerも、結局インフラ構築と変わんないから触らないで済ましたい
dockerも、結局インフラ構築と変わんないから触らないで済ましたい
402デフォルトの名無しさん
2017/11/07(火) 12:20:53.38ID:iCCdSanC403デフォルトの名無しさん
2017/11/07(火) 12:39:38.98ID:e73yffVV >>402
reactがけっこう静的型html感ある。特にtypescriptでpropsのinterfaceをちゃんと定義した場合ね。
reactがけっこう静的型html感ある。特にtypescriptでpropsのinterfaceをちゃんと定義した場合ね。
404デフォルトの名無しさん
2017/11/07(火) 19:58:30.70ID:SHDG9lem react もなんかだいぶごっつくなってきちゃってるね。
大丈夫なんだろうか。
大丈夫なんだろうか。
405デフォルトの名無しさん
2017/11/08(水) 02:44:50.04ID:fAd0cb4n406デフォルトの名無しさん
2017/11/08(水) 05:31:11.16ID:aIBytdYn >>248
実際Fortranって最新規格を見ると超素晴らしいんだよな……
コンパイラを見ると実装が全然追いついて無くてしょぼーんってなる
>配列の大きさ指定の関数に組み込みでない関数を使えるようになって
よくわからんがもしparameterized derived typesのことなら最近gccにも実装された
実際Fortranって最新規格を見ると超素晴らしいんだよな……
コンパイラを見ると実装が全然追いついて無くてしょぼーんってなる
>配列の大きさ指定の関数に組み込みでない関数を使えるようになって
よくわからんがもしparameterized derived typesのことなら最近gccにも実装された
407デフォルトの名無しさん
2017/11/08(水) 06:30:17.43ID:giBp8lNc CやFortranはやっぱ根幹だわ。
枯れて信頼性の高い処理系から、最新機能
を装備した処理系までとバラエティに富み、
常に進化し続けている。
枯れて信頼性の高い処理系から、最新機能
を装備した処理系までとバラエティに富み、
常に進化し続けている。
408デフォルトの名無しさん
2017/11/08(水) 06:50:29.08ID:aIBytdYn CもFortranも規格だけは刷新され続けているのに実際使える範囲はC99やF95で止まってるけどな
Cを止めてるのは主にVC++だけど
Cを止めてるのは主にVC++だけど
409デフォルトの名無しさん
2017/11/08(水) 07:58:32.73ID:hM94b8vG そりゃ基本はC++の処理系だし、Cには関心ないんだろ。
それにそもそも、VC++がC11に対応したからといってC11が普及するとも思えんがな。
誰が使いたがるんだろう、あれ。
それにそもそも、VC++がC11に対応したからといってC11が普及するとも思えんがな。
誰が使いたがるんだろう、あれ。
411デフォルトの名無しさん
2017/11/08(水) 08:06:51.37ID:HmOnpGK3 C++が糞だから使いたくない人はCくらいしか選択しないだろう。
412デフォルトの名無しさん
2017/11/08(水) 23:41:09.61ID:8TXwlHft swiftむずい
413デフォルトの名無しさん
2017/11/09(木) 08:24:27.56ID:6+7/preV Cもラムダ式(かBlocks)とattribute((cleanup))入るだけで随分と楽になるのに。。。
規格更新が遅すぎるんだよ。
規格更新が遅すぎるんだよ。
414デフォルトの名無しさん
2017/11/09(木) 08:43:42.68ID:F+Mngyv/ それな。特にBlocks
415デフォルトの名無しさん
2017/11/09(木) 09:20:27.50ID:C6Hnpcf+ jsの世界のbabelみたく新規格をとりあえずすぐ使えるaltCみたいなものを作ればいいんじゃないの?
416デフォルトの名無しさん
2017/11/09(木) 09:40:41.51ID:F+Mngyv/ は?
417デフォルトの名無しさん
2017/11/09(木) 09:45:23.55ID:aP107Usi 昔、Cfront と呼ばれるものがあってね。。
418デフォルトの名無しさん
2017/11/09(木) 10:19:46.53ID:ddqlamp+ Blocksは江添にクソって批判されてたような
C++との互換性考えたらラムダ式が現実的かと
C++との互換性考えたらラムダ式が現実的かと
419デフォルトの名無しさん
2017/11/09(木) 10:20:31.70ID:PlmGILRr 規格または実装のどちらかが遅すぎる法則
これ9割当たるだろ
これ9割当たるだろ
420デフォルトの名無しさん
2017/11/09(木) 10:27:48.86ID:xB437NUI 最悪なのは「実装がバグだらけ!」
421デフォルトの名無しさん
2017/11/09(木) 11:20:20.07ID:Ks0zwITf 自己書き換えコードが禁止されてるからCでラムダ式とかが考えられてこないんだろうな。
422デフォルトの名無しさん
2017/11/09(木) 11:53:29.71ID:rCwX7bXU いやCなら単純に関数定義と関数ポインタ渡しの構文糖衣でいいだろ
423デフォルトの名無しさん
2017/11/09(木) 12:05:07.58ID:F+Mngyv/ C++のラムダ式とか最適化のおばけやんけ
あれCに入れれるのか?
あれCに入れれるのか?
424デフォルトの名無しさん
2017/11/09(木) 12:55:14.10ID:lGQpurza 素直にC++使わないのは何故。
425デフォルトの名無しさん
2017/11/09(木) 14:14:40.60ID:F+Mngyv/ よくわからんし苦手だから
426デフォルトの名無しさん
2017/11/09(木) 15:25:39.37ID:EdyTgEfO C++のラムダは文法、型付けともに最悪だろ
第一templateもautoもないCでどうやって持ち運ぶんだよ
それにBlocksもそうだけど
気軽に他言語からのFFIができなくなるんじゃないか
基本的なAPIにこういうのが使われだしたら他が困る……
第一templateもautoもないCでどうやって持ち運ぶんだよ
それにBlocksもそうだけど
気軽に他言語からのFFIができなくなるんじゃないか
基本的なAPIにこういうのが使われだしたら他が困る……
427デフォルトの名無しさん
2017/11/09(木) 15:40:59.87ID:EdyTgEfO あとC++ラムダもBlocksもローカル変数をキャプチャーする糞仕様だし
そんなのがABIとして定まってしまうと、例えばD言語が関数ポインタとスタックポインタのペアだけでやってるみたいな
シンプルかつより優れた実装を取ってる組が迷惑するだろ
そんなのがABIとして定まってしまうと、例えばD言語が関数ポインタとスタックポインタのペアだけでやってるみたいな
シンプルかつより優れた実装を取ってる組が迷惑するだろ
428デフォルトの名無しさん
2017/11/09(木) 16:51:04.80ID:Ks0zwITf Cの戻り値が一つしか出来ないというのも意味わからないよな。
2つのレジスターに値をセットして戻せばできるのにな。
2つのレジスターに値をセットして戻せばできるのにな。
429デフォルトの名無しさん
2017/11/09(木) 17:23:41.36ID:RK6L6tnV 評価した結果,値を2つ持つって方が意味わからん気がする
複数の戻り値を表すならタプルみたいなもので1つの値にしてしまうのが一般的だと思うけどCでそれは流石に…という感じ
複数の戻り値を表すならタプルみたいなもので1つの値にしてしまうのが一般的だと思うけどCでそれは流石に…という感じ
430デフォルトの名無しさん
2017/11/09(木) 17:53:57.52ID:EdyTgEfO x86_64のSysVみたいに環境によっては
レジスタ2つ分程度なら構造体で返してもrax, rdx使ってくれるぞ
それに10個とかになると結局構造体返しと同じになるだろうから区別する理由がない
レジスタ2つ分程度なら構造体で返してもrax, rdx使ってくれるぞ
それに10個とかになると結局構造体返しと同じになるだろうから区別する理由がない
431デフォルトの名無しさん
2017/11/09(木) 18:05:25.89ID:Ks0zwITf 引数は複数なのに戻り値は一つって対称性が乱れてるからな。
引数が一つってきまってるなら戻り値が一つでもいいんだけどな。
引数が一つってきまってるなら戻り値が一つでもいいんだけどな。
432あ
2017/11/09(木) 18:32:55.15ID:RgVZiOIN まー、今更呼び出し規約変更するのも虚しい結果に至るだろ。
433デフォルトの名無しさん
2017/11/09(木) 18:40:38.48ID:xkkUp3yc 俺は今の言語が解析しにくいのが不満
xmlみたいにシリアライズ容易であって欲しい
プログラムからコードを作成したり
ビジュアル的にコードを表現したり出来ていいと思う
これが出来てやっと次のステージにすすめると思う
xmlみたいにシリアライズ容易であって欲しい
プログラムからコードを作成したり
ビジュアル的にコードを表現したり出来ていいと思う
これが出来てやっと次のステージにすすめると思う
434デフォルトの名無しさん
2017/11/09(木) 18:56:04.11ID:aP107Usi それ lisp やんけ
435デフォルトの名無しさん
2017/11/09(木) 19:02:43.09ID:xkkUp3yc436デフォルトの名無しさん
2017/11/09(木) 19:09:29.48ID:xkkUp3yc htmlみたいにxmlでフローの書けるプログラムが組めるような言語とか次の覇権を握る
次世代はプログラムの自動生成がメインに来ると思うな
モジュールのビジュアル化
それらを組み合わせるAIとか10年後のスタンダードになると思う
次世代はプログラムの自動生成がメインに来ると思うな
モジュールのビジュアル化
それらを組み合わせるAIとか10年後のスタンダードになると思う
437デフォルトの名無しさん
2017/11/09(木) 19:49:14.84ID:7aPgmrKc >>431
カリー化祭
カリー化祭
438デフォルトの名無しさん
2017/11/09(木) 21:03:11.32ID:rakEZX+F Apache Jellyは全然流行らなかったな。
439デフォルトの名無しさん
2017/11/09(木) 21:08:41.44ID:F+Mngyv/ ID:aP107Usiじゃないけど、俺も言いたい
それLispやんけ
それLispやんけ
440デフォルトの名無しさん
2017/11/09(木) 21:17:49.45ID:PlmGILRr 確かに人間の能力で解析できるのはLisp程度かもしれないが
次世代AIだったらLispは甘え
次世代AIだったらLispは甘え
441デフォルトの名無しさん
2017/11/09(木) 22:00:27.03ID:xkkUp3yc c#は構文解析やるのも字句解析やるのも
結構疲れる
こんなんじゃビジュアル開発できないじゃん
IDEなんてリソースエディタまわり強化するぐらいしか進化する先ねーのに
言語複雑にしてっと自分のクビしめっぞ
結構疲れる
こんなんじゃビジュアル開発できないじゃん
IDEなんてリソースエディタまわり強化するぐらいしか進化する先ねーのに
言語複雑にしてっと自分のクビしめっぞ
442デフォルトの名無しさん
2017/11/09(木) 22:18:45.81ID:6LULX4BS C#はRoslyn使えば一発でAST取れるぞ
MSのコンパイラというのは開発ツールのための言語サービスなんだよ
MSのコンパイラというのは開発ツールのための言語サービスなんだよ
443デフォルトの名無しさん
2017/11/09(木) 22:47:28.93ID:6+7/preV CもABI変えない範囲で新機能は追加してほしい
444デフォルトの名無しさん
2017/11/09(木) 22:53:10.61ID:Hmz/S4uV 常にデ/シリアライズ可能って良さげだな
ある時点のスタックトレースを丸ごとダンプして、丸ごと状態を復元できる
ある時点のスタックトレースを丸ごとダンプして、丸ごと状態を復元できる
445あ
2017/11/10(金) 00:01:05.74ID:QEw38nat446デフォルトの名無しさん
2017/11/10(金) 00:51:01.42ID:D7HJ1e1B みんなー、Nimでにむにむしよっ
447デフォルトの名無しさん
2017/11/10(金) 01:42:31.25ID:z2GdfpnL むにゃ
448デフォルトの名無しさん
2017/11/10(金) 08:03:25.78ID:ZxotU10g449あ
2017/11/10(金) 12:48:28.65ID:ryCkgWWn >>448
仮想マシン一時停止にしてスナップショット撮って、再開するのは不便だって事かな。
まぁ確かに不便か。
まあ、普通WPF書いてればモデルクラスにMVVMしてるだろうし、そいつをシリアライズしとけば良いと思うけどね。Reduxみたいに、となると。
仮想マシン一時停止にしてスナップショット撮って、再開するのは不便だって事かな。
まぁ確かに不便か。
まあ、普通WPF書いてればモデルクラスにMVVMしてるだろうし、そいつをシリアライズしとけば良いと思うけどね。Reduxみたいに、となると。
450デフォルトの名無しさん
2017/11/10(金) 13:30:04.92ID:K9cBfZ0u みんなー、Nimでにむにむしよっ
451デフォルトの名無しさん
2017/11/10(金) 13:55:44.53ID:nhsl7iAw >>444
Smalltalk?
Smalltalk?
452デフォルトの名無しさん
2017/11/10(金) 16:56:43.44ID:MvZMhhNL フォンノイマンマシーンではデータとプログラムの区別とかレジスターとかはないから
メモリーをコピーするだけで実行時と同じになるんだよな。
メモリーをコピーするだけで実行時と同じになるんだよな。
453デフォルトの名無しさん
2017/11/10(金) 17:35:03.38ID:JCZVtJuy fortranって学生の頃に触ったけどなんか独自性あったっけ?basicと変わんないような気がしたけど
454デフォルトの名無しさん
2017/11/10(金) 18:41:24.13ID:QuLzQogR >>453
numpyに匹敵する強力な配列アクセスと、明示的なfunctionとsubroutineの区別、引数の入力専用や出力専用を明示するintent機能、moduleなどの便利な機能がfortran90あたりから加わった
学生の頃に触るfortranは77が多いのでfortanはゴミという認識の人は多い
numpyに匹敵する強力な配列アクセスと、明示的なfunctionとsubroutineの区別、引数の入力専用や出力専用を明示するintent機能、moduleなどの便利な機能がfortran90あたりから加わった
学生の頃に触るfortranは77が多いのでfortanはゴミという認識の人は多い
455あ
2017/11/10(金) 18:41:29.45ID:ryCkgWWn456デフォルトの名無しさん
2017/11/10(金) 20:31:42.80ID:pbDFhipo >>453
C99のrestrictや複素数、VLA等の「C++に無いのにどこから出てきた」みたいなのは
Fortran対抗だったりするんだぜ
その後も改定は続いて今のFortranは驚くほど色んなことができるし速度面は依然最強格
実装があればね(´・ω・`)
C99のrestrictや複素数、VLA等の「C++に無いのにどこから出てきた」みたいなのは
Fortran対抗だったりするんだぜ
その後も改定は続いて今のFortranは驚くほど色んなことができるし速度面は依然最強格
実装があればね(´・ω・`)
457デフォルトの名無しさん
2017/11/10(金) 20:36:22.60ID:Qc9ud9aj Juliaを持ち上げる奴は大抵Fortranを古そうというだけで食わず嫌いしてるよね
Fortranをちゃんと触ったことがあれば、今更Juliaなんか全く必要ないことがわかる
Fortranをちゃんと触ったことがあれば、今更Juliaなんか全く必要ないことがわかる
458デフォルトの名無しさん
2017/11/10(金) 20:45:03.48ID:pbDFhipo ま、Fortranは構文がきもいからね……
あと実装(
あと実装(
459デフォルトの名無しさん
2017/11/10(金) 21:03:32.57ID:TE3zp5kQ Juliaは関数を返す関数があるから……
460デフォルトの名無しさん
2017/11/10(金) 22:39:10.79ID:XT30o+c8 Fortran触ったことないゆとりの自分に、Fortranで3rd packageの導入・管理する方法を教えてくださらんか……
461デフォルトの名無しさん
2017/11/11(土) 00:15:52.24ID:TutobSU6 スクリプト言語ならソースを置くだけか、Cに丸投げだもんな
スクリプトとCを笑う者はパッケージ管理に泣く
スクリプトとCを笑う者はパッケージ管理に泣く
462デフォルトの名無しさん
2017/11/11(土) 01:12:49.38ID:w1UaSNW0463あ
2017/11/11(土) 01:39:43.40ID:X8lWnCzG そもそも、ベンダが出すライブラリが一番速い。
その話は残念ながらできん、といったところかな。
その話は残念ながらできん、といったところかな。
464デフォルトの名無しさん
2017/11/11(土) 09:56:56.01ID:nIHGEsH/ >>461
そう考えるとcargoやgoはよくやってるって気分になるな
そう考えるとcargoやgoはよくやってるって気分になるな
465デフォルトの名無しさん
2017/11/11(土) 10:05:48.57ID:SE28YWv1 他の言語だとあんまり思わないんだけど、 CやFortranの話になると何故か
「LD_LIBRARY_PATHの通っている領域に置くだけじゃん……」
って思う
「LD_LIBRARY_PATHの通っている領域に置くだけじゃん……」
って思う
466デフォルトの名無しさん
2017/11/11(土) 10:45:06.02ID:nIHGEsH/ >>465
例えばプロジェクトAではlibevent2.0を、プロジェクトBでは2.1を使ってる場合どうすんの?
1. LD_LIBRARY_PATHをプロジェクト毎にdirenvかなんかで切り替える
2. -Lオプションで切り替える
3. RustでいうcargoやRubyでいうBundleを手動で頑張る
どれがベストプラクティス?
例えばプロジェクトAではlibevent2.0を、プロジェクトBでは2.1を使ってる場合どうすんの?
1. LD_LIBRARY_PATHをプロジェクト毎にdirenvかなんかで切り替える
2. -Lオプションで切り替える
3. RustでいうcargoやRubyでいうBundleを手動で頑張る
どれがベストプラクティス?
467デフォルトの名無しさん
2017/11/11(土) 11:34:57.45ID:SE28YWv1468デフォルトの名無しさん
2017/11/11(土) 11:35:47.08ID:yM7WeBzy >>466
マシン二台用意しろよ
マシン二台用意しろよ
469デフォルトの名無しさん
2017/11/11(土) 11:37:39.35ID:SGA9z9gD470デフォルトの名無しさん
2017/11/11(土) 12:37:04.44ID:oec9ZFSW dockerみたいなのでやるってこと?
471デフォルトの名無しさん
2017/11/11(土) 13:41:00.49ID:w1UaSNW0 んな大げさな、切り替えたいだけならpkgconfigでいい
472デフォルトの名無しさん
2017/11/11(土) 14:37:05.82ID:p8tTAq8V てかそこまで動的に切り替えが必要かまず考えた方がいいのでは?
473デフォルトの名無しさん
2017/11/11(土) 14:44:58.04ID:6gUapX1N プロジェクトのディレクトリ内に適当に置いとけばいいじゃんあほらし
474あ
2017/11/11(土) 14:46:30.00ID:X8lWnCzG ちゃんとmakefile書け、じゃない?
475デフォルトの名無しさん
2017/11/11(土) 19:13:47.36ID:GuHfXsWY477デフォルトの名無しさん
2017/11/11(土) 21:31:25.39ID:okinluKI 抽象度が低すぎる単語はポリコレ違反なんだな
だから性別や宗教等を特定できないレベルまで抽象化する
だから性別や宗教等を特定できないレベルまで抽象化する
478あ
2017/11/11(土) 21:45:47.01ID:X8lWnCzG 好きも嫌いも、言葉は同じでも指すものが違うからな。
可愛さ余ってなんとやら。
可愛さ余ってなんとやら。
479デフォルトの名無しさん
2017/11/11(土) 21:51:19.82ID:APGqgm8b Goみたくメッセージパッシングう方式での並行性に非常に優れていて、そこそこ速いML言語とか誰か作らないかな…
480デフォルトの名無しさん
2017/11/11(土) 21:57:29.82ID:rbpvu0L2 >>479 何に使う?
481デフォルトの名無しさん
2017/11/11(土) 22:02:28.22ID:APGqgm8b >>480
Webのサーバーサイドでのプログラミングとか?
Webのサーバーサイドでのプログラミングとか?
482デフォルトの名無しさん
2017/11/11(土) 22:34:13.35ID:w1UaSNW0 F#がもうそうなってるんじゃね
483デフォルトの名無しさん
2017/11/12(日) 02:51:49.32ID:oBq+ACHI あれ?かつて次代の大物言語とかいわれてたelixirは入ってないの?
484デフォルトの名無しさん
2017/11/12(日) 04:47:18.74ID:QTXr6k0W そもそも関心があるかどうか関心を持った時点で関心があるから
関心が無いものは思いつかないものでないと関心が無いと言えない。
関心が無いものは思いつかないものでないと関心が無いと言えない。
485デフォルトの名無しさん
2017/11/12(日) 05:23:32.70ID:VleGsMX6 >484
心理学の話はもういいよ。言語の話しようぜ。
心理学の話はもういいよ。言語の話しようぜ。
486デフォルトの名無しさん
2017/11/12(日) 10:22:15.49ID:uKLz7AXa 俺の哲学的考察ドヤァ
487デフォルトの名無しさん
2017/11/12(日) 11:35:37.08ID:oQrEnmVF 次世代言語の話をしろ
488デフォルトの名無しさん
2017/11/12(日) 13:19:42.48ID:kuWG9Wn6 日常会話にもプログラミングにも使える言語とか誰か作れよ
厳密に文法定義するだけだからできるやろ
厳密に文法定義するだけだからできるやろ
489デフォルトの名無しさん
2017/11/12(日) 13:39:49.42ID:K3cKPiCK 需要、なし!w
490デフォルトの名無しさん
2017/11/12(日) 13:47:57.09ID:VleGsMX6 >>488
ここ数年で広辞苑に「うざい」が載るようになったように日常会話は時代によって変容する。
つまり、日常会話に使う言語は「厳密に文法定義する」こと自体が不可能に近い。
だから厳密に文法定義できるプログラミング専用の言語が必要になった。
そして日常会話に使う言語を「時代によって変容できない」ようにすることも不可能だ。
ここ数年で広辞苑に「うざい」が載るようになったように日常会話は時代によって変容する。
つまり、日常会話に使う言語は「厳密に文法定義する」こと自体が不可能に近い。
だから厳密に文法定義できるプログラミング専用の言語が必要になった。
そして日常会話に使う言語を「時代によって変容できない」ようにすることも不可能だ。
491デフォルトの名無しさん
2017/11/12(日) 14:11:37.87ID:fZbwcKqG プログラミング言語も時代によって変わる
逆に変化しないプログラミング言語は取り残されていく
逆に変化しないプログラミング言語は取り残されていく
492デフォルトの名無しさん
2017/11/12(日) 14:35:52.57ID:0gPm23+K lojban使えば?PEGで構文解析できる人工言語で新しい単語も導入できる
プログラミング言語を覚えるより遥かに大変だけど
プログラミング言語を覚えるより遥かに大変だけど
493デフォルトの名無しさん
2017/11/12(日) 15:35:12.54ID:kuWG9Wn6494デフォルトの名無しさん
2017/11/12(日) 16:32:04.38ID:QTXr6k0W PEGは一文字ごとにメモリーを消費する。
495デフォルトの名無しさん
2017/11/12(日) 21:31:44.94ID:vqK3o1OI そんなことよりponyの話をしようぜ
496デフォルトの名無しさん
2017/11/12(日) 21:59:29.66ID:enOCqUCD >>495
初耳だったのでちょっと調べてみたけど面白そう。是非とも良さを語ってほしい
初耳だったのでちょっと調べてみたけど面白そう。是非とも良さを語ってほしい
497デフォルトの名無しさん
2017/11/12(日) 23:54:49.92ID:7OkSLCD0 >>491
その進化論っぽい思想ももう聞き飽きた
その進化論っぽい思想ももう聞き飽きた
498デフォルトの名無しさん
2017/11/13(月) 00:08:48.90ID:lPXXv2fZ 変わらないでいいじゃんもう
499デフォルトの名無しさん
2017/11/13(月) 04:56:24.27ID:bOYgOiq+ 変わり続けることとは変わらない法則である。
したがって変わらないことこそ変わることなのだ。
したがって変わらないことこそ変わることなのだ。
500デフォルトの名無しさん
2017/11/13(月) 10:15:23.68ID:3/3Obauk Pony Julia Crystal Nim
いいからv1.0になって出直してこい系言語
いいからv1.0になって出直してこい系言語
501デフォルトの名無しさん
2017/11/13(月) 12:34:31.66ID:QzWBzm7Q 次世代言語議論スレなのでセーフ
502デフォルトの名無しさん
2017/11/13(月) 13:05:38.64ID:TpgUuavl 本当に並列化で速度を稼ぎたい場合は
オーソドックスな手法で並列化するので・・・
というか割と稀
それとは別に、UIを固めないためだけの並列化が鬱陶しくて
async/awaitがあればかなり楽になるから、それでいいやって
オーソドックスな手法で並列化するので・・・
というか割と稀
それとは別に、UIを固めないためだけの並列化が鬱陶しくて
async/awaitがあればかなり楽になるから、それでいいやって
503デフォルトの名無しさん
2017/11/13(月) 13:39:53.23ID:VLsI+U4t504デフォルトの名無しさん
2017/11/13(月) 13:47:15.36ID:TUCXx069 >>502
結局、モジュラリティー高くなるように書けや
って話でどんなツール、言語が出てきても関係ないっていう気はする。
ツール、言語を強要するよりかは
アンチパターンとして急いでる時にはどうしても依存しまくったコード
書いちゃうよねってなことを教えた方がなんぼかまともな気がしてる。
結局、モジュラリティー高くなるように書けや
って話でどんなツール、言語が出てきても関係ないっていう気はする。
ツール、言語を強要するよりかは
アンチパターンとして急いでる時にはどうしても依存しまくったコード
書いちゃうよねってなことを教えた方がなんぼかまともな気がしてる。
505デフォルトの名無しさん
2017/11/13(月) 13:58:49.36ID:QzWBzm7Q >>503
「言語仕様が固まってない」って「前のバージョンのコードが動かない」って意味か?
「推奨される、もしくは書きやすいコードの書き方が変わる」って意味ならC++でさえC++11以前と以降では全然違うし、「言語仕様が固まっている」言語なんてCくらいしか思いつかないんだけど。
「言語仕様が固まってない」って「前のバージョンのコードが動かない」って意味か?
「推奨される、もしくは書きやすいコードの書き方が変わる」って意味ならC++でさえC++11以前と以降では全然違うし、「言語仕様が固まっている」言語なんてCくらいしか思いつかないんだけど。
506デフォルトの名無しさん
2017/11/13(月) 14:09:32.75ID:VLsI+U4t 前者の意味だが、文法自体に変更なくとも、標準ライブラリのAPIが変わってしまうのも含むな
Scalaとかマイナーバージョン変わるだけで文法変わってなくてもコンパイル失敗するとかあったろ
Scalaとかマイナーバージョン変わるだけで文法変わってなくてもコンパイル失敗するとかあったろ
507デフォルトの名無しさん
2017/11/13(月) 14:27:30.98ID:QzWBzm7Q 前のバージョンのコードが動くことって、今職場で使える言語を語るのには大切だと思うけど、未来を語るのにそんなに大切だろうか?
むしろ試行錯誤して、ダメな所はダメな所として直して文法を綺麗に整理してくれている分、C++みたいなキメラ感溢れる追加機能よりも期待が持てると思うんだけど
まあ俺はScala知らんし、Juliaなんかはdeprecatedになった機能はちゃんと警告してくれるし、いきなり機能削除で困ったことがないから出て来る感想かも知らんけど
むしろ試行錯誤して、ダメな所はダメな所として直して文法を綺麗に整理してくれている分、C++みたいなキメラ感溢れる追加機能よりも期待が持てると思うんだけど
まあ俺はScala知らんし、Juliaなんかはdeprecatedになった機能はちゃんと警告してくれるし、いきなり機能削除で困ったことがないから出て来る感想かも知らんけど
508デフォルトの名無しさん
2017/11/13(月) 15:57:56.72ID:bOYgOiq+ CPUみたいに特殊な命令をコードの最初の行に書けば
上位のモードに移行するみたいな仕様にすればいいのにな。
上位のモードに移行するみたいな仕様にすればいいのにな。
509デフォルトの名無しさん
2017/11/13(月) 16:18:40.93ID:wtJ6F+YY それ旧仕様もメンテし続けないといけなくなるやつ
510デフォルトの名無しさん
2017/11/13(月) 16:30:03.90ID:htvgMwwk DockerのコンテナとかGoで書いてるらしいね
これからどんどんコンテナってつかわれるみたいだからその関係でGoって人気でてきたの?
もしかしたらこれから一気に流行るの?
これからどんどんコンテナってつかわれるみたいだからその関係でGoって人気でてきたの?
もしかしたらこれから一気に流行るの?
511デフォルトの名無しさん
2017/11/13(月) 17:21:04.18ID:Uh06NB8u いろいろ突っ込みたいがキリがないので、
Docker使う分にはGoを意識する機会は全く無いから関係ないとだけ言っておこう
Docker使う分にはGoを意識する機会は全く無いから関係ないとだけ言っておこう
512デフォルトの名無しさん
2017/11/13(月) 20:45:40.38ID:loSXLH9Q >>503
それswiftにも同じこと言えんの?
正直swiftの先進性には感謝する。関数型言語に興味を持つきっかけになった。
だがGo並に仕様を固めてから公開してほしかった。もうswift4? swift0.4だろボケ
それswiftにも同じこと言えんの?
正直swiftの先進性には感謝する。関数型言語に興味を持つきっかけになった。
だがGo並に仕様を固めてから公開してほしかった。もうswift4? swift0.4だろボケ
513デフォルトの名無しさん
2017/11/13(月) 22:22:24.83ID:IfkrQMwx Swift Xへようこそ。
世界一ピュアなキス
ここから未来が始まります。
世界一ピュアなキス
ここから未来が始まります。
514デフォルトの名無しさん
2017/11/14(火) 06:53:56.25ID:l1fCT6kS Elixirのプロダクトらしい
https://masto.news/2017/11/12/pleroma/
https://masto.news/2017/11/12/pleroma/
515デフォルトの名無しさん
2017/11/14(火) 07:58:21.96ID:7LtHkkfv マス丼が来てないのに何言ってだこつい
516デフォルトの名無しさん
2017/11/14(火) 10:55:56.21ID:/ce101S1517デフォルトの名無しさん
2017/11/14(火) 12:29:50.19ID:RmEPBl/7 作った人退職しちゃったけどどうなの?
518デフォルトの名無しさん
2017/11/14(火) 13:16:41.60ID:9gqQQ/8Y 数ヶ月転職先で働いてまたやめたよ
519デフォルトの名無しさん
2017/11/14(火) 14:18:27.95ID:MOxq3KBn 言語開発者って企業戦士としては碌なのいないな
ヘルスバーグくらいか
ヘルスバーグくらいか
520デフォルトの名無しさん
2017/11/14(火) 14:35:21.01ID:/4y+2Kom まつもとさん
521デフォルトの名無しさん
2017/11/14(火) 16:29:24.82ID:MOxq3KBn Matzはエンタープライズ系ITからの典型的なドロップアウト勢じゃなかったっけ?
522あ
2017/11/14(火) 18:20:56.55ID:j+l8jijk ケントンプソンとかは?ベル研。
ジョンバッカスもずっとIBMだったような。
Wolframもずっとアカデミックな人で、途中で会社立ち上げてずっとmathmaticaを責任持って作ってるイメージ。
ジョンバッカスもずっとIBMだったような。
Wolframもずっとアカデミックな人で、途中で会社立ち上げてずっとmathmaticaを責任持って作ってるイメージ。
523デフォルトの名無しさん
2017/11/14(火) 22:33:33.05ID:XnMPPPKZ >>516
swiftが登場したばっかのときは良かったんだよ。その後
何度も下位互換性がない仕様変更が繰り返されて開発者が疲弊していった。
正直言語仕様も複雑化の一途を取っているrustのメモリオーナーシップモデルも取り入れるって話も聞いたし、正直つらみがます一方。
androidのkotlinが羨ましくみえる。
swiftが登場したばっかのときは良かったんだよ。その後
何度も下位互換性がない仕様変更が繰り返されて開発者が疲弊していった。
正直言語仕様も複雑化の一途を取っているrustのメモリオーナーシップモデルも取り入れるって話も聞いたし、正直つらみがます一方。
androidのkotlinが羨ましくみえる。
524デフォルトの名無しさん
2017/11/14(火) 22:56:58.69ID:r3vvhD4+ ビャーネはずっとモルスタいるだろ
525デフォルトの名無しさん
2017/11/14(火) 23:28:52.46ID:bj4U4qLx 確かRustの主要開発者の一人が林檎行ってswiftやってんだっけか?
Rustもまあ言語仕様お世辞にも簡単とは言えんが、1.0以降下位互換性崩してないところは評価できるわな
Rustもまあ言語仕様お世辞にも簡単とは言えんが、1.0以降下位互換性崩してないところは評価できるわな
526デフォルトの名無しさん
2017/11/15(水) 09:17:27.90ID:IgzwHXKJ Rust は所有権とかボローイングとか、そもそもパーサーの方もまともに
理解できてねーじゃんとか思ってしまう。
理解できてねーじゃんとか思ってしまう。
527デフォルトの名無しさん
2017/11/15(水) 10:50:32.41ID:FBksKtwj >>526
まあそもそもRustはモジラの提灯のための言語モドキで、プログラミング用途じゃないからな
まあそもそもRustはモジラの提灯のための言語モドキで、プログラミング用途じゃないからな
528デフォルトの名無しさん
2017/11/15(水) 10:54:30.02ID:FBksKtwj モジラ「これからは安全性!所有権!(って言っとけば金とれるわ。言語自体の出来?適当でいいじゃん)」
泥箱「Rust使ってます!(って言っとけばモジラが提灯代くれるし使ってないけど言っとこ)」
泥箱「Rust使ってます!(って言っとけばモジラが提灯代くれるし使ってないけど言っとこ)」
529デフォルトの名無しさん
2017/11/15(水) 16:31:11.01ID:SRCReWD1 例の糖質くんやんけw
530デフォルトの名無しさん
2017/11/15(水) 23:13:54.26ID:1FFyJZta531デフォルトの名無しさん
2017/11/15(水) 23:16:35.27ID:FbV3pGD5 いい言語とは誰にでも直感的に理解できる言語
532デフォルトの名無しさん
2017/11/16(木) 00:18:06.40ID:acyFWWoZ PHPのことですね
わかります
わかります
533デフォルトの名無しさん
2017/11/16(木) 00:22:54.15ID:GeiRTeeW534デフォルトの名無しさん
2017/11/16(木) 00:51:54.74ID:ht25sMap535デフォルトの名無しさん
2017/11/16(木) 01:17:20.88ID:72Ez3v5k 意味不明
536デフォルトの名無しさん
2017/11/16(木) 06:20:26.03ID:AGAujnJo 直感で感じるんだ
537デフォルトの名無しさん
2017/11/16(木) 06:23:29.47ID:NRQldjte 直観でわかるようになるようになるまで練習するならわかるけれど
初めから直観でわかる言語はないだろ。
初めから直観でわかる言語はないだろ。
538デフォルトの名無しさん
2017/11/16(木) 09:08:03.07ID:e/Hz7FiQ 何か一つの言語を知っていれば直感的に判る言語
その名もパイソン
その名もパイソン
539デフォルトの名無しさん
2017/11/16(木) 10:31:57.62ID:V2bWakot Pythonは「なんでこれができてこれができないのか」という変な例外が少ないのがいいよね
RubyとかPoweShellのような驚異に満ちた楽しい言語を触ってから戻るとすごく安心する
RubyとかPoweShellのような驚異に満ちた楽しい言語を触ってから戻るとすごく安心する
540あ
2017/11/16(木) 10:34:50.06ID:2XWbEkjP それはあるな。
メソッド第一引数のselfを隠さなかったり、構文だとpassが存在したり、
他の言語では言語仕様を工夫して誤魔化した部分に諦めを見せてくれる。
メソッド第一引数のselfを隠さなかったり、構文だとpassが存在したり、
他の言語では言語仕様を工夫して誤魔化した部分に諦めを見せてくれる。
541デフォルトの名無しさん
2017/11/16(木) 12:47:14.41ID:YitAO71u perl on Rails は何でコケたのかな
542デフォルトの名無しさん
2017/11/16(木) 12:59:02.32ID:T2x72Red OSコマンドインジェクションを考慮しなければならない用途では特に価値のない言語だから
543あ
2017/11/16(木) 12:59:15.71ID:2XWbEkjP perl自体時代遅れという風潮と、perlはゴミ!という今のphpディスの空気感そのものみたいなのがあったからでは?
結果、まともに書いてないperlは問題だったが、まともなperlスクリプトは今でも生き残ってるしそんなに問題視もされない(というか意識もされないレベル)になったけど。
今のphpディスは、今35〜40くらいの世代がperlを叩きまくってたのと被って、健全には見えんな。
結果、まともに書いてないperlは問題だったが、まともなperlスクリプトは今でも生き残ってるしそんなに問題視もされない(というか意識もされないレベル)になったけど。
今のphpディスは、今35〜40くらいの世代がperlを叩きまくってたのと被って、健全には見えんな。
545デフォルトの名無しさん
2017/11/16(木) 13:59:59.88ID:Uttk70vk >>543
perlが生き残ってるってどこの話だよ
生き残ってるってだけならそれこそCOBOLだって生き残ってるわ
perlが生き残ってるような環境ならPHPみたいな汚物を肯定もできるんだろうな胸糞悪い
perlが生き残ってるってどこの話だよ
生き残ってるってだけならそれこそCOBOLだって生き残ってるわ
perlが生き残ってるような環境ならPHPみたいな汚物を肯定もできるんだろうな胸糞悪い
546デフォルトの名無しさん
2017/11/16(木) 14:46:50.92ID:MKSMN107 昔からperlは宣伝がうまい
「なんでlinuxができてperlができないのか」ってつっこみ入れるだけで普及する
「なんでlinuxができてperlができないのか」ってつっこみ入れるだけで普及する
547あ
2017/11/16(木) 19:22:40.75ID:2XWbEkjP >>545
カーネルのソースにも沢山いるし、あとはrpm -q --whatrequires gitってやってみれば?
確かまだいると思う。メインコマンドじゃないけど。
胸糞悪い環境でgit commitしてるんだね。
カーネルのソースにも沢山いるし、あとはrpm -q --whatrequires gitってやってみれば?
確かまだいると思う。メインコマンドじゃないけど。
胸糞悪い環境でgit commitしてるんだね。
548あ
2017/11/16(木) 19:23:07.70ID:2XWbEkjP 惨めだね、知らないって。
549デフォルトの名無しさん
2017/11/16(木) 19:44:36.44ID:81E2YZma しかし perl はやっぱきついよ。
あんなにコンテクストに依存して記号の意味が与えられる言語、
他にないと思う。
あんなにコンテクストに依存して記号の意味が与えられる言語、
他にないと思う。
550デフォルトの名無しさん
2017/11/16(木) 20:26:22.33ID:vK+1Iebs Perlはワンライナーでしか使わない、汎用sed, awk
551デフォルトの名無しさん
2017/11/16(木) 20:35:42.27ID:eh41w0lb 惨めだね。知らないって(ブーメラン)
552あ
2017/11/16(木) 21:15:20.63ID:eALYWwoT ブーメランでも飛ぶだけマシだろ。
553デフォルトの名無しさん
2017/11/16(木) 21:19:39.67ID:MKSMN107554デフォルトの名無しさん
2017/11/16(木) 23:23:00.85ID:acyFWWoZ 頭がパーのP
PerlとPHP
ウンポコピー
ガイジ専用
PerlとPHP
ウンポコピー
ガイジ専用
555あ
2017/11/17(金) 00:05:33.90ID:fbp8aPNo まー仕事してりゃ、嫌な言語の1つや2つ、保守する羽目になることもあるだろ。
ディスは簡単だが、その言語がなぜ使われたかまで考えると意外にディスる気も無くなるし「なるほどなあ…」と苦笑いにもなる。
ガイジ専用、と言って切り捨ててると、ガイジでも出来る事が出来てないままの、自分の実質ガイジ以下の部分に目をつぶることになるぞ。
ディスは簡単だが、その言語がなぜ使われたかまで考えると意外にディスる気も無くなるし「なるほどなあ…」と苦笑いにもなる。
ガイジ専用、と言って切り捨ててると、ガイジでも出来る事が出来てないままの、自分の実質ガイジ以下の部分に目をつぶることになるぞ。
556デフォルトの名無しさん
2017/11/17(金) 00:13:11.61ID:3GAWOghK >>538
pythonでのバイナリ配列内の特定の1バイト(0x00)の検索方法がよくわからん
pythonでのバイナリ配列内の特定の1バイト(0x00)の検索方法がよくわからん
557デフォルトの名無しさん
2017/11/17(金) 00:34:25.88ID:zgI+QNxN 今どき新規でPerlとPHP選んでるようじゃ
ガイジ扱いされてもしゃーない
ガイジ扱いされてもしゃーない
558あ
2017/11/17(金) 00:46:46.98ID:fbp8aPNo 誰がどこで「新規でperl」って書いたのか、書いてないものが書いてあるように見えるのってちょっと精神的に破綻してるよね。
559デフォルトの名無しさん
2017/11/17(金) 04:51:47.78ID:J/ECuHX9560デフォルトの名無しさん
2017/11/17(金) 08:09:54.21ID:zgI+QNxN562デフォルトの名無しさん
2017/11/17(金) 08:51:26.95ID:smNhjLrp 「ここは後でちゃんと作るはずだからperlでテキトーに実装しておこう」
↓
数年後: 誰も読めない長大perlコード
↓
数年後: 誰も読めない長大perlコード
563デフォルトの名無しさん
2017/11/17(金) 09:28:46.29ID:RcEAFZjI perlは正規表現でごちょごちょやるなら現役じゃないの?
564デフォルトの名無しさん
2017/11/17(金) 09:30:57.21ID:4WTZydzp ソフト開発では使わない
ツールならまだある
ツールならまだある
565デフォルトの名無しさん
2017/11/17(金) 09:43:20.07ID:RcEAFZjI rebuildfmの中の人とか小飼弾とか。
できるエンジニアはもとperl使いってイメージある
できるエンジニアはもとperl使いってイメージある
566デフォルトの名無しさん
2017/11/17(金) 10:15:32.65ID:ZScfeBfL 知ったかくんちょっと調子乗って人のこと侮辱し過ぎでしょ
567デフォルトの名無しさん
2017/11/17(金) 10:16:31.43ID:j/YEi+T5 なんでperlが残ってること誇ってんの?汚点じゃん
perlがあまりに保守性悪くてリプレイスできないけど機能自体を捨てたらキレる老害がいるから化石のように残ってるだけ
要するにCOBOLと同じ。残ってることは恥
それを逆に誇ってるんだから、そりゃー世の中にPHPみたいな汚物がはびこる訳だわ
perlがあまりに保守性悪くてリプレイスできないけど機能自体を捨てたらキレる老害がいるから化石のように残ってるだけ
要するにCOBOLと同じ。残ってることは恥
それを逆に誇ってるんだから、そりゃー世の中にPHPみたいな汚物がはびこる訳だわ
568デフォルトの名無しさん
2017/11/17(金) 10:38:06.37ID:n+fIjN+j perlは確かに難読化言語だけれども、一回わかってしまえば
PHPみたいに仕様が変な部分はほぼない……と思う
PHPって内部で変換を繰り返して変な結果が帰ってきたり
数学関数の解釈が間違ってたりするんだろ?
PHPみたいに仕様が変な部分はほぼない……と思う
PHPって内部で変換を繰り返して変な結果が帰ってきたり
数学関数の解釈が間違ってたりするんだろ?
569デフォルトの名無しさん
2017/11/17(金) 12:01:52.43ID:ymzw4hJ5 perlのソフトdisってる人は開発当時の時代背景知ってて言ってんの?
570デフォルトの名無しさん
2017/11/17(金) 12:33:52.99ID:1DLi6wpZ perl6開発当時の時代背景は知ってる
571あ
2017/11/17(金) 13:08:49.38ID:GmVBN0UX >>567
言うに事欠いてそれかよw
読めるように書いたらちゃんと読めるし、何より
「新しく作るコストと現行のものを保守する(していく)コスト」の天秤の問題だし、
枯れきった環境ってのは大事じゃん。
ついていけないから置いてるんじゃなくて、それはそれで良いから置いてるんだよ。
誇るも何も、それより良い物作ってコミットすれば良いんじゃない?それより誇りたいなら。
物にはついてくるよ、みんな。
言うに事欠いてそれかよw
読めるように書いたらちゃんと読めるし、何より
「新しく作るコストと現行のものを保守する(していく)コスト」の天秤の問題だし、
枯れきった環境ってのは大事じゃん。
ついていけないから置いてるんじゃなくて、それはそれで良いから置いてるんだよ。
誇るも何も、それより良い物作ってコミットすれば良いんじゃない?それより誇りたいなら。
物にはついてくるよ、みんな。
572デフォルトの名無しさん
2017/11/17(金) 13:16:32.70ID:AQwbboRb Perlは変な書き方もできるが
PHPの頭のおかしな仕様に振りまわされることに比べたら
いたって普通。
PHPの頭のおかしな仕様に振りまわされることに比べたら
いたって普通。
573デフォルトの名無しさん
2017/11/17(金) 13:34:15.46ID:D7vYYt8n 比較対象が PHP ってところからすでにおかしいだろ。
575デフォルトの名無しさん
2017/11/17(金) 15:35:55.87ID:oWV9tUcB マクロアセンブラ―みたいにマクロC言語って出てこないかな。
これがあれば絶対使いたいんだけど。
これがあれば絶対使いたいんだけど。
576デフォルトの名無しさん
2017/11/17(金) 15:47:49.21ID:4x0i5wmi マクロPHP 或いは altPHPトランスパイラは銅ですか?
577デフォルトの名無しさん
2017/11/17(金) 15:53:27.78ID:i5UkdOT+ 次世代言語スレで新規じゃない話してる奴ってなんなんだ
578デフォルトの名無しさん
2017/11/17(金) 16:44:20.35ID:m4E+5Wqt579デフォルトの名無しさん
2017/11/17(金) 17:04:41.52ID:YsVDcKgI >>575
マクロにも名前空間が欲しい
マクロにも名前空間が欲しい
580デフォルトの名無しさん
2017/11/17(金) 17:05:42.90ID:YsVDcKgI >>575
あとatteibute((cleanup))も標準になって欲しい
あとatteibute((cleanup))も標準になって欲しい
581デフォルトの名無しさん
2017/11/17(金) 18:00:58.30ID:LjyHvP/L ひどい雑談スレだな
582デフォルトの名無しさん
2017/11/17(金) 18:15:52.88ID:i5UkdOT+ まずなんで次世代言語スレでPerlの話題が上がるんだよ
せめてPerl6以外のPerlの話は禁止しろ
せめてPerl6以外のPerlの話は禁止しろ
583あ
2017/11/17(金) 18:41:24.13ID:GmVBN0UX584デフォルトの名無しさん
2017/11/17(金) 18:50:07.33ID:qV/IIJ5J 次世代言語を議論する上で引き合いに出すならアリって感じか。
となると perl から得られる最大の教訓はなんだ。
使いやすくても読み難いものは宜しくない、と。
APL もそうか。
となると perl から得られる最大の教訓はなんだ。
使いやすくても読み難いものは宜しくない、と。
APL もそうか。
585デフォルトの名無しさん
2017/11/17(金) 18:53:26.65ID:i5UkdOT+586デフォルトの名無しさん
2017/11/17(金) 18:57:28.86ID:ymzw4hJ5 バージョンに6はつけるなという教訓
587デフォルトの名無しさん
2017/11/17(金) 18:59:24.46ID:i5UkdOT+ >>584の意味でperlに触れるのはありだと思うけど、当時の状況が云々とか未だに残ってるperlは恥だとか新しく作るコストが云々とかはスレ違い以外の何者でもない
588デフォルトの名無しさん
2017/11/17(金) 19:03:58.95ID:RD2my8vU perl の教訓は python, ruby に受け継がれてるからいいんだよ。
589デフォルトの名無しさん
2017/11/17(金) 19:05:11.13ID:i5UkdOT+ Rubyってなんの教訓を生かしたんだ
590デフォルトの名無しさん
2017/11/17(金) 20:49:48.84ID:RcEAFZjI rubyは最初からオブジェクト指向を言語仕様に含めた。
だから基本型もクラスなんだろ?
だから基本型もクラスなんだろ?
591デフォルトの名無しさん
2017/11/17(金) 21:38:37.78ID:EkFnC7lu Rubyは設計者やVM実装者があっても大学院生レベルの知識で四苦八苦してるから
過去言語で解決済みの問題も顰みにならって抱え込んじゃってる
他言語のパクりの塊で元ネタを知らない大衆にはウケる面もあるけど正直新しみは何も無い言語
過去言語で解決済みの問題も顰みにならって抱え込んじゃってる
他言語のパクりの塊で元ネタを知らない大衆にはウケる面もあるけど正直新しみは何も無い言語
592あ
2017/11/17(金) 22:02:56.27ID:fbp8aPNo >>584
アリどころか、違う思想、って言葉が使えなくなるでしょ。
perlの最大の教訓は、お前はEAXレジスタか、みたいな変数の使い方はやっぱり書くときは楽だけど読みづらいとか、
<>みたいな、便利なんだけど、それが正しい姿だと断言しづらい構文は辞めよう、ってとこみたいな負の部分と、
間接参照は正しく使えば可読性を下げずにうまくコードを短くできるみたいな正の部分色々あると思うよ。
アリどころか、違う思想、って言葉が使えなくなるでしょ。
perlの最大の教訓は、お前はEAXレジスタか、みたいな変数の使い方はやっぱり書くときは楽だけど読みづらいとか、
<>みたいな、便利なんだけど、それが正しい姿だと断言しづらい構文は辞めよう、ってとこみたいな負の部分と、
間接参照は正しく使えば可読性を下げずにうまくコードを短くできるみたいな正の部分色々あると思うよ。
593あ
2017/11/17(金) 22:04:52.82ID:fbp8aPNo594デフォルトの名無しさん
2017/11/17(金) 22:08:54.79ID:ZScfeBfL595デフォルトの名無しさん
2017/11/17(金) 23:11:15.08ID:zgI+QNxN >>573
ワロピオ
ワロピオ
596デフォルトの名無しさん
2017/11/17(金) 23:28:57.50ID:RD2my8vU python なんかは明らかに書き方の自由度を落とす方向で
perl の教訓を活かしてる。
ruby に関しては以下の感じらしい。
https://www.ruby-lang.org/ja/documentation/ruby-from-other-languages/to-ruby-from-perl/
まあ古い言語を勉強すると老人が鬱陶しいというのはあると思うけど
勉強として悪くはないよ。
perl の教訓を活かしてる。
ruby に関しては以下の感じらしい。
https://www.ruby-lang.org/ja/documentation/ruby-from-other-languages/to-ruby-from-perl/
まあ古い言語を勉強すると老人が鬱陶しいというのはあると思うけど
勉強として悪くはないよ。
597デフォルトの名無しさん
2017/11/17(金) 23:36:00.31ID:zgI+QNxN 苦労することが美徳だと死んでるあのお爺ちゃん、おりゅ?
598あ
2017/11/17(金) 23:51:54.59ID:fbp8aPNo >>594
お前が何を言ってるかわからん。
次世代言語のスレで、古い言語の話をすべきでない、に対して、古い言語知らないと新しい言語が相対的に「新しい」じゃなくなるよね、次世代じゃないよね、って。前や今が無いと次はありえないんだから。
そこで、切り口として、「新規で作成するなら旧、現世代の言語なんてあり得ないよね」という論旨を受けて、
「そんなこと無いよね、今でもいっぱい使われてるし、その上に成り立ってんじゃん?旧、現世代があり得ないという理由が、我々は次世代言語を持っているから」なら、
それは子供が新しい筆箱買ってもらって嬉しくて今使ってる筆箱わざと壊して、意気揚々と新しい筆箱を持っていくようなもんだよね、建設的じゃないよね。
って話をしたつもりだが。
お前が何を言ってるかわからん。
次世代言語のスレで、古い言語の話をすべきでない、に対して、古い言語知らないと新しい言語が相対的に「新しい」じゃなくなるよね、次世代じゃないよね、って。前や今が無いと次はありえないんだから。
そこで、切り口として、「新規で作成するなら旧、現世代の言語なんてあり得ないよね」という論旨を受けて、
「そんなこと無いよね、今でもいっぱい使われてるし、その上に成り立ってんじゃん?旧、現世代があり得ないという理由が、我々は次世代言語を持っているから」なら、
それは子供が新しい筆箱買ってもらって嬉しくて今使ってる筆箱わざと壊して、意気揚々と新しい筆箱を持っていくようなもんだよね、建設的じゃないよね。
って話をしたつもりだが。
599デフォルトの名無しさん
2017/11/17(金) 23:52:28.39ID:RD2my8vU クソ言語メンテするよりかは
クソ言語の歴史を学ぶ方が苦労は少ないと思うよ。
クソ言語の歴史を学ぶ方が苦労は少ないと思うよ。
600あ
2017/11/18(土) 00:01:16.23ID:EluHaO9U 皆が苦労した歴史のつまみ食いできる奴らの方が圧倒的に楽だし、そうすべきじゃん。苦労自体はせずに、>>555で言う苦笑いだよ。
それに、それが本来あるべき姿の「昔の苦労」ってやつだろ。
それに、それが本来あるべき姿の「昔の苦労」ってやつだろ。
602デフォルトの名無しさん
2017/11/18(土) 00:47:30.46ID:1bJyC4s0 ペェ〜ルとプェチピィは真性糞ゴミで
未だにそんな言語しか使えない連中は糞以下の蛆虫って
みんな共通認識もってるんだからそれでいいじゃん
未だにそんな言語しか使えない連中は糞以下の蛆虫って
みんな共通認識もってるんだからそれでいいじゃん
603あ
2017/11/18(土) 00:59:36.61ID:qQnEMcHh 日下部の名台詞「ということにしたいのですね」が浮かんだわw
今日日、perlしか書けない奴なんか絶滅してるか、片手間にsed代わりにperl使う他の言語使える奴になってるだろ。
今日日、perlしか書けない奴なんか絶滅してるか、片手間にsed代わりにperl使う他の言語使える奴になってるだろ。
604デフォルトの名無しさん
2017/11/18(土) 01:11:50.72ID:+edZtTCr あは自分が全く相手にされてないことに気付いてないのだろうか
perl以前にその冗長で可読性の低い自然言語をなんとかすることを考えたら?
君みたいな人は話し言葉や書き言葉に対してもプログラミング言語なんかと同じように論理的に距離をおいて考えることを身につけるといい
だいぶマシになるから
perl以前にその冗長で可読性の低い自然言語をなんとかすることを考えたら?
君みたいな人は話し言葉や書き言葉に対してもプログラミング言語なんかと同じように論理的に距離をおいて考えることを身につけるといい
だいぶマシになるから
605デフォルトの名無しさん
2017/11/18(土) 01:47:08.81ID:w2/CbKAa すまん。>>598の翻訳だれか頼む
606あ
2017/11/18(土) 01:56:14.42ID:qQnEMcHh まあ、建設的な事も意見も言わずに、論旨も汲まずにシンプルに発言だけを否定していくと楽だよね。
俺もそうしようかなと思うぐらい。
俺もそうしようかなと思うぐらい。
607デフォルトの名無しさん
2017/11/18(土) 01:57:35.94ID:+edZtTCr 多分だけど、
新規とはいえ、経験やライブラリといった既存資産は開発生産性に大きく寄与するものである。
それでもなお新しい言語を使いたいなら、捨てるものに見合った見返りがあることを証明すべきである。
そのためには我々は既存言語を知らねばならないのだ。
という趣旨のことが言いたいんだと思う
新規とはいえ、経験やライブラリといった既存資産は開発生産性に大きく寄与するものである。
それでもなお新しい言語を使いたいなら、捨てるものに見合った見返りがあることを証明すべきである。
そのためには我々は既存言語を知らねばならないのだ。
という趣旨のことが言いたいんだと思う
608あ
2017/11/18(土) 02:01:09.24ID:qQnEMcHh609デフォルトの名無しさん
2017/11/18(土) 02:05:40.25ID:w2/CbKAa610デフォルトの名無しさん
2017/11/18(土) 02:06:52.93ID:w2/CbKAa611あ
2017/11/18(土) 02:09:29.60ID:qQnEMcHh >>607
ちょっと違う。
既存のものとは世代が違う「次世代」というものを議論したいならば、
少なくとも既存の物がどういうもので、何かその「次世代」と違うのかわからん、単なる「新しいよくあるゴミ」ではないと言えない、ってのが前半。
旧世代言語はもう使うべきではない、と言う発想が、「旧世代言語は語れるほど知らないが、もううんざりして嫌いだし、次世代言語は楽しそうだから」と言う所から来てるなら、
ほんとに新しいおもちゃを「道具だ」と言い張って、今まで立派に道具として成り立っていた道具をわざわざ壊して捨ててまで学校に持っていく子供と精神性が変わらん、と言ってる。
見返りはその道具が本当に良いものであれば、あとからついてくるから割とどうでも良い。
考え方の問題。
ちょっと違う。
既存のものとは世代が違う「次世代」というものを議論したいならば、
少なくとも既存の物がどういうもので、何かその「次世代」と違うのかわからん、単なる「新しいよくあるゴミ」ではないと言えない、ってのが前半。
旧世代言語はもう使うべきではない、と言う発想が、「旧世代言語は語れるほど知らないが、もううんざりして嫌いだし、次世代言語は楽しそうだから」と言う所から来てるなら、
ほんとに新しいおもちゃを「道具だ」と言い張って、今まで立派に道具として成り立っていた道具をわざわざ壊して捨ててまで学校に持っていく子供と精神性が変わらん、と言ってる。
見返りはその道具が本当に良いものであれば、あとからついてくるから割とどうでも良い。
考え方の問題。
615デフォルトの名無しさん
2017/11/18(土) 02:15:43.13ID:pKok+plq616デフォルトの名無しさん
2017/11/18(土) 02:17:27.19ID:w2/CbKAa617あ
2017/11/18(土) 02:24:02.32ID:qQnEMcHh618デフォルトの名無しさん
2017/11/18(土) 02:24:39.50ID:w2/CbKAa 「旧世代言語はもう使うべきではない」とか「新規で作成するなら旧、現世代の言語なんてあり得ないよね」とかって俺の意見じゃないんだよな
なのにその意見への反論持ってこられても意味わかんね〜
たしか、ちっちゃい子供ってAさんとBさんの意見の違いを区別出来ずに自分or他人になるんだっけ?
こんなん困るわ
なのにその意見への反論持ってこられても意味わかんね〜
たしか、ちっちゃい子供ってAさんとBさんの意見の違いを区別出来ずに自分or他人になるんだっけ?
こんなん困るわ
619デフォルトの名無しさん
2017/11/18(土) 02:26:56.40ID:w2/CbKAa やっぱそこか
ちょっと他の人に聞きたいんだけどさ
俺は
「旧世代言語はもう使うべきではない」とか「新規で作成するなら旧、現世代の言語なんてあり得ないよね」とか言ってるように見えた?
ちょっと他の人に聞きたいんだけどさ
俺は
「旧世代言語はもう使うべきではない」とか「新規で作成するなら旧、現世代の言語なんてあり得ないよね」とか言ってるように見えた?
621あ
2017/11/18(土) 02:30:56.33ID:qQnEMcHh そこまで個の意見読めてるのか俺も気になる。
赤くなるのは俺ぐらいのスレだし。
赤くなるのは俺ぐらいのスレだし。
622デフォルトの名無しさん
2017/11/18(土) 06:18:04.79ID:MB5v83Xq 覚えた言語を捨てる勇気が無い奴は、その言語を肯定して
自分に言い訳をする卑怯者だよ。
自分に言い訳をする卑怯者だよ。
623デフォルトの名無しさん
2017/11/18(土) 07:09:31.95ID:Q2wZVPR6 ガイジばっかだな
624デフォルトの名無しさん
2017/11/18(土) 10:21:01.98ID:9bGbf/q7 自己紹介かな?
625デフォルトの名無しさん
2017/11/18(土) 10:59:14.98ID:lptBNr7G >>619
簡単な話
そいつの相手してもなーんも得るもん無いから君は最初から放置すべきだった
そいつは病的なしったか自己弁護野郎で
自分の頭の悪いことすらを、文章の「端的冗長」などという問題に置き換えちゃってる
それも、何度も何度も何度も何度も、絶対最後はそういう逃げに走ってる
悲しく単調な茶番劇
簡単な話
そいつの相手してもなーんも得るもん無いから君は最初から放置すべきだった
そいつは病的なしったか自己弁護野郎で
自分の頭の悪いことすらを、文章の「端的冗長」などという問題に置き換えちゃってる
それも、何度も何度も何度も何度も、絶対最後はそういう逃げに走ってる
悲しく単調な茶番劇
626デフォルトの名無しさん
2017/11/18(土) 11:33:42.61ID:ptgryUw4 端的に説明するとそうなるね
627あ
2017/11/18(土) 11:53:18.33ID:F+BjC4W7 間違った事は言ってないつもりだし、明らかに間違えたら認めてるぞ。
冗長だから理解できない、話が下手だから理解できない、に俺は持ってって無いじゃん。
冗長だから理解できない、話が下手だから理解できない、に俺は持ってって無いじゃん。
628デフォルトの名無しさん
2017/11/18(土) 12:06:38.87ID:qKgE/Foz あガガイのガイ
ペェ〜ルヴォーイか?
ペェ〜ルヴォーイか?
629デフォルトの名無しさん
2017/11/18(土) 12:07:15.85ID:qKgE/Foz それとも屁臭いプェチのゲリクソピィ虫か?
630デフォルトの名無しさん
2017/11/18(土) 12:07:56.35ID:qKgE/Foz 頭の$見えてるぞ
はやくプェチピィを保守する工程に戻るんだ
はやくプェチピィを保守する工程に戻るんだ
631デフォルトの名無しさん
2017/11/18(土) 12:07:56.84ID:D8muQy7+ 何回か間違って認めているのに同じ間違いを繰り返すのは、学習能力のないガイジとしか言いようがない
話してる最中に「もしかして俺が間違ってるかも」って疑ったりしないんだろうな
話してる最中に「もしかして俺が間違ってるかも」って疑ったりしないんだろうな
632デフォルトの名無しさん
2017/11/18(土) 12:30:01.33ID:lptBNr7G 高速逆走ボケ老人「なんてこった!ワシ以外の全員が逆走しとる!」
633デフォルトの名無しさん
2017/11/18(土) 13:08:47.79ID:9rFYKu0I そもそもパールやプィエッチピィを少しでも評価する下痢クソ野郎がなんで次世代言語議論スレにいるのか
俺にはわかりましぇーん
俺にはわかりましぇーん
635デフォルトの名無しさん
2017/11/18(土) 13:57:53.12ID:zdXSEhFu perlやphpしか選択肢がなかった貧しい時代もあったんですよ!!!
636あ
2017/11/18(土) 13:59:11.15ID:F+BjC4W7 普通にCで書いてたり、極端なところだとbashのcgiとかもあったなぁ。
637デフォルトの名無しさん
2017/11/18(土) 14:04:31.33ID:9rFYKu0I 選択肢がなかった。それは残念、悲しい時代でしたね
だからこそそれは否定されなければいけないと思うんですけど
その時代を肯定しないと精神崩壊するような老害がなんでこのスレにいるのかって聞いてるんですよー
だからこそそれは否定されなければいけないと思うんですけど
その時代を肯定しないと精神崩壊するような老害がなんでこのスレにいるのかって聞いてるんですよー
638デフォルトの名無しさん
2017/11/18(土) 14:05:36.40ID:zdXSEhFu >>637
あっさんを馬鹿にするやつはPで殴り殺すぞ!この野蛮人!
あっさんを馬鹿にするやつはPで殴り殺すぞ!この野蛮人!
639デフォルトの名無しさん
2017/11/18(土) 14:07:15.03ID:9rFYKu0I 汚物できゃっきゃしてるやつの方が野蛮人ではありませんこと?
640あ
2017/11/18(土) 15:33:24.85ID:eanOOMuW641デフォルトの名無しさん
2017/11/18(土) 16:05:50.83ID:9rFYKu0I ウンコの適所って?
それしか選択肢がなかった哀しい時代ならともかく今ウンコの適所を探すやつがなんでここにいるのって何度言ったらわかるのかねー?
それしか選択肢がなかった哀しい時代ならともかく今ウンコの適所を探すやつがなんでここにいるのって何度言ったらわかるのかねー?
642デフォルトの名無しさん
2017/11/18(土) 18:24:47.03ID:ZQLxHiSg タイムリーにスラドの新システムがperlだな
結局perlが可搬性最強ということらしい
結局perlが可搬性最強ということらしい
643デフォルトの名無しさん
2017/11/18(土) 19:14:21.75ID:9Hd4TP3A 最近の言語ってclassは無くなって構造体にメソッド生やしてclassっぽく使える言語が多いイメージだけど
この場合の設計はオブジェクト指向的にするのが多いのかな
この場合の設計はオブジェクト指向的にするのが多いのかな
644デフォルトの名無しさん
2017/11/18(土) 19:54:43.23ID:/CJztcmS そういうのは基盤領域が中心だから、
ビジネスドメインのモデリングとは違ってデータはデータとして真面目に設計するでしょ
ビジネスドメインのモデリングとは違ってデータはデータとして真面目に設計するでしょ
645デフォルトの名無しさん
2017/11/18(土) 20:24:42.14ID:ZQLxHiSg ああいうのって、ウィンドウライブラリみたいな実装継承が中心になるようなやつは
面倒くさいんだろなーと思って眺めてる
というより初期のOOPLが実装継承が中心だったのは
まさにウィンドウライブラリ作りたかったからだろうな
GUIをHTMLにできるようになったからウィンドウライブラリから開放されたみたいな勝手な想像
面倒くさいんだろなーと思って眺めてる
というより初期のOOPLが実装継承が中心だったのは
まさにウィンドウライブラリ作りたかったからだろうな
GUIをHTMLにできるようになったからウィンドウライブラリから開放されたみたいな勝手な想像
646デフォルトの名無しさん
2017/11/18(土) 21:53:31.79ID:u/9oqFXg P言語っていうウィキペディアの記事あるけど、Pythonに失礼すぎん?
647デフォルトの名無しさん
2017/11/18(土) 22:31:09.78ID:ZQLxHiSg MicrosoftのP言語じゃないのかよw
648デフォルトの名無しさん
2017/11/18(土) 22:37:11.57ID:KYuTS+5W P-Code のことかと思ったぜ
649デフォルトの名無しさん
2017/11/18(土) 22:50:10.69ID:nVR7ASrc ヒカシュー
プラスチックス
P-MODEL
プラスチックス
P-MODEL
650あ
2017/11/19(日) 00:07:06.15ID:LuozPxgy 適所を探すと言うより、最初からそれが無難な手だとわかってるから使うんだよなぁ。
適所を探して彷徨ってるのは、それこそ現世代で活用方法がイマイチ定まってない、次世代言語だと思うけど。
いちおう補足するが、単に旧世代、現世代言語を使う事を肯定して次世代言語を否定してるんじゃないからな。
それで充分なら、それを使えばいいってだけで。
僕鉛筆削れないから、ケータイに打ち込んでメモします、それが正しい。この時代鉛筆なんか使わないっしょ、常識的に考えて。削れないと言うか、削らなくて済むことを美徳として受け取ってほしい、みたいな極論に走るんじゃなくて、
鉛筆使うと手で擦ると汚れる、ボールペンって一回書いたら消せない、だからケータイでメモします。電池が切れると読めないって問題は認識してます。って話であるべきだと思うって事。
適所を探して彷徨ってるのは、それこそ現世代で活用方法がイマイチ定まってない、次世代言語だと思うけど。
いちおう補足するが、単に旧世代、現世代言語を使う事を肯定して次世代言語を否定してるんじゃないからな。
それで充分なら、それを使えばいいってだけで。
僕鉛筆削れないから、ケータイに打ち込んでメモします、それが正しい。この時代鉛筆なんか使わないっしょ、常識的に考えて。削れないと言うか、削らなくて済むことを美徳として受け取ってほしい、みたいな極論に走るんじゃなくて、
鉛筆使うと手で擦ると汚れる、ボールペンって一回書いたら消せない、だからケータイでメモします。電池が切れると読めないって問題は認識してます。って話であるべきだと思うって事。
651デフォルトの名無しさん
2017/11/19(日) 00:25:54.36ID:pBpWIwqa すまん三行でお願い
652あ
2017/11/19(日) 00:31:10.87ID:LuozPxgy 確実に使えると断言できるなら何でも使えばいい。
確実にこれにハマる!と断言しづらいのは次世代言語と言われる言語の方
ただし、次世代言語を否定して、旧世代言語を肯定してる訳じゃない、次世代言語が肯定できるならばそれもよい。かな。
確実にこれにハマる!と断言しづらいのは次世代言語と言われる言語の方
ただし、次世代言語を否定して、旧世代言語を肯定してる訳じゃない、次世代言語が肯定できるならばそれもよい。かな。
653デフォルトの名無しさん
2017/11/19(日) 00:31:32.72ID:sfWxFlOB 鉛筆とか携帯とか子供のおもちゃとか謎の比喩なんなん?
654あ
2017/11/19(日) 00:36:48.49ID:LuozPxgy なんでもないよ。もし理解できないなら可哀想だなと思ったゆえの空回りだから。
655デフォルトの名無しさん
2017/11/19(日) 00:40:49.43ID:IgGN+feq 意訳
旧世代言語には実績があるので使いどころは明らか。
対して、次世代言語はそれを模索している最中だ。
明らかに次世代言語が適しているという明確な理由がない限り、実績のある旧世代言語の方が推奨されるのは当然であろう。
なぜこう書けないのか
旧世代言語には実績があるので使いどころは明らか。
対して、次世代言語はそれを模索している最中だ。
明らかに次世代言語が適しているという明確な理由がない限り、実績のある旧世代言語の方が推奨されるのは当然であろう。
なぜこう書けないのか
656デフォルトの名無しさん
2017/11/19(日) 01:05:24.17ID:kYPwLJsc たとえば、>>654を正常な人間が書いたとしたら、
(もし理解できないとしたら可哀想だな、つまり、)理解しやすいように配慮した。
(空回りだから、と言いたいが、冒頭の「なんでもないよ」と被るので省こう)
という思考をすると思うんだよな
彼はADHDなので書いたそばから頭から抜け落ちてて、こういう頭の中でのフィードバックが機能してないんだろう
(もし理解できないとしたら可哀想だな、つまり、)理解しやすいように配慮した。
(空回りだから、と言いたいが、冒頭の「なんでもないよ」と被るので省こう)
という思考をすると思うんだよな
彼はADHDなので書いたそばから頭から抜け落ちてて、こういう頭の中でのフィードバックが機能してないんだろう
658あ
2017/11/19(日) 01:24:47.29ID:LuozPxgy >>655
旧世代言語が推奨される、とは言ってない。
次世代言語を推奨するに足る明確な理由があるのであれば、そうすべきとは言ってる。
「実績」を根拠にした「使いどころ」の2行目に対して、2行目はひとつの代名詞で受けるのもどうかと思うし、そもそも「それら」複数で受けるべきでもないんじゃないの?
実績と使いどころって前提に対して出す結論が「適す」「推奨」なのも変じゃん。
それでいいならそう書くけど。
次世代、現次世代の二者択一ではなくて「そもそも買ってくりゃいい」
旧世代言語が推奨される、とは言ってない。
次世代言語を推奨するに足る明確な理由があるのであれば、そうすべきとは言ってる。
「実績」を根拠にした「使いどころ」の2行目に対して、2行目はひとつの代名詞で受けるのもどうかと思うし、そもそも「それら」複数で受けるべきでもないんじゃないの?
実績と使いどころって前提に対して出す結論が「適す」「推奨」なのも変じゃん。
それでいいならそう書くけど。
次世代、現次世代の二者択一ではなくて「そもそも買ってくりゃいい」
659あ
2017/11/19(日) 01:27:40.75ID:LuozPxgy 途中で書き込み押しちゃった。
「そもそも買ってくりゃ良い」「既存のものが望む言語ではないが存在する」なら、それは、どちらの言語も選ばずに問題解決するんだし、作りたいものの性質によってベストも変わるんじゃない?
「そもそも買ってくりゃ良い」「既存のものが望む言語ではないが存在する」なら、それは、どちらの言語も選ばずに問題解決するんだし、作りたいものの性質によってベストも変わるんじゃない?
661デフォルトの名無しさん
2017/11/19(日) 02:51:34.18ID:QT7cD2cz >>657, 658
言葉遣い(言語定義)に関して「変」とか「べき」とか相手が間違っているかのように言っているが、
使い方が仕様として定められているプログラミング言語とは違い、
自然言語では「大多数の人間が直感的に理解できる」言葉遣いこそが一般的に好まれる傾向が強い。
つまり、自然言語の場合は自分以外の大多数の他人の総意により言葉遣いの正しさが決定される。
そして、君は言葉は>>655と比べて大多数に対して理解されやすい言葉なのだろうか?
嫌味というのは上記のように反語のかたちで使用する方が相手は理解しやすいと私は思う。
(わざと相手に理解されないようにさりげなく使用する嫌味もあるが)
「理解してほしい」という気持ちがあるのならば、言葉選びには多少注意を払ったほうが賢明だ。
言葉遣い(言語定義)に関して「変」とか「べき」とか相手が間違っているかのように言っているが、
使い方が仕様として定められているプログラミング言語とは違い、
自然言語では「大多数の人間が直感的に理解できる」言葉遣いこそが一般的に好まれる傾向が強い。
つまり、自然言語の場合は自分以外の大多数の他人の総意により言葉遣いの正しさが決定される。
そして、君は言葉は>>655と比べて大多数に対して理解されやすい言葉なのだろうか?
嫌味というのは上記のように反語のかたちで使用する方が相手は理解しやすいと私は思う。
(わざと相手に理解されないようにさりげなく使用する嫌味もあるが)
「理解してほしい」という気持ちがあるのならば、言葉選びには多少注意を払ったほうが賢明だ。
662デフォルトの名無しさん
2017/11/19(日) 03:32:31.76ID:aH5RZwMw ただでさえ壊滅的な文章力なのに、嫌味やら比喩やらぶっ込もうとしてさらに壊滅的になった結果がこれなんどなあ
663デフォルトの名無しさん
2017/11/19(日) 03:48:17.16ID:sfWxFlOB 知識も文章力もガバガバなのに嫌味だけは一丁前にぶち込んでくるの凄いわ
664デフォルトの名無しさん
2017/11/19(日) 03:57:01.75ID:5+BpDy9G 文章力はガバガバ、文章力を指摘されたら怒って相手の理解力に転化しようとしてたこともあったけど、本人は人の意見もちゃんと区別出来ない理解力
すごい奴だ
すごい奴だ
665デフォルトの名無しさん
2017/11/19(日) 08:29:39.37ID:kYPwLJsc >>655の「それ」が指すのって、実績かもしれないし使いどころかもしれないし前文の文意全体かもしれないけど
どれでも意味は変わらないので曖昧なままでいいと正常な人間は判断するんだよ
ADHDの人みたいにそんなことをいちいち確定させないと頭のスタックがオーバーフローしてしまう、なんてことはないの
どれでも意味は変わらないので曖昧なままでいいと正常な人間は判断するんだよ
ADHDの人みたいにそんなことをいちいち確定させないと頭のスタックがオーバーフローしてしまう、なんてことはないの
666デフォルトの名無しさん
2017/11/19(日) 09:22:17.02ID:kYPwLJsc667デフォルトの名無しさん
2017/11/19(日) 09:33:41.74ID:d5pZv6yX お前らガイジをデバッグしてやってるつもりかもしれんが
そーいうのは医者かそいつの身内に任せとけ
そんなカンタンに直らないことだから放置されて今に至ったの分かるでしょ?
今後も、基本的にそいつは放置され行く運命なんよ…
そーいうのは医者かそいつの身内に任せとけ
そんなカンタンに直らないことだから放置されて今に至ったの分かるでしょ?
今後も、基本的にそいつは放置され行く運命なんよ…
668デフォルトの名無しさん
2017/11/19(日) 10:52:39.44ID:udpY6AOX669デフォルトの名無しさん
2017/11/19(日) 11:51:15.79ID:pBpWIwqa 大学とかの学術系の人達って、オブジェクト指向言語を、
GUIのWindow制御と関係付けられて語られるのを
非常に嫌がるよね。
GUIのWindow制御と関係付けられて語られるのを
非常に嫌がるよね。
670デフォルトの名無しさん
2017/11/19(日) 12:14:49.69ID:udpY6AOX だってそれ一部の linux の gui だけだからなあ
要は「きっとそうに違いない」レベルの嘘なんだもん
要は「きっとそうに違いない」レベルの嘘なんだもん
671デフォルトの名無しさん
2017/11/19(日) 12:16:52.00ID:udpY6AOX 嘘は言い過ぎか。俗説というのかな。
672デフォルトの名無しさん
2017/11/19(日) 12:40:38.90ID:rjDl7x2h linux系の人達はシェルスクリプトでできることをC言語 (に似た言語) で書くのが嫌がる
「でもスクリプトでGUIは無理だよね」とかいう人は
自分自身が「スクリプトを非常に嫌がる人」だと自覚すればいい
他人のことは気にするな
「でもスクリプトでGUIは無理だよね」とかいう人は
自分自身が「スクリプトを非常に嫌がる人」だと自覚すればいい
他人のことは気にするな
673デフォルトの名無しさん
2017/11/19(日) 13:56:02.98ID:pBpWIwqa MicrosoftもWindowsのGUIプログラミングにオブジェクト指向を最大限
利用してたけどな
利用してたけどな
674デフォルトの名無しさん
2017/11/19(日) 15:53:23.83ID:PchCVsrm 動的な要素が必要なものなら必然的にオブジェクト指向的な何かはでてくるだろうね。
逆にアルゴリズムみたいな静的なコードにはあんま馴染まない。
逆にアルゴリズムみたいな静的なコードにはあんま馴染まない。
675デフォルトの名無しさん
2017/11/19(日) 16:05:17.87ID:8GqCvnDK676あ
2017/11/19(日) 17:06:50.76ID:LuozPxgy 直感的に理解した気分になれれば、正誤は気にしない。
これは理解に苦しむわ。
これは理解に苦しむわ。
677あ
2017/11/19(日) 17:10:27.69ID:LuozPxgy ADHDと言う病名がつく前から、「してはいけない、気をつけるべきこと」と指導教官に言われて徹底した事だけどな。議論の際の言葉の揺れは。
文は長くなれど語彙を少なく、時制の一致、代名詞は慎重に使用、もし使用するならば数詞は一致させる。
議論ごっこしたいだけならもう黙るわ。健全でもなんでもないよ。
文は長くなれど語彙を少なく、時制の一致、代名詞は慎重に使用、もし使用するならば数詞は一致させる。
議論ごっこしたいだけならもう黙るわ。健全でもなんでもないよ。
678デフォルトの名無しさん
2017/11/19(日) 17:33:49.09ID:wGu3G50A679678
2017/11/19(日) 17:42:29.27ID:wGu3G50A 君自身は気付いてないみたいだけど、君の文章を君の言うような基準で評価するとこうなるんだよ
落ち着いて他の人のレスをじっくり読んでみると、曖昧な言葉遣いに見えて意外と厳密な言葉で書かれてることがわかるはずだよ
君自身のレスに比べれば遥かにね
落ち着いて他の人のレスをじっくり読んでみると、曖昧な言葉遣いに見えて意外と厳密な言葉で書かれてることがわかるはずだよ
君自身のレスに比べれば遥かにね
680デフォルトの名無しさん
2017/11/19(日) 17:51:34.62ID:5+BpDy9G 言葉の揺れは注意されたようだが、文章力は指導しきれなかったようだな
指導教官に出会う前は今の文体+表記揺れだったんだろうか
指導教官の苦労が垣間見えて涙が出ますよ
指導教官に出会う前は今の文体+表記揺れだったんだろうか
指導教官の苦労が垣間見えて涙が出ますよ
681デフォルトの名無しさん
2017/11/19(日) 17:54:31.63ID:rjDl7x2h 大企業の偉い人でも決算や証明書に嘘を書いてしまう
一般人が文章を正確に書けるわけがない
嘘を書いたとしても反省したり罰を受けたりするようなシステムはもうないよ
一般人が文章を正確に書けるわけがない
嘘を書いたとしても反省したり罰を受けたりするようなシステムはもうないよ
682デフォルトの名無しさん
2017/11/19(日) 17:57:34.18ID:ij9+MaWL 怒られた小学生のようないいわけ
683デフォルトの名無しさん
2017/11/19(日) 18:04:01.39ID:wGu3G50A >>680
変に単語だけ注意したのが失敗だったのかもね
それによって、ただでさえADHDで文章構成が苦手だったのが余計に単語に気を取られて全体を見れなくなってしまったんだろう
俺の上司もADHDだったけど、逆に全体の構成はおかしくなくて単語がおかしいタイプだったから、彼の文章に比べればずっと読みやすかった
変に単語だけ注意したのが失敗だったのかもね
それによって、ただでさえADHDで文章構成が苦手だったのが余計に単語に気を取られて全体を見れなくなってしまったんだろう
俺の上司もADHDだったけど、逆に全体の構成はおかしくなくて単語がおかしいタイプだったから、彼の文章に比べればずっと読みやすかった
684683
2017/11/19(日) 18:07:44.39ID:wGu3G50A すまん自分で言っときながら曖昧だな
683の「彼」は「あ」を指す
683の「彼」は「あ」を指す
685あ
2017/11/19(日) 18:55:31.75ID:LuozPxgy 伸びるなぁ
686あ
2017/11/19(日) 19:00:18.55ID:LuozPxgy687デフォルトの名無しさん
2017/11/19(日) 19:31:13.14ID:D9ZDsmXZ688デフォルトの名無しさん
2017/11/19(日) 19:57:50.03ID:5+BpDy9G 今時学振とかでもとにかく一目でわかるように書けって指導されるのに、わかりやすさが二の次なんてことは断じてないゾ
689デフォルトの名無しさん
2017/11/19(日) 20:21:05.83ID:n7dw0jCn 日本語についてはわかりやすさを重視するのに、
プログラミング言語となると抽象化が著しい関数型を推すお前らがわからない
プログラミング言語となると抽象化が著しい関数型を推すお前らがわからない
690デフォルトの名無しさん
2017/11/19(日) 20:26:43.14ID:8AE8ty3K COBOLは可読性が高いと言われて無かった?
691デフォルトの名無しさん
2017/11/19(日) 20:48:08.24ID:ij9+MaWL mapとか内包表記は読みやすいからしょうがないね
692デフォルトの名無しさん
2017/11/19(日) 20:54:36.63ID:IgGN+feq >>690
単位時間あたりで読める文字数を可読性と定義するなら可読性は極めて高い
単位時間あたりで読める文字数を可読性と定義するなら可読性は極めて高い
693デフォルトの名無しさん
2017/11/19(日) 21:17:43.05ID:5+BpDy9G 時間当たりのスクロール量を可読性と定義するならたしかに関数型言語は可読性が極めて低いな
694デフォルトの名無しさん
2017/11/19(日) 22:05:52.67ID:CbJdE71W >>687
SmalltalkはOS(しかしユーザーが全体を理解可能な)を目指して作られているからGUIがすべてではないよ?
▼Smalltalkの底を流れる設計思想
http://web.archive.org/web/20041016084842/http://marimpod.homeip.net/chomswiki/24#
SmalltalkはOS(しかしユーザーが全体を理解可能な)を目指して作られているからGUIがすべてではないよ?
▼Smalltalkの底を流れる設計思想
http://web.archive.org/web/20041016084842/http://marimpod.homeip.net/chomswiki/24#
695デフォルトの名無しさん
2017/11/20(月) 00:18:08.04ID:1/JOn/hh 別にGUIだけではないが、GUIが最初からあったのも事実だろう
696デフォルトの名無しさん
2017/11/20(月) 04:12:09.45ID:SzQBx5h9 >>695
かなり初期(Smalltalk-72、74)にGUIは整えられたが、この時点で継承機構はなかった
http://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
かなり初期(Smalltalk-72、74)にGUIは整えられたが、この時点で継承機構はなかった
http://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
697デフォルトの名無しさん
2017/11/20(月) 04:48:00.39ID:F1FX2mqd >>696
その漫画クヤシク
その漫画クヤシク
698デフォルトの名無しさん
2017/11/20(月) 05:54:47.96ID:HaLrPJzK699デフォルトの名無しさん
2017/11/20(月) 08:17:47.25ID:ste5Kj49 一部だけ切り出すと学習漫画みたいだな。
700デフォルトの名無しさん
2017/11/20(月) 08:33:10.27ID:uxY9p7WM いかつい絵柄の進研ゼミ
701デフォルトの名無しさん
2017/11/20(月) 09:43:36.06ID:1/JOn/hh >>696
貴重な資料をありがとう
で、物は言いようみたいであれだけど、Smalltalkの歴史はそのままOOPの歴史であり
GUIを実装する試行錯誤の歴史なんだから、継承が後からなのはむしろ当然で
継承がGUIに有効なことの左証では
貴重な資料をありがとう
で、物は言いようみたいであれだけど、Smalltalkの歴史はそのままOOPの歴史であり
GUIを実装する試行錯誤の歴史なんだから、継承が後からなのはむしろ当然で
継承がGUIに有効なことの左証では
702デフォルトの名無しさん
2017/11/20(月) 11:23:22.73ID:rQ5oV85S >>701
> 継承がGUIに有効なことの左証では
実装継承がGUIに *も* 有効な事はだれも否定してないと思うよ
ID:ZQLxHiSg の
> というより初期のOOPLが実装継承が中心だったのは
> まさにウィンドウライブラリ作りたかったから
や ID:D9ZDsmXZ の
> SmalltalkがGUIのために作られたのは純然たる事実じゃね
> 例え本人が否定していたとしてもそうだろう
というように、GUIやそれに付随するウインドウシステムの構築のみに実装継承の目的を限定したり
SmalltalkがGUIだけのために進化してきたかのような言い方は少々視野が狭すぎませんか?という話
> 継承がGUIに有効なことの左証では
実装継承がGUIに *も* 有効な事はだれも否定してないと思うよ
ID:ZQLxHiSg の
> というより初期のOOPLが実装継承が中心だったのは
> まさにウィンドウライブラリ作りたかったから
や ID:D9ZDsmXZ の
> SmalltalkがGUIのために作られたのは純然たる事実じゃね
> 例え本人が否定していたとしてもそうだろう
というように、GUIやそれに付随するウインドウシステムの構築のみに実装継承の目的を限定したり
SmalltalkがGUIだけのために進化してきたかのような言い方は少々視野が狭すぎませんか?という話
703デフォルトの名無しさん
2017/11/20(月) 11:43:35.09ID:lEG6T20x 値型のメンバー変数を作れない言語だったら
無駄なポインタを減らすために実装継承が有効だろう
無駄なポインタを減らすために実装継承が有効だろう
704デフォルトの名無しさん
2017/11/20(月) 15:33:48.50ID:upeMVrL4 GUIはオブジェクト指向のインスタンスだしょ。
インスタンスは抽象化の具現化の一つで抽象化とは
実体のない仮想的なオブジェクトの集合であり、
その存在を具現化して表現してしまった瞬間
それは実体化し具現化してしまうのだよ。
インスタンスは抽象化の具現化の一つで抽象化とは
実体のない仮想的なオブジェクトの集合であり、
その存在を具現化して表現してしまった瞬間
それは実体化し具現化してしまうのだよ。
705デフォルトの名無しさん
2017/11/20(月) 20:36:31.84ID:F1FX2mqd706デフォルトの名無しさん
2017/11/20(月) 21:00:50.26ID:O0QjCqg/ 新人プログラマがPHPを学ぶべき理由
https://qiita.com/Gazelle/items/8817a472f33d5163a5fd
https://qiita.com/Gazelle/items/8817a472f33d5163a5fd
707デフォルトの名無しさん
2017/11/21(火) 00:59:44.39ID:lnnQeNMw PHP書いてるのなんてジャップランド土人村の頭がチンパンジーのエスアイアイのオサールサンダヨーだけだよー
708デフォルトの名無しさん
2017/11/21(火) 01:16:15.02ID:LMCDauea https://hhvm.com/blog/2017/09/18/the-future-of-hhvm.html
PHPといえば顔本のHHVMの今後
HHVMは来年にはPHP5のサポートを落として、PHP7には寄せずにHack言語に絞るそうな
やっぱり顔本もPHPは焼き払いたいんだな。Hack言語とやらがどれだけPHPから脱却できるか
PHPといえば顔本のHHVMの今後
HHVMは来年にはPHP5のサポートを落として、PHP7には寄せずにHack言語に絞るそうな
やっぱり顔本もPHPは焼き払いたいんだな。Hack言語とやらがどれだけPHPから脱却できるか
709デフォルトの名無しさん
2017/11/21(火) 01:31:02.78ID:wI5wFT4b 技術選定の段階でいい加減にPHPを選んだクズ野郎は
相当恨まれてそうだな
いやどこの下痢糞プェチピィ現場でもそうだろうけど
相当恨まれてそうだな
いやどこの下痢糞プェチピィ現場でもそうだろうけど
710デフォルトの名無しさん
2017/11/21(火) 02:04:29.26ID:XgRd72eK Hack言語はダメだろ。発表から大分立ってるのに進展が遅い。
フェイスブックの中でも重視されてないだろ? 必要性があるならどんどん開発してるはず。
フェイスブックの中でも重視されてないだろ? 必要性があるならどんどん開発してるはず。
711デフォルトの名無しさん
2017/11/21(火) 04:32:17.44ID:1CMkZgYy それぞれ問題に対して最適な言語というものがあるわけで
何もかもに適した言語というのは存在しないよ。
何もかもに適した言語というのは存在しないよ。
712デフォルトの名無しさん
2017/11/21(火) 08:13:20.38ID:wI5wFT4b 何もかもに適してない言語ならありそうだな
いやどのPのこととは言わないがな?
いやどのPのこととは言わないがな?
713あ
2017/11/21(火) 08:13:51.83ID:QsmG8G9Z 単にディスるだけなら簡単だからな。
とはいえ、phpなんかにも「一番無難」以外に新しいメリット入れてかないとな。
もちろん他の次世代言語も「一番無難」を目指す所はあったほうがいいと思う。
.netに対してIIS、javaに対してTomcatみたいに、Dockerとか仕組みごと出す前にその言語の用のアプリケーションコンテナを強く押せば、一定のパイはあると思うんだが。
とはいえ、phpなんかにも「一番無難」以外に新しいメリット入れてかないとな。
もちろん他の次世代言語も「一番無難」を目指す所はあったほうがいいと思う。
.netに対してIIS、javaに対してTomcatみたいに、Dockerとか仕組みごと出す前にその言語の用のアプリケーションコンテナを強く押せば、一定のパイはあると思うんだが。
714デフォルトの名無しさん
2017/11/21(火) 08:46:28.66ID:JYBkdGYB PL/Iのことか
理路整然としてて意外と良い言語だそ
業務系がC系やVBに流れることなくこのままの方向で進化してれば、業務系の開発は今よりずっとマシなものになってたと思う
理路整然としてて意外と良い言語だそ
業務系がC系やVBに流れることなくこのままの方向で進化してれば、業務系の開発は今よりずっとマシなものになってたと思う
715デフォルトの名無しさん
2017/11/21(火) 22:27:55.44ID:z7TaMi5f Smalltalkって何であんなにゴミなの?
716デフォルトの名無しさん
2017/11/22(水) 00:13:25.96ID:rbs65c9L PHPのどこが無難やねん
PHPでまともにシステム作れてた案件1割もなかったわ
PHPでまともにシステム作れてた案件1割もなかったわ
717デフォルトの名無しさん
2017/11/22(水) 00:19:45.97ID:H40m9dAW WebとGUIのデザインって時代背景に依存する消耗品じゃね?
718デフォルトの名無しさん
2017/11/22(水) 01:10:13.88ID:1Sdpbsa5 >>708
面白いなHackは独自言語に進化するんだ。
そう言えばHackのXHPって面白いな。
ReactにおけるJSXみたいなもの。
PHPではhtmlコード部分はただのテキストでHTML 部分の構文がどうだろうと無視されるけどXHPはHackの処理系で妥当性が検証される。
メリットとしては事前に構文がチェックされるのと
XSS対策くらいだろうか?詳しい人に聞きたい。
Reactみたいに独自のタグが作れるとかだったら面白いな。
面白いなHackは独自言語に進化するんだ。
そう言えばHackのXHPって面白いな。
ReactにおけるJSXみたいなもの。
PHPではhtmlコード部分はただのテキストでHTML 部分の構文がどうだろうと無視されるけどXHPはHackの処理系で妥当性が検証される。
メリットとしては事前に構文がチェックされるのと
XSS対策くらいだろうか?詳しい人に聞きたい。
Reactみたいに独自のタグが作れるとかだったら面白いな。
719デフォルトの名無しさん
2017/11/22(水) 06:55:53.18ID:2YdhEIzW >>715
今頃来ても遅いよ
今頃来ても遅いよ
721デフォルトの名無しさん
2017/11/22(水) 09:16:12.81ID:vFQO0703 求人みると未だにphpが一番多くね
722デフォルトの名無しさん
2017/11/22(水) 10:02:13.08ID:eHFeMVAT723デフォルトの名無しさん
2017/11/22(水) 13:15:10.00ID:0VsrTrOA >>721
日本全体で見れば店員や肉体労働の求人が多いのと同じことでは。
日本全体で見れば店員や肉体労働の求人が多いのと同じことでは。
724デフォルトの名無しさん
2017/11/22(水) 13:51:58.93ID:h8Su9zOg >>723
なるほど、頭を使わんでいい仕事は求人が多いってことか。
なんかすげー納得した。
それを言われて気づいたんだが、「PHPが世界で一番使われてる言語だから一番良い言語」って理屈は
「ハンバーガーとコーラが世界で一番売れている食べ物だから一番うまい食べ物」って理屈と同じってことだな。
なるほど、頭を使わんでいい仕事は求人が多いってことか。
なんかすげー納得した。
それを言われて気づいたんだが、「PHPが世界で一番使われてる言語だから一番良い言語」って理屈は
「ハンバーガーとコーラが世界で一番売れている食べ物だから一番うまい食べ物」って理屈と同じってことだな。
725デフォルトの名無しさん
2017/11/22(水) 17:56:25.22ID:GZ19t0eq >>714
> PL/Iのことか
> 理路整然としてて意外と良い言語だそ
言語仕様が大きな言語は最初から慎重に言語設計がされているから理路整然としているし
その後で言語仕様の拡張をしてもグダグダになりにくい(理路整然さを保った拡張が可能なことが多い)
これはPL/Iだけでなくそれ以降に開発された(各々の開発時点で最も複雑とされた)言語であるAlgol 68やAdaでも同様
> 業務系がC系やVBに流れることなくこのままの方向で進化してれば、業務系の開発は今よりずっとマシなものになってたと思う
Cのように本来は小さく単純なものとして産まれた言語は拡張に耐えるような基本設計になっていないので
拡張するとグダグダになり勝ち
ちょうど最初から巨大なビルとして設計されたビルは通路(人の動線)やエレベーターや水回りや電気系統などが整然と配置され
その後の多少の拡張や変更にもそれらの整然さが余り乱されないですむが、最初に小さな建物として作られた旅館が
色々と増築を受けると通路(特に避難通路)が迷路の如くなり電気配線や水回りの配管もほとんど誰も知らない謎めいた代物に
なるのと似ている
> PL/Iのことか
> 理路整然としてて意外と良い言語だそ
言語仕様が大きな言語は最初から慎重に言語設計がされているから理路整然としているし
その後で言語仕様の拡張をしてもグダグダになりにくい(理路整然さを保った拡張が可能なことが多い)
これはPL/Iだけでなくそれ以降に開発された(各々の開発時点で最も複雑とされた)言語であるAlgol 68やAdaでも同様
> 業務系がC系やVBに流れることなくこのままの方向で進化してれば、業務系の開発は今よりずっとマシなものになってたと思う
Cのように本来は小さく単純なものとして産まれた言語は拡張に耐えるような基本設計になっていないので
拡張するとグダグダになり勝ち
ちょうど最初から巨大なビルとして設計されたビルは通路(人の動線)やエレベーターや水回りや電気系統などが整然と配置され
その後の多少の拡張や変更にもそれらの整然さが余り乱されないですむが、最初に小さな建物として作られた旅館が
色々と増築を受けると通路(特に避難通路)が迷路の如くなり電気配線や水回りの配管もほとんど誰も知らない謎めいた代物に
なるのと似ている
726デフォルトの名無しさん
2017/11/22(水) 18:00:15.91ID:NgxFNsMl Java や C# は巨大ビルですか?それとも旅館ですか?
727デフォルトの名無しさん
2017/11/22(水) 18:40:29.63ID:/zFKpQSs PL/M はどうなん?
728デフォルトの名無しさん
2017/11/22(水) 19:52:21.96ID:my8MUI48 PCは部品を増設できるからダメ
SIMロックしたスマホが最強に儲かる
ってことだろ
SIMロックしたスマホが最強に儲かる
ってことだろ
729デフォルトの名無しさん
2017/11/22(水) 22:10:06.01ID:DU4siyMG >>721
メンテナンス放り出す奴が多いんだろ。
メンテナンス放り出す奴が多いんだろ。
730デフォルトの名無しさん
2017/11/23(木) 00:57:55.01ID:rvi39iUw731デフォルトの名無しさん
2017/11/23(木) 09:13:02.77ID:XBDj7YCq732デフォルトの名無しさん
2017/11/23(木) 09:16:33.31ID:SpN6ohaw 実際にはExelのマクロ使えば数秒で終わるような作業を
毎日数時間かけてタラタラ打ち込んで給料を貰ってる事務職は大量にいるよね
毎日数時間かけてタラタラ打ち込んで給料を貰ってる事務職は大量にいるよね
733デフォルトの名無しさん
2017/11/23(木) 09:22:09.16ID:XBDj7YCq734デフォルトの名無しさん
2017/11/23(木) 10:22:33.43ID:e8aKLB85 >>731
なにぃ⤴!?
社会に出てるのに分からなかったよぉ。俺ってバカなんだなぁ⤴
社会に出てる君にはそのことが分かるんだろうなぁ⤴wwwww
すごいなぁ⤴wwww
少しまじめにレスすると「社会に出たら、まともな奴ってかなり少ないことが分かった」というのが俺の経験則だな。
大した根拠もなく、他人に勝手な偏見を持った発言をするのは控えたほうがいいと思うよ。
「こいつ、まともな人間じゃないな」と思われる危険性があるよ。
なにぃ⤴!?
社会に出てるのに分からなかったよぉ。俺ってバカなんだなぁ⤴
社会に出てる君にはそのことが分かるんだろうなぁ⤴wwwww
すごいなぁ⤴wwww
少しまじめにレスすると「社会に出たら、まともな奴ってかなり少ないことが分かった」というのが俺の経験則だな。
大した根拠もなく、他人に勝手な偏見を持った発言をするのは控えたほうがいいと思うよ。
「こいつ、まともな人間じゃないな」と思われる危険性があるよ。
735デフォルトの名無しさん
2017/11/23(木) 11:10:08.14ID:e22cyQaC 多数決だから
まともなじゃない事象があっても確率が51%になるまで無視するから見えない
まともなじゃない事象があっても確率が51%になるまで無視するから見えない
736あ
2017/11/23(木) 11:44:04.90ID:HFglKCpm 多数決は単なるきれいな暴力だからな。
きれいにお前らを封殺したいんよ、って意思表示も込められるくらいに腹に据えかねてるときしか使わん。
きれいにお前らを封殺したいんよ、って意思表示も込められるくらいに腹に据えかねてるときしか使わん。
737あ
2017/11/23(木) 11:45:01.64ID:HFglKCpm 票が足らん?普段出ないような社員を「幅広い意見を募るため」と集めたるわ、ぐらいの時。
738デフォルトの名無しさん
2017/11/23(木) 11:54:58.61ID:KI69K7qK >>733
だから、事務社員様の仕事を奪わないように、
業務モデルを効率化することなく
紙の上でやっていたことをPC上でやって
最終的に紙に印刷できなければならないのさ。
全ては事務社員様の雇用のために。
だから、事務社員様の仕事を奪わないように、
業務モデルを効率化することなく
紙の上でやっていたことをPC上でやって
最終的に紙に印刷できなければならないのさ。
全ては事務社員様の雇用のために。
739あ
2017/11/23(木) 13:26:26.64ID:VyGloF6k 紙に印字できないといかんのはどっちかと言うと事務方よりITでないエンジニアの人の方がこだわるイメージだけどな。
医者は昔相手にしたことあるけど、常に野戦病院と化しても運用できる体制にこだわってたし、実際何度か近い大惨事を経験した。
機械屋も同じで、明るければ読める形での設計資料、過去整備記録、縮退運転切り替え要領書みたいなのにこだわってたな。
入力が楽になるのは素晴らしいけど、入力したものが必要な時って平常時とは限らない、みたいな思想だった。
いずれも、事務方のほうが力弱いから、負けた方の事務方は「今この場には必要ないかもしれませんが、こうすべきと言われてるのでオール電子化は反対です」と端的に言いよるけどね。
医者は昔相手にしたことあるけど、常に野戦病院と化しても運用できる体制にこだわってたし、実際何度か近い大惨事を経験した。
機械屋も同じで、明るければ読める形での設計資料、過去整備記録、縮退運転切り替え要領書みたいなのにこだわってたな。
入力が楽になるのは素晴らしいけど、入力したものが必要な時って平常時とは限らない、みたいな思想だった。
いずれも、事務方のほうが力弱いから、負けた方の事務方は「今この場には必要ないかもしれませんが、こうすべきと言われてるのでオール電子化は反対です」と端的に言いよるけどね。
740デフォルトの名無しさん
2017/11/23(木) 13:40:51.84ID:DqyU4UwD >>738
日本の受託ITにそれを批判する資格は無いんだよなあ
業務モデルを変えられないからIT屋に開発の仕事があるんだよ
システムに合わせて業務変えられる民族なら、そもそも大抵の案件は出来合いのパッケージ使えば終わりということになっちゃう
日本の受託ITにそれを批判する資格は無いんだよなあ
業務モデルを変えられないからIT屋に開発の仕事があるんだよ
システムに合わせて業務変えられる民族なら、そもそも大抵の案件は出来合いのパッケージ使えば終わりということになっちゃう
741デフォルトの名無しさん
2017/11/23(木) 13:50:02.49ID:rvi39iUw742デフォルトの名無しさん
2017/11/23(木) 19:36:28.54ID:ZEemQUxM Googleが採用決めたSwiftが覇権で決まりか
743デフォルトの名無しさん
2017/11/23(木) 19:42:20.30ID:rvi39iUw バカ「うーん、これは適材適所だからPHP!wこれもPHP!wあれもPHP!w」
744デフォルトの名無しさん
2017/11/23(木) 19:55:54.79ID:fGVRHt7J >>742
まだバージョン0.4 なんでしょ?w
まだバージョン0.4 なんでしょ?w
745デフォルトの名無しさん
2017/11/23(木) 20:55:11.34ID:H0+gJnL1 AppleがSwiftやめるらしいが・・
746デフォルトの名無しさん
2017/11/23(木) 21:07:15.98ID:99G+dhLG747デフォルトの名無しさん
2017/11/23(木) 21:11:45.46ID:y4EH93iG GoogleがSwiftってことはC++の代替ってことだよな。
あれ、Go言語はどうなるんだ。
あれ、Go言語はどうなるんだ。
748デフォルトの名無しさん
2017/11/23(木) 21:13:15.54ID:ZEemQUxM749デフォルトの名無しさん
2017/11/23(木) 21:31:24.03ID:e8aKLB85 >>746
ん?ごめん。ちょっと意味が分からない。もう少し詳しく説明してくれ。
ん?ごめん。ちょっと意味が分からない。もう少し詳しく説明してくれ。
750デフォルトの名無しさん
2017/11/23(木) 22:09:26.36ID:NGg/SBGT 未だにObjective-Cのほうが安全という事実
751デフォルトの名無しさん
2017/11/24(金) 09:28:48.51ID:i/MfPYN1 うちは社内の保守的なエンジニアのおかげでSwift移行しなかった。
現状を見れば良い判断だったと思う。
RustもいずれSwiftと同じことになると思う。
現状を見れば良い判断だったと思う。
RustもいずれSwiftと同じことになると思う。
752デフォルトの名無しさん
2017/11/24(金) 10:17:28.01ID:dmeeOCgJ Swiftはプラットフォーム囲ってるからまだ無茶が効く
囲ってる訳でもないRustが同じことなんてしたら一瞬で客が離れるだけだわ。火狐の現状がRustの未来だ
囲ってる訳でもないRustが同じことなんてしたら一瞬で客が離れるだけだわ。火狐の現状がRustの未来だ
753デフォルトの名無しさん
2017/11/24(金) 10:22:52.20ID:oidK8tqZ RustはABIを安定させないことで最適化と改良の余地を残しているから
1アプリで完結するようなのはいいけど、基礎的なものを置きかえるには適さないんだよね
サイズの問題もあるし
ま、こんなこといったらC++含めて全部不適格だけどな
C言語とJavaぐらいしか残らん
1アプリで完結するようなのはいいけど、基礎的なものを置きかえるには適さないんだよね
サイズの問題もあるし
ま、こんなこといったらC++含めて全部不適格だけどな
C言語とJavaぐらいしか残らん
754デフォルトの名無しさん
2017/11/24(金) 11:05:30.58ID:qT2L8rY5 Fortran 使おうぜ
755デフォルトの名無しさん
2017/11/24(金) 11:19:01.17ID:KPD3W4uL implicit、none(笑)
756デフォルトの名無しさん
2017/11/24(金) 13:55:24.14ID:jGNvQKc+ まあ確かに、イミュータブルによる安全高速化、動的ってんなら既にHaskell、Erlang、Crystalとか有るので、Rustが何を目指してるかは俺には不明だが、Rustファンでその辺知ってる人居る?
757デフォルトの名無しさん
2017/11/24(金) 16:59:13.92ID:U+xL4cDR Rust は haskell と同じ道をたどるんじゃねーの?
ファン層も似たようなもんでしょ。
なんか理解しずらい高級な機能があるから覚えるとどや顔できるって感じで。
ファン層も似たようなもんでしょ。
なんか理解しずらい高級な機能があるから覚えるとどや顔できるって感じで。
758デフォルトの名無しさん
2017/11/24(金) 17:13:50.15ID:ue40dD9y759デフォルトの名無しさん
2017/11/24(金) 17:26:27.92ID:jGNvQKc+ >>758
既存言語を貶してもRustの価値が上がるわけ無いじゃん。
GC無しってのはアプローチの一つなんだから、既存言語の改良では済まない「何か」を何故可決できるのかを訴求しなきゃ、「僕の考えた最強言語」で終わっちゃうってだけだよ?
既存言語を貶してもRustの価値が上がるわけ無いじゃん。
GC無しってのはアプローチの一つなんだから、既存言語の改良では済まない「何か」を何故可決できるのかを訴求しなきゃ、「僕の考えた最強言語」で終わっちゃうってだけだよ?
760デフォルトの名無しさん
2017/11/24(金) 17:41:02.84ID:ue40dD9y >>759
価値は上げなくてもいい
実際に上げなくても、上がった上がったって嘘つくだけでも別にいいよ
嘘に寛容な世界とはそういう世界だ
だが、もし本当に価値を上げたいなら嘘つかない方法を考えた方がいいんじゃないか
価値は上げなくてもいい
実際に上げなくても、上がった上がったって嘘つくだけでも別にいいよ
嘘に寛容な世界とはそういう世界だ
だが、もし本当に価値を上げたいなら嘘つかない方法を考えた方がいいんじゃないか
761デフォルトの名無しさん
2017/11/24(金) 18:49:38.61ID:oidK8tqZ GCってのは副作用を前提としたCPU上で副作用無しの世界を作る舞台装置なんだから
意味的な文句を付けてもしょうがないだろ
「GCはリアルタイム性落ちるし並列化にも適さないから糞」とか性能の話なら言っていい
意味的な文句を付けてもしょうがないだろ
「GCはリアルタイム性落ちるし並列化にも適さないから糞」とか性能の話なら言っていい
762デフォルトの名無しさん
2017/11/24(金) 18:59:37.89ID:jGNvQKc+763デフォルトの名無しさん
2017/11/24(金) 20:47:57.51ID:PBABpGxA Rustつこてるもんは嘘つきってことでおk?
764デフォルトの名無しさん
2017/11/24(金) 20:51:48.12ID:jGNvQKc+765デフォルトの名無しさん
2017/11/24(金) 20:53:34.51ID:dpb7W7tM Cに回帰しようよ
766デフォルトの名無しさん
2017/11/24(金) 21:35:13.18ID:8Hl3EYId >>756, >> 759
Rustが目指しているのは基本的にはC++の後継。
C++との一番の違いは、Cとの互換性を捨てることで、より厳格(安全)に書けるようにすること。
厳格であることを実現するために、型システムとメモリ管理などについて比較的新しい概念を導入している。
型システム、イミュタービリティやその他の構文に関してはHaskellの影響を強く受けている。
メモリ管理については、従来のC++ではプログラマがメモリ安全を保障するしかなかったが、
C++14以降のスマートポインタやそれに伴うメモリオーナーシップの概念の影響を受けて、
所有権、借用(参照)、ライフタイム(3つ合わせて所有権システムなどと呼ばれる)という形で構文にそれらを組み込むことで、
コンパイラがメモリ安全を保障することができるようにした。
ただし、あくまでC++の後継なので比較的簡単にFFI(Cを呼ぶ)ことができるようにという点も意識して作られている。
だから、unsafeを使えば生ポインタを直に使えるように設計されている。
Haskellとの違いはGCを使っていないこととミュータブルも扱えるようにしていること等で、
結局、それらはC++並みの実行速度を実現するため。
他にも細かい違いは多々あるが、大まかにはこんなところかな。
Rustが目指しているのは基本的にはC++の後継。
C++との一番の違いは、Cとの互換性を捨てることで、より厳格(安全)に書けるようにすること。
厳格であることを実現するために、型システムとメモリ管理などについて比較的新しい概念を導入している。
型システム、イミュタービリティやその他の構文に関してはHaskellの影響を強く受けている。
メモリ管理については、従来のC++ではプログラマがメモリ安全を保障するしかなかったが、
C++14以降のスマートポインタやそれに伴うメモリオーナーシップの概念の影響を受けて、
所有権、借用(参照)、ライフタイム(3つ合わせて所有権システムなどと呼ばれる)という形で構文にそれらを組み込むことで、
コンパイラがメモリ安全を保障することができるようにした。
ただし、あくまでC++の後継なので比較的簡単にFFI(Cを呼ぶ)ことができるようにという点も意識して作られている。
だから、unsafeを使えば生ポインタを直に使えるように設計されている。
Haskellとの違いはGCを使っていないこととミュータブルも扱えるようにしていること等で、
結局、それらはC++並みの実行速度を実現するため。
他にも細かい違いは多々あるが、大まかにはこんなところかな。
767デフォルトの名無しさん
2017/11/24(金) 23:50:42.23ID:IDv/pXr5 >>765
コンテナ系(hashmap等)を標準でサポートしてくれ
コンテナ系(hashmap等)を標準でサポートしてくれ
768デフォルトの名無しさん
2017/11/25(土) 11:23:50.59ID:IlEVZyoE hashmapを仲間にしたら自動的にジェネリクスとGCが仲間になるパターン
だから仲間にしない
だから仲間にしない
769デフォルトの名無しさん
2017/11/25(土) 11:32:23.12ID:0CVryiWG <generic.h>という伝説の凶悪なやつがあるぞ
770デフォルトの名無しさん
2017/11/25(土) 12:28:18.18ID:8YG3Nyuz コンテナを提供するのに GC も Generics も要らんだろ
771デフォルトの名無しさん
2017/11/25(土) 12:42:05.98ID:fhJ9yNRw772デフォルトの名無しさん
2017/11/25(土) 12:52:41.30ID:IlEVZyoE773デフォルトの名無しさん
2017/11/25(土) 13:04:31.47ID:0CVryiWG qsortがあるんだからいけるいける
全部void*で
全部void*で
774デフォルトの名無しさん
2017/11/25(土) 13:31:58.11ID:IlEVZyoE qsortの闇は深い
void*もあるが、要素の比較が本当にO(1)なのかどうかの責任を呼び出し側に転嫁する
void*もあるが、要素の比較が本当にO(1)なのかどうかの責任を呼び出し側に転嫁する
775デフォルトの名無しさん
2017/11/25(土) 13:50:07.83ID:mxSpQEHX なんだその責任って
776デフォルトの名無しさん
2017/11/25(土) 14:01:56.85ID:OgtFvRib 結局、型とgeneric(もしくはマクロ)をいい感じに統合するのって
かなり難しいんだろう。
アドホックなやり方になりやすい。
かなり難しいんだろう。
アドホックなやり方になりやすい。
777デフォルトの名無しさん
2017/11/25(土) 14:38:33.35ID:jw2r+SZ3 そこでC++ですよ
778デフォルトの名無しさん
2017/11/25(土) 14:52:25.29ID:8YG3Nyuz 比較のオーダーはcのqsortに限らずなんでもそうだろ
なんだかんだ言って C++ はよく出来てるよね。
constexp なんて他の言語も見習って欲しい
なんだかんだ言って C++ はよく出来てるよね。
constexp なんて他の言語も見習って欲しい
779デフォルトの名無しさん
2017/11/25(土) 20:04:53.59ID:FJeVGVwT Fortranのparameterもその類いだっけ?
780デフォルトの名無しさん
2017/11/25(土) 20:53:43.09ID:OgtFvRib781デフォルトの名無しさん
2017/11/26(日) 02:10:49.51ID:346jd0X/ スレタイにjava君も入れてあげて〜
使用人口の多い言語ですお
使用人口の多い言語ですお
782デフォルトの名無しさん
2017/11/26(日) 03:30:42.95ID:2SXqucAT783デフォルトの名無しさん
2017/11/26(日) 09:00:59.28ID:d0SJzNDY 新興言語って少なくない割合でただの企業が持ち上げて広告収入に使ってるだけの詐欺なんだよな
M$のTypescript然り、顔本のD然り、mozillaのRust然り、TypesafeのScala然り
やっぱ実績の積み上がってる言語でないと信用ならん
M$のTypescript然り、顔本のD然り、mozillaのRust然り、TypesafeのScala然り
やっぱ実績の積み上がってる言語でないと信用ならん
784デフォルトの名無しさん
2017/11/26(日) 10:19:24.37ID:9HhrSf+y >>783
両端十分な実績があるのですがそれは
両端十分な実績があるのですがそれは
785デフォルトの名無しさん
2017/11/26(日) 11:09:29.55ID:2p4Fc6MR786デフォルトの名無しさん
2017/11/26(日) 11:48:04.80ID:CTy0yG7t TypeScriptはともかくScalaは負債ばかりを残して消えた逆実績じゃね
唯一褒められる点としては関数型を流行させたこととKotlinを生み出したことかな
唯一褒められる点としては関数型を流行させたこととKotlinを生み出したことかな
787デフォルトの名無しさん
2017/11/26(日) 12:05:21.53ID:5kKfR77D C++がモダン言語の基本なので小学校で教えるべき。
788デフォルトの名無しさん
2017/11/26(日) 12:16:59.36ID:WC95tXr9 すまん、C++を全て理解してしている奴おる?
789デフォルトの名無しさん
2017/11/26(日) 12:27:10.16ID:5kKfR77D 基本であるC++の理解なくして言語を語ることはできない。
790デフォルトの名無しさん
2017/11/26(日) 12:38:08.71ID:jDig0YaY >>783
林檎教団のSwiftも仲間に入れてあげて
林檎教団のSwiftも仲間に入れてあげて
791デフォルトの名無しさん
2017/11/26(日) 12:44:57.21ID:d0SJzNDY792デフォルトの名無しさん
2017/11/26(日) 12:50:49.50ID:d0SJzNDY Scalaは分かりやすい詐欺の典型だな
あれのせいでログ基盤まわりのOSSは焼け野原になってる
CoffeeScriptもちょっと古いが同類事例
GoやらTypescriptやらRustもそのうちそうなる
Dはバズるまえに自滅したのが幸い
あれのせいでログ基盤まわりのOSSは焼け野原になってる
CoffeeScriptもちょっと古いが同類事例
GoやらTypescriptやらRustもそのうちそうなる
Dはバズるまえに自滅したのが幸い
793デフォルトの名無しさん
2017/11/26(日) 12:59:29.11ID:2dqUl+IZ 変な言語を使うとSCALAの様に開発が止まる危険性があるから
企業はリスクを回避するために独自の言語をつかって思い道理の仕様にできるように
するのだろうな。
企業はリスクを回避するために独自の言語をつかって思い道理の仕様にできるように
するのだろうな。
794デフォルトの名無しさん
2017/11/26(日) 13:04:59.50ID:pQh5Iwo2 >>792
TypeScriptは大丈夫でしょ
Goは危なそう。Dartの前例があるし
RustはGCが邪魔でパフォーマンスが必要な一部の分野でしか使われないだろうからそんなに流行らないだろうし多分問題ない
TypeScriptは大丈夫でしょ
Goは危なそう。Dartの前例があるし
RustはGCが邪魔でパフォーマンスが必要な一部の分野でしか使われないだろうからそんなに流行らないだろうし多分問題ない
795デフォルトの名無しさん
2017/11/26(日) 13:32:35.13ID:2p4Fc6MR >>794
Rust は Web assembly で化けることに儚い期待を抱いている。
でも、正直 Web assembly はそのうち GC に対応するって言ってるし、
GC に対応したらGo, C#とかが Web assembly に対応するって言ってるから
そっちに取られるんだろうなぁとも思ってる。
そもそも Web assembly が普及すること自体いつになることやら。
Rust は Web assembly で化けることに儚い期待を抱いている。
でも、正直 Web assembly はそのうち GC に対応するって言ってるし、
GC に対応したらGo, C#とかが Web assembly に対応するって言ってるから
そっちに取られるんだろうなぁとも思ってる。
そもそも Web assembly が普及すること自体いつになることやら。
796デフォルトの名無しさん
2017/11/26(日) 13:36:26.39ID:prdTxomD しかし CoffeeScript って何がだめだったん?
es2015, typescript がそれなりにうまくいってるのを見るとよくわからんところなんだが。
es2015, typescript がそれなりにうまくいってるのを見るとよくわからんところなんだが。
797デフォルトの名無しさん
2017/11/26(日) 14:20:08.38ID:pQh5Iwo2798デフォルトの名無しさん
2017/11/26(日) 14:30:45.34ID:qaxo00/7 >>793
Scalaって開発停止したの?
Scalaって開発停止したの?
799デフォルトの名無しさん
2017/11/26(日) 14:53:16.27ID:d0SJzNDY >>796
提灯記事にかける金と、企業間根回しの差
M$は金をかけまくって提灯記事を書かせまくり、Googleに根回ししてAngularをTypescriptで書き直させた
要するに大企業が本気で詐欺をやっただけ
提灯記事にかける金と、企業間根回しの差
M$は金をかけまくって提灯記事を書かせまくり、Googleに根回ししてAngularをTypescriptで書き直させた
要するに大企業が本気で詐欺をやっただけ
800デフォルトの名無しさん
2017/11/26(日) 14:55:47.77ID:pQh5Iwo2 >>799
こいついつものモジラアンチ君やん
こいついつものモジラアンチ君やん
801デフォルトの名無しさん
2017/11/26(日) 15:49:18.98ID:G/Azh+n8 sで始まる言語のうんこ率は異常だな
802デフォルトの名無しさん
2017/11/26(日) 15:52:03.66ID:yaxsKkRl 言語そのものはともかくとして、狂信的な信者が付いてる印象。
803デフォルトの名無しさん
2017/11/26(日) 15:52:09.22ID:WC95tXr9 S言語
804デフォルトの名無しさん
2017/11/26(日) 16:50:11.59ID:pQh5Iwo2 Pから始まる言語の間違えだろ
805デフォルトの名無しさん
2017/11/26(日) 17:15:50.59ID:F+UxV2LO >>800
別人だが確かに言い回し似てたな……アレと同類はさすがに勘弁
Sで始まる言語っていうと、
Swift、Scala、Smalltalk、SMLがこのスレでよく見るやつだが
確かに信者がうるさい言語だな
別人だが確かに言い回し似てたな……アレと同類はさすがに勘弁
Sで始まる言語っていうと、
Swift、Scala、Smalltalk、SMLがこのスレでよく見るやつだが
確かに信者がうるさい言語だな
806デフォルトの名無しさん
2017/11/26(日) 17:37:24.93ID:WC95tXr9 Swift信者とかおったっけ?
807デフォルトの名無しさん
2017/11/26(日) 17:42:43.44ID:XFPVp9gV >>804
おっさんなんでpascalとprologしか思い浮かばない
おっさんなんでpascalとprologしか思い浮かばない
808デフォルトの名無しさん
2017/11/26(日) 17:48:25.70ID:pQh5Iwo2 >>807
Python/Perl/PHP
Python/Perl/PHP
809デフォルトの名無しさん
2017/11/26(日) 17:51:22.14ID:WC95tXr9 なんでやPythonはええ言語やろ
810デフォルトの名無しさん
2017/11/26(日) 18:40:28.50ID:Keof52t0 Smalltalkは儲のロートルっぷりが笑えるがそれはさておき
アンチの低脳っぷり(「うんこ」連発)と粘着が常軌を逸してて笑えない
いずれにせよ迷惑だからこっちくんな
アンチの低脳っぷり(「うんこ」連発)と粘着が常軌を逸してて笑えない
いずれにせよ迷惑だからこっちくんな
811デフォルトの名無しさん
2017/11/26(日) 20:27:35.67ID:692DDN1+ Pythonはたまたま流行ったお陰で便利なライブラリが沢山あるというだけで、言語仕様だけ見ると別に良い言語ではないよね
812あ
2017/11/26(日) 20:44:39.06ID:9F+mQkF+ >>811
シンプルで良くない?
他の言語だと空ブロック書くところにpassって書かないといかんところなんか滅茶苦茶良い割り切りだと思うけど。
変な構文で逃げるんじゃなくて、基本構文の上でNOP書かせるとか潔いと思うけどな。
メソッド第一引数を隠さない、とか。
シンプルで良くない?
他の言語だと空ブロック書くところにpassって書かないといかんところなんか滅茶苦茶良い割り切りだと思うけど。
変な構文で逃げるんじゃなくて、基本構文の上でNOP書かせるとか潔いと思うけどな。
メソッド第一引数を隠さない、とか。
813デフォルトの名無しさん
2017/11/26(日) 20:50:16.59ID:pQh5Iwo2 >>812
動的の時点で
動的の時点で
814デフォルトの名無しさん
2017/11/26(日) 20:50:40.88ID:R1JePoM2 Smalltalkは信者のキモさだけは圧勝してるけど、言語自体の出来はTcl/Tkにも劣る
Python は private なメンバにもアクセスし放題だからね、言語としてどうかしていると思うときもある
その場しのぎのお助け機能満載なところはあるね
その場しのぎのお助け機能満載なところはあるね
816あ
2017/11/26(日) 20:59:00.64ID:9F+mQkF+ >>813
型がなければ解決できない問題、ってのはあんまり無いからな。
型があるから解決できる、という触れ込みをあまり本気にしてもどうかと思う。
単に管理できない人が居るというだけ。
単なるlint目的なら、静的解析でもすりゃ良いと思うよ。
型がある言語には大体、型を無視できる構文があるようなもんで、ダックタイプにはダックタイプの利点がある。
型がなければ解決できない問題、ってのはあんまり無いからな。
型があるから解決できる、という触れ込みをあまり本気にしてもどうかと思う。
単に管理できない人が居るというだけ。
単なるlint目的なら、静的解析でもすりゃ良いと思うよ。
型がある言語には大体、型を無視できる構文があるようなもんで、ダックタイプにはダックタイプの利点がある。
817あ
2017/11/26(日) 21:06:26.91ID:9F+mQkF+ >>815
作法とルールの違いだろうな。
やっては行けないっぽい事をマナーとして守れるか、
やっては行けないっぽい事を一律排斥するか。
後者で仕組み上排斥した上で、それでもどうしても必要だと構文を作ると、そこから「コンパイルは通るけど動かすと動かない」みたいに破綻する。結局動的より酷い。
void*に一度キャストするとか、リフレクションするとか、スタック書き換えるとか。極端だけど。
だから俺は紳士協定止まりで良いと思うけど。
「出来ないことはチェックされるんだから、チェックされないならやって良いんでしょ」みたいな奴が増えるのは、本来のメリットを壊してるようなもんだと思うけどね。
作法とルールの違いだろうな。
やっては行けないっぽい事をマナーとして守れるか、
やっては行けないっぽい事を一律排斥するか。
後者で仕組み上排斥した上で、それでもどうしても必要だと構文を作ると、そこから「コンパイルは通るけど動かすと動かない」みたいに破綻する。結局動的より酷い。
void*に一度キャストするとか、リフレクションするとか、スタック書き換えるとか。極端だけど。
だから俺は紳士協定止まりで良いと思うけど。
「出来ないことはチェックされるんだから、チェックされないならやって良いんでしょ」みたいな奴が増えるのは、本来のメリットを壊してるようなもんだと思うけどね。
818デフォルトの名無しさん
2017/11/26(日) 21:15:49.49ID:tn24fxAD 根回しといえば
GCCにGoが速攻入ったのってどう考えても利権だと思うんだけど
GNUはGoogleに乗っ取られてるんだろうな
GCCにGoが速攻入ったのってどう考えても利権だと思うんだけど
GNUはGoogleに乗っ取られてるんだろうな
819あ
2017/11/26(日) 21:25:46.01ID:9F+mQkF+ >>818
もともとgccgoがあったからなぁ。
利権も何も、普通にgccのコミッタだった人がGoogleの人で、その人が「メインラインに取り込むわ」って言い出したのが7年前だぞ。
gcj外してgo入れようぜって言い出したのはたしかRed Hatの人。
もともとgccgoがあったからなぁ。
利権も何も、普通にgccのコミッタだった人がGoogleの人で、その人が「メインラインに取り込むわ」って言い出したのが7年前だぞ。
gcj外してgo入れようぜって言い出したのはたしかRed Hatの人。
820デフォルトの名無しさん
2017/11/26(日) 21:38:43.34ID:hdv2mB5M >>814
その程度の嫌いでアンチ続ける執念がキモイわ
その程度の嫌いでアンチ続ける執念がキモイわ
821デフォルトの名無しさん
2017/11/26(日) 21:39:41.93ID:ejHa0S8T Go人気なのか
オブジェクト指向勢から嫌われてたのに
なんかのフレームワークとか流行りのOAuth2とかが実装し易いとかあるん?
オブジェクト指向勢から嫌われてたのに
なんかのフレームワークとか流行りのOAuth2とかが実装し易いとかあるん?
822デフォルトの名無しさん
2017/11/26(日) 21:44:08.66ID:jBgPnQyL 気持ちよくおしゃべりしているあは依存型も知らん様子
824デフォルトの名無しさん
2017/11/26(日) 22:09:01.03ID:692DDN1+ Idrisの話でもする?
825デフォルトの名無しさん
2017/11/26(日) 22:26:19.56ID:9HhrSf+y TSやFlowtypeは明らかに救済だろ
地獄のごった煮なフロントエンドに一筋の光をもたらした
実案件でTS使ってるが、素のJSなら確実に破綻していた
地獄のごった煮なフロントエンドに一筋の光をもたらした
実案件でTS使ってるが、素のJSなら確実に破綻していた
826デフォルトの名無しさん
2017/11/26(日) 22:30:22.25ID:2SXqucAT >>824
おう、Idrisの話をしよう
おう、Idrisの話をしよう
827あ
2017/11/26(日) 23:23:32.48ID:9F+mQkF+828デフォルトの名無しさん
2017/11/26(日) 23:24:09.06ID:WC95tXr9 >>811
確かに
確かに
829あ
2017/11/26(日) 23:33:46.45ID:9F+mQkF+ 積だけじゃなくて、和もそうだな。
どーせTypeScriptのUnionTypesあたりの、直和型と見せかけて、undefinedなんかも入りうる気持ち悪いものをありがたがってるんだろうけど。
それこそ意識高いHaskeller様で、何かとても良い空論でも教えてくれるのかもしれんけどな。
どーせTypeScriptのUnionTypesあたりの、直和型と見せかけて、undefinedなんかも入りうる気持ち悪いものをありがたがってるんだろうけど。
それこそ意識高いHaskeller様で、何かとても良い空論でも教えてくれるのかもしれんけどな。
830デフォルトの名無しさん
2017/11/26(日) 23:36:35.81ID:jBgPnQyL >>822 単に「型が無ければ解決できない問題は無いからなあ」という馬鹿発言を嘲笑してるだけだぞ
酒が抜けるまでレスすんな。酒飲んでないでそんなレスしかできないならトリップ付けてろ。NGに入れといてやるから
酒が抜けるまでレスすんな。酒飲んでないでそんなレスしかできないならトリップ付けてろ。NGに入れといてやるから
831デフォルトの名無しさん
2017/11/26(日) 23:40:05.59ID:i1z8rFU6 >>821
標準ライブラリが充実してる。
httpサーバが簡単に作れる。各種プロトコルも標準ライブラリに入ってる。
例えばsshもopensshに頼らずに自前で実装してる。
結果として外部依存が少ないバイナリが作れる。
https://mattn.kaoriya.net/software/lang/go/20170111165324.htm
ってところが魅力。
あとオブジェクト指向的には継承の簡易さに対してデメリットがでかいことがわかってきたからgoの方向性はそんなに変でもないと思う。
後はコンパイルが早い。と言うかコンパイルの速さのために
言語仕様を妥協してるところがある。(継承がないのもコンパイルの速さを優先してる)
標準ライブラリが充実してる。
httpサーバが簡単に作れる。各種プロトコルも標準ライブラリに入ってる。
例えばsshもopensshに頼らずに自前で実装してる。
結果として外部依存が少ないバイナリが作れる。
https://mattn.kaoriya.net/software/lang/go/20170111165324.htm
ってところが魅力。
あとオブジェクト指向的には継承の簡易さに対してデメリットがでかいことがわかってきたからgoの方向性はそんなに変でもないと思う。
後はコンパイルが早い。と言うかコンパイルの速さのために
言語仕様を妥協してるところがある。(継承がないのもコンパイルの速さを優先してる)
832デフォルトの名無しさん
2017/11/27(月) 00:14:50.55ID:kgsU8O53 継承がない場合、GUIライブラリはどういう形に落ち着くんだろう?
833デフォルトの名無しさん
2017/11/27(月) 00:19:16.06ID:VTdrxhpK >>832
インターフェイスじゃね
インターフェイスじゃね
834デフォルトの名無しさん
2017/11/27(月) 01:24:38.90ID:RuMmCyGV E言語作ろうぜ
835デフォルトの名無しさん
2017/11/27(月) 01:43:28.34ID:HZrBFFjJ836デフォルトの名無しさん
2017/11/27(月) 04:02:10.71ID:UW/5w9w8 >>835
配列の静的な境界チェック
配列の静的な境界チェック
837デフォルトの名無しさん
2017/11/27(月) 07:45:57.79ID:2gW8tPht Rustの静的型チェックは確かに発見困難なバグを見つけてくれる感ある
他のしょーもない言語の型チェックは
ふつうにテスト書けば見つかるようなエラーしか見つからんので
正直、動的型付けとくらべて優位性が無いわ
他のしょーもない言語の型チェックは
ふつうにテスト書けば見つかるようなエラーしか見つからんので
正直、動的型付けとくらべて優位性が無いわ
838デフォルトの名無しさん
2017/11/27(月) 08:00:20.85ID:lA4+sBYi (一般的な)静的型が本領発揮するのは運用開始後に手を入れるときだろ
依存関係が完璧に把握できるからな
依存関係が完璧に把握できるからな
839デフォルトの名無しさん
2017/11/27(月) 08:06:57.76ID:BLxyIU7+ GGG言語は熱い
840デフォルトの名無しさん
2017/11/27(月) 08:17:35.26ID:Q9OySQec MLまでいかなくてもPascalでも使ったことあれば>>837のような幼い感想は出てこないと思うので
なんだか微笑ましい
なんだか微笑ましい
841デフォルトの名無しさん
2017/11/27(月) 08:59:52.64ID:4bHQN/8n 静的型とちゃんとしたIDEならカーソル箇所のメンバを使ってる元とメンバが依存してる先が自動的に一瞬で全部表示される
grep(笑)
作りっぱなしで逃げられる開発なら型なんかいらないと思うよ
grep(笑)
作りっぱなしで逃げられる開発なら型なんかいらないと思うよ
842デフォルトの名無しさん
2017/11/27(月) 09:00:19.33ID:oelMhkLH Rustでコード書けない低脳勢の嫉妬が心地よいわ
843デフォルトの名無しさん
2017/11/27(月) 09:53:28.95ID:AnhEBxtH >>835 「遅くて実用に耐えないが明快で仕様を満たしていることが分かる関数」と
「速いけど複雑で仕様を満たしているか分からない関数」が数学的に等価であることを示せる
あるいは求められている仕様を型として表現することで、その型を返す関数は仕様通りであることを示せる
証明駆動開発は依存型じゃないとできない
「速いけど複雑で仕様を満たしているか分からない関数」が数学的に等価であることを示せる
あるいは求められている仕様を型として表現することで、その型を返す関数は仕様通りであることを示せる
証明駆動開発は依存型じゃないとできない
844デフォルトの名無しさん
2017/11/27(月) 10:24:46.55ID:yqPvbQsf >>842
RustをHaskellで置き換えたら数スレ前によく見たやつになる
RustをHaskellで置き換えたら数スレ前によく見たやつになる
845デフォルトの名無しさん
2017/11/27(月) 10:27:49.38ID:yqPvbQsf やっぱRustもHaskellも、強烈な選民思想を産み出すという点で、
この世に存在したらいけない言語だなほんと
この世に存在したらいけない言語だなほんと
846デフォルトの名無しさん
2017/11/27(月) 10:33:41.71ID:Q9OySQec 他を使ったこともないやつがいきなり先進的なのを使うと
全てがそのひとつの手柄みたいに思えてしまうんだよな
C#のときもD言語のときもよく見た
全てがそのひとつの手柄みたいに思えてしまうんだよな
C#のときもD言語のときもよく見た
847デフォルトの名無しさん
2017/11/27(月) 10:46:19.87ID:kgsU8O53 そういえばhaskellの主張してた奴消えたな
848デフォルトの名無しさん
2017/11/27(月) 11:17:42.08ID:qLynQL2e 話は聞かせてもらったぞ
静的型と動的型のうち選民思想が強い方が滅亡する
静的型と動的型のうち選民思想が強い方が滅亡する
849あ
2017/11/27(月) 11:30:52.56ID:gxJYhWYL851デフォルトの名無しさん
2017/11/27(月) 11:58:44.95ID:Q9OySQec 配列の境界チェックぐらいなら気の利いた処理系ならなんとでもなるが、
そういう類のをユーザー定義できると想像するといい
そういう類のをユーザー定義できると想像するといい
852デフォルトの名無しさん
2017/11/27(月) 13:08:54.03ID:nLFkP6Tp 静的型づけと動的型づけのほかにも強い型づけと弱い型づけがあるぞ。
両方を合わせると4パターンあることを考えたほうがいいぞ。
両方を合わせると4パターンあることを考えたほうがいいぞ。
853デフォルトの名無しさん
2017/11/27(月) 14:31:06.76ID:VTdrxhpK >>852
弱い動的型付けは存在しないから3パターンだぞ
弱い動的型付けは存在しないから3パターンだぞ
854デフォルトの名無しさん
2017/11/27(月) 14:33:43.01ID:Q9OySQec855デフォルトの名無しさん
2017/11/27(月) 14:52:39.00ID:VTdrxhpK >>854
弱い型付けってのはキャストはエラーはかずに出来るけどメモリぶっ壊して全く違う所でエラー起きたりするCとかC++みたいな奴の事だぞ
弱い型付けってのはキャストはエラーはかずに出来るけどメモリぶっ壊して全く違う所でエラー起きたりするCとかC++みたいな奴の事だぞ
856デフォルトの名無しさん
2017/11/27(月) 15:04:23.55ID:Q9OySQec857デフォルトの名無しさん
2017/11/27(月) 15:06:30.80ID:VTdrxhpK858デフォルトの名無しさん
2017/11/27(月) 15:12:29.84ID:Q9OySQec 一般的にはnominalで暗黙の型変換を許さないやつがstring typeだと思うぜ
859デフォルトの名無しさん
2017/11/27(月) 15:13:04.01ID:Q9OySQec /string/strong/ (苦笑
860デフォルトの名無しさん
2017/11/27(月) 15:19:26.38ID:RuMmCyGV 情弱言語
情強言語
情強言語
861あ
2017/11/27(月) 17:59:38.96ID:gxJYhWYL 選民思想ってどういう意味なんだろう?
862デフォルトの名無しさん
2017/11/27(月) 20:05:56.25ID:ioN0hnnU863あ
2017/11/27(月) 20:15:59.53ID:YD13FB3m >>862
選民思想自体の意味はわかるよ。
言語に対して選民思想がある、ってのがわからん。
知れば選民なの?って感じ。
一見さんお断り、紹介制ね、セミナー・講習・試験受けてねー(笑)
でもあるまいし、なんか知ろうとする努力を放棄して便利な言葉でごまかしてるように見えるって事。
選民思想自体の意味はわかるよ。
言語に対して選民思想がある、ってのがわからん。
知れば選民なの?って感じ。
一見さんお断り、紹介制ね、セミナー・講習・試験受けてねー(笑)
でもあるまいし、なんか知ろうとする努力を放棄して便利な言葉でごまかしてるように見えるって事。
864デフォルトの名無しさん
2017/11/27(月) 20:20:31.71ID:AFwfxdAR くっさ
865デフォルトの名無しさん
2017/11/27(月) 20:27:37.84ID:Q9OySQec >>845のことなら強烈な自己肯定感と言い換えてもいいんじゃね
たかが2chの言葉遣いに厳密に意味を当てはめてもしょうがない
たかが2chの言葉遣いに厳密に意味を当てはめてもしょうがない
866あ
2017/11/27(月) 20:40:26.85ID:YD13FB3m なるほど。自己肯定感を他者への否定で裏打ちしてるような人たち、か。
いるな。Ruby使いが全体的にそんな印象。
いるな。Ruby使いが全体的にそんな印象。
867デフォルトの名無しさん
2017/11/27(月) 21:24:06.34ID:HF1f2kGW おまえらみんなそんな感じじゃんw
868デフォルトの名無しさん
2017/11/27(月) 21:30:42.30ID:zgUQvI9i 自分が使ってる言語以外は覚えるの面倒だから滅べっていう奴だな。
わかりやすいし、正直だとは思うが恥ずかしい言い分だということも理解しておいた方がいい。
わかりやすいし、正直だとは思うが恥ずかしい言い分だということも理解しておいた方がいい。
869デフォルトの名無しさん
2017/11/27(月) 21:32:45.76ID:zgUQvI9i870デフォルトの名無しさん
2017/11/27(月) 22:33:25.18ID:pxmyvyPz そもそもgccのgoってメンテされてないのでは?1.2くらいで止まってなかったっけ?
871デフォルトの名無しさん
2017/11/27(月) 22:35:11.55ID:pxmyvyPz872デフォルトの名無しさん
2017/11/27(月) 22:42:59.78ID:zgUQvI9i >>871
まあ個人的な見解になるんだが
そういう奴のいうところの「覚える」ってのは機能だったりシンタックスについて
すみずみまで覚えるってことだったりするわけよ。
なんか周りにも自分にもハードル上げちゃって原理主義に走ってしまうって感じ。
言語を覚えるっつっても人によってとらえ方はだいぶ差はあるかもね。
まあ個人的な見解になるんだが
そういう奴のいうところの「覚える」ってのは機能だったりシンタックスについて
すみずみまで覚えるってことだったりするわけよ。
なんか周りにも自分にもハードル上げちゃって原理主義に走ってしまうって感じ。
言語を覚えるっつっても人によってとらえ方はだいぶ差はあるかもね。
873デフォルトの名無しさん
2017/11/27(月) 23:03:54.83ID:BLxyIU7+ 頭にウンポコピーのプェチピがつまった動的池沼型なしウンコマンがまた喚いてるようだね
うるさいゴミ虫だな!つぶれちゃえ、プチッw
うるさいゴミ虫だな!つぶれちゃえ、プチッw
875デフォルトの名無しさん
2017/11/27(月) 23:36:34.04ID:kgsU8O53 C++を「覚えて」いるやつなんて数えられる程度だろう
876デフォルトの名無しさん
2017/11/28(火) 00:19:59.65ID:j/VePoOF877デフォルトの名無しさん
2017/11/28(火) 01:13:03.69ID:oL6iYiK7 共有してるが細かい違いがストレスになったりしない?特に「ぼくのかんがえたさいきょうのOO」は辛い
878デフォルトの名無しさん
2017/11/28(火) 01:57:11.51ID:5aM4mai7 >>877
おいPHPの悪口はやめろ
おいPHPの悪口はやめろ
879デフォルトの名無しさん
2017/11/28(火) 09:52:26.16ID:LMrici0y 例のオライリーのrust本やっと出たようだな
880デフォルトの名無しさん
2017/11/28(火) 10:47:18.80ID:oqWjNxDa 型システムの概念はC++とHaskellですら共有してる
一方、オブジェクト指向の概念は共有してないのでストレスになる
一方、オブジェクト指向の概念は共有してないのでストレスになる
881デフォルトの名無しさん
2017/11/28(火) 21:52:49.31ID:+Ls9Kpqr 昔はこの手のスレだと、補完が効くのは静的型だけだから動的型はダメだ!的な
無知丸出しのカキコミしてたJavaドカタを良く見たけど、
最近は流石に学習したのか、そういうの減ったね
無知丸出しのカキコミしてたJavaドカタを良く見たけど、
最近は流石に学習したのか、そういうの減ったね
882デフォルトの名無しさん
2017/11/28(火) 22:32:58.71ID:XwHAt9fz とはいえpythonの補完はpycharmでさえたまにしょっぱい結果になるがな
883デフォルトの名無しさん
2017/11/28(火) 23:57:11.98ID:S3oF2yyz つうか補完って個人的にはうざいからいらない。
補完ってそんな有難いかねぇ。
補完ってそんな有難いかねぇ。
884デフォルトの名無しさん
2017/11/29(水) 00:01:06.36ID:Ro7m+vSG >>883
ガイジかな?
ガイジかな?
885デフォルトの名無しさん
2017/11/29(水) 00:28:23.95ID:LyP2QHxX どのみちJavaScriptはクソなのは事実
886デフォルトの名無しさん
2017/11/29(水) 01:08:31.46ID:ZTL4r6Le jsが糞だなんて世界の共通認識やろ
887デフォルトの名無しさん
2017/11/29(水) 01:32:48.31ID:/BpqyHHR 何でやjsは最高やろ
javascriptはうんこだけど
javascriptはうんこだけど
888デフォルトの名無しさん
2017/11/29(水) 01:34:30.49ID:wq9Dycsx jsはブラウザ標準だから広まってるけど実際かなりの変態言語だよね
大分マシになってきてるけど
大分マシになってきてるけど
889あ
2017/11/29(水) 08:18:33.62ID:fb/gmNyy phpは、protectedとか何だかんだ大先生が要るって言うものはつけたけど、正直必要性がわからんね、みたいな事を作者が言ってるぐらいだからな。
JSはあの変態具合がじつに良い。
JSはあの変態具合がじつに良い。
890デフォルトの名無しさん
2017/11/29(水) 10:31:45.07ID:/xS4M0rU891デフォルトの名無しさん
2017/11/29(水) 10:35:30.46ID:/xS4M0rU892デフォルトの名無しさん
2017/11/29(水) 11:19:53.91ID:ags1OwXJ ハンバーガーとコーラとWindowsが多数派になったおかげで、少数派の自己肯定感が強い
893あ
2017/11/29(水) 12:52:13.36ID:fb/gmNyy >>891
作者は、ポリシーがないのがポリシーみたいな人だしな。
たまに引数の順序とか違うけど、仕方ねえじゃん。積み重ねってあるんだから。それに便利さって尺度あるじゃん?とか、
自然言語だって言語学者が整理して作ったら英語なんかと全然違う整然としたもの出来るけど、それってホントに実用になるかはわからんよね。
って開き直ってるからな。
goto実装したときのやり取りとか滅茶苦茶面白かった。
譲れない部分以外は適当に決めろよ、俺使わねえし、みたいな方向性もアリだとは思う。
作者は、ポリシーがないのがポリシーみたいな人だしな。
たまに引数の順序とか違うけど、仕方ねえじゃん。積み重ねってあるんだから。それに便利さって尺度あるじゃん?とか、
自然言語だって言語学者が整理して作ったら英語なんかと全然違う整然としたもの出来るけど、それってホントに実用になるかはわからんよね。
って開き直ってるからな。
goto実装したときのやり取りとか滅茶苦茶面白かった。
譲れない部分以外は適当に決めろよ、俺使わねえし、みたいな方向性もアリだとは思う。
894あ
2017/11/29(水) 12:55:46.19ID:fb/gmNyy >>890
補完が無いからダメ、を否定してるんでは?
「補完なんか無くても書ける」レベルのやつが書けばいいんだよ、っていう主張かと。
そんで、俺はそれでいいと思う。
補完が無くても大体間違いようがない、っていう使い方はあるもんだし。システムハンガリアンじゃない、本当の意味の方のハンガリアンとか。
補完が無いからダメ、を否定してるんでは?
「補完なんか無くても書ける」レベルのやつが書けばいいんだよ、っていう主張かと。
そんで、俺はそれでいいと思う。
補完が無くても大体間違いようがない、っていう使い方はあるもんだし。システムハンガリアンじゃない、本当の意味の方のハンガリアンとか。
895デフォルトの名無しさん
2017/11/29(水) 13:46:28.77ID:N4X6syzD897デフォルトの名無しさん
2017/11/29(水) 17:20:07.57ID:0SzzSOSo >>896
是非も糞もお前以外正しく解釈してるんだからかき混ぜんな
是非も糞もお前以外正しく解釈してるんだからかき混ぜんな
898デフォルトの名無しさん
2017/11/29(水) 17:33:20.21ID:jE6TKqng 最近の言語なんて全部ポリシーないじゃん。
他の言語で流行ってる機能だからうちも入れよう
みたいな話ばっか。
他の言語で流行ってる機能だからうちも入れよう
みたいな話ばっか。
900デフォルトの名無しさん
2017/11/29(水) 18:51:31.66ID:/xS4M0rU >>898
Go言語はポリシーあるけどね。と言うかGoogle社内で使うための言語として
進化してきたって感じ?
結局C++コードベースで作ってきたシステムがコンパイルするたびに40分とかかかるようになってきたから、Go言語でそこを改善した。
具体的には継承を使わないようにしたり
パッケージ間の依存関係を極力抑えるために敢えてDRY原則無視したり。
後プリプロセッサを削除してパッケージシステムをしっかりしたもの(未使用なパッケージをimportしたらコンパイルエラー)
にしたり。
Go言語はポリシーあるけどね。と言うかGoogle社内で使うための言語として
進化してきたって感じ?
結局C++コードベースで作ってきたシステムがコンパイルするたびに40分とかかかるようになってきたから、Go言語でそこを改善した。
具体的には継承を使わないようにしたり
パッケージ間の依存関係を極力抑えるために敢えてDRY原則無視したり。
後プリプロセッサを削除してパッケージシステムをしっかりしたもの(未使用なパッケージをimportしたらコンパイルエラー)
にしたり。
901デフォルトの名無しさん
2017/11/29(水) 22:33:45.37ID:0SzzSOSo Goとか見るに、googleって意外と線形代数使わないのかなあ?
902デフォルトの名無しさん
2017/11/29(水) 22:55:35.66ID:xEIA2DIf tensorflowを作ってるんだぞ?使ってるに決まってるだろw
903デフォルトの名無しさん
2017/11/29(水) 23:01:31.92ID:v9jZdRV7 そういうのはpython使ってんじゃないの?
904デフォルトの名無しさん
2017/11/29(水) 23:38:03.94ID:0SzzSOSo goは線形代数使わない用途向けか?
TensorFlow for goで全部やってるってわけでもなかろうし>>903の言う通りだろうか?
TensorFlow for goで全部やってるってわけでもなかろうし>>903の言う通りだろうか?
905あ
2017/11/30(木) 00:01:53.15ID:5c50KJX1 Grumpyも単純に書くと遅いしな。
速度を出したいならcとインラインアセンブラで書くだろうし、大規模に走らせるならHPC系に載せやすいfortranとかベンダのCだろうし、
気楽に書きたいならpythonで良いし、
その為に何か言語を、って手段と目的が入れ替わってる気がする。
既存の道具で目的が果たせるならそれで良い分野だろ、それ。
速度を出したいならcとインラインアセンブラで書くだろうし、大規模に走らせるならHPC系に載せやすいfortranとかベンダのCだろうし、
気楽に書きたいならpythonで良いし、
その為に何か言語を、って手段と目的が入れ替わってる気がする。
既存の道具で目的が果たせるならそれで良い分野だろ、それ。
906デフォルトの名無しさん
2017/11/30(木) 00:15:23.93ID:ZeZezy1g Cとインラインアセンブラで書いた数学コードなんて今時見たことねえよ
907デフォルトの名無しさん
2017/11/30(木) 00:21:22.97ID:ZeZezy1g Cで数学コード書く奴いるけどあいつら凄いわ
俺なんかFortanの形状引き継ぎ配列使わない縛りでも発狂しそうになるのに、さらにサポート少ないCでよくやるわ
俺なんかFortanの形状引き継ぎ配列使わない縛りでも発狂しそうになるのに、さらにサポート少ないCでよくやるわ
908デフォルトの名無しさん
2017/11/30(木) 00:25:37.10ID:ZeZezy1g いや、Cとインラインアセンブラって、もしかしてあれか。よく知らんけど、CPUベンダーが実装してるような何かか
909デフォルトの名無しさん
2017/11/30(木) 00:25:51.08ID:6I05rtBK910デフォルトの名無しさん
2017/11/30(木) 00:27:36.54ID:4oSM3dIJ Numerical Recipes in C にはお世話になりました
911デフォルトの名無しさん
2017/11/30(木) 00:30:03.93ID:ZeZezy1g912デフォルトの名無しさん
2017/11/30(木) 00:48:55.61ID:RJLQhcO3 いいニンクの日は過ごせましたか
913デフォルトの名無しさん
2017/11/30(木) 02:40:07.39ID:3Jq96VTV アドベントカレンダー見てたら地味にelmユーザ増えてる?
reduxきっかけで流れてきたユーザー居るのかね
reduxきっかけで流れてきたユーザー居るのかね
914デフォルトの名無しさん
2017/11/30(木) 02:43:19.27ID:3Jq96VTV >>911
すげーかもしれんがそういう低レベルのコードを書くプログラマーっていま日本にどれだけいるんだろうな。もはや大手ゲームベンダーも他社のゲームエンジンに頼る時代だし
すげーかもしれんがそういう低レベルのコードを書くプログラマーっていま日本にどれだけいるんだろうな。もはや大手ゲームベンダーも他社のゲームエンジンに頼る時代だし
915デフォルトの名無しさん
2017/11/30(木) 04:01:07.03ID:aR0OMF8n みんなC言語が分ってるのが当たり前だと思ってたけど、
最近はC言語は知らないのが前提らしい
低レベルプログラミングという本が殆どC言語の解説書なのは驚いた。
最近はC言語は知らないのが前提らしい
低レベルプログラミングという本が殆どC言語の解説書なのは驚いた。
916デフォルトの名無しさん
2017/11/30(木) 06:58:09.24ID:DHC1c6S+ elmのアドベントカレンダー
2つめ全然埋まらなくてブチ凹む
2つめ全然埋まらなくてブチ凹む
917デフォルトの名無しさん
2017/11/30(木) 08:03:32.96ID:uu2PxLG/ Cについて知っててもらわんと色々説明しづらい部分があると思うんだが
大丈夫なんかね。
大丈夫なんかね。
918あ
2017/11/30(木) 08:34:13.82ID:pYUAd/ci919デフォルトの名無しさん
2017/11/30(木) 09:05:16.03ID:6I05rtBK920デフォルトの名無しさん
2017/11/30(木) 09:09:00.14ID:TiHNvA1L921あ
2017/11/30(木) 11:03:50.95ID:pYUAd/ci 新しい言語を作ってそしてメンテしていくほうが面倒だと知ってるからな。
トランスパイラに近い闇マクロがCにはあるので、その辺で逃げるが勝ちの部分もある。
トランスパイラに近い闇マクロがCにはあるので、その辺で逃げるが勝ちの部分もある。
922デフォルトの名無しさん
2017/11/30(木) 11:23:43.51ID:6I05rtBK923あ
2017/11/30(木) 12:55:43.51ID:pYUAd/ci >>922
思ってるようなジェネリクスとは多分違うけど型ジェネリクスで型から、呼び出される関数と引数を列挙してswitchみたいな事は出来る。それをマクロに書いたら型ごとに呼び出される関数が切り替わるように書ける。
けど使わん。ポインタなんかであっさり意図してない呼び出しになったりする事がままある。
ただの文字置換として展開出来るように書くほうが無難だと未だに思ってる。
思ってるようなジェネリクスとは多分違うけど型ジェネリクスで型から、呼び出される関数と引数を列挙してswitchみたいな事は出来る。それをマクロに書いたら型ごとに呼び出される関数が切り替わるように書ける。
けど使わん。ポインタなんかであっさり意図してない呼び出しになったりする事がままある。
ただの文字置換として展開出来るように書くほうが無難だと未だに思ってる。
924デフォルトの名無しさん
2017/11/30(木) 13:26:07.53ID:aR0OMF8n 違うジェネリックスが出来る前は
関数の名前の後ろに_intとかつけなければ同じことはマクロでも出来なかったんだよ
関数の名前の後ろに_intとかつけなければ同じことはマクロでも出来なかったんだよ
925デフォルトの名無しさん
2017/11/30(木) 13:37:31.49ID:SJCWnhNZ 標準機能だけでtgmath.hを実現できなかったから補うように追加したものではあるけど
そもそもサンプル以外でtgmath.hを実際に使っているところを見たことない
そもそもサンプル以外でtgmath.hを実際に使っているところを見たことない
926デフォルトの名無しさん
2017/11/30(木) 13:57:00.88ID:6I05rtBK >>925
>tgmath.h
そんなのあるんか、正直Cは10年以上書いてないから知らんかった。
http://www.c-lang.org/detail/tgmath_h.html
型総称マクロかー。linuxとかでもそう言うの駆使して進化した書き方してんのかな。
Cって二段構えなんだよね。マクロでプリプロセスするから結構、動的な処理もかける。obj-cも初期の頃はマクロで出来てるって聞いた。
それが現在でもiOSで健在だし、結構良く出来てる。
例えば、obj-cのコンテキストとcのコンテキストが明確に分離できてる。
正直c++よりobj-cのほうが好き
cの資産を利用できるし。なによりc++より言語仕様が理解しやすい。
>tgmath.h
そんなのあるんか、正直Cは10年以上書いてないから知らんかった。
http://www.c-lang.org/detail/tgmath_h.html
型総称マクロかー。linuxとかでもそう言うの駆使して進化した書き方してんのかな。
Cって二段構えなんだよね。マクロでプリプロセスするから結構、動的な処理もかける。obj-cも初期の頃はマクロで出来てるって聞いた。
それが現在でもiOSで健在だし、結構良く出来てる。
例えば、obj-cのコンテキストとcのコンテキストが明確に分離できてる。
正直c++よりobj-cのほうが好き
cの資産を利用できるし。なによりc++より言語仕様が理解しやすい。
927デフォルトの名無しさん
2017/11/30(木) 14:34:01.14ID:uu2PxLG/ まじめに20年以上c++追ってればこれほどコンパイラ毎に動作の異なる言語もないことはわかるよ。
残念ながらlinuxコードにあるプリプロセスマクロのがよっぽど安定してる。
残念ながらlinuxコードにあるプリプロセスマクロのがよっぽど安定してる。
928デフォルトの名無しさん
2017/11/30(木) 15:30:31.34ID:xynddTwh Cもattribute((cleanup))が標準ならなぁ
929デフォルトの名無しさん
2017/11/30(木) 15:38:19.11ID:TiHNvA1L LispならともかくCのマクロはちょっと……
930デフォルトの名無しさん
2017/11/30(木) 15:44:49.65ID:SJCWnhNZ 今更Cプリプロセッサが派手に変わることなんて無いもんな、そりゃド安定よ
しかしそろそろローカル変数名はマクロで置換されない程度の改良は欲しい
しかしそろそろローカル変数名はマクロで置換されない程度の改良は欲しい
932あ
2017/11/30(木) 16:09:24.35ID:pYUAd/ci933デフォルトの名無しさん
2017/11/30(木) 17:58:05.82ID:TiHNvA1L934デフォルトの名無しさん
2017/11/30(木) 18:04:13.66ID:6I05rtBK TypeScriptでジェネリクス使っててちょっと複雑なことをしようとすると
とたんにしんどくなるのを体験して、型がない世界が羨ましいと思ったことはある。
(本末転倒感)
メタプログラミング部分を動的言語に任せてハイブリットにするというのが
ありかもしれない。
メタプログラミングツールの例
http://moapp.hateblo.jp/entry/2017/06/30/210636
とたんにしんどくなるのを体験して、型がない世界が羨ましいと思ったことはある。
(本末転倒感)
メタプログラミング部分を動的言語に任せてハイブリットにするというのが
ありかもしれない。
メタプログラミングツールの例
http://moapp.hateblo.jp/entry/2017/06/30/210636
935あ
2017/11/30(木) 18:14:08.53ID:pYUAd/ci >>933
悪口じゃなくて、良くも悪くも無茶苦茶書けるのが良い所だって言ってるんだが。
今回はちゃんと会話できてる相手が居る以上、最低限、読もうと思ったら読めると思うが、なんか特別な説明要るの?怠惰な人には。
あとごめん、shのソースだった。見たらわかる。
http://minnie.tuhs.org/cgi-bin/utree.pl?file=V7/usr/src/cmd/sh
悪口じゃなくて、良くも悪くも無茶苦茶書けるのが良い所だって言ってるんだが。
今回はちゃんと会話できてる相手が居る以上、最低限、読もうと思ったら読めると思うが、なんか特別な説明要るの?怠惰な人には。
あとごめん、shのソースだった。見たらわかる。
http://minnie.tuhs.org/cgi-bin/utree.pl?file=V7/usr/src/cmd/sh
936デフォルトの名無しさん
2017/11/30(木) 18:17:01.73ID:7wApdvUL >>934
TSやJavaのような型消去のジェネリックはいわば単なるLintの一種
メタプログラミングに使えるようなものじゃないよ
テンプレート方式じゃないなら.NETみたいにリフレクションでジェネリック型をnewできたりするような実行時サポートがないと
ジェネリックを活かしたメタプログラミングは無理
TSやJavaのような型消去のジェネリックはいわば単なるLintの一種
メタプログラミングに使えるようなものじゃないよ
テンプレート方式じゃないなら.NETみたいにリフレクションでジェネリック型をnewできたりするような実行時サポートがないと
ジェネリックを活かしたメタプログラミングは無理
937デフォルトの名無しさん
2017/11/30(木) 19:06:08.45ID:JKXpXDoa >>792
>>793
Scala をdisってんのかよ?
大人気動画サイトのドワンゴで使われてるって知らないのか?
Scalaにおける最適なDependency Injectionの方法を考察する
?なぜドワンゴアカウントシステムの生産性は高いのか?
https://qiita.com/pab_tech/items/1c0bdbc8a61949891f1f
>>793
Scala をdisってんのかよ?
大人気動画サイトのドワンゴで使われてるって知らないのか?
Scalaにおける最適なDependency Injectionの方法を考察する
?なぜドワンゴアカウントシステムの生産性は高いのか?
https://qiita.com/pab_tech/items/1c0bdbc8a61949891f1f
938デフォルトの名無しさん
2017/11/30(木) 19:07:53.21ID:JKXpXDoa AndroidアプリでのKotlin利用が増加中、Googleもサポート
https://www.infoq.com/jp/news/2017/11/kotlin-android-adoption-support
https://www.infoq.com/jp/news/2017/11/kotlin-android-adoption-support
939デフォルトの名無しさん
2017/11/30(木) 19:09:50.98ID:3Jq96VTV940デフォルトの名無しさん
2017/11/30(木) 19:10:03.54ID:JKXpXDoa SwiftやObjective-Cから開発者が離れつつある? Xamarinのトレンドは本物か
http://www.itmedia.co.jp/pcuser/articles/1711/29/news089.html
http://www.itmedia.co.jp/pcuser/articles/1711/29/news089.html
941デフォルトの名無しさん
2017/11/30(木) 19:11:51.21ID:JKXpXDoa942デフォルトの名無しさん
2017/11/30(木) 20:07:57.37ID:TiHNvA1L943デフォルトの名無しさん
2017/11/30(木) 20:17:15.63ID:sboMNgKS ニコ動の問題にアカウントシステム関係なく無い?
何がどう破綻してるのか謎だし
こじつけで無理やり並べてるだけだろ
何がどう破綻してるのか謎だし
こじつけで無理やり並べてるだけだろ
944あ
2017/11/30(木) 20:35:16.45ID:5c50KJX1 >>942
解ってると明示する必要が無いのが、解ってるって事そのものだろ。
会話と文章が荒れてる事と相関がないと言うなら、文章の荒れと表現力に相関も無く、あるのは単純な読み手の理解力の問題では?
()に込められた意味?
もはやCのソースとしては成り立ってないような構文すら許される所。
せっかく探して貼ったんだから、どの.cでも良いから読んできたらホントに一瞬でなんの事言ってるかわかる。
解ってると明示する必要が無いのが、解ってるって事そのものだろ。
会話と文章が荒れてる事と相関がないと言うなら、文章の荒れと表現力に相関も無く、あるのは単純な読み手の理解力の問題では?
()に込められた意味?
もはやCのソースとしては成り立ってないような構文すら許される所。
せっかく探して貼ったんだから、どの.cでも良いから読んできたらホントに一瞬でなんの事言ってるかわかる。
945デフォルトの名無しさん
2017/11/30(木) 20:41:59.13ID:TiHNvA1L >>944
そのレスに触れているのが俺だけなのによくそんなこと言えるな。前に黙っている多数の意見はわからないから代弁しない方が良いみたいなこと書いてたくせに自分は良いのか?
貼ってくれたshのソース見たわ。おまえこのmac.hのマクロの使い方はいいものだって思うのか?
いやこのマクロの使い方のどの辺がいいんだ?
そのレスに触れているのが俺だけなのによくそんなこと言えるな。前に黙っている多数の意見はわからないから代弁しない方が良いみたいなこと書いてたくせに自分は良いのか?
貼ってくれたshのソース見たわ。おまえこのmac.hのマクロの使い方はいいものだって思うのか?
いやこのマクロの使い方のどの辺がいいんだ?
946デフォルトの名無しさん
2017/11/30(木) 21:05:16.87ID:aDlGM/9P ニコ生は今、Rust で書き直しているらしい
これからは、Rust, Elixir の2択じゃないの?
これからは、Rust, Elixir の2択じゃないの?
947デフォルトの名無しさん
2017/11/30(木) 21:06:38.21ID:4oSM3dIJ 襟臭
948あ
2017/11/30(木) 21:39:53.99ID:5c50KJX1949デフォルトの名無しさん
2017/11/30(木) 21:44:38.87ID:ZeZezy1g951デフォルトの名無しさん
2017/11/30(木) 21:46:36.22ID:q+NcGFmb >>948
はあ?Cのマクロが良いものだって言うんならせめて良い使い方の例持って来いや
はあ?Cのマクロが良いものだって言うんならせめて良い使い方の例持って来いや
952あ
2017/11/30(木) 21:47:31.29ID:5c50KJX1 一回名無しに戻って、煽りを辞めて書いたらどうなるかやってみるか。
953デフォルトの名無しさん
2017/11/30(木) 21:47:46.37ID:q+NcGFmb おっとID変わったけどID:TiHNvA1Lな
954デフォルトの名無しさん
2017/11/30(木) 21:49:32.82ID:xrLQLoOt955あ
2017/11/30(木) 21:50:17.24ID:5c50KJX1 >>951
#define swap(a, b) \ do { typeof(a) __tmp = (a); (a) = (b); (b) = __tmp; } while (0)
なんて良いマクロじゃない?kernelのswap。
#define swap(a, b) \ do { typeof(a) __tmp = (a); (a) = (b); (b) = __tmp; } while (0)
なんて良いマクロじゃない?kernelのswap。
956デフォルトの名無しさん
2017/11/30(木) 21:52:29.74ID:6I05rtBK >>946
そういう新しい言語にすぐ飛びつくようじゃ終わりなんじゃ。
そういう新しい言語にすぐ飛びつくようじゃ終わりなんじゃ。
957デフォルトの名無しさん
2017/11/30(木) 21:59:56.00ID:q+NcGFmb958デフォルトの名無しさん
2017/11/30(木) 22:02:10.12ID:q+NcGFmb >>948
あと、
『代弁してないじゃんw
必要無いのが解ってるって事だ、って言ってるだけで、皆は解ってるから明示してない、って主張じゃない。
「犬はワンって鳴くよね」と「皆はワンって鳴いたからあれが犬だと理解してる」の違い。』
って何?面倒だから放置されてるそうだけどw
あと、
『代弁してないじゃんw
必要無いのが解ってるって事だ、って言ってるだけで、皆は解ってるから明示してない、って主張じゃない。
「犬はワンって鳴くよね」と「皆はワンって鳴いたからあれが犬だと理解してる」の違い。』
って何?面倒だから放置されてるそうだけどw
959デフォルトの名無しさん
2017/11/30(木) 22:15:03.46ID:ZeZezy1g960あ
2017/11/30(木) 22:15:56.48ID:5c50KJX1963デフォルトの名無しさん
2017/11/30(木) 22:18:33.66ID:+950NXzu コンパイル通らんとか言ってる奴はマジで言ってんのか?
そんな理解度でよくCの話題に絡もうと思ったな
そんな理解度でよくCの話題に絡もうと思ったな
964デフォルトの名無しさん
2017/11/30(木) 22:20:02.16ID:q+NcGFmb >>960
ハイジェニックでなく、滅茶苦茶書けるのが利点って言っておきながら、それをしたコードは悪いコードってどういうことやねん。
それハイジェニックな方がいいってことじゃん。何言ってんだ
あと、おまえは文が下手なことはいい加減認めろ
この関連何度目だよ
ハイジェニックでなく、滅茶苦茶書けるのが利点って言っておきながら、それをしたコードは悪いコードってどういうことやねん。
それハイジェニックな方がいいってことじゃん。何言ってんだ
あと、おまえは文が下手なことはいい加減認めろ
この関連何度目だよ
965あ
2017/11/30(木) 22:21:51.05ID:5c50KJX1966デフォルトの名無しさん
2017/11/30(木) 22:22:18.54ID:q+NcGFmb967デフォルトの名無しさん
2017/11/30(木) 22:23:05.85ID:ZeZezy1g >>962
Cは見るけどインラインアセンブラは見ないってことなんだけど、お判りにならない?
Cは見るけどインラインアセンブラは見ないってことなんだけど、お判りにならない?
968デフォルトの名無しさん
2017/11/30(木) 22:24:20.86ID:+950NXzu969デフォルトの名無しさん
2017/11/30(木) 22:26:50.85ID:q+NcGFmb970デフォルトの名無しさん
2017/11/30(木) 22:32:07.23ID:q+NcGFmb >>965
あのさあ。ハイジェニックなマクロはちゃんとメリットあってハイジェニックなの
ハイジェニックでないことが良いって言っておきながら、ハイジェニックな良い例を挙げられないってどういうこと?
色々書けることそのものなんて、ハイジェニックなことの利点と比べたらゴミみたいな利点なわけ
http://www.pro.or.jp/~fuji/mybooks/cdiag/cdiag.8.2.htmlみたいなコード量産可能になることがハイジェニックなことより重いって思ってるわけ?
あのさあ。ハイジェニックなマクロはちゃんとメリットあってハイジェニックなの
ハイジェニックでないことが良いって言っておきながら、ハイジェニックな良い例を挙げられないってどういうこと?
色々書けることそのものなんて、ハイジェニックなことの利点と比べたらゴミみたいな利点なわけ
http://www.pro.or.jp/~fuji/mybooks/cdiag/cdiag.8.2.htmlみたいなコード量産可能になることがハイジェニックなことより重いって思ってるわけ?
971デフォルトの名無しさん
2017/11/30(木) 22:33:22.07ID:+950NXzu ていうか、kernelから引用するならもっと良いマクロあると思うんだが
container_ofとか
http://d.hatena.ne.jp/big-eyed-hamster/touch/20091226/1261754005
でもC言語大好きだった頃は凄いと思ったが、いま見たら全然しょーもないわ
container_ofとか
http://d.hatena.ne.jp/big-eyed-hamster/touch/20091226/1261754005
でもC言語大好きだった頃は凄いと思ったが、いま見たら全然しょーもないわ
972デフォルトの名無しさん
2017/11/30(木) 22:56:29.10ID:xSwrNC9m まだフルHDに対応できてないニコ動
973あ
2017/11/30(木) 22:59:11.95ID:5c50KJX1 c11が実行できるところだと実行できると思う。pfの便利さもわかる。
ideoneはc11が動かんからcでは確認できないけど、c++14だと動いた。
https://ideone.com/0PBzBG
このままtest.cでも動くんじゃないかな。
スマホからでほかの環境めんどくさくて見てない。ごめん。
ideoneはc11が動かんからcでは確認できないけど、c++14だと動いた。
https://ideone.com/0PBzBG
このままtest.cでも動くんじゃないかな。
スマホからでほかの環境めんどくさくて見てない。ごめん。
974デフォルトの名無しさん
2017/11/30(木) 23:01:14.04ID:q+NcGFmb >>973
あー。いや。マクロ動かないのは完全に俺が悪かった。申し訳ない
あー。いや。マクロ動かないのは完全に俺が悪かった。申し訳ない
975あ
2017/11/30(木) 23:01:40.03ID:5c50KJX1977デフォルトの名無しさん
2017/11/30(木) 23:09:55.30ID:6I05rtBK そういやプリプロセッサが乗ってる言語って最新の言語では見ないよな。
Go言語は意図的に削ったのは分かるんだけど(コンパイル速度優先のため)
他のはどういう理由なんだろうな。swiftとかあったほうがいいと思うんだが
Go言語は意図的に削ったのは分かるんだけど(コンパイル速度優先のため)
他のはどういう理由なんだろうな。swiftとかあったほうがいいと思うんだが
978デフォルトの名無しさん
2017/11/30(木) 23:14:35.31ID:SJCWnhNZ 構文として統合されたマクロならむしろ盛況な気がする
DやTemplate Haskellやcamlp[45]が散々こねくりまわして、nimにもrustにも
Cプリプロセッサのような、言語からも独立して使えるようなマクロはないけどさ
DやTemplate Haskellやcamlp[45]が散々こねくりまわして、nimにもrustにも
Cプリプロセッサのような、言語からも独立して使えるようなマクロはないけどさ
979デフォルトの名無しさん
2017/11/30(木) 23:20:37.73ID:7wApdvUL980デフォルトの名無しさん
2017/11/30(木) 23:30:56.56ID:SJCWnhNZ まあC言語のポータビリティの高さはマクロがテキストマクロってことが大きい
構文マクロだと、複数のコンパイラによって拡張構文がちょっとずつ違うみたいな状況には対応できん
次世代言語が実用に耐えてるのは処理系が「まだ」ひとつしかないって面もあると思う
構文マクロだと、複数のコンパイラによって拡張構文がちょっとずつ違うみたいな状況には対応できん
次世代言語が実用に耐えてるのは処理系が「まだ」ひとつしかないって面もあると思う
981デフォルトの名無しさん
2017/12/01(金) 04:30:35.34ID:PZ2907El Cのマクロは性能低いからな。
ワンパスだしな。
ワンパスだしな。
982デフォルトの名無しさん
2017/12/01(金) 07:30:06.98ID:lcmprfyj >>945
すまんが今来た俺もお前が手抜き過ぎると思うわ
分かんないなら無闇に質問するんじゃなく勉強するか
じふには理解できないものと諦めろよ。
自分に理解できないのは相手が悪いみたいな態度は、
もっとこう、なんでも分かる人にしか許されないと思うぞ
それに相手ちゃんと質問に詳しく答えてくれてるじゃん。
以上。
すまんが今来た俺もお前が手抜き過ぎると思うわ
分かんないなら無闇に質問するんじゃなく勉強するか
じふには理解できないものと諦めろよ。
自分に理解できないのは相手が悪いみたいな態度は、
もっとこう、なんでも分かる人にしか許されないと思うぞ
それに相手ちゃんと質問に詳しく答えてくれてるじゃん。
以上。
983デフォルトの名無しさん
2017/12/01(金) 08:36:21.42ID:LZY9k/Ly どうせあが言ってる事はまた理解できない事だろうから、俺が理解できないのもこいつが悪いに違いない
まあ仕方無いかもしれないな
まあ仕方無いかもしれないな
984デフォルトの名無しさん
2017/12/01(金) 08:45:25.80ID:z9aMt2sx cのマクロで言いたかったことは
別にcのマクロが良いものだって話ではなくて、
高級な機能のマクロでバカが作ったものより
低級な機能でも優秀な人が作った枯れた技術のが安定するってことなんだけどな。
別にcのマクロが良いものだって話ではなくて、
高級な機能のマクロでバカが作ったものより
低級な機能でも優秀な人が作った枯れた技術のが安定するってことなんだけどな。
985デフォルトの名無しさん
2017/12/01(金) 09:35:14.98ID:z9aMt2sx >>977
include 処理とか, Boost みたいに高級な事すると恐ろしいコンパイル時間になることが分かったからでしょ。
あれのせいでファイル分割しないのがベストなプログラミングとかいう奴まで出始めたわけで。。
まあそういう実験所を提供してるってのはc++の良いところな気もするけどね。
実験に巻き込まれたくはないけど。
include 処理とか, Boost みたいに高級な事すると恐ろしいコンパイル時間になることが分かったからでしょ。
あれのせいでファイル分割しないのがベストなプログラミングとかいう奴まで出始めたわけで。。
まあそういう実験所を提供してるってのはc++の良いところな気もするけどね。
実験に巻き込まれたくはないけど。
986デフォルトの名無しさん
2017/12/01(金) 10:04:19.13ID:79R00kdr あと話してると混乱するからしゃーない
987デフォルトの名無しさん
2017/12/01(金) 10:26:42.51ID:AT8KOZxB >>985
>include 処理とか, Boost みたいに高級な事すると恐ろしいコンパイル時間になることが分かったからでしょ。
これ。
インクルード処理にマクロを使ってるからな。
例えばpsコマンドのソースをコンパイルする時<sys/stat.h>を37回includeしようとするらしい。
こういうのがソースの依存関係が大きくなるに従って指数関数的に増えていく。
結果としてコンパイルに40分とかかかるように。
Goは上記のコンパイルの無駄な時間から生まれたらしい。
詳細は
https://talks.golang.org/2012/splash.article
>include 処理とか, Boost みたいに高級な事すると恐ろしいコンパイル時間になることが分かったからでしょ。
これ。
インクルード処理にマクロを使ってるからな。
例えばpsコマンドのソースをコンパイルする時<sys/stat.h>を37回includeしようとするらしい。
こういうのがソースの依存関係が大きくなるに従って指数関数的に増えていく。
結果としてコンパイルに40分とかかかるように。
Goは上記のコンパイルの無駄な時間から生まれたらしい。
詳細は
https://talks.golang.org/2012/splash.article
988デフォルトの名無しさん
2017/12/01(金) 11:14:31.93ID:PZ2907El 40分とか掛かるのはPSの話じゃないし、
40分が30分くらいに短縮したってだけじゃん。
40分が30分くらいに短縮したってだけじゃん。
989デフォルトの名無しさん
2017/12/01(金) 16:40:31.22ID:JvjHpkLi マトモな実用OSでC以外の言語で記述したの
何かある?
何かある?
990デフォルトの名無しさん
2017/12/01(金) 17:05:34.67ID:/r1khpVM つ Windows
991デフォルトの名無しさん
2017/12/01(金) 18:24:31.52ID:zV3aJam4 次スレのタイトル考えた
現行のままでもいいけど
文字数制限(48byte)には注意
次世代言語Part8[Elm Nim Julia Elixir Crystal]
次世代言語Part8[C#7.2 C++17 Java9 ES2017 PHP7.2] (他Python3.6)
現行のままでもいいけど
文字数制限(48byte)には注意
次世代言語Part8[Elm Nim Julia Elixir Crystal]
次世代言語Part8[C#7.2 C++17 Java9 ES2017 PHP7.2] (他Python3.6)
992デフォルトの名無しさん
2017/12/01(金) 18:43:38.78ID:LZY9k/Ly 次世代言語議論スレ[略]
で良いじゃん、毎度揉めるなら。
2ぐらいに各言語入れとけば?
で良いじゃん、毎度揉めるなら。
2ぐらいに各言語入れとけば?
993デフォルトの名無しさん
2017/12/01(金) 19:35:24.94ID:bdQhlFjB sで始まるウンコ言語が入ってなかったら何でもいい
994デフォルトの名無しさん
2017/12/01(金) 19:46:14.85ID:eSQZEdvI Scratchか
995デフォルトの名無しさん
2017/12/01(金) 19:49:58.10ID:ytACGBKw scheme?
996デフォルトの名無しさん
2017/12/01(金) 20:23:48.63ID:A20bJ4Ix メジャー言語はいらないと思う
代わりにRustやSwift, Kotlin, Hack等の新興言語入れればいい
代わりにRustやSwift, Kotlin, Hack等の新興言語入れればいい
997デフォルトの名無しさん
2017/12/01(金) 21:30:52.08ID:WAbW55aH いやHACKは無いわ
998デフォルトの名無しさん
2017/12/01(金) 21:44:59.50ID:/r1khpVM ぜんぶメジャーだろ
999デフォルトの名無しさん
2017/12/01(金) 22:03:57.26ID:jFvanr8n hackはnull安全だからあり。
elmも仲間に入れて
elmも仲間に入れて
1000デフォルトの名無しさん
2017/12/01(金) 22:32:36.12ID:opEEFYgA ワッチョイよろ
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 43日 4時間 40分 58秒
新しいスレッドを立ててください。
life time: 43日 4時間 40分 58秒
10021002
Over 1000Thread 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 中国軍機レーダー照射、トランプ氏沈黙突く 試される日本外交 [蚤の市★]
- 【広島】「万引きした人を追跡」コンビニ店員の男性(46)を果物ナイフで刺したか 中国籍の少年(17)を殺人未遂容疑で現行犯逮捕 [ぐれ★]
- 【地震】青森県で震度6強 長周期地震動も 津波注意報すべて解除 ★7 [ぐれ★] [ぐれ★]
- トランプ大統領 エヌビディア製AI半導体の中国輸出許可 安全保障重視の方針転換 [蚤の市★]
- 【結婚の壁】結婚どころか今まで恋愛経験は一切ない人も…「年収500万の壁」を突破できない中間層の苦しい現実 [ぐれ★]
- 【速報】高市首相 青森震度6強地震で負傷者30人 [蚤の市★]
- 【高市悲報】日経が議員削減法案を痛烈批判「これほど党利党略を優先した法案も珍しい」 [663382246]
- まんが賞選評「男らしい骨太な作品で~」
- 【画像】TOKIO山口達也に「いいべ」された当時のJK、性加害の反動であたしこグラドルにwww [779857986]
- 声優・矢尾一樹の妻「治療の影響で思う様に話せない彼に、近くで仕事をしてきた人が、かっこ悪い!もう辞めなよと言った。私は許さない」 [594040874]
- こんぺこ!こんぺこ!こんぺこ!🐰🏡
- AIが仕事を奪うフェーズ、ガチでスタートしてしまう、世界はこの先どうなってしまうのか [604928783]
