次世代言語13 Go Rust Swift Kotlin TypeScriptat TECH
次世代言語13 Go Rust Swift Kotlin TypeScript - 暇つぶし2ch50:デフォルトの名無しさん
18/08/23 05:11:59.22 NPcuqlt3.net
F#のことだな?

51:デフォルトの名無しさん
18/08/23 06:30:41.37 qUGvZ0mY.net
>>49
まあGoのウリは書きやすさではなくて、シンプルさだからなぁ
シンプルだからこそ、学習コストが低くて難しいことができないから、
能力レベルの違うプログラマが集まったチームでもコードの質が均一になって、結果的に品質が上がる
他の次世代言語とは目指すゴールが違うんだよな

52:デフォルトの名無しさん
18/08/23 08:02:28.73 MDTZOYmC.net
そうだな
シンプルなPy


53:honでもガイジ寄せ集めればクソコードになるし いわんやジャップランド土人村のペチパーを集めたペチプロジェクトの酷さときたら脱糞もの



54:デフォルトの名無しさん
18/08/23 08:38:05.91 7q6T71yF.net
具体例を一つも出さないのがクソだ
均一にならなかった例がたくさんあるはずだが
その中からどれを選ぶかにより表現にばらつきが出るのをおそれて具体例を出さない
能力を均一にするよりも具体例の知識を共有する必要がある

55:デフォルトの名無しさん
18/08/23 09:45:04.46 isIliWWJ.net
ドカタに仕事を振るまでもなく、設計してるノリでコードまで出来上がる言語が欲しいもんだ

56:デフォルトの名無しさん
18/08/23 09:53:33.22 9U87suq8.net
富士通がよく作ってるじゃん
仕様書をJavaに変換するツール

57:デフォルトの名無しさん
18/08/23 09:59:38.94 C+ya3+0M.net
そのうちAIがやってくれるだろう。
しかしAIなのでわざわざプログラムなんて作らない。
客から仕様の聞き取りをした後、自分で言われた通りに動く。

58:デフォルトの名無しさん
18/08/23 10:04:59.58 NPcuqlt3.net
>>52
パクチー美味い

59:デフォルトの名無しさん
18/08/23 13:25:48.51 isIliWWJ.net
>>55
よく作ってるwwww

60:デフォルトの名無しさん
18/08/23 13:37:38.61 MXv3H2ra.net
富士通は元請なんだから、意味のない詳細設計書の作成を不要とするよう富士通自身が自社の開発プロセス標準を改定すれば済む話じゃね
自社のプロセスで無意味な成果物が必要だからツール作って無意味なものをでっち上げるって頭おかしいやろ

61:デフォルトの名無しさん
18/08/23 13:49:06.24 PDPMaLlR.net
頭おかしなるで

62:デフォルトの名無しさん
18/08/23 17:38:57.09 NMWQFTIr.net
>>55
ホントに何回作ってるんだろうな

63:デフォルトの名無しさん
18/08/23 21:38:00.02 xcXqcoyb.net
おかげで標準フォーマットの設計書を求めることがどれだけ無駄か証明できてるってのはある。
そういう意味では無駄ではない。

64:デフォルトの名無しさん
18/08/23 21:44:43.25 MDTZOYmC.net
srcが設計書と言い続けて幾星霜
未来はどうなりましたか(小声)

65:デフォルトの名無しさん
18/08/23 22:55:28.70 p0u00SDp.net
これ面白いね
URLリンク(www.benfrederickson.com)

66:デフォルトの名無しさん
18/08/23 22:58:21.72 wSu9Jxc9.net
東京オリンピックの頃にはRubyは消滅してるな
暗黒時代の終焉

67:デフォルトの名無しさん
18/08/23 23:06:41.36 p0u00SDp.net
Rubyそれ自体はそんなになんてことはないんだけどRailsと信者が害悪なんだよね

68:デフォルトの名無しさん
18/08/24 00:11:15.73 XV30yf4o.net
でかいサービスしてるところがRailsやめて移行しましたという話は聞くけど
逆にRailsにしましたという話は聞かないな
技術的負債になりかけてないかね

69:デフォルトの名無しさん
18/08/24 00:25:38.84 iMeaBiRp.net
Rails は随分衰退してるよな

70:デフォルトの名無しさん
18/08/24 00:42:34.11 WpU5tz/B.net
Goはクソ仕様言語
GoogleCloudで使えるから価値があるが
言語単体としてみたらVB以下いやPL/SQL以下やぁ

71:デフォルトの名無しさん
18/08/24 01:05:47.04 TjDOkMEc.net
多くの言語は十徳ナイフを目指してる中、Goはサバイバルナイフを目指してるイメージだわ

72:デフォルトの名無しさん
18/08/24 03:58:17.04 Hi4MdCiB.net
サバイバルちゃん(エコノミックアニマル)
十徳ちゃん(リベラルアーツ)

73:デフォルトの名無しさん
18/08/24 06:54:32.39 ilYYcF1k.net
こじ


74:ったらひしゃげるようなgoがサバイバルナイフってことはない せいぜい爪楊枝だな



75:デフォルトの名無しさん
18/08/24 06:56:32.71 S4vKOstV.net
>>72
そういうことを言ってるんじゃないだろ

76:デフォルトの名無しさん
18/08/24 07:02:18.54 ilYYcF1k.net
質実剛健で実用的って言いたいんだろ?
キッチンバサミを目指したら爪楊枝ができたってこと
滑ってるなら謝る

77:デフォルトの名無しさん
18/08/24 07:16:02.36 hQwHRwtG.net
goはメタプログラミングの弱さをコード生成で乗り切る方針にしてるから、
ジェネリクスマンセーの人にはムカつく言語に見える。

78:デフォルトの名無しさん
18/08/24 07:26:44.81 Hi4MdCiB.net
方針は自由だが他人の感情を方針にするなよ

79:デフォルトの名無しさん
18/08/24 07:52:15.47 9sOu1iJ9.net
いや、googleの中の人は毎回マクロやプリプロセッサにcpuパワーを取られることに問題を感じていて、そこをgoで解決した。

80:デフォルトの名無しさん
18/08/24 08:12:05.07 LUWnMn3S.net
こマ?

81:デフォルトの名無しさん
18/08/24 14:44:12.21 r+WT3UNF.net
ちょっとくらいビルドに時間かかってもいいから
便利機能を追加するのが凡人にはありがたいんだが
なにせGoogle様は天才だから

82:デフォルトの名無しさん
18/08/24 15:15:58.44 Z04qfkhW.net
Googleのプロジェクトっていちいち無駄に複雑なビルドシステム作ってビルドをゲロ遅くするの大好きな印象だけどな
>>77については根本的な問題から目を背けて場当たり的なハックで解決しようとしているという課題解決の典型的なダメパターンを感じる

83:デフォルトの名無しさん
18/08/24 15:48:44.78 Hi4MdCiB.net
でもAIには、10手先のコードを総当たりビルドみたいな古典的な方法もあるから
教師あり学習みたいなテスト駆動開発をやらされる時代が来たらたらどうする?

84:デフォルトの名無しさん
18/08/24 22:07:23.07 NktfgM5i.net
あくまでgoogle社内のシステム言語としてgoは生まれたから。
c++のビルドに45分かかるってなったら
やばいってなるよね

85:デフォルトの名無しさん
18/08/25 08:55:52.56 UzOZyqtt.net
googleっつってもいろんなプロジェクトあるからな。
まともに動かんものたくさん作ってるプロジェクトもあれば、だいぶ頑強に作ってるものもある。

86:デフォルトの名無しさん
18/08/25 09:00:28.66 UzOZyqtt.net
>>80
むしろ最近のなんでも言語仕様で解決しようって発想のが場当たり的に思うけど。
テンプレにしろマクロにしろやってることは変数評価前の展開なわけだからビルド全体から見れば
無理に言語の方でやる必要はないってのは自然な気はするよ。
てかマクロのシンタックスを通常の言語に組み込んでも取り扱いは難しいってことはlispが証明してる。

87:デフォルトの名無しさん
18/08/25 09:31:00.82 HuIv4ttN.net
>>82
C++はインクルードがネックだよね。早くモジュールが標準化してほしいな

88:デフォルトの名無しさん
18/08/25 09:51:31.60 ROrdHzXZ.net
C+++のモジュールって何ン語?

89:デフォルトの名無しさん
18/08/25 09:56:59.56 hQEFe9I2.net
ネックはテンプレートじゃないかな。どうやったらあれを高速化できるか。

90:デフォルトの名無しさん
18/08/25 10:43:27.87 logoA4dK.net
コンパイル単位とかいう黴の生えた糞さえなければ今時テンプレートの処理くらいそんなに重いもんじゃないよ
同じこと何度もやってるから遅いだけ

91:デフォルトの名無しさん
18/08/25 10:53:14.04 6H56IPIL.net
2004年に草案が出て、2017年に試験的実装が出たC++モジュール機能
2020年(C++20)には固めたいらしいけどどうせ延期して2023年とかになって
コンパイラが正式対応するのは2025年くらいかね
URLリンク(www.open-std.org)
URLリンク(www.open-std.org)

92:デフォルトの名無しさん
18/08/25 11:03:08.35 tIKlzgep.net
モジュール化とインポートの方法が適切に標準化されていて、モジュールの論理的な唯一性さえ保証されていれば、
ケチ臭い言語仕様でなくても問題にならないもんたよね
ソース読むたびに依存関係を全部解析し直してたらそら遅いわ

93:デフォルトの名無しさん
18/08/25 11:42:49.15 Z/cdkIbC.net
>>90
これ。go はcode生成だから、
go generateを実行したときにコード解析が入る。そもそもメタプログラミングの考えってコード生成の方が理解しやすいし。

94:デフォルトの名無しさん
18/08/25 12:33:15.68 Dhcl3zmP.net
msvc (マイクロソフトのコンパイラ)はソースのコンパイルが済んでも短期間プロセスが残っていて
連続してソースをコンパイルするときは同プロセスが自動的にコンパイルサーバー的な
動作をするという仕組みで長大な中間ファイルの読み書きを避けつつ
毎回のコード生成をせずに済むようになっている。

95:デフォルトの名無しさん
18/08/25 13:07:49.93 ROrdHzXZ.net
いい加減必要なサインタスクと不要なサインタスクを選別して
新しいC++++++を作った方がええんちゃうか?
魔窟アナルホールと化してるやろ

96:デフォルトの名無しさん
18/08/25 15:54:43.26 2oP8lttP.net
rustが全部解決してくれるよw

97:デフォルトの名無しさん
18/08/25 16:39:47.51 HasZhxb6.net
SwiftってMacアプリ作るのにも最近は主流なの?

98:デフォルトの名無しさん
18/08/25 18:02:02.46 logoA4dK.net
それ以前にMacアプリ作る人がもはやほとんどいない
あえて言うならElectronか主流だろう

99:デフォルトの名無しさん
18/08/25 18:26:18.54 LmKCHa/5.net
そっか?
うちの会社ではふつうに swift やら c++ やらで作ってるが

100:デフォルトの名無しさん
18/08/25 19:28:18.25 ROrdHzXZ.net
時代遅れなんだな、かわいそうに。

101:デフォルトの名無しさん
18/08/25 19:35:37.61 LmKCHa/5.net
そもそも Apple のフレームワークが c (c++) と obj-c(++) と
swift バインディングしかないんだからそれを使うしかない

102:デフォルトの名無しさん
18/08/26 03:03:42.26 RWC7HXM+.net
PythonもRustも嫌い、RubyとGoが好き
JavaとC++が嫌い、CとC#が好き
Linuxも嫌いで、FreeBSDが好きだった
昔は判官びいきとか言って普通だったはずなのに、最近じゃ勝ち馬に乗ろうとするやつばかりで嘆かわしい

103:デフォルトの名無しさん
18/08/26 04:31:18.55 LdpdygnY.net
俺は動的言語とC++とJavaが嫌い

104:デフォルトの名無しさん
18/08/26 07:41:59.24 yJfbxE3G.net
>>101
THISメンスわかるマーン

105:デフォルトの名無しさん
18/08/26 08:05:45.37 HHP/3bjy.net
>>101
では好きな言語は?

106:デフォルトの名無しさん
18/08/26 08:25:14.19 Cum/e9GS.net
今のMacユーザーって昔ながらのMacらしいネイティブなUIをあまり好まない印象だなあ
一般のMacユーザーにはそもそもアプリを入れるという発想すらほとんど無くなりつつあるし、
IntelliJやVSCodeのようなWin臭の強いアプリが流行るのは生粋のマカーからすれば恥辱だろう

107:デフォルトの名無しさん
18/08/26 08:40:28.38 rQHTkjKl.net
プログラマはお手軽安定POSIX互換環境として使ってるだけで
マカーとしてどうたらこうたらなんて意識は無いだろ
もうずっと停滞してるOSだし

108:デフォルトの名無しさん
18/08/26 08:43:06.38 719N


109:pC9M.net



110:デフォルトの名無しさん
18/08/26 09:43:23.58 6inyCsxc.net
判官贔屓とは自爆することではないね
むしろ贔屓しても爆発なんてしないのを知ってる自慢大会
だから本当に爆発しそうなら贔屓しない

111:デフォルトの名無しさん
18/08/26 10:12:45.97 qgj2AJKL.net
>>106
これ。、スリープまわりがちゃんと動くUnix環境。これさえあればあとは別に

112:デフォルトの名無しさん
18/08/26 10:40:11.55 D5em7oXz.net
>>100
Rubyなんてクソ言語が好きって時点でセンスないよ

113:デフォルトの名無しさん
18/08/26 10:48:03.84 3PZrutH3.net
Haskellは勝ち馬に入りますか?

114:デフォルトの名無しさん
18/08/26 11:04:15.30 yJfbxE3G.net
型無し糞言語ガイジどもが負け犬蛆虫ゴミチンカスで死ね
ってのは満場一致のようだね

115:デフォルトの名無しさん
18/08/26 11:13:15.05 6inyCsxc.net
関数型は類似品を統一する意思決定が大体うまくいった
スクリプトも同様
だがCの子孫はその決断ができないから、弱肉強食で自然に決まるだろっていう世界観

116:デフォルトの名無しさん
18/08/26 11:15:38.64 ArPiR9fq.net
■愛されているプログラミング言語ランキング
URLリンク(news.mynavi.jp)
■嫌われているプログラミング言語ランキング
URLリンク(news.mynavi.jp)
■求められているプログラミング言語ランキング
URLリンク(news.mynavi.jp)
マイナビニュース
URLリンク(news.mynavi.jp)

117:デフォルトの名無しさん
18/08/26 11:57:18.75 TzkdF7D/.net
動的型付言語は今でもせいぜい数百行の小さなツールスクリプトをひとりでサクサク書くときには有用だよ
プログラマが十分型情報を覚えていられる規模においては静的型は冗長すぎる
適材適所であるべき姿に戻っただけ
Railsとかで大きめのプロジェクト立ててたのはウンコofウンコだが

118:デフォルトの名無しさん
18/08/26 12:13:23.07 LdpdygnY.net
>>103
C#とKotlin!

119:デフォルトの名無しさん
18/08/26 13:58:27.60 /xip7+3F.net
C#メインで使ってるけど最近の言語と比べるといろんな意味で重い
このスレで良さそうなのを探ってるけどどれも決定打に欠ける

120:デフォルトの名無しさん
18/08/26 14:34:03.61 719NpC9M.net
そもそもrailsみたいになんでもワンパッケージでっていうものは
最初楽で、あとで破綻する典型的パターンでしょ。
喜んで使う奴は総じてモジュラリティーの意識が低い。

121:デフォルトの名無しさん
18/08/26 14:46:19.11 qJXfe6n+.net
>>110
Haskellって何が作れるの?外部のライブラリの親和性あるわけ?

122:デフォルトの名無しさん
18/08/26 14:51:03.90 VBsyc88B.net
>>116
dllがアホみたいに作成される問題?
TSで、node_modulesまでバンドルして1ファイルにコンパイルしてしまって使うとか?
nodeのバイナリはシステムに最低限入ってればバイナリポンで複数バージョン置けるので、2ファイルで済むよ。
windowsだと完全にnode.exeとメインのjsだけ撒いても大丈夫だったと思う。
そのへんGoは気楽だな、やっぱり。

123:デフォルトの名無しさん
18/08/26 14:53:55.50 yJfbxE3G.net
そこでエレクトローンですよ

124:デフォルトの名無しさん
18/08/26 15:19:34.64 VBsyc88B.net
GUIが要らないものをelectronでバンドルするのも馬鹿らしいし、結局そうするとシングルバイナリではなくなるのでは?
そこそこdll増えなかったっけ?

125:デフォルトの名無しさん
18/08/26 15:39:00.76 yJfbxE3G.net
で?言いたいことはそれだけ?

126:デフォルトの名無しさん
18/08/26 15:40:45.21 VBsyc88B.net
聞きたいことはそれだけ。

127:デフォルトの名無しさん
18/08/26 16:41:32.29 GTrkemq7.net
エレクトロンは富豪プログラミングここに極まれりって感じよね。
react-native1.0はよでんかね

128:デフォルトの名無しさん
18/08/26 17:36:58.25 Lq+jppE1.net
>>116
何がどう重いの?

129:デフォルトの名無しさん
18/08/26 22:53:19.64 nA2lBAov.net
正直ゲームとか処理速度を求められる様なものでもない限りはGUIってブラウザ経由にした方が何かと融通利くんじゃないかと思っちゃうんだよね
そういう意味でネイティブのGUIはなくてもいいんじゃないかとか思ってしまう
スマホとかならまた勝手が違うだろうけど

130:デフォルトの名無しさん
18/08/26 23:05:33.74 iDr2keD8.net
PCだとブラウザのパフォーマンスはむしろ大抵のGUIフレームワークを遥かに上回ってるよね

131:デフォルトの名無しさん
18/08/26 23:17:36.35 qu/vhMXg.net
>>127
は?

132:デフォルトの名無しさん
18/08/27 00:09:48.00 73yCiJDJ.net
そいやちょうど今日リストをスクロールさせる小物2個作ってたけどブラウザ由来の方が確かに早かったな

133:デフォルトの名無しさん
18/08/27 00:16:41.37 SUyxnbYp.net
>>127
ソース

134:デフォルトの名無しさん
18/08/27 00:21:31.30 akCpLgr5.net
ブラウザだと常に3~40個タブ開いてるからアクセス面倒くさい

135:デフォルトの名無しさん
18/08/27 00:21:46.62 fwmFZEXy.net
guiよりdomの方が動作が早いは流石になくないか?
間に挟まってるものが多すぎる。
エミュレータでアプリを動かしたほうが早いって言ってるようなもんだ。

136:デフォルトの名無しさん
18/08/27 00:21:47.33 VgSchzxA.net
パフォーマンスじゃなく操作性ならまぁ合ってるんじゃない?

137:デフォルトの名無しさん
18/08/27 00:22:44.93 z59JxWVq.net
ネイティブアプリの一つである chrone や firefox の速度はネイティブアプリの速度を上回ってるよね!

138:デフォルトの名無しさん
18/08/27 00:26:18.67 fwmFZEXy.net
flutterみたいなものもあるしosが提供してるguiフレームワークより、直接描画系を操作して0から書いたほうが早いっていうのはありえなくはないが、
それでもエレクトロンでhtmlを組み立てguiを作るほうが早いと思ってるのは何か考え方がおかしい。

139:デフォルトの名無しさん
18/08/27 00:31:32.03 VgSchzxA.net
実行速度じゃなく開発効率ならブラウザ経由じゃない?
見た目をそこそこオシャレにするのも楽だし

140:デフォルトの名無しさん
18/08/27 00:34:01.89 fwmFZEXy.net
react-nativeを使えればdomの代わりに既存のguiフレームワークを抽象化できるから、パフォーマンスも上がるしデザイン性も確保できる

141:デフォルトの名無しさん
18/08/27 00:37:35.72 VgSchzxA.net
寧ろ逆に昔のVBとかAccessみたいな化石画面をブラウザで再現してた連中どっかで見た気がする
なんなんだろうな

142:デフォルトの名無しさん
18/08/27 00:41:25.82 73yCiJDJ.net
というか最近のは無駄にリッチ過ぎて逆に重い

143:デフォルトの名無しさん
18/08/27 07:34:19.87 16Uk9O2Q.net
無駄にリッチになりすぎて押すボタンが区別つかないので業務に使えないという

144:デフォルトの名無しさん
18/08/27 07:34:37.37 SEMntr9q.net
少なくともWPFやJavaFXみたいなスクラッチでリッチなの作りました系はブラウザに抜かれてるな

145:デフォルトの名無しさん
18/08/27 08:13:32.68 gOoey+yt.net
最近のGUIはスーパーリッチだよなあ

146:デフォルトの名無しさん
18/08/27 22:37:42.68 16Uk9O2Q.net
この中でWSHで使えるようになってるのあります?

147:デフォルトの名無しさん
18/08/28 01:42:10.30 jjg4Adzl.net
>>143
真面目にhta

148:デフォルトの名無しさん
18/08/28 13:32:07.52 YFDGQHp2.net
if checked == true ~
if checked != true ~
みたいな馬鹿馬鹿しい判定がコンパイルエラーになる言語ってない?

149:デフォルトの名無しさん
18/08/28 14:53:05.58 E+vXp7sG.net
>>145
checkedが、if文内で書き換えられる可能性が無いか
その2行の間に書き換えられる可能性が無いか
などなど、2行に別れていてバカバカしくない理由を探されるんじゃないの?
そもそもelseと等価では無いと思うし、


150:やりたきゃマッチがある言語ならケース漏れは指摘してくれるんじゃないかな。



151:デフォルトの名無しさん
18/08/28 16:02:37.80 YFDGQHp2.net
伝わってないようだけど
checked == true や checked != true みたいなバカなコーディングを
コンパイルエラーにしてくれる言語はないのか? 

152:デフォルトの名無しさん
18/08/28 16:07:02.24 0jKV2vdB.net
C言語
-Wbool-compare -Werror

153:デフォルトの名無しさん
18/08/28 17:40:19.38 qNToseDl.net
>>145>>147
既存文法に依存してるので別の文法になる可能性もあるのに意味不明
コミュニケーション苦労しそう

154:デフォルトの名無しさん
18/08/28 17:57:19.80 YFDGQHp2.net
非建設的でコミュ障な回答ありがとうございました
非建設的な馬鹿は死ななけば治らないのですね

155:デフォルトの名無しさん
18/08/28 18:12:51.68 E+vXp7sG.net
>>147
それはバカみたいではないだろう。
checkedがboolとして評価したときに真なのと、checkedがtrueと同値なのは全く別問題じゃん。
if(pHoo)と書くのは正しくない、と言われるならわかるが。
処理系依存の質問ならそう書いてくれ。

156:デフォルトの名無しさん
18/08/28 18:23:45.26 h1lwFjom.net
言語依存だな

157:デフォルトの名無しさん
18/08/28 18:38:49.96 k5A54yFx.net
昔のCはbool型がない
整数やポインタを比較するだけなので問題なかった
自称モダン言語がなぜか古いCの文法を真似するから問題になる

158:デフォルトの名無しさん
18/08/28 18:53:57.34 h1lwFjom.net
if 文の所で計算結果が bool 型以外になる場合にどう扱うかの問題だな。
Cの場合は元々そういう型がなくて0か0以外かでしか見ない。
Javaだとboolean以外になったらコンパイルエラー。

159:デフォルトの名無しさん
18/08/28 19:06:58.35 EkHmS2W9.net
>>147
エアプだけどlintでできるんじゃないの?

160:デフォルトの名無しさん
18/08/28 19:33:05.17 1DJlmxtv.net
>>154
cppでも、falseな変数をインクリメントしたらtrueになったり、
0以外の何を代入しても1になったり、処理系依存だとはいえ無茶苦茶だしな。

161:デフォルトの名無しさん
18/08/28 19:42:21.73 1DJlmxtv.net
ってかchecked != trueをコンパイルエラーにするなら、右辺がtrueであるかを評価してからコンパイルエラーにすべきだろうし
(checked != (true || false))
#define PRODUCTIONMODE true
if((status.foo && param.bar)!=PRODUCTIONMODE)
みたいな式が書けなくなるし、あんまいい事無いだろ。
列挙の網羅性を文句言われるのとはちょっと違うレベルで不便では?

162:デフォルトの名無しさん
18/08/28 19:44:01.42 C1AWmFJx.net
ま、Cは元々その辺が甘く作ってある言語で移植性のあるアセンブラのように使うためのものだからそれはそれで良いと思う。
それが嫌なら別の言語使うか自分で言語作ればいい。仮に自作する技術力がなくても仕様公開しとけば誰かが作ってくれるだろう。

163:デフォルトの名無しさん
18/08/28 19:52:51.98 DQiw1Rb4.net
こういうくだらない話のが盛り上がるんだね。

164:デフォルトの名無しさん
18/08/28 19:53:52.03 hby/BPp+.net
低学歴知恵遅れ以外ないなら意図は理解できる
これはアリ
 if (checkd) {}
 if (!checkd) {}
これはペケ
 if (checkd == true) {}
 if (checkd != false) {}
コレはあり
 checked = true;
 checked = false;
checked自体にもともとブーリアン入ってるから
ブーリアンを比較してるようにみえる
オレには分かる
このスレの低学歴
そらなこのスレの低学歴知恵遅れには意図が分からない
つまり低学歴知恵遅れしかいないこのスレできくのが間違い

165:デフォルトの名無しさん
18/08/28 19:56:06.20 wrKBjmHK.net
半角カナボーイがなにをいうか

166:デフォルトの名無しさん
18/08/28 19:57:15.43 C1AWmFJx.net
そらな?

167:デフォルトの名無しさん
18/08/28 20:02:06.98 hby/BPp+.net
checkd自体に真偽値入ってんのに


168: 真偽値で比較するとか意味不明 分かる オレだったら分かる 著しく知能が低いこのスレのヤツラには分からない ぜんぜん質問と関係ないアホな回答をする



169:デフォルトの名無しさん
18/08/28 20:08:19.98 1DJlmxtv.net
>>163
真偽が入っているとは限らない。
真偽として評価される値は入っているかもしれない。
真と偽と、真として評価されることと偽として評価されることはそれぞれ違うよ。

170:デフォルトの名無しさん
18/08/28 20:09:12.05 hby/BPp+.net
== true
!= false
とかいてるのにアホやわコイツ

171:デフォルトの名無しさん
18/08/28 20:10:28.78 hby/BPp+.net
if (conditon)
trueとかfalseとか
conditonそのものだからな

172:デフォルトの名無しさん
18/08/28 20:18:07.88 7f0I5EGI.net
ここで、むしろ「== true」を付けないとコンパイルエラーになる言語の入場です
URLリンク(ideone.com)
URLリンク(ideone.com)

173:デフォルトの名無しさん
18/08/28 20:35:31.11 2e1yGKgM.net
無理やりnull許容型にした理由は?

174:デフォルトの名無しさん
18/08/28 20:51:44.96 7f0I5EGI.net
>>168
let fromSettingFile = "true"
let checked = Bool(fromSettingFile)
print( type(of:checked) )
--output-----------
Optional<Bool>

175:デフォルトの名無しさん
18/08/28 21:16:31.72 et++zaIG.net
半角さん現るw

176:デフォルトの名無しさん
18/08/28 21:48:28.78 NpcISEiM.net
C#とかKotlinのnullable booleanは true か false との比較がいる

177:デフォルトの名無しさん
18/08/28 21:50:40.71 edw0fiqP.net
checkedがNaNの時等価じゃないだろ

178:デフォルトの名無しさん
18/08/28 21:59:42.32 hby/BPp+.net
ブーリアンをそんな頭悪い使い方するのがそもそも間違い
もはやそれはブーリアンじゃない
ブーリアンにnullいれたりするような頭悪いヤツが書いたコードは
えてしてundefinedになってるような更に上をいくスーパーウンコブーリアンがまじってる

179:デフォルトの名無しさん
18/08/28 22:05:20.31 hby/BPp+.net
true、false、null
とかただの3ステートだからな
コレはもうブーリアンじゃない
1、2、3でも入れとけばいい

180:デフォルトの名無しさん
18/08/28 22:07:30.20 fXAZZcRu.net
>>174
ファジー論理学とか。よく知らんけど。

181:デフォルトの名無しさん
18/08/28 22:10:45.66 hby/BPp+.net
そんなもん表現するなら
0~1の浮動小数点入れるか
0~255の数値いれたりして
度合いを正規化する
3つだけとか貧弱すぎ
超意味ない

182:デフォルトの名無しさん
18/08/28 22:13:15.70 NpcISEiM.net
できる限り nullable を回避すべきなのはそうだけど、APIの結果(json)とかLEFT JOINの結果をデシリアライズする際に nullable を使うことはよくある

183:デフォルトの名無しさん
18/08/28 22:18:01.32 gML/vais.net
>>174
nullとundefinedがまた更に別

184:デフォルトの名無しさん
18/08/28 22:20:54.04 Z8Vrq7+b.net
javascriptのクソ仕様を他に伝搬させるな

185:デフォルトの名無しさん
18/08/28 22:42:29.81 vFWqxH+c.net
>>147
それをアレするのはリンダってゆうんやで

186:デフォルトの名無しさん
18/08/28 22:44:40.54 vFWqxH+c.net
>>159
ワナビーの法則やな
誰でも口出しできる駐輪場の話題が一番盛り上がって恋仲を深めるってやつ

187:デフォルトの名無しさん
18/08/28 22:46:37.27 vFWqxH+c.net
3つの状態を持つのはSQLで三値論理演算ゆうんやで
無学なおまいら何も知らないNOOBYよ

188:デフォルトの名無しさん
18/08/28 22:49:45.78 hby/BPp+.net
DBの設計がまともにできない知恵遅れが設計すると
そういうウンコDBができるとアホが自慢してる

189:デフォルトの名無しさん
18/08/28 22:54:34.25 hby/BPp+.net
知恵遅れが設計したDBはSQLの抽出条件もnvlだらけになる

190:デフォルトの名無しさん
18/08/28 22:57:41.01 ixRLZ+D8.net
いやいや、ディビニストの基本やぞ・・・
三値論理演算できて初めて半人前のお赤飯や
愚か者

191:デフォルトの名無しさん
18/08/28 23:00:33.92 hby/BPp+.net
nullとから文字は違うと
みなわかってることを
みなにドヤ顔で話してるハ


192:゙カとそっくりなヤツが このスレにもいる そいつ知能が著しく低いことは みなしってるがだれもそいつにはいわない オマエはな、そういう自覚はもっといやほうがいい



193:デフォルトの名無しさん
18/08/28 23:01:53.05 hby/BPp+.net
DBでもnull可能なブーリアン入れる知恵遅れなんかまずいない

194:デフォルトの名無しさん
18/08/28 23:03:02.22 ixRLZ+D8.net
クソバカ半角がいじw
ナールを正しく扱えて初めて半人前だのクラッカーボレーだッッッ(ジョジョッ)

195:デフォルトの名無しさん
18/08/28 23:35:15.67 hby/BPp+.net
マーケティングリサーチなんかの調査票で
はい、いいえという選択肢がない項目でも
DKやOMITが付与されることがある
クロス集計するときそれがカテゴリになったり除外されることがある
知恵遅れにそういうのを放置してやらせると
そのまんま見た目でそういう変数ですらブーリアンにしてしまう
このスレにはその程度の知能のヤツがウヨウヨいる

196:デフォルトの名無しさん
18/08/28 23:41:51.99 g4U2T+jR.net
最初の条件は誰もbooleanとは言ってないのにねぇ>コレはもうブーリアンじゃない

197:デフォルトの名無しさん
18/08/28 23:46:10.87 hby/BPp+.net
明らかにブーリアン
コレをブーリアンのことをいってないと考えれるなら
オツムに軽度の障害がある
145 名前:デフォルトの名無しさん[sage] 投稿日:2018年08月28日(火) 13時32分07秒52 [昼] ID:YFDGQHp2 [1/3]
if checked == true ~
if checked != true ~
みたいな馬鹿馬鹿しい判定がコンパイルエラーになる言語ってない?
147 名前:デフォルトの名無しさん[sage] 投稿日:2018年08月28日(火) 16時02分37秒80 [夕方] ID:YFDGQHp2 [2/3]
伝わってないようだけど
checked == true や checked != true みたいなバカなコーディングを
コンパイルエラーにしてくれる言語はないのか? 
150 名前:デフォルトの名無しさん[sage] 投稿日:2018年08月28日(火) 17時57分19秒80 [夕方] ID:YFDGQHp2 [3/3]
非建設的でコミュ障な回答ありがとうございました
非建設的な馬鹿は死ななけば治らないのですね

198:デフォルトの名無しさん
18/08/28 23:49:14.00 hby/BPp+.net
オツムに軽度の障害があるから
D:YFDGQHp2 ← コイツの質問の意図も読みとれないワケ
で、このスレの池沼たちは質問と無関係なトンチンカンなアホなレスばっかりしてるワケ
わかった?

199:デフォルトの名無しさん
18/08/28 23:53:33.19 rofHFqPM.net
ていうかこれ質問が悪いよね
どっちにも解釈できる

200:デフォルトの名無しさん
18/08/29 00:39:46.87 WBp+gbgf.net
型無し糞言語が能無し糞ガイジを産む
負のwhile (true) ループ

201:デフォルトの名無しさん
18/08/29 00:40:46.22 IJ3hSlk/.net
ローコンテキスト文化なところでハイコンテキストな質問をする方が悪いとしか

202:デフォルトの名無しさん
18/08/29 01:17:12.49 pYcA3LnZ.net
コミュ症だから意図がよみとれないんじゃないか

203:デフォルトの名無しさん
18/08/29 01:48:53.74 0CwGsWHn.net
スレ的にJuliaはどう?
1.0なったのに全然話題になってないな

204:デフォルトの名無しさん
18/08/29 01:58:33.25 mxENW9mj.net
結局 if err != nil 無くそうとしてるじゃねーか
今までの主張はなんだったんだ
URLリンク(go.googlesource.com)

205:デフォルトの名無しさん
18/08/29 02:17:33.77 Md5DkR0O.net
Goのエラーハンドリングは先進的だとかジェネリックなんか必要ないとか言ってドヤ顔してた人は今どんな気持ち?w

206:デフォルトの名無しさん
18/08/29 06:25:28.09 FkuJoTq5.net
Google様の仰られる言葉は全て正しいんやで

207:デフォルトの名無しさん
18/08/29 07:30:40.82 4JuKKSSB.net
>>199
先進的だとか必要ない、ではなくてどちらも弊害が多い、の間違いだろ

208:デフォルトの名無しさん
18/08/29 07:40:17.12 GqBN8ZFM.net
これでgoも一般のクソ言語の仲間入りだね。

209:デフォルトの名無しさん
18/08/29 07:55:44.86 skfmkunk.net
エラーハンドリングとジェネリクスは弊害か多い??
エラーハンドリングなんかしちゃだめだって主張??

210:デフォルトの名無しさん
18/08/29 08:26:21.14 azUIVUCr.net
誰かgo2の解説頼む。

211:デフォルトの名無しさん
18/08/29 08:50:24.08 DW0Jb9Fq.net
conditionはexpressionだろ
checkedも、checked==trueもexpressionじゃん。
はい、いいえ以外の選択肢はあるよ。無回答だ。
無回答という値を作ってもいいが、普通はnullだろ。
そのためのnullだ。集計してもnullに食われる「ようになってる」。

212:デフォルトの名無しさん
18/08/29 08:54:19.80 Md5DkR0O.net
NOと言えない島猿

213:デフォルトの名無しさん
18/08/29 09:53:38.09 3Y4hBlHJ.net
> if checked == true ~
> if checked != true ~
これなぁ
プルリクでこれきたらなおさせてたが最近は認めてる
バカはバカなりに特定の値で分岐するときのイディオムとしてifと==を組み合わせて使うって覚えてるんだよ
intであろうがboolであろうが同じ
そう思うとこれはこれで一貫性ある
実際これが読みにくいって感じることはないし
コンパイラは黙って最適化するし
なので許すことにした
自分では書かないが

214:デフォルトの名無しさん
18/08/29 10:34:17.12 FFtlPXOG.net
Swift大勝利じゃないか
C++もgoも後を追ってくる

215:デフォルトの名無しさん
18/08/29 10:41:05.27 f5noujOQ.net
winでswift使わせてよー

216:デフォルトの名無しさん
18/08/29 11:47:51.64 DBASjTr8.net
nullだのエラー処理だの言ってるのはモナド
モナドは型を書かないと意味わからないし
その型はジェネリクスのようなものがないと宣言できない

217:デフォルトの名無しさん
18/08/29 12:02:48.71 u5ADcZZb.net
>>208
そのSwiftはRustの後を追ってる
やっぱりRustなんだよなぁ

218:デフォルトの名無しさん
18/08/29 12:17:51.45 DW0Jb9Fq.net
falsyなものが無い言語ならどっちでも良いとは思うけど、どっちにも言い分はあると思う。
APIの戻り値なんかが変わったときに
「何もしないで同じ動きをして欲しい。自動テスト転ばないのが唯一の正義」派と
「明確に対応したい。転ばない自動テストが間違ってる。そもそもちゃんとアサーションしろ、本当にtrueでもfalseでもない状態はありえないか?メモリ化けとかどーすんの?」派の違いだと思うわ。
結局falsyな言語だと「本当にfalse」と「falseではないがfalseとみなされる」を、混同したい場合も区別したい場合もあるんだし。

219:デフォルトの名無しさん
18/08/29 13:43:29.30 DBASjTr8.net
Perlでは数値と数値の比較には==を、文字列と文字列の比較にはeqという演算子を使う
数値と文字列の比較はない
数値なら0だけがfalse
それ以外にfalsyな値は存在しない

220:デフォルトの名無しさん
18/08/29 16:28:08.12 A/ggV7aH.net
>>207
俺もこれだわ
二重否定以外は大抵許してる
3値論理の必要性は分かるけど、開発メンテしていく上では邪魔なので基本使わせない

221:デフォルトの名無しさん
18/08/29 16:32:06.97 7N1N66pK.net
Swiftなんかあったの?

222:デフォルトの名無しさん
18/08/30 00:00:20.35 UmVQrNZ9.net
> if checked == true
この流儀?を許したら
if checked == true
if checked != true
if checked == false
if checked != false
の四兄弟がセットで押し寄せてくる
さらに
if (n > 10) == true
if (enabled & visible) = true
if checked == true && enabled == true && visible == true
なども体をねじ込んでくる
さあ楽しくなってくるじゃないか

223:デフォルトの名無しさん
18/08/30 00:08:34.03 K2XYaSpY.net
ワナビーの凡人法則
糞どうでもいい低レベルな議論しかできないヤツが
糞どうでもいい話に飛びついて
ここぞとばかりに高説ぶる

死ねば
ええんちゃうか?ωωω

224:デフォルトの名無しさん
18/08/30 00:14:26.32 mi8K02wj.net
オブジェクト指向でいうとboolに==メソッドがあるのが悪い
もしObjectクラスの==をboolが継承しているなら、Objectクラスが存在するのが悪い

225:デフォルトの名無しさん
18/08/30 00:47:04.12 DrSr47TU.net
オメーガ?

226:デフォルトの名無しさん
18/08/30 00:48:13.84 K2XYaSpY.net
だからさー!君たちワナビーの法則やっちゅうねんバカなのか!

227:デフォルトの名無しさん
18/08/30 00:55:49.05 H/5/FX9R.net
>>218
boolに比較演算子がないと型パラメータとして渡す時に要らん制�


228:タが増えるだろ



229:デフォルトの名無しさん
18/08/30 01:13:21.94 7OC3inua.net
>>218
論理演算子に同値が定義されていないのも色々と書きにくそう
notとandとorで書けるけど

230:デフォルトの名無しさん
18/08/30 01:21:47.57 /0YXnEsV.net
2項比較演算子がダメということじゃないからな
  aho == true
  true == aho
 のブーリアンのリテラルが入ってる2項等価演算子はダメ
  aho == baka
 の2項等価演算子はアリ
わかった?


231:デフォルトの名無しさん
18/08/30 01:24:38.44 /0YXnEsV.net
つまり、trueとfalseは
代入以外に使えないようにすればいい

232:デフォルトの名無しさん
18/08/30 03:28:31.53 IxfOs83u.net
>>213
空リストとか空文字列ってfalse扱いじゃなかったっけ?

233:デフォルトの名無しさん
18/08/30 03:31:50.70 fTlUE3DU.net
コミュニケーションじゃなくてプログラミングスタイルで繋がりたいんだろうが
実はそっちのほうがもっと無理

234:デフォルトの名無しさん
18/08/30 04:38:17.14 mi8K02wj.net
語学じゃなくて心理学とか脳科学とかでシンギュラリティしたいんだろ
そっちのほうが無理

235:デフォルトの名無しさん
18/08/30 07:11:50.68 K2XYaSpY.net
ワイノ話を聞かないとは無能揃いだね?

236:デフォルトの名無しさん
18/08/30 07:34:59.92 wxlIjpoe.net
半角の人はなぜ駄目かを全く読んでないのな。

237:デフォルトの名無しさん
18/08/30 07:39:56.35 K2XYaSpY.net
てゅかさ。深夜に書き込んでるってことはおまいら無職だろ
無職風情がワイ様無視してワナビー法則でイキってるとかマジゴミだろωωω

238:デフォルトの名無しさん
18/08/30 08:11:26.07 ff0XXJ3a.net
無駄だからそんな書き方しなくていいってだけで、それ自体何か害があるわけじゃないから
文法上禁止してしまう理由はないと思うがなぁ。
レビューで指摘するのはそれがコードスメルだからってだけだろう。

239:デフォルトの名無しさん
18/08/30 09:09:42.55 hUyiY/SJ.net
a == trueが禁止されたのでa ^ !trueに置換しておきました

240:デフォルトの名無しさん
18/08/30 09:55:24.67 K2XYaSpY.net
マジこのワナビーの法則の話いつまで続くんや
夏厨死ねよ

241:デフォルトの名無しさん
18/08/30 11:01:42.71 e8DSDd9g.net
>>225
文字列なら "" と "0" がfalse
数値なら0だけがfalse

242:デフォルトの名無しさん
18/08/30 11:59:46.41 A5Nytyjy.net
perlには '0 but true' という、数値として 0 と比較すると一致するが if でそのまま使うと true 扱いになる特殊な値があったりする。

243:デフォルトの名無しさん
18/08/30 12:14:56.63 6I1bUcuW.net
次世代を担うに相応しい真偽評価戦略を語るべし

244:デフォルトの名無しさん
18/08/30 13:15:05.68 io9LYUoZ.net
次世代はif文が消えjsのthen的なものになります

245:デフォルトの名無しさん
18/08/30 13:47:18.38 6sRyznT+.net
うえー

246:デフォルトの名無しさん
18/08/30 13:49:00.74 e8DSDd9g.net
数値の偽は0
文字列の偽は "" "0"
オブジェクトの偽は null "" "0" その他
階層が深いほど偽が多い法則

247:デフォルトの名無しさん
18/08/30 13:57:19.48 k9/abrGo.net
次世代言語にはifもforもない

248:デフォルトの名無しさん
18/08/30 14:29:05.96 dTt5OSNq.net
アスペはこういうところに拘ってしまって先に進めないんだよね

249:デフォルトの名無しさん
18/08/30 14:47:28.76 e8DSDd9g.net
飯炊き三年握り八年

250:デフォルトの名無しさん
18/08/30 18:20:12.51 fWBwT80E.net
ちゃんと読んでないけど
boolなら
if checked / if !checked
でいいやん

251:デフォルトの名無しさん
18/08/30 18:57:30.25 JpHgwHVB.net
数値なりリストなりを暗黙に真偽値比較せずに
明確にすればいいだけじゃないの?

252:デフォルトの名無しさん
18/08/30 19:30:44.87 7mcJbcKo.net
直和な幽霊型でCheck|Uncheckを型に持たせて管理すればいいよ

253:デフォルトの名無しさん
18/08/30 21:15:21.94 +O/rJ+xn.net
if で boolean 型以外を許さず、更に boolen 型の値の比較も許さない言語を作れば解決。

254:デフォルトの名無しさん
18/08/30 21:51:23.27 ff0XXJ3a.net
というかそれが普通なんだけどな。
型がないB


255:言語の特徴を受け継いだCがなまじヒットしてしまったせいで 後続の言語もその悪習を真似るようになってしまった。



256:デフォルトの名無しさん
18/08/30 22:07:01.18 Ah+zwqqR.net
こんなしょうもないことに時間使ってもバグは減らないっていう事実にそろそろ気付こうよ。

257:デフォルトの名無しさん
18/08/30 22:21:35.61 /0YXnEsV.net
低学歴知恵遅れが書いたなぜダメかを読んでない?
まず読む必要がない
頭悪すぎてお話にならないからな
適切にダメなケースを書いてるのはオレしかいないからな
当然、低学歴知恵遅れのレスなんかどうでもいいことになる

258:デフォルトの名無しさん
18/08/30 22:48:08.67 39ABXWI9.net
まず読む必要がない事を書いてくれてありがとうな

259:デフォルトの名無しさん
18/08/30 23:10:41.48 e8DSDd9g.net
些細なヘイトスピーチもきっちりデバッグしてる欧米の文化の方がITの才能がある

260:デフォルトの名無しさん
18/08/31 02:17:18.78 /VjCJv9E.net
>>233
ワナビーの法則
って何?
ググってもこのスレしか出てこないんだが
URLリンク(i.imgur.com)

261:デフォルトの名無しさん
18/08/31 05:21:39.77 J05bSyHo.net
>>248
ホントこれ

262:デフォルトの名無しさん
18/08/31 11:41:15.33 YfdxjJ3c.net
無益なものを批判する暇があったら
有害なものを批判しろよ

263:デフォルトの名無しさん
18/08/31 19:26:31.62 waeuZPFW.net
右の睾丸を触られたら左の睾丸を触りなさい

264:デフォルトの名無しさん
18/08/31 19:58:49.98 YfdxjJ3c.net
刑を執行してはいけないが、裁判と有罪確定まではやっていい

265:デフォルトの名無しさん
18/08/31 21:20:12.74 4ZfpOo1s.net
ギルティ
死刑!

266:デフォルトの名無しさん
18/08/31 23:12:29.91 hg6LXyjO.net
>>243
それが常人のイディオム
bool型の変数に説明的な変数名をつけるだけで
ifの可読性が増すなんてことは
自分で思いつくか
人のを見て気付くか
人に教わって知るか
いずれかの方法で自分のものにするはず
たぶんアホは変数名をflagなどにしてて
「フラグがTRUEのとき」などという覚え方をしてるからこそ
if flag_foo == true などという書き方になるんやろな、知らんけど

267:デフォルトの名無しさん
18/08/31 23:21:27.80 7Lf8QxyM.net
いつまで初心者な話題ばっかやってんの
つまりはそういうことなの?

268:デフォルトの名無しさん
18/09/01 02:13:15.43 BxU4Z/sw.net
a < b < c みたいな連続比較(演算子の連結?)って、なんで流行らないの?

269:デフォルトの名無しさん
18/09/01 02:24:21.20 I7Wpi/+P.net
Python、Julia、Mathematica辺りはできるね
意外にMatlabはできない

270:デフォルトの名無しさん
18/09/01 07:28:39.38 sv0UK566.net
>>260
大して簡素化しない割には、ANDしか対応できないからじゃね?

271:デフォルトの名無しさん
18/09/01 07:59:09.68 O36P/gVq.net
rangeにinかなにかでよさげ

272:デフォルトの名無しさん
18/09/01 08:01:36.87 FRKhXQkv.net
>>260
文法が複雑になるし、等値比較の扱いをどうするかが難しい
a < b < c == e >= f
これC系の優先順位に倣うと (a < b < c) == (e >= f) が自然だろうけど、たぶんこの式を書いた人の期待していた結果ではないだろう

273:デフォルトの名無しさん
18/09/01 10:17:17.34 y+HuzDXi.net
数学では a < b < c って表記は良くあるけど
a < b < c = e はそんなに出てこない気がする
そして a < b < c = e >= f はガイジが書いたとしか思えない

274:デフォルトの名無しさん
18/09/01 10:18:25.01 /xY33kfI.net
でも個人開発じゃなかったらガイジも書くから

275:デフォルトの名無しさん
18/09/01 10:31:17.38 8XWt4TWp.net
>>265
そんなに出てこなかろうが書けなきゃ一貫性に欠ける
a < b <= c の形に限るんなら a in (b..c] の方が美しいわ

276:デフォルトの名無しさん
18/09/01 10:56:33.83 y+HuzDXi.net
>>267
あんまり出てこないって言っただけで、>>265の二つめは出来た方が良いと思うよ。三つめガイジだけど
で、>>261に挙げられた言語は出来ないの?出来るんじゃね?

277:267
18/09/01 11:13:45.36 8XWt4TWp.net
>>268
その上で、範囲チェックにしか使えないんなら範囲チェックに特化した表記の方が望ましいという意見なんだけど、言ってる意味わかる?
表記上は一般的に広く使えそうに見えて実は特定の限定的なパターンしか認めないってのは典型的なダメ言語だよ

278:デフォルトの名無しさん
18/09/01 11:16:35.64 33FbYz6y.net
「数学では~」っていう言い方見ると悲しくなる
高校数学やそれに毛の生えたようなとこしか触ってないのに
それをもって「数学では~」などと笑止千万
これは>>265にあてつけたんじゃなくて
昔からずーっと思ってたこと

279:デフォルトの名無しさん
18/09/01 11:19:23.27 4l6T8pEq.net
まさかMaybeが出来ない初心者なんていませんよね
foo p x y = if p y x then Just x else Nothing
bar m p = maybe False p m
(a <= b && b < c && c == d)
== ((Just a >>= foo (<=) b >>= foo (<) c) `bar` (==d))

280:デフォルトの名無しさん
18/09/01 11:19:31.04 y+HuzDXi.net
>>269
いや、だからキモいしガイジしか書かないけど、書けた方が良いって言ってんじゃん
で?>>261の言語は書けるんじゃないの?

281:デフォルトの名無しさん
18/09/01 11:27:25.51 pVUyxPYl.net
数学でも a < b > c みたいな書き方はしないし
許してる言語もないだろ

282:デフォルトの名無しさん
18/09/01 11:37:23.08 8XWt4TWp.net
>>273
それが文法上許されないことを説明する一貫性のある理由がない
<と<=を特別扱いみたいな一貫性の欠片もないガイジ仕様にするくらいなら要らない、という設計判断は十分にありうる

283:デフォルトの名無しさん
18/09/01 11:47:25.54 4l6T8pEq.net
必要か不要かを判断するコストは実際にはものすごく高い
簡単に作れるかどうかで判断してたくさん自由に作ってどれかひとつ成功すればいい

284:デフォルトの名無しさん
18/09/01 11:52:13.22 VcQ5WdQC.net
Juliaだと a < b > c は合法だった
多分 a < b && b > c を計算してるっぽい
しかし文法的に一貫性があるのはわかるのだが
これが書けてしまうのはやはり気持ち悪いな
この手のでRangeで書きにくいやつだと、
行列の上三角成分だけ舐めるときに
1 <= i < j <= n
とか書けるとちょっとだけ嬉しい

285:デフォルトの名無しさん
18/09/01 12:00:11.31 bn2L0QEe.net
a < f(b) < c
fは何回呼ばれるべきか

286:デフォルトの名無しさん
18/09/01 12:11:13.69 xDnWzldj.net
理想的にfが純粋関数でbの値がconstで1回だけ評価が素直だと思うが

287:デフォルトの名無しさん
18/09/01 12:11:17.71 Lo8welT8.net
pythonの場合、 a < b という式の型がboolなのに (a < b) < c ができてしまうというのが
非常に分かりにくいね。なんというか、むりやり捻じ込んだ感。

288:デフォルトの名無しさん
18/09/01 12:14:38.95 +BAvd4bn.net
a < b < c

b > a and b < c
どっちがわかりやすいか?

289:デフォルトの名無しさん
18/09/01 12:36:45.65 rtR930fJ.net
なんで
a < b and b < c
じゃないの?

290:デフォルトの名無しさん
18/09/01 12:53:55.22 7zNJuyPV.net
センス

291:デフォルトの名無しさん
18/09/01 13:05:45.26 8oBLXasx.net
>>280
1=1<2だったらどうすんの?

292:デフォルトの名無しさん
18/09/01 13:19:35.77 vTDtzWWE.net
>>280
コンパイラは大抵
b > a and b < c
のがわかりやすいと判断している。

293:デフォルトの名無しさん
18/09/01 18:37:02.95 /wwW4VSs.net
だれかがいってるように
マジで頭悪い。。。
aho = a < b ← 結果はブーリアン
baka = aho < c ← ブーリアンを


294:大きさで比較してる < は普通2項演算子で予約されてるからな 3項演算子みたいに使ってない記号を組み合わせるならまだ理解できる



295:デフォルトの名無しさん
18/09/01 18:51:27.82 TMvFd8Nd.net
>>281
その書き方だと 0 < x < 100 が
0 < x and x<100になるからセンス悪いと思った
x > 0 and x <100
xが0より大きく100より小さいにマッチするような記法がない

296:デフォルトの名無しさん
18/09/01 19:03:39.36 7zNJuyPV.net
ワロた

297:デフォルトの名無しさん
18/09/01 19:34:08.16 +4zR3ral.net
半角の人はいい加減に自分が馬鹿なことを認めてほしい。

298:デフォルトの名無しさん
18/09/01 19:34:46.46 8XWt4TWp.net
>>285
ineqop ::= ('<' | '<=' | '>' | '>=')
ineqexpr ::= shiftexpr { ineqop shiftexpr }
みたいに定義すりゃいいだけだろ

299:デフォルトの名無しさん
18/09/01 19:47:34.46 /wwW4VSs.net
なにも解決してない
構文規則と演算の規則は
なんの関係もないからな
知恵遅れは構文規則でかければ
自動的に演算規則ができて
なんでも演算できると思ってるらしい
構文規則と解釈が分離できてない
コレが低学歴知恵遅れの限界
ホントな気の毒なぐらい頭悪い

300:デフォルトの名無しさん
18/09/01 19:51:19.20 8XWt4TWp.net
>>290
任意個数のオペランドを持ったノードとして左から順に評価すればいいだけだぞ
CやJSのカンマ演算子なんかと一緒

301:デフォルトの名無しさん
18/09/01 19:52:39.70 /wwW4VSs.net
a < bは
普通にブーリアン返す演算子だからな
普通にブーリアン返すのが正しい演算だ

302:デフォルトの名無しさん
18/09/01 19:53:45.56 /wwW4VSs.net
aho ? baka1 : baka2
全然違う

303:デフォルトの名無しさん
18/09/01 19:56:29.75 4l6T8pEq.net
a < b の値は最初はintだったのをboolに変えたんなら次はMaybeに変えてもいいぞ

304:291
18/09/01 19:56:58.30 8XWt4TWp.net
カンマ演算子と一緒は間違いだな、撤回する
例えば配列リテラル式と一緒だと考えればいい
あれは任意個数のオペランドを引数にとって全体として配列型を返す演算子であると解釈できる

305:デフォルトの名無しさん
18/09/01 19:57:48.29 /wwW4VSs.net
非ゼロを非ゼロでないかを
真偽にしても別に問題はない

306:デフォルトの名無しさん
18/09/01 20:00:11.15 /wwW4VSs.net
真偽値をどういう値にするかどうかなんか関係ないからな
式の評価で真偽判定を行わないという解釈の問題になるからな

307:デフォルトの名無しさん
18/09/01 20:01:12.82 /wwW4VSs.net
とりあえず低学歴知恵遅れは
とてつもなくオツムに問題があるのが
このスレみててもよく分かる
適切な問題の分離のしかたが分かってない

308:デフォルトの名無しさん
18/09/01 20:03:28.96 8XWt4TWp.net
アホだなあ
演算記号が単独で式を構成しなければならないなんて決まりはない
全体で式を構成すると考えれば何の問題もない

309:デフォルトの名無しさん
18/09/01 20:06:47.42 /wwW4VSs.net
a < b < c
まず a < b を評価して
その評価結果を
(a < b) < c
で評価するという決まりだからな
コレが正しい解釈になる
それ以外は不適切な解釈

310:デフォルトの名無しさん
18/09/01 20:07:36.43 Lo8welT8.net
Iconという言語だとこれが、a < b という式は成功した場合の値がbになるから a < b < c が
自然に実現できるんだよな。

311:デフォルトの名無しさん
18/09/01 20:13:43.79 8XWt4TWp.net
>>300
じゃあ関数呼び出し式 (f)(a, b) はどう解釈する?
君のいう正しい解釈のように ((f)(a))(b) と解釈する言語も実際に存在するけど、あまり一般的ではないよね

312:デフォルトの名無しさん
18/09/01 20:22:54.83 rtR930fJ.net
>>300
この辺レガシーな言語なら最初の比較で出るのはbool型になるからcと比較してまともな結果になるはずがないんだよね

313:デフォルトの名無しさん
18/09/01 20:25:39.05 Lo8welT8.net
>>302
二項演算子 a < b と三項演算子 a < b < c が同時に存在するというイメージなんだろうか。
a < b がコンテキストによってboolを返すかbを返すか変化するという方がまだ無理がないな。

314:デフォルトの名無しさん
18/09/01 20:32:20.02 4l6T8pEq.net
if(対象 == オブジェクト)
if(事象)
対象コンテキストと事象コンテキスト
すべてがオブジェクトといったな、あれは�


315:Rだ



316:デフォルトの名無しさん
18/09/01 20:50:05.62 /wwW4VSs.net
関数呼出規約なんかこの話となんの関係もない
まともなオツムしてたら関数呼出で順序の副作用がおきるような書き方なんかしないからな
昔のMCSのコンパイラでも例えば、cdeclとpascal呼出規約があった
cdeclとpascal呼出規約をかえると、結果が変わるような知恵遅れなコード書くヤツなんか
このスレにいるような低学歴知恵遅れしかいない
わかった?

317:デフォルトの名無しさん
18/09/01 20:56:58.84 1LBe8Cyr.net
>>304
C言語的な演算子の概念に拘るなら、比較式はn項演算だと考えれば理解しやすいかな
実際scalaやF#のmatchとかRubyのifとかはn項演算の例だし、そんなに珍しいもんじゃないよ

318:デフォルトの名無しさん
18/09/01 21:36:47.04 Lo8welT8.net
>>307
構文解析の難易度の話なんだけど、matchなどといった開始語を欠いているうえに
<=や>など他の演算子との混在も考慮しなければならないとなったら、かなり
困難なものになる思うが。

319:デフォルトの名無しさん
18/09/01 21:39:24.86 /wwW4VSs.net
それは可変引数をもった特定の関数呼び出しと意味的同じだからな
低学歴知恵遅れにそんなこといってもしょうがない

320:デフォルトの名無しさん
18/09/01 21:49:16.31 4l6T8pEq.net
学校で教えるのはプログラムではなく物理とか微分とかなので
学歴重視はハードウェア重視や機械学習重視になりがち

321:デフォルトの名無しさん
18/09/01 21:57:05.44 OmCLr4/c.net
>>308
>>289で終わりじゃね

322:デフォルトの名無しさん
18/09/01 22:17:22.89 /wwW4VSs.net
知恵遅れに理解はムリ
知恵遅れの自覚がまったくいない

323:デフォルトの名無しさん
18/09/01 22:26:51.47 Lo8welT8.net
>>289はshiftexprの定義がないんで厳密なところがわからんけど、後者のshiftexprは
ineqexprじゃないの?

324:デフォルトの名無しさん
18/09/01 22:39:41.95 bEXb+lmV.net
>>313
合ってるよ
これでわかるか?
比較式 ::= 低優先順位の式 {比較演算子 低優先順位の式}
{}はEBNFで一回以上の繰り返し

325:デフォルトの名無しさん
18/09/01 22:40:56.19 bEXb+lmV.net
失礼
低優先順位じゃなくて高優先順位の式の間違いだな

326:デフォルトの名無しさん
18/09/01 22:41:42.09 /wwW4VSs.net
>>300でオワリ
それ以外は知恵遅れの寝言だからな

327:デフォルトの名無しさん
18/09/01 22:45:20.98 /wwW4VSs.net
構文解析できればなんでもできると思い込んでるからな
低学歴知恵遅れには、その先の解釈のレベルまでおとしこむ知能がない

328:デフォルトの名無しさん
18/09/01 22:56:42.31 NoXfDUjm.net
オペランドを順に評価しながらandで繋ぐだけだろ?
半角クンにとっては難しいのかな

329:デフォルトの名無しさん
18/09/01 22:58:45.07 /wwW4VSs.net
そういう問題じゃないからな
やはり知能の問題

330:デフォルトの名無しさん
18/09/01 23:23:52.10 Omwrv276.net
小学校でプログラミング教育ってチューリングマシンとか
ラムダ計算とかするわけでしょ
すごいよね

331:デフォルトの名無しさん
18/09/01 23:34:33.99 0V80T0Sa.net
ブーリアンヴォーイズは、いい加減パーキンソンの凡俗法則でググろうな

332:デフォルトの名無しさん
18/09/01 23:44:33.13 33FbYz6y.net
流れ本体とは関係ないが
>>286のレスが意味不明
とくに
> 0 < x and x<100になるからセンス悪いと思った
この部分
>>281へのレスとしては
最後の一行もさっぱり意味分からんが

333:デフォルトの名無しさん
18/09/01 23:59:16.46 siIpxtD6.net
>>280
a < b and b < c

334:デフォルトの名無しさん
18/09/02 00:22:13.35 W5ilUQmj.net
上座と下座みたいなセンスかな
OOPでは引数の中で一番偉いやつを左に書くよな

335:デフォルトの名無しさん
18/09/02 00:30:30.37 KFJPmGJr.net
a < b > c が合法になるぐらいなら a < b && b < c でいい

336:デフォルトの名無しさん
18/09/02 00:33:32.41 2XQmbsmV.net
>>322
比較するときにつねに左に変数がないと気持ち悪いタイプなんだろう
個人的にはそれはそれで分からなくはない
俺はこの場合は数直線順のほうが読みやすいと思うが

337:デフォルトの名無しさん
18/09/02 00:40:47.30 ssHYSt2l.net
> 比較するときにつねに左に変数がないと
プログラミング�


338:Gアプか? 変数と変数を比較するケースを>>286以外のみんなは当然想定したわけで



339:デフォルトの名無しさん
18/09/02 01:37:29.19 tqSo+8/2.net
不等号をカリー化しようや

340:デフォルトの名無しさん
18/09/02 02:01:29.06 Vtrj0PDM.net
a < b < c
Pythonが採用して、Rubyが採用しなかった
そう言うことだと思う

341:デフォルトの名無しさん
18/09/02 05:30:33.71 4Jf6YH6e.net
>>288
愚か者はその愚かさ故に自分が愚かであることがわからず思い上がって傲慢になる。
賢い者はその賢さ故に自分が愚かであることがわかり遜って謙虚になる。

342:デフォルトの名無しさん
18/09/02 06:00:58.71 7CaEiwfk.net
常にってわけじゃないけど
RangeやRectなどで繋がりのある組を明示すると意図を読みやすいと思う
シンプルなケースは a < b で良いけど、複雑になる程inとかも使わず普通にメソッドで
if (a ..< c).contains( b ) {
  print("含まれる")
}
if (a ..< c).contains( a ..< b ) {
  print("含まれる")
}
if (10 ..< 30).overlaps( 20 ..< 40 ) {
  print("重なっている")
}
if Rect(x:10, y:20, w:100, h:100).contains( Point(x:50, y:50) ) {
  print("含まれる")
}


343:デフォルトの名無しさん
18/09/02 06:48:37.78 5WqNet32.net
以下の2つの書き方がある
左に、小さく方を書く
0 < x and x < 100
左に定数を書く。
定数には代入できないため、すぐにエラーが発見できる
0 < x and 100 > X

344:デフォルトの名無しさん
18/09/02 07:13:44.39 HcdhtgGT.net
スレチかもしれないけど
人工知能が今後発展していくにつれて、CとかJavaとかRubyみたいな言語って廃れていって、人工知能に関連しない分野のプログラミングスキルは無価値になって、人工知能に特化したPython一強みたいな感じになるの?
プログラミング始めたばかりなんだけどふと疑問に思った(同じくらい初心者であるはずの知人がこれからは人工知能に関わる言語だけやっていればいい、それ以外じゃ食っていけない、みたいなこと言ってたから)
こういう話題は何度も出ていてうんざりしてたらごめん

345:デフォルトの名無しさん
18/09/02 08:18:58.41 Y3BoGqKi.net
>>332
下はヨーダ記法って言ってな
時代遅れなんだよ池沼

346:デフォルトの名無しさん
18/09/02 08:33:01.84 KdakvMsf.net
人工知能というか機械学習な
その中でも深層学習ってやつね
pythonは特化してるわけじゃなくて深層学習に必要な行列計算が簡単に書けるnumpyというライブラリがあるから使われている
未来のことは分からないが、気にしても仕方ないように思える
プログラマにとって技術の陳腐化は日常的なことだし
機械学習やりたいならプログラミングじゃなくて統計を学んだ方がいいよ

347:デフォルトの名無しさん
18/09/02 08:46:50.28 RsxSrY9y.net
>>333
世の中の全てのコンピュータが人工知能とやらになればそうなるかも知れんが
物理的にあり得ないので、その他の言語が廃れることはないよ
それどころか、コンピュータが多様化してるからどんどん新しい言語も必要になってくる
だから、このスレが存在してる

348:デフォルトの名無しさん
18/09/02 08:59:02.89 KFJPmGJr.net
>>333
そのpythonが今強い理由がCで書かれたライブラリなんだよなあ

349:デフォルトの名無しさん
18/09/02 09:00:04.40 W5ilUQmj.net
囲碁と画像処理のスキルが無価値になったから言語は滅亡するというのは意味不明だな
0 < x はセンス悪い説よりももっと意味不明

350:デフォルトの名無しさん
18/09/02 09:11:23.18 TkJi8FAz.net
まぁCythonってあるもんな
URLリンク(www.oreilly.co.jp)
大体それの知識だけっていう狭い視野の人間は碌なもの作れない
プログラミングに絞って言えばOSとかネットワークの事もっと知ってろよってな

351:デフォルトの名無しさん
18/09/02 09:12:14.22 2NNLLZ0f.net
>>336
>だから、このスレが存在してる
カッコイイ(゚∀゚)

352:デフォルトの名無しさん
18/09/02 09:15:33.58 9dGgsJL0.net
>>333
人工知能によってプログラミングが要らない時代になったとしたらそもそもPythonも不要だから無駄
例えばメルカリみたいなシステムを作るとして、今だとAIって写真を画像認識して自動的にカテゴリ分けしたりするのに使うわけ
一方、出品などシステムの「仕組み」の部分は人間が手作りしてて、こういうのは前者よりも遥かに複雑でAIには難しいの
後者がAIに置き換わる頃には「AIを使う」プログラミングなんてとっくにAI化されてるよ
「AIを作る」側になるなら話は別だけど、後者をAI化できるほどのレベルになれば今みたいに個別にAI利用システムを開発するんじゃなくて
どっかが開発した汎用的なAIをサービスやパッケージとして利用する形になるだろうから、
最終的にAIベンダーとして残るのは本当に1つか2つの企業だろうね

353:デフォルトの名無しさん
18/09/02 10:00:25.05 ceygCyU3.net
>>333
知り合いもどうせ大学生とかそんなレベルなんだろ
mac使って自称データサイエンティスト()とか名乗ってる意識高い系の方々は自分がバカだと気づかない

354:デフォルトの名無しさん
18/09/02 10:02:50.62 ceygCyU3.net
mac使ってカタカタターンってやって
これをこうしたらいいだけなんですよと謎の上から目線
あなたたちのやってることは間違ってました
でも自分がなにか失敗したら顔真っ赤にして老害ガーとか言い出すゆとり世代

355:デフォルトの名無しさん
18/09/02 10:24:08.52 W5ilUQmj.net
GUIブームの時も、グラフィックがあるから文字は無価値になるとか言われていたような

356:デフォルトの名無しさん
18/09/02 10:30:13.21 KFJPmGJr.net
幅が広すぎて無意味だということに誰もが気づいて廃れた言葉である「ゆとり世代」を未だに使っている人がいるのか。

357:デフォルトの名無しさん
18/09/02 11:00:08.66 W5ilUQmj.net
登場人物の心を読むスキルを使うための登場人物
心を読めるから言葉は無価値になるという

358:デフォルトの名無しさん
18/09/02 13:46:55.56 TkJi8FAz.net
>>342
学生よりも分野外のおっさんの方が変な夢見過ぎな気がする

359:デフォルトの名無しさん
18/09/02 14:46:45.62 u8rOx+S9.net
AI妄想を差し引いたPythonはごく普通のスクリプト言語

360:デフォルトの名無しさん
18/09/02 17:35:10.60 IGne1itN.net
計算科学にも使える数少ないスクリプト言語やぞ

361:デフォルトの名無しさん
18/09/02 20:08:30.54 UJ9ET2d1.net
しかも極初期からOpenGLバインディングが使えたという魔改造スクリプト言語

362:デフォルトの名無しさん
18/09/02 20:33:11.59 JNdlpPmy.net
Pythonさほど好きじゃないけど、こいつが居なかったら
Rubyとかいうクソ言語が流行ってた可能性もあると考えると
Pythonが存在してくれて良かったと心から思う

363:デフォルトの名無しさん
18/09/02 20:45:40.92 kJn49GH1.net
手放しに良い言語とは思えないけど変えが効かない言語

364:デフォルトの名無しさん
18/09/02 20:50:30.02 Tb3tt8fk.net
luaでいいわ
一番シンプル

365:デフォルトの名無しさん
18/09/02 21:24:26.73 ZCYaZIQc.net
俺はRubyでいいわ
なんかPyキチが目の敵にしてるが

366:デフォルトの名無しさん
18/09/02 21:29:19.32


367: ID:Y3BoGqKi.net



368:デフォルトの名無しさん
18/09/02 21:32:00.92 TkJi8FAz.net
PHPは7になってから大分切り捨てられたけどな

369:デフォルトの名無しさん
18/09/02 21:56:03.31 wjrBsTt/.net
>>356
切り捨て?詳しく

370:デフォルトの名無しさん
18/09/02 22:15:39.01 TkJi8FAz.net
旧式のmysql接続モジュールとか旧式の正規表現とかが主だった切り捨てだったかな
5.xで非推奨って言われてた関数の類がバッサリ切り捨てられてた

371:デフォルトの名無しさん
18/09/02 22:16:48.58 TkJi8FAz.net
あとクラスの書き方もフィールド宣言にvarとか書けなくなってたな

372:デフォルトの名無しさん
18/09/02 22:20:46.75 Y3BoGqKi.net
array_ナンチャラとかいうウンポコペチプーの代名詞みたいなそびえ立つクソはどうなりましたか(小声)

373:デフォルトの名無しさん
18/09/02 22:58:40.04 mf3TKdIM.net
pythonが良いというよりperlのクソみたいななんでもあり感を無くしたのが良かったってだけ。
余計なことをしない言語が良い。

374:デフォルトの名無しさん
18/09/02 23:10:24.54 Tb3tt8fk.net
つまりlua使っとけば間違ない
という結論になる
余計な機能があるせいで
いちいち余計なことを覚えないといけないという悪循環もなくなる
pythonは余計なもん大杉で初学者にも不向きといえる
余計なもんないほうが初学者もとっつきやすい
覚えることも少ない
簡単なのが一番

375:デフォルトの名無しさん
18/09/02 23:41:05.75 kJn49GH1.net
Luaさんにもnumpyがあればなあ

376:デフォルトの名無しさん
18/09/03 00:10:22.82 8OmPihsG.net
luaさんはjsと似てた記憶しかない

377:デフォルトの名無しさん
18/09/03 00:13:49.32 EdWLStdR.net
LuaさんについてはRubyと同じくIf End ifのクソ文法だったことも覚えている

378:デフォルトの名無しさん
18/09/03 00:28:46.48 9rZ1YNmO.net
luaは思いのほか流行ったけど、一般的なスクリプト用途で使ってる人なんているの?
使い捨てのスクリプトは、Rubyがいい。なんとか持ちこたえて欲しい
システムに入ってないから好きなバージョン使えるし、読みにくいかわりに書きやすいと思う
Python2しか使ったことないけど、Pythonって積極的に選ぶものでなく、消極的に選ばれるものだよね?

379:デフォルトの名無しさん
18/09/03 00:38:38.73 E2St7m4+.net
luaは必要な機能を自分で拡張して使うもんだからな
cとの相性は抜群
そのバインディングも簡単

380:デフォルトの名無しさん
18/09/03 07:57:27.37 nea64YB1.net
ツールスクリプト用途では相変わらず Ruby は使える

381:デフォルトの名無しさん
18/09/03 08:12:21.90 qF0KQ+zY.net
使い捨てなら入ってる力高いperl5かな
Rubyの出番はねえな

382:デフォルトの名無しさん
18/09/03 08:18:21.47 nea64YB1.net
最初から入ってるかどうかどうでもよすぎるしそんな理由で今さらperl5使うことはないなあ

383:デフォルトの名無しさん
18/09/03 08:35:37.94 fCvrhDfC.net
Luaは正解だがPerlも正解だよ
そしてPerlは悪とか正解は一つとかいうのを信じる人はPythonに集まった

384:デフォルトの名無しさん
18/09/03 09:31:57.09 PK1fysIy.net
配列インデクスが1から始まるとかいう狂気

385:デフォルトの名無しさん
18/09/03 09:51:52.31 4uYLlRfz.net
無学だから教えて欲しい
プログラミング言語の配列に0-indexが多いのって、Cの配列がアセンブラに寄せてあってaddress+0からスタートしてるからだと思ってるんだけど正しくはどうなの?

386:デフォルトの名無しさん
18/09/03 10:42:48.89 XmaAZlOW.net
>>373
まあ0からにするとコンピュータ的にコード作りが楽になるからそんな感じになるのが多いわけだが、必ずそんな風にコンパイラを実装しなければいけないということもないわけで、要するに実装依存だ。

387:デフォルトの名無しさん
18/09/03 10:47:17.64 r5JPflBu.net
ゼロには配列の数が入ってる。
みたいな言語だって構わないんだが。
C実装者はポインターと配列を同一視しちまったんだ。

388:デフォルトの名無しさん
18/09/03 10:49:35.37 Cn69eR5C.net
Cの配列長さの管理し辛さは異常
Fortranみたいな-fcheck=allもないし

389:デフォルトの名無しさん
18/09/03 10:53:15.83 KtzMniM3.net
学がないやつが答えるなよ

390:デフォルトの名無しさん
18/09/03 11:10:55.19 r5JPflBu.net
まあ、C言語はマクロアセンブラの兄貴分みたいな感じで
当時のメインフレームのアセンブリ言語を扱いやすくしただけだしな。
あんま言語自体の吟味はして無いんじゃね?

391:デフォルトの名無しさん
18/09/03 11:50:29.43 fCvrhDfC.net
0からn-1方式はn=0の場合に-1という概念が出てくる

392:デフォルトの名無しさん
18/09/03 14:22:27.95 28KD1V62.net
>>373
逆に今のプログラミング言語で配列インデクスが0始まり以外のものは皆無だと思うんだが。
なれの問題でしかないから諦めろ。

393:デフォルトの名無しさん
18/09/03 14:25:10.86 qF0KQ+zY.net
Julia Fortranくらいか?

394:デフォルトの名無しさん
18/09/03 14:43:06.78 4uYLlRfz.net
>>380
別に0-indexがしんどいとも1-indexがいいとも言ってないんだよなぁ……
むしろmatlab/juliaでもにょった位の人間だよ
明確な理由がもしあったなら知りたかっただけ
教えて下さった皆様ありがとうございました

395:デフォルトの名無しさん
18/09/03 15:16:29.27 KtzMniM3.net
zero-base one-baseで検索すれば学のあるひとの意見きけるよ

396:デフォルトの名無しさん
18/09/03 15:35:11.66 3jNxfK9B.net
あまり関係ないけど
初等数学で a1, a2, ... だったものが程度が進んでくるといつのまにか
当たり前のように a0 (ゼロベース添字) も扱うようになるのは
0という概念とそれを表す文字が歴史的に途中から現れて
自然数に関する種々の定理を0を含めるように一般化するようになったため
イギリス人が他国と違って階段を1階分登った階を1階、2階分登って2階と呼ぶ理由は不明
1ベース言語はアメリカ人が、0ベース言語はイギリス人が設計したなら分かりやすいが
別にそんなこともないようだ

397:デフォルトの名無しさん
18/09/03 15:38:27.95 IhCpGxvm.net
>>378
C言語の設計者には、不必要なオーバーヘッドやリソースの消費は発生させないという明確な意図があったから、配列のサイズなんてメモリ上に保持しないで、必要に応じてプログラマが頑張れっていうスタンスだったはず。

398:デフォルトの名無しさん
18/09/03 15:46:32.52 3jNxfK9B.net
cの場合lightweight配列として使えるポインターがあるから
配列は配列でPascal風にサイズありでも良かった気もするな

399:a4
18/09/03 16:15:35.94 UyEBRJ4v.net
こんにちは。a4と申します。人工生命技術を用いた喋る人工知能を作って、自然言語で
プログラミングする研究をしています。ソフト名は矛盾記号の反対の「T」と言います。
協力者を募集しています。
現在の研究内容はこんな感じ。
URLリンク(www.01ken.com)
こちらのスレでやってます。
スレリンク(tech板)

400:デフォルトの名無しさん
18/09/03 16:20:09.50 eGuGzjoZ.net
ついにきたか
こんなスレで使う道具でグダグダ言ってるだけの俺らには難しすぎるよ

401:a4
18/09/03 16:28:36.91 UyEBRJ4v.net
>>388
僕も15年くらい前は2chのプログラム技術板で馬鹿にされて、それから技術的に成長
ということになったんですが、俺らには難しすぎるよ、と言われるくらいになっちゃった
のか、です。技術馬鹿になっただけで、お金だけはほとんど入りませんが^^;
返信はありがとうございます。

402:デフォルトの名無しさん
18/09/03 16:47:31.50 hACEDIiH.net
勝手に"俺ら"とまとめちゃったけどもちろんわかるやつもいるはず

403:a4
18/09/03 16:58:04.85 UyEBRJ4v.net
>>390
そうですね。そうだと思って書いたんですが、やっぱり教授とかそういう人になって
いくのかな。

404:デフォルトの名無しさん
18/09/03 18:19:26.50 Oq3hcp2i.net
>>386
> cの場合lightweight配列として使えるポインター
どういうこと?
lightweight配列って何?
その用語はどこに定義されてんの?

405:デフォルトの名無しさん
18/09/03 18:58:47.73 3jNxfK9B.net
lightweight は単なる英語だけど…

406:デフォルトの名無しさん
18/09/03 19:34:56.99 fCvrhDfC.net
単なる道具にすぎない言葉なのになぜか厳密に定義するのが良いんだよな
お金も企業も経済成長も単なる道具だが舐めない方が良いんだろう

407:デフォルトの名無しさん
18/09/03 19:57:16.94 ApG59r/S.net
そりゃメモリ内容そのまま持てば軽いといえば軽いだろうが。。

408:デフォルトの名無しさん
18/09/03 20:25:31.43 I4M/KSwq.net
>>392
多分深い意味はないと思う
「ポインタで配列を表現できるから、それとは別にサイズ付き配列の仕組みがあっても良かった気がする」
と言いたかっただけだろう
まあCにはそんなもん要らんが

409:デフォルトの名無しさん
18/09/03 20:45:44.58 cO96euev.net
さすがに今時Cでも配列のポインタと長さはセットでしょ

410:デフォルトの名無しさん
18/09/03 20:54:22.53 r5JPflBu.net
sizeofすれば配列かポインターか分かるよな?

411:デフォルトの名無しさん
18/09/03 20:55:50.15 EdWLStdR.net
そんなの関数の入り口次第じゃん

412:デフォルトの名無しさん
18/09/03 21:30:30.70 R+bW4pe5.net
>>397
ポインタはただのアドレスの値だから長さの情報を持たない
>>399
宣言の仕方に関係なく配列が関数に渡されたらただのポインタ

413:デフォルトの名無しさん
18/09/03 21:34:59.86 nofQDRzL.net
cみたいなオワコン言語の話は飽きた

414:デフォルトの名無しさん
18/09/03 21:41:30.89 V5YVGq7g.net
>>401
C++ はひどい言語だ。これは、多くの平均以下のプログラマーが使ってるために
さらに輪をかけてゲロゲロになっていて、どうしようもないゴミが
簡単に生産されるようになってる。正直いって、C を選ぶ理由が C++ プログラマーを
追っぱらうため *だけ* だったとしても、それ自体、C を使う強力な理由になりうる。
C++ はトンでもなく悪い設計の元になりうる。どうせこの言語ではいつも STL やら
Boost やら、その他ゲロゲロベロベロの「素敵な」ライブラリの機能を使って、
それがあんたのプログラムに「役立つ」んだろうが、以下のことが起きる:
うまく動かないときにもたらされる際限のない苦痛 (あと STL とか、特に Boost が
安定してるとか移植性があるとかいう奴は、どいつもこいつも大ウソつきで、
もはや笑えるレベルを超えている)
非効率な抽象プログラミングモデルで、2年たった後にこれらが実はそんなに
効率的じゃなかったことに気づくケース。でもそのときにはすでに全部の
コードがその素晴らしいオブジェクトモデルに依存していて、直すためには
アプリ全体を書き直さなきゃなんない。
言いかえれば、唯一まともで、効率がよくて、システムレベルで使えて、移植性がある
C++ ってのは、基本的に C で使える機能だけに限ったときなんだ。そして C だけに
限定するってことは、他の人がそれをめちゃくちゃにしないってことで、
ついでに沢山のプログラマが実際に低水準の問題を理解することができて、アホらしい
「オブジェクト・モデル」のたわごとを持ちこまないってことだ。

415:デフォルトの名無しさん
18/09/03 21:46:53.09 rGZ2KDSV.net
>>402
これほんと好き

416:デフォルトの名無しさん
18/09/03 22:32:26.84 fCvrhDfC.net
オブジェクトモデルに依存しないテンプレートライブラリはないのかと
型システムの改善だけが目的の
OOでも関数型でもない言語

417:デフォルトの名無しさん
18/09/03 22:35:22.03 Fy+nFo6J.net
アイデアあるなら自分で作ればいいじゃん
そのほわぁっとした言語

418:デフォルトの名無しさん
18/09/03 22:41:51.09 oi2j2blh.net
what?

419:デフォルトの名無しさん
18/09/03 22:43:23.81 vcilZH89.net
そもそもテンプレートライブラリが何を指すのかあいまい
いまメジャーなwebでのテンプレートライブラリなのかc++のようなテンプレートライブラリなのか

420:デフォルトの名無しさん
18/09/03 22:43:45.20 5yiOqgJ4.net
C2langが比較的近いか?
最近動きが少ないが

421:デフォルトの名無しさん
18/09/03 22:58:56.69 Oq3hcp2i.net
>>396
考えるだけ時間の無駄だからもう考えない

422:デフォルトの名無しさん
18/09/04 01:16:34.46 DYiL9D8B.net
C言語でもVLAはサイズ情報持ってるというのに誰も知らんのか……

423:デフォルトの名無しさん
18/09/04 09:11:29.60 W1MTXd47.net
知ってても直接関係ないこと言わない
知性があれは

424:デフォルトの名無しさん
18/09/04 09:21:13.17 MaE6+6rb.net
もう、C#しか使わないからどうでもいい。

425:デフォルトの名無しさん
18/09/04 09:23:44.70 D1ClTP/i.net
>>409
君はもうすこしモノを考えたほうがいい
ライトウェイトの意味やプログラミング界隈でのこの語の用法を知らないとか人に質問するレベルに達してないよ

426:デフォルトの名無しさん
18/09/04 09:59:35.24 W1MTXd47.net
偉そうにw

427:デフォルトの名無しさん
18/09/04 10:08:55.24 /45N32wx.net
AIに嘘を教える教師がいたらどうなるか考えたほうがいい
虚偽のビッグデータを売りつけて儲ける
AIは人間のレベルに達しない

428:デフォルトの名無しさん
18/09/04 10:10:46.01 HCDtqdOp.net
Goがついにwasmにコンパイルできるようになったな。
もともとPureGoが多いから、これで色々活用用途が広がったらいいな。
nodeもwasm実行できるし、モバイル用にライブラリコンパイルしたらReactNativeなんかからも使えるし、色々可能性広がってきた気がする。

429:デフォルトの名無しさん
18/09/04 10:12:13.91 F1i/L5qD.net
>>410
VLAってstatic変数や関数の戻り値に使えるの?

430:デフォルトの名無しさん
18/09/04 10:51:32.81 2Ke9JaD8.net
>>410
スタック跨いでサイズ渡せるようになってからおいで

431:デフォルトの名無しさん
18/09/04 12:11:12.03 0ofldm0z.net
0-indexとか0-baseとか書き込みあるけど、0-originって自分は呼んでた。どれが正しいのかな。

432:デフォルトの名無しさん
18/09/04 12:26:32.98 zCI6LCQt.net
>>416
マジか、Goを覚えるか迷ってたけど
これなら本格的に手を出して良さそうだ

433:デフォルトの名無しさん
18/09/04 12:29:45.49 u3AJFBLT.net
>>420
まだexperimentalで見た感じ最適化も掛かってないからクソでかいファイルが出来るけどねw

434:デフォルトの名無しさん
18/09/04 14:59:40.27 UftGablj.net
>>420
ビズリーチが公表した「プログラミング言語別年収ランキング2018」
URLリンク(tech.nikkeibp.co.jp)
URLリンク(tech.nikkeibp.co.jp)

435:デフォルトの名無しさん
18/09/04 15:32:03.58 zCI6LCQt.net
>>421
wasm 自体まだまだこれからだし気にしないわ
>>422
これ系はあんま信用してないわ
3, 10 がメインだけど

436:デフォルトの名無しさん
18/09/04 15:40:24.66 ommk4wEV.net
お前らwasmでなに視点の?

437:デフォルトの名無しさん
18/09/04 16:53:47.72 h4aM9/Eu.net
みんなwasmってるの?

438:デフォルトの名無しさん
18/09/04 17:17:31.25 HCDtqdOp.net
gopherJSの方が早いケースもあって面白いな。
>>425
UnityからWeb3Dのコンテンツ出してるよ

439:デフォルトの名無しさん
18/09/04 21:47:08.38 cP6ucbm0.net
なんだか知らんがgoはない

440:デフォルトの名無しさん
18/09/04 23:43:29.24 J4KIQ6LZ.net
>>366
> 読みにくいかわりに書きやすい
ガイジすぎひん?

441:デフォルトの名無しさん
18/09/04 23:43:50.95 Gq1Hay5m.net
>>425
Blazorで遊んでる

442:デフォルトの名無しさん
18/09/05 06:49:11.58 cPIGyNE8.net
冗長性が少なくて同じことの表現方法が多彩な方が表現する側は楽で理解する方は辛いし、
冗長性が多くて表現する方法がひとつに定まってる方が理解しやすいが表現する側はやりにくい

443:デフォルトの名無しさん
18/09/05 07:06:22.15 EtXxKwcu.net
pythonが書きにくいとか頭が悪いとしか思えんのだが。

444:デフォルトの名無しさん
18/09/05 07:42:25.08 cPIGyNE8.net
お前は知能が低すぎてものを全然覚えられないからそう思うんだろうが、
人並みの記憶力があるならワンライナーとか使い捨てスクリプト書く分には省略記法がいろいろある方が早くて楽

445:デフォルトの名無しさん
18/09/05 07:46:30.96 Wwq/qkqa.net
でもRubyのシェア右肩下がりじゃん

446:デフォルトの名無しさん
18/09/05 07:55:32.05 cPIGyNE8.net
Rubyの主用途は使い捨てスクリプトとかちょっとした個人制作のツールとかなんで、そもそもが広いシェア取るような言語じゃない
Railsとかで中規模以上のプロダクト作ってた時代がアホなだけ

447:デフォルトの名無しさん
18/09/05 09:25:20.31 K+FwV09o.net
そんな事言ってるとSmalltalkみたいなシェアになっちゃうぞ
いいのか?

448:デフォルトの名無しさん
18/09/05 09:28:19.19 XbYQpfeV.net
Go2でジェネリクスつくのはいいけど既存との互換性はちゃんと確保するんだろうか?
python2と3みたいな関係はやめていただきたい

449:デフォルトの名無しさん
18/09/05 10:02:50.11 TxisJ4l5.net
もう何年も前に「ジェネリクスは必要」って誰かが発言したとする
この発言自体がものすごくわかりにくい
実際、わかるまで何年も時間がかかっただろ
言語の設計は「読みやすさ」と「書きやすさ」で対立しているのではない
「読みやすい嘘」と「読みにくい正論」で対立している

450:デフォルトの名無しさん
18/09/05 12:32:58.24 o1PiTYm1.net
C以外の他の言語やってる人はだいたい必要だと思ってるんじゃないかな

451:デフォルトの名無しさん
18/09/05 12:33:00.91 QYJ58+nm.net
次世代言語を学ぶ意味は?

452:デフォルトの名無しさん
18/09/05 12:34:48.07 o1PiTYm1.net
むしろGoにはジェネリクスいらないを連呼してた人達はどうするのか気になる

453:デフォルトの名無しさん
18/09/05 12:38:23.32 vR71MkGj.net
Rubyそんなシェア落ちてん?って急降下じゃんwww
URLリンク(pbs.twimg.com)

454:デフォルトの名無しさん
18/09/05 12:44:11.29 32Pq/O6E.net
2011なにがあったんだ?

455:デフォルトの名無しさん
18/09/05 12:53:24.43 6/0ZHi8J.net
最近はもう「〜に〜は不要」発言はそのうちバージョンアップで実装されるフラグにしか思えなくなってきた
Javaあたりからの伝統

456:デフォルトの名無しさん
18/09/05 12:56:53.07 OIm19YQn.net
元記事要約すると
グラフはGitHubの統計
GitHubはRubyコミュニティの有名人が参加してた
GitHubは当初Rubyユーザーが多かった
2011年からGitHubユーザーが爆発的に増え、多様な言語が流入した
相対的減ってるように見えるだけ
Rubyアクティブユーザー数は増えてる
まあ俺はRuby避けてPython使うが

457:デフォルトの名無しさん
18/09/05 13:09:19.68 L42fIuj6.net
そりゃ読む回数のほうが書く回数より多いんだからrubyは嫌だよってなるのかな?

458:デフォルトの名無しさん
18/09/05 13:22:32.04 abh8X1Kh.net
rubyはよく整理された構造的なスパゲッティコードが出来上がってるから読むの大変

459:デフォルトの名無しさん
18/09/05 13:38:44.60 TxisJ4l5.net
読むのと書くのを対立させるのは多分嘘だ
読みやすさを犠牲にするケースがあるのは本当
だがそれを犠牲にして何を手に入れたいのか�


460:ヘケースバイケースだから 全てのケースで常に「書きやすさ」を欲しているというのは嘘だろう



461:デフォルトの名無しさん
18/09/05 13:46:15.20 OUMJLdaL.net
>>444
元記事見るとわかるけど、アクティブユーザーの絶対数も減少し始めてるよ

462:デフォルトの名無しさん
18/09/05 14:36:25.98 vR71MkGj.net
> Rubyアクティブユーザー数は増えてる
なんだよ嘘かよ信じかけちゃったよ!

463:デフォルトの名無しさん
18/09/05 14:38:07.08 k5ZxgDvw.net
  /⌒ヽ
  ∩ ^ω^) な ん だ
  |  ⊂ノ
  | __⊃
  し′
  /⌒ヽ
 (^ω^ ∩ う そ か
  (⊃  |
 ⊂__ |
    `J
   /⌒ヽ
  (   ) おっおっ
  /  _つ おっ
 (_(_⌒)′
  ∪(ノ


464:デフォルトの名無しさん
18/09/05 16:09:58.24 UYLlzrbu.net
クックパッドと鳥取とモルモンしか使ってないだろ

465:デフォルトの名無しさん
18/09/05 18:43:26.51 vKi2/Ppr.net
Rubyの読みにくさは簡単な話ではない
すこし入り組んでる
プログラミングしようとする対象がすでに入り組んでいるから
Rubyをもってしても入り組んでおり結果読みにくい
他の言語でやろうとしても同様に読みにくい
簡単なことを他の言語で書くと、読みやすい
簡単なことをRubyで書くと、もっと読みやすい
複雑なことを他の言語で書くと、読みにくい
複雑なことをRubyで書いても、読みやすいとまではいかない
このへんの観点での観察が必要

466:デフォルトの名無しさん
18/09/05 19:20:41.23 EtXxKwcu.net
いやrailsとか見るとただrubyがクソだから以上の理由はないよ。
作るものが複雑?
馬鹿が無駄に複雑にしてるだけだろw

467:デフォルトの名無しさん
18/09/05 20:02:58.57 xj/p8t/u.net
詳しい人居たら聞いてみたいんだけどRuby作者のまつもと氏とRailsコミュニティの関係性ってどうなの?
なんとなく目指す方向性に解離があるんじゃないかとか思ったんだけど

468:デフォルトの名無しさん
18/09/05 20:22:57.31 qZRKLVoM.net
>>441
つか選択肢がおかしい

469:デフォルトの名無しさん
18/09/05 20:32:43.37 H87uqQmT.net
RAILSは最初にさわるべきじゃないよね
高機能かつ隠蔽的すぎて、自分のキャリアを削ってものを作ってる感覚になる

470:デフォルトの名無しさん
18/09/05 20:57:37.50 Wac+KDd5.net
>>454
Matzはコミッタの一人に過ぎないよ
リリースノートに平気でRailsの〇〇改善が並んでるのに今更すぎる
今のRubyは正真正銘Rails Scriptだよ

471:デフォルトの名無しさん
18/09/05 21:19:12.25 Wwq/qkqa.net
え?
MatzがNoって言った機能も入るようになったの?

472:デフォルトの名無しさん
18/09/05 21:19:28.63 bxkn2V/Q.net
>>440
あったら使うかもしれないが、なくても困らない。
Rubyはあっても使わない。

473:デフォルトの名無しさん
18/09/05 21:32:07.79 cPIGyNE8.net
>>458
よく知らないヤツが適当言ってるだけ
URLリンク(www.ruby-lang.org)
Ruby側から見たRailsは最初から今に至るまで「フレームワークのひとつ」の域を出ないよ

474:デフォルトの名無しさん
18/09/05 22:02:18.97 P6CiT7hM.net
デカ過ぎるコミュニティと個人創始者って大体摩擦があるからRubyはどうなのかな?って思っただけ

475:デフォルトの名無しさん
18/09/05 22:25:59.22 rOonwoGk.net
rubyスレ見てると自演で荒らしてる奴は一人っぽいけどな
親でも殺されたのか、rubyにすごいヘイトを貯めてる
そのワリにアンチスレは物凄く低空飛行だけど

476:デフォルトの名無しさん
18/09/05 22:29:20.53 CAQNH5IR.net
Rubyには、アンチが沸くほどの力も残ってない。
FreeBSDの時もそうだった、ただ黙って衰退するのみ。


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