[過去ログ] 次世代言語13 Go Rust Swift Kotlin TypeScript (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
282: 2018/09/01(土)12:53 ID:7zNJuyPV(1/2) AAS
センス
283: 2018/09/01(土)13:05 ID:8oBLXasx(1) AAS
>>280
1=1<2だったらどうすんの?
284: 2018/09/01(土)13:19 ID:vTDtzWWE(1) AAS
>>280
コンパイラは大抵
b > a and b < c
のがわかりやすいと判断している。
285
(1): 2018/09/01(土)18:37 ID:/wwW4VSs(1/14) AAS
だれかがいってるように
マジで頭悪い。。。

aho = a < b ← 結果はブーリアン
baka = aho < c ← ブーリアンを大きさで比較してる
< は普通2項演算子で予約されてるからな

3項演算子みたいに使ってない記号を組み合わせるならまだ理解できる
286
(2): 2018/09/01(土)18:51 ID:TMvFd8Nd(1) AAS
>>281
その書き方だと 0 < x < 100 が
0 < x and x<100になるからセンス悪いと思った

x > 0 and x <100

xが0より大きく100より小さいにマッチするような記法がない
287: 2018/09/01(土)19:03 ID:7zNJuyPV(2/2) AAS
ワロた
288
(1): 2018/09/01(土)19:34 ID:+4zR3ral(1) AAS
半角の人はいい加減に自分が馬鹿なことを認めてほしい。
289
(2): 2018/09/01(土)19:34 ID:8XWt4TWp(4/8) AAS
>>285
ineqop ::= ('<' | '<=' | '>' | '>=')
ineqexpr ::= shiftexpr { ineqop shiftexpr }
みたいに定義すりゃいいだけだろ
290
(1): 2018/09/01(土)19:47 ID:/wwW4VSs(2/14) AAS
なにも解決してない
構文規則と演算の規則は
なんの関係もないからな

知恵遅れは構文規則でかければ
自動的に演算規則ができて

なんでも演算できると思ってるらしい
構文規則と解釈が分離できてない

コレが低学歴知恵遅れの限界
ホントな気の毒なぐらい頭悪い
291
(1): 2018/09/01(土)19:51 ID:8XWt4TWp(5/8) AAS
>>290
任意個数のオペランドを持ったノードとして左から順に評価すればいいだけだぞ
CやJSのカンマ演算子なんかと一緒
292: 2018/09/01(土)19:52 ID:/wwW4VSs(3/14) AAS
a < bは
普通にブーリアン返す演算子だからな
普通にブーリアン返すのが正しい演算だ
293: 2018/09/01(土)19:53 ID:/wwW4VSs(4/14) AAS
aho ? baka1 : baka2
全然違う
294: 2018/09/01(土)19:56 ID:4l6T8pEq(3/5) AAS
a < b の値は最初はintだったのをboolに変えたんなら次はMaybeに変えてもいいぞ
295: 291 2018/09/01(土)19:56 ID:8XWt4TWp(6/8) AAS
カンマ演算子と一緒は間違いだな、撤回する
例えば配列リテラル式と一緒だと考えればいい
あれは任意個数のオペランドを引数にとって全体として配列型を返す演算子であると解釈できる
296: 2018/09/01(土)19:57 ID:/wwW4VSs(5/14) AAS
非ゼロを非ゼロでないかを
真偽にしても別に問題はない
297: 2018/09/01(土)20:00 ID:/wwW4VSs(6/14) AAS
真偽値をどういう値にするかどうかなんか関係ないからな
式の評価で真偽判定を行わないという解釈の問題になるからな
298: 2018/09/01(土)20:01 ID:/wwW4VSs(7/14) AAS
とりあえず低学歴知恵遅れは
とてつもなくオツムに問題があるのが
このスレみててもよく分かる

適切な問題の分離のしかたが分かってない
299: 2018/09/01(土)20:03 ID:8XWt4TWp(7/8) AAS
アホだなあ
演算記号が単独で式を構成しなければならないなんて決まりはない
全体で式を構成すると考えれば何の問題もない
300
(4): 2018/09/01(土)20:06 ID:/wwW4VSs(8/14) AAS
a < b < c
まず a < b を評価して
その評価結果を
(a < b) < c
で評価するという決まりだからな
コレが正しい解釈になる

それ以外は不適切な解釈
301: 2018/09/01(土)20:07 ID:Lo8welT8(2/5) AAS
Iconという言語だとこれが、a < b という式は成功した場合の値がbになるから a < b < c が
自然に実現できるんだよな。
302
(1): 2018/09/01(土)20:13 ID:8XWt4TWp(8/8) AAS
>>300
じゃあ関数呼び出し式 (f)(a, b) はどう解釈する?
君のいう正しい解釈のように ((f)(a))(b) と解釈する言語も実際に存在するけど、あまり一般的ではないよね
303: 2018/09/01(土)20:22 ID:rtR930fJ(2/2) AAS
>>300
この辺レガシーな言語なら最初の比較で出るのはbool型になるからcと比較してまともな結果になるはずがないんだよね
304
(1): 2018/09/01(土)20:25 ID:Lo8welT8(3/5) AAS
>>302
二項演算子 a < b と三項演算子 a < b < c が同時に存在するというイメージなんだろうか。
a < b がコンテキストによってboolを返すかbを返すか変化するという方がまだ無理がないな。
305: 2018/09/01(土)20:32 ID:4l6T8pEq(4/5) AAS
if(対象 == オブジェクト)
if(事象)
対象コンテキストと事象コンテキスト
すべてがオブジェクトといったな、あれは嘘だ
306: 2018/09/01(土)20:50 ID:/wwW4VSs(9/14) AAS
関数呼出規約なんかこの話となんの関係もない
まともなオツムしてたら関数呼出で順序の副作用がおきるような書き方なんかしないからな

昔のMCSのコンパイラでも例えば、cdeclとpascal呼出規約があった
cdeclとpascal呼出規約をかえると、結果が変わるような知恵遅れなコード書くヤツなんか
このスレにいるような低学歴知恵遅れしかいない

わかった?
307
(1): 2018/09/01(土)20:56 ID:1LBe8Cyr(1) AAS
>>304
C言語的な演算子の概念に拘るなら、比較式はn項演算だと考えれば理解しやすいかな
実際scalaやF#のmatchとかRubyのifとかはn項演算の例だし、そんなに珍しいもんじゃないよ
308
(1): 2018/09/01(土)21:36 ID:Lo8welT8(4/5) AAS
>>307
構文解析の難易度の話なんだけど、matchなどといった開始語を欠いているうえに
<=や>など他の演算子との混在も考慮しなければならないとなったら、かなり
困難なものになる思うが。
309: 2018/09/01(土)21:39 ID:/wwW4VSs(10/14) AAS
それは可変引数をもった特定の関数呼び出しと意味的同じだからな
低学歴知恵遅れにそんなこといってもしょうがない
310: 2018/09/01(土)21:49 ID:4l6T8pEq(5/5) AAS
学校で教えるのはプログラムではなく物理とか微分とかなので
学歴重視はハードウェア重視や機械学習重視になりがち
311: 2018/09/01(土)21:57 ID:OmCLr4/c(1) AAS
>>308
>>289で終わりじゃね
1-
あと 691 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.015s