次世代言語18 V Julia 他 at TECH
[2ch|▼Menu]
[前50を表示]
250:デフォルトの名無しさん
19/10/05 15:59:31.66 ZxO1UIOF.net
char **argv の時点で既に難易度のバランス崩壊してるようなことは言われてた

251:デフォルトの名無しさん
19/10/05 18:11:40.37 b9+wkgN8.net
>>207
Cはキャストでどうにでもなるけどそれが全ての型がない言語を代表してるとでも
旧ObjectWorksだと何も困ることはなかったな
任意のインスタンスに存在しないメッセージ投げようとしても警告が出てセーブできないし
無理やりevalで実行時解釈させようとしてもエラートラップするだけで原因はすぐわかるようになってる
引数はいわゆるanyだがどのクラスに限定するのか記述することもできる(そうしたいのなら)
型で縛ってる言語は労力かかるわりに仕上がり悪いことが多いね

252:デフォルトの名無しさん
19/10/05 18:18:15.93 b9+wkgN8.net
そもそも型推論はコードの安全性を高めるのが目的というよりも
型が定まることにより最適化の恩恵を受けられるというのが本来の筋だと思うんだよな

253:デフォルトの名無しさん
19/10/05 18:35:30.31 /whshWN1.net
型ガイとか型キチって表現は嫌いだけど、今は一般的なプロダクトでは型に持たせる表現力は控え目にしながらジェネリクスくらいは入るかって感じかなぁと思ってるよ
金融で型に持たせた機能で処理の妥当性をできる限り保証していきますって分野にだけ関数型言語でリッチな型を使うとか、Rustみたいに低レイヤーの捕捉しにくいバグ要因に対してだけある程度の機械的検査性だけ持たせるって使い分けの方針でさ
動的で強い型付けの言語も漸進的型付けやアノテーションの形で使えるものは使うって感じじゃん?

254:デフォルトの名無しさん
19/10/05 18:51:46.65 +P5r5Pn+.net
うーん何言ってるかわかんない

255:デフォルトの名無しさん
19/10/05 19:35:19.59 mtV0hE5K.net
ScalaやRustみたいな型ガチガチにやる言語は今日日流行らないってことよ

256:デフォルトの名無しさん
19/10/05 19:40:25.62 T+9tzQZ1.net
理想のエンジニア「こういう機能があればユーザーは喜ぶだろうか?UXとかも考慮しないとな……」
現実のエンジニア「型が〜!!モナドが〜!!!動的wwwww」
俺悲しいよ……😭

257:デフォルトの名無しさん
19/10/05 20:00:15.91 ZxO1UIOF.net
コンテナ
スマポ
モナド
こいつらの目的は、ライブラリでできることを言語本体から分離すること
分離できなかった原因の一つがたまたま型システムだったから型の話をしてるだけ

258:デフォルトの名無しさん
19/10/05 20:08:36.34 b9+wkgN8.net
コンパイラにできることは型が正しいか検査することだけであって
正しい処理をしたかどうかなんて担保できないんだよね
型の辻褄は合わせました、ロジックは間違ってて要求仕様を満たしてません
こういうのを何度も見てると本末転倒とさえ思える
型に振り回されすぎて実際のコードがゴミになってる
これはいかんね

259:デフォルトの名無しさん
19/10/05 20:10:26.40 GA2Bx1T0.net
新規に少人数でゴチャっと作るなら型無し言語が早いと思うが、
その後軌道に載って人数増やして機能追加を加速して行くとなったら、静的型付け言語の方に圧倒的なアドバンテージがあるぞ
そのへん疎かにしてるからバグだらけで機能追加もままならないとか糞サービスになる

260:デフォルトの名無しさん
19/10/05 20:11:40.34 WaZRqS3Y.net
>>253 みたいな下側の話をするためのしょーもない場所にわざわざやってきてまで煽りたいだけの人間が居る事の方が俺は悲しいよ

261:デフォルトの名無しさん
19/10/05 20:19:05.31 b9+wkgN8.net
>>256
少人数でも大人数でも動的なほうが問題起こしにくいよ
コード量も少なくて労力がかからないというのは利点しかない
機能追加にしても動的だと合わせやすいけれども静的型付けだと
どうしても綿密にやらないといけない割に不具合起こしやすくなる
強い型付けは想定されていなかったことに対して非常に弱い側面あるね

262:デフォルトの名無しさん
19/10/05 20:31:02.07 xdqQKQ1c.net
それはさすがに嘘つきすぎ
人数や規模が増えるとバグは動的型付けの方が圧倒的に増える、加速度的に増える
動的型付けならバグってても実際にそこ通るまで検出されないだけ
今時の言語は型推論が強いから静的型付けでもそこまでコード量は増えない

263:デフォルトの名無しさん
19/10/05 20:32:05.04 b9+wkgN8.net
個人的におかしいと思うのは
強い型付け言語の利点としてなぜかコードの安全性なるものが神話化してしまったことなんだね
それは全く担保できないことなんだけれども。
大きな利点があるとすればコンパイラがより最適化しやすくなる、ということだけだけど
HaskellなんかのUnboxed Valueがさっぱり早くないところを見ると疑問もある

264:デフォルトの名無しさん
19/10/05 20:34:18.71 b9+wkgN8.net
>>259
通らないコードはテストもされていないってことなんだよ
そこを心配するのはそもそもおかしいのだ
動的なエラートラップはすぐに原因がわかるのと対処も早いので進捗は早めになる

265:デフォルトの名無しさん
19/10/05 20:39:16.96 xdqQKQ1c.net
>>261
無根拠に断言してるだけ、論点先手、詭弁の典型
静的だと動的型付けよりエラーの原因がわからないという根拠、データなし
なお現実は型レベルで整合性の取れないおかしなコードを書くゴミの方が多い

266:デフォルトの名無しさん
19/10/05 20:42:37.53 D0zXpfE2.net
>>261
動的型付けで実引数に与えられる可能性のある型すべてに対してどうやってテストするの?

267:デフォルトの名無しさん
19/10/05 21:10:09.93 GA2Bx1T0.net
>>258
機能追加で動的だと合わせやすいとか全く異次元で信じられないよ
俺は今機能追加するときには、自分が作ったコードだろうが他人が作ったコードだろうが、まずは型を頼りに仕様を把握して、既にある型に沿って追加コードを書いていくよ
必要なら既存のコードの変更もするわけだけどその時も型を頼りにIDEの機能を使ってリファクタリングとか頻繁にする
自分の作った数年前のコードなんて、型無しで保守するとか恐怖だよ

268:デフォルトの名無しさん
19/10/05 21:12:33.20 5LWIufpy.net
HaskellとかScalaとかでそこそこの規模以上の開発したことあるなら
「静的で強い型付けしてるから開発とテストサイクルが速い」なんて口が裂けても言えないと思うが

269:デフォルトの名無しさん
19/10/05 21:15:46.21 5LWIufpy.net
一ヶ所変えるだけであらゆる関数の引数や返り値の型を全部変える必要が出てきて
それに伴って既存テストコードも全部動かなくなって
何が正しいのかから全部決め直しになるみたいな地獄を経験したことない奴が
「静的型の方が開発サイクル速い」とかフカしてるの見るのおぞましいわ

270:デフォルトの名無しさん
19/10/05 21:20:06.05 GA2Bx1T0.net
>>266
JetBrains の IDE とか使ったこと無さそう
そういう地獄は IDE でさくっと回避する時代だよ

271:デフォルトの名無しさん
19/10/05 21:20:41.96 mM4GDxRu.net
ID:b9+wkgN8
動的型がどれだけ頭の悪い似非エンジニアに汚染されてるか、よくわかるレスですね

272:デフォルトの名無しさん
19/10/05 21:21:55.40 mM4GDxRu.net
>>266
一ヶ所変えるだけであらゆる関数の引数や返り値の型を全部変える必要が出てきて
それに伴って既存テストコードも全部動かなくなって
何が正しいのかから全部人力Grepになるみたいな地獄を経験したことない奴が
「動的型の方が開発サイクル速い」とかフカしてるの見るのおぞましいわ

273:デフォルトの名無しさん
19/10/05 21:25:50.02 GA2Bx1T0.net
おまえらが馬鹿にしてる Java だって IntelljIDEA や AndroidStudio のリファクタリング機能でテストコードも含めて何の苦もなく引数の型変更とかできる
逆に型無かったらこれをサクッとやるのは難しい

274:デフォルトの名無しさん
19/10/05 21:28:01.46 47UJflGv.net
マネージャーとの面談にて
マネージャー「最近の調子はどんな感じなんだ?」
型キチ「概ね大丈夫です……ただ、動的型付け言語が一部のプロダクトで使われてるのだけが不満で……」
マネージャー「か、型?それだけが問題なのか?」
型キチ「それだけ!?!????????!?型があるかないかだけでメンテナンス性と可読性が全然違うんですよ!???ギャオオオン!!!」
悲しいね

275:デフォルトの名無しさん
19/10/05 21:28:01.60 GA2Bx1T0.net
ああ型無し言語は引数の型は無いんだったなwメソッド名の変更をさくっとできるとかに読み替えてくれ

276:デフォルトの名無しさん
19/10/05 21:28:29.00 rY1OpV0v.net
>一ヶ所変えるだけであらゆる関数の引数や返り値の型を全部変える必要が出てきて
これはわからんでもないが
>それに伴って既存テストコードも全部動かなくなって
なんでそうなるのか意味不明

277:デフォルトの名無しさん
19/10/05 21:37:33.45 b9+wkgN8.net
>>269
それは現実離れした極論だね
修正が必要になるのはどの言語でも変わらないよ
テストコードが動かない場合、あるいはtest protocolが失敗するケースでは問題が起きてるから修正にはなるがそれだけだ
引数に全く違うオブジェクトが入ってきた場合の振る舞いはすぐにトラップするからわかるよ
全体修正なんてことにはならないしなったこともない

278:デフォルトの名無しさん
19/10/05 21:39:22.95 b9+wkgN8.net
>>272
メソッド名の変更は全体に適用できるので問題ないね
命名変更程度なら用意されてる
呼び出す方も全て変わる

279:デフォルトの名無しさん
19/10/05 21:42:13.51 b9+wkgN8.net
>>264
旧仕様のクラスのままで新仕様のクラスをテストする、ということが動的の場合はできるのだ
こう言ったことに限らずあらゆる局面で柔軟性が高いのは利点だよ
開発サイクルの速さはこういうことにもつながっている

280:デフォルトの名無しさん
19/10/05 21:46:35.13 oarnWrY2.net
モナドが難し過ぎてHaskellでmain関数書けないんだが
こんなもん普通の言語に導入するのは無理がある

281:デフォルトの名無しさん
19/10/05 21:50:21.79 b9+wkgN8.net
>>264
重要なことを書くのを忘れた
「型を追わなくていい」んだな
そこに注力する必要がなく、適切なprotocolと定義があるかを見ることが重要になる
型付け言語と動的の場合それぞれアプローチが変わってくる

282:デフォルトの名無しさん
19/10/05 21:51:05.52 rjAFvvxm.net
関数型言語は関数型を使ってる自分に酔ってシコるためだけに存在する言語だからね
シコScalaやシコHaskellは勉強しなくていいよ

283:デフォルトの名無しさん
19/10/05 21:58:36.88 oMST/mlK.net
F#のことも思い出してあげて

284:デフォルトの名無しさん
19/10/05 21:59:25.58 mjKpzDld.net
座標を扱う時に直交座標も極座標も数値型の組に過ぎないから型があってるだけでは不十分
みたいな話ならまだ分かるんだが

285:デフォルトの名無しさん
19/10/05 22:03:01.36 kmFdI7ZB.net
>>281
それは設計が悪いだろ
まともな頭してたら直交座標と極座標は別の型にする

286:デフォルトの名無しさん
19/10/05 22:08:26.33 b9+wkgN8.net
CLOSなんかでも総称関数で想定外のオブジェクトが渡されたら大変なことになるなんて言う人いないと思うが
最終的に呼ばれるはずだったslotが存在しないオブジェクトを扱おうとしていたら直ちにトラップか
コンパイルする処理系だと事前に警告だから
どこをどうやっても全体修正なんてことにはならない
強い型付けをしても想定通りに動かないコードが出来上がってしまうのは
すなわち型だけで安全性を高めることはできない証左とも言える
その理由の一つに一般的に型とは振る舞いを定義しているものではないからだ
型が合わなければ通さない、合っていれば通す、ただそれだけのことであって
通した後の処理まで面倒見ているわけじゃあない
本末転倒になっているのはこの部分だね

287:デフォルトの名無しさん
19/10/05 22:35:01.34 mM4GDxRu.net
こんなお花畑野郎とは絶対に一緒にコード書きたくねえな
型以前の問題だったわ

288:デフォルトの名無しさん
19/10/05 22:35:41.62 Sq/oJs63.net
こいつの言ってる安全性ってなんなんだ
勝手に神話を作って勝手に信じたのか

289:デフォルトの名無しさん
19/10/05 22:41:21.63 mM4GDxRu.net
マネージャーとの面談にて
マネージャー「最近の調子はどんな感じなんだ?」
型キチ「概ね大丈夫です……ただ、静的型付け言語が一部のプロダクトで使われてるのだけが不満で……」
マネージャー「か、型?それだけが問題なのか?」
型キチ「それだけ!?!????????!?型が理解できないし勉強できないメンテナンスできない人がいるんですよ!???ギャオオオン!!!」
悲しいね

290:デフォルトの名無しさん
19/10/05 22:42:02.16 oMST/mlK.net
ここ型議論しかしてねーな

291:デフォルトの名無しさん
19/10/05 22:42:41.02 qlkFezQz.net
次スレは動的型付けvs静的型付けで

292:デフォルトの名無しさん
19/10/05 22:46:40.57 q6Mq9TVB.net
>>286
型キチさん、型チェック忘れてますよw

293:デフォルトの名無しさん
19/10/05 22:48:19.61 jHn/y5Ac.net
型ガイさんって正直Javaしか使ったことかいんでしょ?
怒らないから言ってみ?

294:デフォルトの名無しさん
19/10/05 22:58:09.58 HsbLVS7B.net
型無しガイジはPHPスレに帰れ

295:デフォルトの名無しさん
19/10/05 23:06:51.84 +P5r5Pn+.net
型があれば処理が正しいなんて言ってるやついないじゃん
そんな神話聞いたことないわ
存在しない脅威について怯えるのは出来ないエンジニアにありがち

296:デフォルトの名無しさん
19/10/05 23:08:33.06 xdqQKQ1c.net
マジで無能はオールオアナッシングでしかものを考えられない

297:デフォルトの名無しさん
19/10/05 23:10:04.39 D0zXpfE2.net
>強い型付けをしても想定通りに動かないコードが出来上がってしまうのは
>すなわち型だけで安全性を高めることはできない証左とも言える
JavaScriptは強い型付け言語ですけど
動的型付け/静的型付けと強い型付け弱い型付けの区別もついてないレベルで
こんなご高説垂れてたのか

298:デフォルトの名無しさん
19/10/05 23:11:42.96 N1TCJDW/.net
型ガイさんって正直Java(8未満)しか使ったことかいんでしょ?
怒らないから言ってみ?

299:デフォルトの名無しさん
19/10/05 23:18:15.71 FrQq6pik.net
静的型付けネガる人って何でもStringとか何でもMapとか、あるいは配列の1番目はx座標で2番目はy座標を返すメソッド!
とかやっちゃう人なのでは?型が簡単に作れて使える世界を知らないだけでは?

300:デフォルトの名無しさん
19/10/05 23:21:21.08 +P5r5Pn+.net
>>293
ベターを知らないんだよな
ベストとワーストでしか話しが出来ない
能力があって責任ある立場にいればそんな発想にはならない

301:デフォルトの名無しさん
19/10/05 23:47:46.68 GA2Bx1T0.net
>>294
JavaScript は一般的には弱い型付け言語じゃないの?
今も "1" + 1 とかできるんだよね?

302:デフォルトの名無しさん
19/10/06 01:56:56.91 Jx24UgF2.net
Scalaが次世代言語になれなかったのは事実
成功して現世代と言えるくらいになった次世代言語が型がゆるいGoくらいっていうのも事実
でもScalaが自滅したのは強い静的型付けだった「から」じゃないし
Goが流行ったのは型がゆるい「から」じゃないはずなんだけど
なんでそういう関係ないところで型の有用性について議論したがるかね

303:デフォルトの名無しさん
19/10/06 03:17:49.98 +G1RWlUz.net
>>248
んで?今でもあんたはそのobjectworks使った仕事してるの?

304:デフォルトの名無しさん
19/10/06 03:28:03.73 +G1RWlUz.net
>>283
誰一人として型だけで安全なコードができるなんて言ってないのにお前は誰に向かって書いてるんだ?

305:デフォルトの名無しさん
19/10/06 03:55:19.89 qGnSK/oz.net
>>272
少なくともpythonに関しては、JetBrainsのIDEといえどtype hintingが無いと結構失敗する

306:デフォルトの名無しさん
19/10/06 04:39:46.87 qGnSK/oz.net
>>298
それは暗黙の型変換が行われるだけで、その結果は言語仕様で定義されてるから、型システムとしては型安全性があると言える
型安全性があるのが強い型付けで、無いのが弱い型付け、とされる
でもそう定義する界隈があるってだけで、それが絶対的な定義ではないとは思うけどな

307:デフォルトの名無しさん
19/10/06 05:02:55.75 Wdhy4bzT.net
型キチってScala関連の書き込みには全くレスつけてくれないけど
そういうことなんだなって察してしまうわ

308:デフォルトの名無しさん
19/10/06 06:23:26.43 fUZ1yjK2.net
型の話が出るといつもコンプレックス丸出しの奴がギャーギャー騒ぎ始めるねえ
scalazで落ちこぼれたのは分かったけどもw

309:デフォルトの名無しさん
19/10/06 08:25:41.74 NwgqgfWG.net
自分の脳内で作り上げた想像上の人間がScalaスレに書き込んでないことから何かを察するの、すげえな

310:デフォルトの名無しさん
19/10/06 08:49:16.02 +7lGQsyI.net
型についてそこまでこだわっても品質なんてそこまで変わらんとも思うが、
しかし言語選択で今一番影響あるのは型の強さとかあるなしかもな。
まあperlとかphpレベルで暗黙変換しなけりゃ俺はいいかなと思うけど。
動的静的よりも暗黙変換をどれくらい許すかのが個人的には重要かな。

311:デフォルトの名無しさん
19/10/06 08:51:44.92 /3sFCHyh.net
一般的型キチさんの開発環境
Java6、SVN、Eclipse、Windows、WinMe


312:rge、秀丸エディタ、オンプレミス、エクセル、社内Wiki、Outlook 一般的動的マンの開発環境 Ruby・Python・PHP、Git、IntelliJ、Mac、Docker、AWS・GCP、スプレッドシート、esa、Slack 悲しいなぁ……😭😭😭



313:デフォルトの名無しさん
19/10/06 09:03:37.01 IHuQntPK.net
本業C#だがMacがWindowsになる程度だしクソ企業と普通の企業の差では
あと表計算ソフトはスプレッドシートと名を変えようがダメ

314:デフォルトの名無しさん
19/10/06 09:13:51.42 +azYdc8M.net
>>308
そんなにMacが好きならSwiftやiWork使えよww

315:デフォルトの名無しさん
19/10/06 09:19:36.17 51w7DHEq.net
「俺Mac取ったー!おまえWindowsな!」
小学生かw

316:デフォルトの名無しさん
19/10/06 09:22:55.98 nC6Pexaw.net
>>308
スレタイに出てるJuliaは空気だな?

317:デフォルトの名無しさん
19/10/06 09:30:18.52 hi3gsQkB.net
Pythonのデータ系やJuliaはWindowsも多いよ
Rubyなんか挙げちゃった子には無縁の世界

318:デフォルトの名無しさん
19/10/06 09:31:36.02 +7lGQsyI.net
v 更新しとるんだな。今ならてきとうにコミットするのはありかも。
URLリンク(github.com)

319:デフォルトの名無しさん
19/10/06 09:37:27.30 fnVCfpY/.net
このスレマジでMacにコンプ持ってるやつ多すぎて笑うわ
未だにWindows使ってるレガシー企業のくせに次世代言語てw

320:デフォルトの名無しさん
19/10/06 09:41:56.34 SGtLALDv.net
精神勝利法すげえな

321:デフォルトの名無しさん
19/10/06 09:42:12.32 K5A1Az6A.net
型付しないと精神を保てない例だなw

322:デフォルトの名無しさん
19/10/06 09:46:03.28 NwgqgfWG.net
むしろ未だにMacにこだわってる方が加齢臭すごい
LinuxとWindowsがあれば十分で、Macとかいう中途半端なゴミはいらない

323:デフォルトの名無しさん
19/10/06 09:48:22.92 IHuQntPK.net
TS, Go, Rustを使いたがるスタートアップ界隈はWSL2次第でWindowsに戻ってくる動きもあるんだがな
>>313
副業でRubyもたまにやっているがDockerが普及してWindowsユーザーも増えているぞ
Rubyの会社で今時Docker環境じゃないのは余裕がない証だと思って避けているわ

324:デフォルトの名無しさん
19/10/06 09:55:23.81 DbrcOQgy.net
>>308
でたキチガイ

325:デフォルトの名無しさん
19/10/06 09:57:22.70 h6EyR+l0.net
>>308
型キチだが
TypeScript・Python(Type HintingなしはNO)、VSCode、Ubuntu Desktop(Core i9) + Mac、AWS、Slack
モダーンで、すまんなすまんなw

326:デフォルトの名無しさん
19/10/06 09:58:45.37 SGtLALDv.net
自分の一存でScalazを採用させるだけの発言力があるのに
Java6 SVN Eclipse 使わされてるSIerって型キチの設定ガバガバすぎない?

327:デフォルトの名無しさん
19/10/06 10:01:09.93 +7lGQsyI.net
>>319
rubyなんかはそこまで低レイヤーさわらんし、バージョン管理ツール使ってりゃいいんでないの?
docker だとやりすぎ感があるんでは?
c/c++系統の奴使ってるとか、kubernetes使うとかでもない限りそんなに必要と思わんのだけど。

328:デフォルトの名無しさん
19/10/06 10:04:41.68 HMANkRPq.net
>>314
サンプルやコンパイラがメモリリークするのは直ったんだろうかね
Goのように簡単に書けてRustのようにGC無しで自動解放すると言っていた
Go/Rustを超える詳細不明のメモリ管理が実装された話は聞かなかったが

329:デフォルトの名無しさん
19/10/06 10:22:41.97 0s7o/lL0.net
✕ Windowsの方が良い。Macはいらない
○ Windowsしか使っていないレガシー企業に所属しているからMacに触れる機会が無い

330:デフォルトの名無しさん
19/10/06 10:33:38.32 afQhNNe0.net
AppleなんてMSが資金援助しなかったら潰れてたんだから
Apple信者はジョブズじゃなくてゲイツを崇めるべき

331:デフォルトの名無しさん
19/10/06 10:43:20.42 DCi/8LQP.net
型付コンプマンとOSコンプマンは同一人物か
どうでもいいから言語の話をしろよ?

332:デフォルトの名無しさん
19/10/06 10:48:54.49 b5CNBoqv.net
いい加減に型議論スレ立てれば?

333:デフォルトの名無しさん
19/10/06 11:13:06.45 kfMA+lDl.net
PythonがRubyを倒した時にはこんな問題はなかっただろう
C#とTypeScriptあたりが潰し合えば問題ないのに
論点をそこに設定できない理由があるならそいつが元凶だ

334:デフォルトの名無しさん
19/10/06 11:13:39.74 nfPmVfn/.net
>>329
何と戦ってるんだお前は

335:デフォルトの名無しさん
19/10/06 11:15:58.64 +7lGQsyI.net
>>324
個人的には無理だろと思ってるけど、実際コミットしてみるのは面白そうかなと思う。
どっかでそれなりの妥協するか崩壊するかだろうけれど言語勉強にはいいんでないかな。

336:デフォルトの名無しさん
19/10/06 11:22:47.12 nC6Pexaw.net
>>328
Juliaの話題が出ないから次スレからスレタイから外したら。

337:デフォルトの名無しさん
19/10/06 11:31:23.46 IHuQntPK.net
>>323
バージョン管理ツールがGitとかのVCSを指しているなら意味が分からんのだがどういう意味だ?
Docker DesktopとGitを入れて `docker-compose up` で開発ができ、CIから何からを半自動でやるのがインフラを整えるということでは

338:デフォルトの名無しさん
19/10/06 11:37:21.54 +7lGQsyI.net
>>333
rubyで閉じるならrvm, rbenv使うなりしてりゃ環境合うだろって話。
それ以上低レイヤー依存が激しいならdockerもありだろうが、
使わんでもcloudでインスタンス利用するならdockerは無駄な冗長化だなと思う。
docker compose とかすげー半端感しか感じないんだが。
大してスケールするわけでもないし。

339:デフォルトの名無しさん
19/10/06 12:05:19.67 IHuQntPK.net
>>334
あー、xenv系の話か。すまん、俺がボケてた
言っていることは一理あるしそういう派閥がいるのも知っているが俺は完全に同一の環境で開発するのを是としている
ただ開発環境がDockerでデプロイ先はVPS直という現場はアホだと思うよ

340:デフォルトの名無しさん
19/10/06 12:25:38.33 HMANkRPq.net
>>332
出ないからこそだゾ >>3-6

341:デフォルトの名無しさん
19/10/06 12:29:34.95 +7MXB6fE.net
>>332
そして誰もいなくなった

342:デフォルトの名無しさん
19/10/06 14:50:44.99 CllAfLEo.net
URLリンク(japan.zdnet.com)
MIT、「Julia」上で動作する初心者向け汎用AIプログラミングシステム「Gen」を発表
Liam Tung (ZDNet.com) 翻訳校正: 編集部 2019年07月01日 10時55
 マサチューセッツ工科大学(MIT)は米国時間6月26日、確率的プログラミングシステム「Gen」を開発したと発表した。
Genにより、初心者でもコンピュータービジョンやロボティクス、統計に関する処理を容易に手がけられるようになるという。
 Genは、「Julia」に組み込まれるかたちで実装されている。なお、JuliaはMITの研究者らによって2012年に公開された
動的プログラミング言語であり、世界的に高い人気を集めている。
 Genの開発者らは「カスタム化した複数のモデリング言語をJuliaに組み込む」ことで、ユーザーが「数式と格闘したり、
高効率なコードを手作業で記述したりせずとも」人工知能(AI)のモデルやアルゴリズムを開発できる
新たなAIプログラミングシステムを生み出したとMITは述べる。
 このシステムは予測などの複雑なタスクにも使用できるため、技術に造詣の深い研究者にも役立つだろう。
 MITの論文によると「Gen」という名称は、従来の確率的プログラミングでは考慮されていなかった、
「汎用目的」(General purpose)での使用を可能にすることを念頭に置いて付けられた。
 論文には「既存のシステムは汎用目的としては実用的ではない」と記されている。
 また、「特定の問題領域にのみ適した、制約の大きいモデリング言語を提供しているシステムがある。
その一方で、どのようなモデルでも表現できる『汎用の』モデリング言語を提供しているシステムもあるが、
そういったシステムは使いものにならないほど収束の遅い推論アルゴリズムしかサポートしていない」とも記されている。

343:デフォルトの名無しさん
19/10/06 14:51:51.44 CllAfLEo.net
 今回のシステムにより、例えば、人の姿勢といった立体的な形状の状態を推論し、
自動運転車やジェスチャーベースのコンピューティング、
拡張現実(AR)に用いられるコンピュータービジョンのタスクを簡素化するようなプログラムを作成できるようになる。
 Genは、MITが2013年に「DARPA AI」プログラムから獲得した資金によって2015年に開発した
確率的プログラミングシステムを強化するかたちで、グラフィックス描画やディープラーニング(DL)、
さまざまな確率シミュレーションを組み合わせている。
 MITで電子工学及びコンピューターサイエンスの博士課程を専攻しており、
この論文の主執筆者であるMarco Cusumano-Towner氏は、「自動化されたAIを、
コンピューターサイエンスや数学の専門知識をさほど必要とせずとも、
容易に扱えるようにするというのがこの研究の目的の1つとなっている」と述べている。
 「われわれはまた、生産性を向上させることで、専門家によるAIシステム開発時の試行錯誤や
プロトタイプ作成の迅速化を容易にしたいと考えている」(Cusumano-Towner氏)
 Microsoftが「AIの民主化」を旗印に掲げているように、
MITの研究者らもデータサイエンスをあらゆる人々のもとに送り届けようとしている。
 また、MITによるとこれは、Googleの「TensorFlow」の1歩先を行くものだという。
 MITは、TensorFlowが「DLモデルに的を絞っている」という点で、
AIの持っている潜在的能力を完全に解放していない可能性を指摘している。

344:デフォルトの名無しさん
19/10/06 15:03:50.67 GCn9yAhL.net
また生産性を向上させてしまった・・・これは言ってみたい

345:デフォルトの名無しさん
19/10/06 15:27:51.67 kfMA+lDl.net
生産or消費でしかものを考えられないんだな
これを言ってやろう

346:デフォルトの名無しさん
19/10/06 19:07:55.48 Ypd704zl.net
型キチや型無し不能者は正直どうでもいいから置いとくと、実際のところ俺の周り(当然狭い)で仕事で関わる可能性のありそうな次世代言語はある程度の静的型付け可能な言語かな(具体的にはGo, Rust)。
みんなの周りでは動的言語で仕事に関わりそうな次世代言語ってどんなのある?(純粋な興味)

347:デフォルトの名無しさん
19/10/06 19:14:22.92 0rwYuW6O.net
型に関してはうまい落とし所のがあればいいな
ガチガチでもなくゆるゆりでもないみたいなの

348:デフォルトの名無しさん
19/10/06 19:18:13.38 51w7DHEq.net
そのひとつが漸進的型付けで、TypeScriptはかなりいいセンいってると思う。

349:デフォルトの名無しさん
19/10/06 19:41:24.32 4DnPW2me.net
>>342
そもそも次世代言語に動的型のやつあったっけか?

350:デフォルトの名無しさん
19/10/06 20:07:17.64 kfMA+lDl.net
過ちを犯した者が仕様変更しなさい
仕様変更しているのは静的型だけになった

351:デフォルトの名無しさん
19/10/06 21:34:54.69 XnVfcxYj.net
Haskellは安全性では一番だけど
モナドと遅延評価が難し過ぎて普通の人がコードを書くのは難しくて失敗
Cの型は単なるメモリレイアウトで実質型なしで
スタックオーバーフローなどの脆弱性を大量に生み出し失敗
Javaは割と堅牢な型システムだがnullを放置したせいで
ヌルポの山を築いて失敗
RustはCにまともな型システムを導入しようとしたが
所有権に誰もついていけず見事失敗
Goは動的言語と静的言語のいいとこどりをしようとして中途半端になって失敗
TypeScriptは漸進的型付けというありそうでなかった型システムだが
型定義が面倒すぎる上anyは嘘派と頑張らない派で対立して失敗

352:デフォルトの名無しさん
19/10/06 21:44:57.93 51w7DHEq.net
>型定義が面倒すぎる
面倒と思うのは既存のjsコードに型定義を付けるときくらいで、最初からtsで書いている分には
面倒と感じたことはないがなぁ。
他の静的型付け言語とかと比べてどういうところが面倒なんだろうか。

353:デフォルトの名無しさん
19/10/06 22:00:20.65 jWeq+Bvn.net
所有権はC++の頃からあるよ
Rustで新しく導入されたと言えるのは借用規則とライフタイム

354:デフォルトの名無しさん
19/10/06 22:22:11.31 51w7DHEq.net
「所有権」と呼ばれる概念は昔からあるけどそれが何を表しているかは結構バラバラなわけで、
そこは「rustの所有権システム」と解釈すべきなんだろう。

355:デフォルトの名無しさん
19/10/06 23:00:04.89 5dqrI3Cy.net
どうでもいいけど、今の40代って軒並み役に立たないな
オンプレのLinux操作は早いけど、それだけ
保守歴長すぎて、新規でコード書くことが一切できない
まさかRDBの設計すらろくにできないくせに、俺は35定年を乗り越えられたエンジニア、みたいにしてるのマジで笑えるわ
死んで欲しい
転職してえ

356:デフォルトの名無しさん
19/10/06 23:12:49.99 g9L650mi.net
人には得意不得意があるのだから「出来ないことがある」で評価すべきではありませんよ。「出来ることがない」なら無能なので切りましょう

357:デフォルトの名無しさん
19/10/06 23:21:31.83 5dqrI3Cy.net
>>352
わかってるよ、保守で役に立つんだから、保守やっててくれりゃいい
オンプレマシンのお守りも重要な仕事だ
だけど「設計はベテランに任せておけ」とか40代のゴミ同士で乳繰りあって盛り上がってるの見ると
ホント寒気がするんだわ
試しにDBの論理設計やらせたら、正規化もまともにやってない、型は適当、NotNullも定義してないExcel出してきやがる
20件くらい指摘上げたら、「君こだわり強いねw」とか「業務は趣味じゃないんだから」とか言い出すんだぜ
目眩がしたわ
絶対ああはなりたくない

358:デフォルトの名無しさん
19/10/06 23:25:04.83 AIMC8rVU.net
この手のやからは単に自分の得意分野でドヤってるだけ

359:デフォルトの名無しさん
19/10/06 23:25:43.60 DCi/8LQP.net
で?お前には何ができるの?

360:デフォルトの名無しさん
19/10/06 23:29:49.20 5dqrI3Cy.net
>>355
バックエンドもフロントエンドもできるが
少なくともあの爺どもよりは

361:デフォルトの名無しさん
19/10/06 23:32:44.69 0rwYuW6O.net
そのおじさんもミドルならできるんだろ

362:デフォルトの名無しさん
19/10/06 23:46:29.22 4kPPzyZv.net
次世代言語に全く関係無い話は余所でやってくれ。

363:デフォルトの名無しさん
19/10/06 23:57:06.69 5dqrI3Cy.net
俺もおまえらも薄汚い無能オッサンになるんだよ
次世代言語どころか、現世代言語すら理解できないような悲しいオッサンにな
だから、有意義に過ごせよ、この何でもない毎日をよ

364:デフォルトの名無しさん
19/10/07 00:06:28.20 CF5Z0+Ep.net
青春だねぇ

365:デフォルトの名無しさん
19/10/07 00:30:11.62 UKE8g9+n.net
すでに完全にオッサンから初老に一歩足いれてるワシの観察によると
若い時分に「老害は新しいモノがわかってない!これからはこういう
新しい概念を理解してないとダメだ!」みたいなこと言って意固地に
なってたタイプほど、歳食ってから老害になるパターンが多い印象
逆に仕事で金もらえるならなんでもやりますよ、みたいなやつは
歳くっても頭が柔らかい。

366:デフォルトの名無しさん
19/10/07 01:25:08.70 lrWqKXHs.net
>>348
とにかく型定義ファイルがだるいし
それがあってるのかという型そのものへの疑心暗鬼が生まれてしまいメンドクセとなる
あと結局型の設計がJSっぽさ満開のライブラリだと
頑張れば型付けできるがそもそもの型設計が
クソ過ぎるため型パズルを解くことになるのもだるい
TSそのものというよりそれ含めた環境が地獄なので
相当難しい

367:デフォルトの名無しさん
19/10/07 03:45:48.89 DgIv4nW8.net
周りのレベルが今の自分のレベルだ
転職でもしてろ

368:デフォルトの名無しさん
19/10/07 05:03:01.05 QIpZdLTg.net
>>361
これはガチ
金になるからって理由で流行りものに広く浅く手出してるやつの方が実践的な経験たくさん積んでるし長生きしてる

369:デフォルトの名無しさん
19/10/07 06:31:02.27 3jIy+7MF.net
自動プログラミングの登場はいつ頃?

370:デフォルトの名無しさん
19/10/07 07:25:58.80 Hsgiqw/b.net
>>361
プログラミングなんて一つ覚えれば他は応用で何とでも出来るからな
言語は設計者の信念や価値観が反映されるし
最近はその傾向が非常に強く濃く出てるからな
最後はその価値観や信念を受け入れられるか否かになってるね

371:デフォルトの名無しさん
19/10/07 07:31:12.89 qCRR4hB2.net
>>361
アラサーだけど完全同意
年齢というより本人の性格

372:デフォルトの名無しさん
19/10/07 07:37:22.63 BzP7XqMm.net
若いうちにガッツリ開発した経験があればいつでもやり直せると思うが
ずっとマニュアル通りの保守運用してた人とかは厳しい

373:デフォルトの名無しさん
19/10/07 08:02:52.03 gq2Iy46j.net
>>362
>とにかく型定義ファイルがだるいし
それ.d.tsの話だろ。
最近はnpmもかなりts対応が進んで、ここ1年以上自分でアンビエント宣言書いてないわ。

374:デフォルトの名無しさん
19/10/07 08:29:56.12 h7448PDh.net
スレタイからTS消したのに結局TS・JSの話しかしてねーな

375:デフォルトの名無しさん
19/10/07 08:47:35.90 Hsgiqw/b.net



376:q小学生の話でもする?



377:デフォルトの名無しさん
19/10/07 10:28:20.01 1PlTXyoA.net
>>371
淫行で捕まるぞ。

378:デフォルトの名無しさん
19/10/07 10:57:43.97 AHm704BC.net
プログラマーがJSと仲良くなる方法?
一緒にスイッチやろうぜ!これだけでいい

379:デフォルトの名無しさん
19/10/07 11:45:38.96 FkpNSZjY.net
結局Scalaが世界中巻き込んだ大爆死して
型なんて適当でいいんだよ派のGoが覇権取ったのは
型キチにとって最高に都合が悪いから
露骨な話題反らししたり老害ペチパー連呼したりするんやろなあ

380:デフォルトの名無しさん
19/10/07 11:51:24.34 doyjmdg4.net
よきにはからえでそこそこ動くなら楽だしな

381:デフォルトの名無しさん
19/10/07 12:29:49.51 m2H16U2/.net
型煽りが来たしそろそろOS煽りの時間か?

382:デフォルトの名無しさん
19/10/07 12:53:15.71 0xOqyS7W.net
むしろJSからTSへ、RubyやPHPからGoへ、で静的型への移行が進んでいるのでは

383:デフォルトの名無しさん
19/10/07 13:24:28.37 FkpNSZjY.net
なるほどScalaからGoとみるかRubyやPHPからGoとみるかで確かに違うか

384:デフォルトの名無しさん
19/10/07 13:26:01.02 h7448PDh.net
GoがScalaを意識してたとか初めて聞いたわ

385:デフォルトの名無しさん
19/10/07 13:39:43.24 FkpNSZjY.net
意識してたかどうかはしらんが
最初にScalaとかの型ガチガチにやる言語と比べて
貧弱すぎて草生やされてたのはよく覚えてるわ

386:デフォルトの名無しさん
19/10/07 13:51:30.39 nnDn0jE7.net
>>371
山梨でボランティアしてこい
遭難して迷惑かけるなよ

387:デフォルトの名無しさん
19/10/07 14:42:10.45 hqvHKnpo.net
そもそも型付けがガチガチとかゆるゆるというのが何を指してるのか分からん
HaskellでさえunsafeCoerceとかあるんだからある意味ゆるゆるな言語であるとも言える

388:デフォルトの名無しさん
19/10/07 14:53:32.91 qCRR4hB2.net
Goの型が貧弱とかゆるいとか言ってる奴馬鹿丸出しだぞ
あれガチガチの静的型付けだから

389:デフォルトの名無しさん
19/10/07 15:04:43.63 l10ZvE/b.net
>>383
静的言語の中でも型システムがしょぼいという話なのだが

390:デフォルトの名無しさん
19/10/07 15:07:40.94 8rzZpShe.net
Goの特徴として前から言われていたのはAOTコンパイラ
そして案の定JITコンパイラ言語が一つ消えた
実装と文脈を無視して、仕様を切り取ってはいけない

391:デフォルトの名無しさん
19/10/07 15:09:20.52 +VKWtedr.net
>>384
型システムが貧弱というのと型付けがゆるいというのは違う

392:デフォルトの名無しさん
19/10/07 15:12:42.08 qCRR4hB2.net
>>384
いや>>374>>380みる限り明らかに型がゆるいと勘違いしてるアホだろ
GOがよく叩かれるのは機能の貧弱さであって型付けの強弱や静動とは別の問題だから

393:デフォルトの名無しさん
19/10/07 17:56:10.83 uu8PmCQO.net
いい加減セミコロン排除してほしい
今時の言語にセミコロンは不要

394:デフォルトの名無しさん
19/10/07 18:02:04.24 38KztbOB.net
フレームワークを作る側と、フレームワークに用意された関数を呼ぶだけのドカタが
同じように話し合っても意味ないだろ
RailsがRubyで生まれたのは動的型のメタプログラミングのやり易さによるものだが
ドカタにはメタプログラミングなんて想像もできないだろ?

395:デフォルトの名無しさん
19/10/07 18:17:40.71 AKFeYH7t.net
セミコロンは必要

396:デフォルトの名無しさん
19/10/07 18:31:50.82 x4lHC0CM.net
セミコロンはあっていいわ
それよりlispみたいな括弧だらけをどうにかしてほしい
dartのことなんだけど

397:デフォルトの名無しさん
19/10/07 18:47:51.69 FkpNSZjY.net
>>389
型は辛うじて理解できるから型型言ってりゃ意識高く見えるんだろう

398:デフォルトの名無しさん
19/10/07 18:49:08.97 Y/GBaC3O.net
セミコロンないとウンコしたあとケツ拭かないみたいで気持ち悪いねん
屁しか出なかったから拭かなくて大丈夫でも一応拭いとかんと気持ち悪いんや

399:デフォルトの名無しさん
19/10/07 18:52:21.72 cA3PBaOt.net
ごく稀に魔改造されたフレームワークを見かけるけど
今までどういう経緯でなったのか理解できなかったけど>>389みたいな発達障害の仕業だったんやな……

400:デフォルトの名無しさん
19/10/07 18:53:23.79 Hsgiqw/b.net
前スレではTSはJSに型を付けた安全な言語!って言ってたのにどうした?

401:デフォルトの名無しさん
19/10/07 19:06:20.66 0xOqyS7W.net
TSはJSに型をつけた"JSよりは"安全な言語。
Rustも"C++よりは"安全な言語。
比較級と原級はまったく意味が異なるので混同しないように。
一般に、 old, older, oldest の実年齢は old が一番高いのだ。

402:デフォルトの名無しさん
19/10/07 19:56:06.76 8rzZpShe.net
盾の中で最上級になっても実戦でぶつかるのは盾と盾ではない
矛にあたるのはテストだよね

403:デフォルトの名無しさん
19/10/07 19:57:06.96 Bnp8iofU.net
rustが安全ね。。ライフタイム、所有権を気にしすぎてベタに長い関数書きまくりの糞コードで本当に安全といえるのかね。

404:デフォルトの名無しさん
19/10/07 20:18:58.25 kUyRZ0JH.net
ライフタイムや所有件と関数の長さは関係ない
関数の長さと安全性も関係ない
まだ40行で疲弊してるの?

405:デフォルトの名無しさん
19/10/07 20:29:44.09 /nePTJSU.net
コードが長いから安全じゃないって意味わからんな
このスレの一部のヤツらは安全性の概念を勘違いしてるとしか思えんわ

406:デフォルトの名無しさん
19/10/07 20:34:57.02 Bnp8iofU.net
だからメモリ安全性だけ主張しても意味ないつってんのに理解力ほんとないな。

407:デフォルトの名無しさん
19/10/07 20:47:01.42 eb0jB4qD.net
まあRustならバカ避けになるから結果的には安全性に大きく寄与するだろう
Goなんかはキャズムを超えてしまってそろそろプログラマの品質が怪しくなってきたし

408:デフォルトの名無しさん
19/10/07 20:50:16.22 gq2Iy46j.net
goの型付けで言えば、interface{}をreflectで解決する一種の動的型付けに
頼らなきゃならん場面が多いのが問題だなぁ。
genericsが来ればだいぶ違うんだろうが。

409:デフォルトの名無しさん
19/10/07 20:55:20.01 E3Y64K5i.net
所有権やらライフタイムやらにうるさいせいで
本質的じゃないボイラープレートがぼこぼこ生えて
コードベース肥大化するせいで
本質的なロジックが簡単にバグ誘発する
くらい長々説明しないとわからない頭の持ち主なんだから仕方ないよ

410:デフォルトの名無しさん
19/10/07 20:58:55.32 0xOqyS7W.net
実際にRust書いたこと全然なさそうなレスだな

411:デフォルトの名無しさん
19/10/07 21:08:43.77 pt1d3CZh.net
馬鹿でも書けると書かされたPHPはどうなりました(ウィスパーヴォイス)

412:デフォルトの名無しさん
19/10/07 21:15:05.45 qj0M/v6c.net
所有権とか参照のライフタイム自体は「メモリの解放責任が今どこにあるか」「参照先がいつまで生きてるか」ってだけでRustの固有概念じゃないよ
C++でもというかC++でこそ所有権と参照のライフタイムはそりゃあもうRust以上に意識しまくらなきゃいけないし
その分ボイラープレートも増える

413:デフォルトの名無しさん
19/10/07 21:19:00.06 /nePTJSU.net
感覚で語ってるからちゃんとした説明ができないんだよ
それを直視出来ずに他人の理解力不足にしてしまう残念さ

414:デフォルトの名無しさん
19/10/07 22:17:46.17 kUyRZ0JH.net
所有権やらライフタイムが本質的じゃないってあたり、お里が知れるな

415:デフォルトの名無しさん
19/10/07 22:22:55.53 gq2Iy46j.net
そこはまぁ、所有権を管理することがプログラミングの目的じゃないから。

416:デフォルトの名無しさん
19/10/07 22:38:08.74 doyjmdg4.net
本来やらなくていいことだしな

417:デフォルトの名無しさん
19/10/07 22:38:10.35 kUyRZ0JH.net
あぁそうだな、型を宣言するは目的じゃないんだったな

418:デフォルトの名無しさん
19/10/07 22:43:04.33 8rzZpShe.net
本来の目的に近いのがテスト
ユーザーとテスターの見分けがつかないぐらい近い

419:デフォルトの名無しさん
19/10/07 23:04:18.39 cl0wfREQ.net
Rustで借用チェッカうっせえってなるのほぼ可変参照の唯一性ルールだよな
これはロジック上安全でもいちゃもんつけてくるパターンが多い
ライフタイムで怒られるときはほぼ確実にこっちが間違ってる

420:デフォルトの名無しさん
19/10/07 23:39:59.63 /QhusHM8.net
スコープ、寿命はc/c++でメモリ配置を考えながら組んでた経験あれば
むつかしい部分ないからね

421:デフォルトの名無しさん
19/10/08 00:25:44.45 la2PCv/l.net
>>402
なんかやたら流行ってるよな
一時期のRubyみたいな感じになってきた
そんな簡単に使える言語じゃないと思うけど
Webアプリならフレームワークあるから似たようなもんなのかね

422:デフォルトの名無しさん
19/10/08 05:22:36.84 ZkhSnZVY.net
流行ってますぅ?
フレームワークといっても薄いのしかないからレールズ使いはDBと接続できなくて詰みそう

423:デフォルトの名無しさん
19/10/08 05:26:47.18 oovVfqie.net
GOの定番フレームワークって存在するの?

424:デフォルトの名無しさん
19/10/08 05:59:52.12 rn8OOmwA.net
プログラミングなんて誰でもできる単純作業になるのがベストなのにすぐマウント取ろうとするやついるよね
ゴチャゴチャ言ってるけどCRUDアプリしか作れないんだろ?

425:デフォルトの名無しさん
19/10/08 07:08:16.00 Jmhr+QJq.net
CRUDを笑う者はCRUDに泣く

426:デフォルトの名無しさん
19/10/08 09:40:11.68 ossa+Aur.net
誰でもできる単純作業と言われても
世の中にはforループすら理解できない人がいるらしいし
また初心者にプログラミングを教える機会があった
URLリンク(cpplover.blogspot.com)


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

541日前に更新/214 KB
担当:undef