18
<<
<
>
>>
1/1
1 ななしのよっしん
2019/11/08(金) 01:47:43 ID: K2izcOIzxF
(コード1)←(条件)→(コード2)
みたいな構造になってるから慣れれば気にならないのかもしれん
2 ななしのよっしん
2019/11/08(金) 05:18:12 ID: KWJfJVzE8l
条件演算子のことを三項演算子って呼ぶの、ヤギのことを動物って呼ぶぐらいの違和感があるんだけど、プログラミング業界では普通なんですか
ヤギ以外にも動物がいるのと同じように、条件演算子以外にも三項演算子はあると思うのですが
3 ななしのよっしん
2019/11/08(金) 07:23:57 ID: 4zizFdO6X3
>>2
マイナーなプログラミング言語はいくらでもあるのでわからないですが、メジャーな言語では条件演算子以外の三項演算子はなかったはず。
>>2の気持ちは分かりますが、違和感の原因のほとんどは慣れの問題。
ところで調べてもtwitterでトレンド入りした理由がわからないのですが、知っている人います?
4 ななしのよっしん
2019/11/08(金) 08:37:56 ID: 268hiOjgoi
>>3
「条件演算子の可読性問題」の項で引用されてるツイートが発端だと思ってた
そこから可読性のお話で拡散されていった的な
少数派だろうけど>>2みたいな事はたまに思うし条件演算子以外の三項演算子が流行って阿鼻叫喚になって欲しいと時々思う
5 ななしのよっしん
2019/11/08(金) 09:55:47 ID: YMcYvYm8ce
6 ななしのよっしん
2019/11/08(金) 14:50:26 ID: 9sOr6hdkNC
書いてる分には楽だけど後で読むときにね…
7 ななしのよっしん
2019/11/09(土) 11:29:21 ID: KWJfJVzE8l
>>3 ゲーム機のことを全部ファミコンって呼ぶようなものかな、と勝手に納得しました…
8 ななしのよっしん
2019/11/09(土) 11:32:11 ID: KWJfJVzE8l
9 ななしのよっしん
2019/11/09(土) 12:23:31 ID: 55Pa5n6o+z
3項演算子って呼ばれてる割に
見た目上は2項演算子を2つ並べてるだけなのが気になる
内部処理の兼ね合いでこんな名前がついたんだろうけど
10 ななしのよっしん
2019/11/09(土) 19:03:34 ID: 4zizFdO6X3
>>4
ありがとうございました。
>>9
カリー化の考え方を応用すれば、何項演算でも二項演算の組み合わせに帰着できるので、その感覚は間違いではないです。
11 ななしのよっしん
2019/11/15(金) 20:48:30 ID: JHV0vmDMxp
12 ななしのよっしん
2020/04/10(金) 19:29:52 ID: MdynaZClwU
>LISPでは、if はフロー制御をするとともに、値を返す条件演算子の機能も兼ねている(短絡評価があるので関数ではないと思う)。
このいかがでしたか?みたいな中途半端な説明は何やねんw 分からないなら書くなよw
Lisp的にはそもそも演算子という概念自体があんまりフィットしないんだが、Common LispだとOperatorは関数かマクロかSpecial Formのどれかで、ifはSpecial Formという分類。SchemeだったらProcedure callの識別子がoperatorで、Procedure call、if、その他ひっくるめてexpresionという扱い。
だから強いて言うならif式で、いずれにしても当然関数ではない。
13 ななしのよっしん
2020/04/11(土) 06:13:12 ID: 4zizFdO6X3
>>12
情報提供ありがとうございました。
ご指摘の表現手法につきましてはニコニコ大百科:編集者向けのページの「ニコニコ大百科は演説をする場所でもあります」などもご参照の上、温かい目で見守って下さいますようお願い申し上げます。
14 ななしのよっしん
2020/04/11(土) 13:17:09 ID: MdynaZClwU
一つだけ。
ニコ百において主観の入った意見を自由にかける点には100%同意する
けど定義がきちんと決まっていて調べればちゃんと分かるただの事実を「俺には分からないから適当に書きます」というのを演説だと思っているならぼくは君を軽蔑する。
だってそれは個人の泣き言であって意見じゃないだろう。内容が間違っていることに文句をいいたいわけじゃない(それは直せばいい)。やる気のない文章を書く言い訳にするなといってるわけね。
15 ななしのよっしん
2020/04/11(土) 15:02:09 ID: 4zizFdO6X3
>>14
演説かどうかは不明ですが、客観的正確性が保証されない主観の混じった情報といった位置づけかと。
実際のところ、指摘された記事の文脈における「関数」が、LISPの関数なのかプログラミング言語全体における関数の概念の総称のようなものかによって、調べることで確定できるかも変わってきますから。>>12には対応させていただきましたが、どちらかというと後者の意味の関数として書いたので、>>12の指摘自体も適切とは限らないですし。
16 ななしのよっしん
2020/04/11(土) 15:05:27 ID: FVkn0OG6BS
条件演算子の定義とかいうこの世でもっともどうでもいいことの一つで争い合う君たちを尊敬するよ
17 ななしのよっしん
2020/04/11(土) 15:12:03 ID: K2izcOIzxF
圏論的には機能から分類するべきで名前の付け方にはあんまり意味がないし名前と機能が一致してなかったり想定される機能が言語でバラバラだったりあるべき機能が実装されてなかったり
そういうのにこだわるほど言語の機能の説明にではなく言語そのものに文句が出るものだろうと思う
18 ななしのよっしん
2020/04/11(土) 15:13:54 ID: K2izcOIzxF
「だからこの言語ではそうだ(だから発言を取り消せ)」という批判をしてもそちらではそうなんですかという答えしか出ないと思う
<<
<
>
>>
1/1
ほめた!
ほめるを取消しました。
ほめるに失敗しました。
ほめるの取消しに失敗しました。