X



次世代言語18 Go Rust Elixir Kotlin TypeScript
レス数が1000を超えています。これ以上書き込みはできません。
0953デフォルトの名無しさん
垢版 |
2020/04/04(土) 18:06:51.89ID:ebeS0Dvl
>>951
型無し糞言語脳って、型チェックがあればそもそも発生しないバグのチェックに何日費やしてるんだろうな

静的型だと0秒で終わるバグを三ヶ月ぐらい掛けて修正してそう
0954デフォルトの名無しさん
垢版 |
2020/04/04(土) 19:42:07.40ID:ebMvcEKD
ワイ「この作業、手動でやるとめんどいしpythonで自動化するかぁ」

型おじさん「……型は?」

ワイ「え?」

型おじさん「簡単なスクリプトだからって舐めてない?引数とかに色んな型が入ること想定してる?」

ワイ「いや……」

型おじさん「あのさぁ!!!!!型が無いと万が一のこともあるよねぇ!?!?!?エラーが起きてサーバぶっ壊れるかもしれないだろ!?!?」

ワイ「サーバが壊れる!?どうしたんですか」

型おじさん「ああああああああ!!!!!!!!」

次の日にそのおじさん退職したわ
前の職場でも型型騒いで辞めたらしい
お前らも気をつけろよ
0957デフォルトの名無しさん
垢版 |
2020/04/04(土) 20:03:33.83ID:dzVJGpcL
>>954
最近多いんだよねー
Pythonとかちょっとかじった程度で
「俺プログラマーやってます」って顔する子

最初の入り口が動的型付け言語なんだよね最近の子って
そんなもんじゃ使いものにならねっての
0958デフォルトの名無しさん
垢版 |
2020/04/04(土) 20:04:21.63ID:0WjGsUHg
長文でクソおもんない作り話書いてて楽しそうですね

Juliaなんかはパフォーマンス向上目的での型の導入だけど、型安定とかわざわざドキュメントに記すなら言語側でそもそも制約を強めてエラーにしてしまうとかでよかったんじゃないかと思ってしまう
0962デフォルトの名無しさん
垢版 |
2020/04/04(土) 21:22:41.67ID:nlgyx7EU
classイコール型みたいな言語だと考慮しないといけない事項が多すぎるし記述量は馬鹿みたいに多い
なので、そういう言語しか知らない人が「静的型付けは煩わしい」と思うのは仕方ないことかもしれん、と思う

一度はOCamlを使って欲しい
OCamlは正格評価だし、型は強力で作りやすくて使いやすいし、OOPとも丁度いい距離を取ってる
smalltalkほど死んじゃいないし、Haskellほどアカデミックじゃない
次世代言語じゃない!と言うなら、ReasonMLでも良い。OCaml -> Javascriptみたいな環境もある
0963デフォルトの名無しさん
垢版 |
2020/04/04(土) 22:28:52.51ID:oHbtMe0Y
>>949
正常系を一発通すだけで十分なのかどうかは仕様次第
ただオープンソースではよくあるのは開発者がテスト軽視してるだけで
動的言語か静的言語か関係ない

>>950
>>921の関数に対してどういうテストをすべきかは仕様次第
仕様は不明だけど考えうる限り網羅的にテストすべきって考え方自体が
テスト設計したことない人の考え方だよ
0965デフォルトの名無しさん
垢版 |
2020/04/04(土) 23:05:06.65ID:ebeS0Dvl
俺は天才と信じている異常者(低学歴・障害者手帳持ち) = 型無し糞言語ガイジ
0966デフォルトの名無しさん
垢版 |
2020/04/04(土) 23:05:29.19ID:wh1EiJLW
web プログラミングのように外は危険がいっぱいという状況と
機械学習のように入力情報は保証されているという状況では
当然テストの質が異なる
議論がすれ違っているのはその辺の違いかと
0968デフォルトの名無しさん
垢版 |
2020/04/04(土) 23:12:02.58ID:H4c+c10U
そもそもテストと型は無関係なんですかそれは
0969デフォルトの名無しさん
垢版 |
2020/04/04(土) 23:21:54.26ID:L/BdUORC
Javaとpythonで争ってたところに
唐突に岡村提案されてて草
0970デフォルトの名無しさん
垢版 |
2020/04/05(日) 00:17:54.25ID:bKlpD2Cq
データに型は必要ない。
データの内容によって命令を使い分ければ良いのだ。

機械語で十分って事では?
0971デフォルトの名無しさん
垢版 |
2020/04/05(日) 00:34:46.44ID:GfhXthds
>>970
確かに。
ポインタも整数も同じ整数レジスタで行うね、マシン語だと。
整数演算で可能な型ならビット数以外の型情報が無い。
0972デフォルトの名無しさん
垢版 |
2020/04/05(日) 00:37:30.12ID:GfhXthds
>>971
それで、マシン語だと間違った演算でもコンパイル時にエラーがでにくかったが
C言語で細かな型が導入されて間違いをコンパイラが発見することに成功した。
ところが最近のスクリプト言語では明確な型宣言がないものが流行り出し、
かつての問題点がまた出てくるようになってしまった。
0973デフォルトの名無しさん
垢版 |
2020/04/05(日) 00:56:47.84ID:d7/7NuuZ
ほう…マシン語でコンパイルを
0974デフォルトの名無しさん
垢版 |
2020/04/05(日) 01:07:09.53ID:N+saKT+1
普通に静的型+型推論でええやん
型書けない言語はもうありえんわ
一時期PHP使ってたことあるけど、正気の沙汰じゃなかった
0977デフォルトの名無しさん
垢版 |
2020/04/05(日) 01:23:18.72ID:GfhXthds
>>973
当時はアセンブルと言っていたが、若い人にはコンパイルといったほうが通じ易いらしいので。
0979デフォルトの名無しさん
垢版 |
2020/04/05(日) 02:12:33.78ID:d7/7NuuZ
今の若い人はマシン語はコンパイルするものと習うのですか?
コンパイル言語を知っている人向けにアセンブルを説明するのに「コンパイルみたいなもの」と説明するのではなく?
0980デフォルトの名無しさん
垢版 |
2020/04/05(日) 02:16:10.20ID:dvIeqTXE
次世代じゃないけどOCamlはええぞ。大体の言語のエッセンスを見直すきっかけになる

ちゃんとした型推論と簡潔な型表記があれば静的型付けでも書くのは面倒じゃないって分かったり
クラスってプログラムの必須構成要素なんかじゃないって気づけたり(むしろ用途は凄く限定されるべきもの)
遅延評価って実際にどんだけ便利なの、とか、分かる
0981デフォルトの名無しさん
垢版 |
2020/04/05(日) 02:16:21.31ID:bKlpD2Cq
アセンブラと機械語は一対一に対応していないんだよな。
配置が決定しないと使えない機械語が有るので。
0982デフォルトの名無しさん
垢版 |
2020/04/05(日) 02:30:40.57ID:k4Q+DqWZ
型がいらない/めんどくさいと主張する層は、
大方自分の意図をメソッドのボディによって表現することしか知らないのだろう

HaskellやらOCamlやらある程度の型システムの強度を持っている言語の経験があるプログラマは、
自分の意図の大部分を型で表現することに慣れているから、型がいらないとか正気か?となる
0983デフォルトの名無しさん
垢版 |
2020/04/05(日) 02:48:33.35ID:bKlpD2Cq
型が無いのはとても良いことです。
0984デフォルトの名無しさん
垢版 |
2020/04/05(日) 02:49:08.14ID:c8uove51
関数型で型が重用されるのは、高階関数によって型が至るところでアドホックに生み出されるため、
型がないとプログラムを正しく組むことが事実上不可能だからだよ
関数型では型は主にプログラムの形式的な正しさを守るためのテクニカルなツールとして用いられていて、
むしろドメインモデルを型で記述するみたいなのは意外にも関数型では重視されなかったりする
0985デフォルトの名無しさん
垢版 |
2020/04/05(日) 02:49:14.27ID:bKlpD2Cq
プログラミングが必要なくなればもっと良いです。
0986デフォルトの名無しさん
垢版 |
2020/04/05(日) 02:50:35.75ID:bKlpD2Cq
でも今はまだ無理です。
素直に型を使いましょう。
0987デフォルトの名無しさん
垢版 |
2020/04/05(日) 03:09:06.75ID:k4Q+DqWZ
>>984
言ってることが何一つ理解できないんだが
ほんとに関数型言語の経験か、型システムを専門に研究した経験のどっちかでもある?
0989◆QZaw55cn4c
垢版 |
2020/04/05(日) 03:31:26.32ID:1D4UZmeK
>>980
haskell と比較した ocaml の利点をぜひ!
0990デフォルトの名無しさん
垢版 |
2020/04/05(日) 06:23:20.59ID:bKlpD2Cq
タイプ数を節約できることでは?
0991デフォルトの名無しさん
垢版 |
2020/04/05(日) 10:17:02.41ID:/6aVgV0B
ん?OCamlってかなり標準ライブラリ豊富って聞いてたけど違うの?
0992デフォルトの名無しさん
垢版 |
2020/04/05(日) 11:56:52.59ID:ZlQTcj/v
そんなに引数に何が来るかわからないという状況が多いのかなあ
このメソッドは何をするかがはっきりしていれば、そんなに型を気にする
必要はないと思うけどなあ。一つのクラスでたくさんのことをさせているのか?
0993デフォルトの名無しさん
垢版 |
2020/04/05(日) 12:17:46.87ID:aRq634GN
メタプログラミングは動的型の方が楽。思いついたアイデアを簡単に試せる
Haskellのマクロとか使いにくいったら無いし、あんなので試行錯誤したくない
RailsもRubyで産まれて、静的型言語に不完全な形でパクられた

だから、ゼロからフレームワークを作る創造的な人達は動的型を好み、
アイデアをパクって実装したり、フレームワーク使うだけのドカタは静的型を好むわけだよ
0997デフォルトの名無しさん
垢版 |
2020/04/05(日) 12:51:43.69ID:9ug9dps/
メタプログラミングの結果を駆使する立場ならともかく
メタプログラミング自体を行う奴らは試行錯誤とかあんましないレヴェルなんじゃね
書いたら動いてバグがほとんど無い(
もちろんテストはする
0998デフォルトの名無しさん
垢版 |
2020/04/05(日) 12:55:49.48ID:bKlpD2Cq
釣りなら釣りと分かるように書かないと、タダの馬鹿だと思われるのでは。
0999デフォルトの名無しさん
垢版 |
2020/04/05(日) 12:58:04.13ID:bKlpD2Cq
>>993 は普通に考えれば釣りなんだけど、本気で顔真っ赤にしながら主張する人もいるから、
どこかに釣りの痕跡残しておかないと、後で釣りでしたと言っても信じてもらえなくなる。
1000デフォルトの名無しさん
垢版 |
2020/04/05(日) 13:01:44.09ID:bKlpD2Cq
縦読み入れておくのが良いのでは。
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 187日 10時間 3分 41秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。

ニューススポーツなんでも実況