X



Go language part 2

■ このスレッドは過去ログ倉庫に格納されています
0253デフォルトの名無しさん
垢版 |
2018/08/10(金) 19:13:59.84ID:JIBbU2kk
goaの肝はコード生成だから、結構素直なコードが生成される。
そのコード次第も勉強になる。
web apiの作法をむしろ教えてもらった。
0254デフォルトの名無しさん
垢版 |
2018/08/11(土) 03:51:00.34ID:0HQvSoaX
変数への代入に := を使うか = を使うかはどうやって判断するのだろう
例えば for i := 1 は普通に for i =1 ではダメなのか
0256デフォルトの名無しさん
垢版 |
2018/08/11(土) 08:37:35.55ID:UpPoKiQT
>>254
ループ変数のiが先に宣言されてれば後者で良いけど、特別な理由が無い限りは使わないな
indexの値から開始したい場合、for i := indexとした方が良いだろ
0257デフォルトの名無しさん
垢版 |
2018/08/11(土) 10:23:52.00ID:ofcowSnm
:=を代入にあえて使う言語は=には透過性の意味を、:=には定義の意味を持たせて数学寄りにしてるだけだと思ってたが
0258デフォルトの名無しさん
垢版 |
2018/08/11(土) 22:11:45.01ID:ssPmT97J
Cしか経験ないのに
Go言語でつくるインタプリンタとか
買ってしまった
0265デフォルトの名無しさん
垢版 |
2018/08/12(日) 07:13:44.18ID:G3Q4bI/2
俺もその本読んでるけど難しいわ
Token tokenToken とか、冗談だろみたいな記述がゴロゴロ出てくる
型強制言語はこれが嫌なんだよなー
本質的なロジックに関係ないキーワードでコードが埋め尽くされる
0269デフォルトの名無しさん
垢版 |
2018/08/12(日) 11:10:03.35ID:vEp19pyF
goって仕様がシンプルで習得しやすいって触れ込みだけど意外と複雑だよね。
直交性が低い「ここだけのルール」みたいなのが意外と多くて辟易する。なんだよrange節って。
0270デフォルトの名無しさん
垢版 |
2018/08/12(日) 11:16:17.15ID:dVUCF5O6
すごく頭の良い人が合理性だけでデザインしちゃった感はある。直感的じゃない。
エンジニアだけで作った、便利だけど死ぬほど使いにくいWebサービスみたいな感じ。
まあそれでも他の最近の言語に比べりゃ覚えなくちゃいけないことの絶対量は少ないよ
0272デフォルトの名無しさん
垢版 |
2018/08/13(月) 11:11:39.30ID:HTY6GtFC
色々な意味で異質だから慣れるまでは面食らうかもね
慣れてしまえばそんなことはなくシンプルで良い言語
0274デフォルトの名無しさん
垢版 |
2018/08/17(金) 08:42:19.65ID:LhGk886y
夏休み使ってGo入門したけど、良いなこれ
なんかのCUIツールでも作ってみたくなったけどアイデアはない
0275デフォルトの名無しさん
垢版 |
2018/08/18(土) 15:04:10.02ID:uFL7UmBD
上の長文合戦全部読んできたけど、結局Goってバカでも使いやすくするために文明の利器を捨てたプリミティブな言語ってことなんだな
と思ったら>>270って書かれてるし、合理性のために無駄を削ぎ落とした言語なのか?
0278デフォルトの名無しさん
垢版 |
2018/08/18(土) 15:45:10.96ID:KUimL+Rt
プログラマーに期待する事をやめた言語かな
どうせバカしかいないんだから
管理・使い分けが必要な要素は与えない触らせない
0282デフォルトの名無しさん
垢版 |
2018/08/18(土) 19:26:30.00ID:/4eOy7p1
二者択一じゃなくてswiftやkotlinみたいにREPLもあったら良かったってことじゃないの。
0285デフォルトの名無しさん
垢版 |
2018/08/18(土) 20:57:26.20ID:yeTG0VXv
goが生まれた経緯を調べるとなんでああいう言語が生まれたかわかる。
要は実用性重視で、過去の言語仕様見直して、削られるだけ削った言語と言える。
たぶん1番の使命はコンパイル速度を早くすることかな。
0287デフォルトの名無しさん
垢版 |
2018/08/18(土) 22:30:57.29ID:b/8OtQ4O
>>285
削って大丈夫な部分は全て削った感じよな
個人的にはいくらなんでも削りすぎな気もするけど、やるからにはそれくらい徹底しないとダメなんだろうな
0288デフォルトの名無しさん
垢版 |
2018/08/18(土) 22:38:55.00ID:24+fGF10
>>280
Go言語でつくるインタプリンタ
を読んでGoのインタプリンタを作ればいい
0289デフォルトの名無しさん
垢版 |
2018/08/18(土) 23:06:04.40ID:/4eOy7p1
>>287
そうかな?
やたら省略形とかシンタックスシュガーが多かったり、同じ構文で別の意味に用いられたり、
最近の言語にしてはけっこうごちゃごちゃしてるという印象なんだが。個人的には。
0294デフォルトの名無しさん
垢版 |
2018/08/19(日) 11:33:38.00ID:vLeO9jZJ
予約語の数は一つの目安だけどそれがすべてじゃあないよね。
記号はカウントされていないし他言語なら予約語になりそうな定義済み識別子がごっそり抜けている。

それよりも>>289で言いたかったのは、例えば型アサーションの構文に型名じゃなくて
予約語のtypeを渡したら型switch内で使えるとか、そういう一貫性の無さからくる複雑さ。
同じような構文に機能を詰め込むから表面上は予約語が増えたりしないわけ。
0296デフォルトの名無しさん
垢版 |
2018/08/19(日) 12:25:40.60ID:2zvtFV6n
>>294
一貫性がないというより他の言語には無い書き方が引っかかるって感じじゃ無いかな?
それは理解できる。
0297デフォルトの名無しさん
垢版 |
2018/08/19(日) 12:51:00.54ID:vLeO9jZJ
どこをどう読んだらそうなるw
型アサーションの括弧に渡すものが型名のみに限定されていればシンプルだったのに、
それがswitchの中でだけ予約語のtypeを使うことが許されていたりするから一貫性がないって
言っているんだよ。
0299デフォルトの名無しさん
垢版 |
2018/08/19(日) 13:32:46.37ID:6q4oK8R8
  /\___/\
/ /    ヽ ::: \
| (●), 、(●)、 |    / ̄ ̄ ̄ ̄ ̄ ̄ ̄
|  ,,ノ(、_, )ヽ、,,   |  < まーたはじまった
|   ,;‐=‐ヽ   .:::::|    \_______
\  `ニニ´  .:::/
/`ー‐--‐‐―´´\
0300デフォルトの名無しさん
垢版 |
2018/08/19(日) 13:58:26.44ID:2hMRvgbC
もともとグーグルの天才たちが内輪で使うために作った言語だろ?
Cと同じで、俺ら凡才には理解できない・向かない部分があるのは仕方ないと思う
0301デフォルトの名無しさん
垢版 |
2018/08/19(日) 14:54:53.63ID:2zvtFV6n
>>297
それに引っかかるのってせいぜい数時間だよね。
俺は仕事でさわるコードの一貫性のなさに苦しんでるけど、そっちのほうがしんどい。
0302デフォルトの名無しさん
垢版 |
2018/08/19(日) 15:14:57.95ID:bSmBOLeO
一貫性が無いのは事実なのにズレた話で絡み続けるのはなんなんだ
場当たり的な構文糖衣も多いのに削るだけ削ったとか嘘もいいとこだろ
妙な幻想持ちすぎ
0304デフォルトの名無しさん
垢版 |
2018/08/19(日) 16:31:17.10ID:6q4oK8R8
話の腰をブチ折ってすまんが、「Go言語でつくるインタプリタ」の
最終章のマクロ展開(expansion)のトコ、マクロを再定義しても元
の定義で展開されちゃうんだけど、誰か試した奴おる?
0319デフォルトの名無しさん
垢版 |
2018/08/22(水) 20:38:55.02ID:0XlZNPWV
ああそういうことね
なんか、割と根本的なところをあまり理解してなさそうだね
0329デフォルトの名無しさん
垢版 |
2018/08/22(水) 22:15:15.00ID:cXjfJaZN
ちなみにNodeとかPythonとかとはすごく大きなところで違いがあって、それがGoたんの大きな大きな特徴の一つだったりする。
0331デフォルトの名無しさん
垢版 |
2018/08/22(水) 22:37:05.81ID:mHU9sjBy
いつまでたっても具体的な噺が出てこないところを見ると
あまり詳しい人はこのスレにはいないようだな
0332デフォルトの名無しさん
垢版 |
2018/08/22(水) 22:48:06.32ID:1ZySJXOP
素直に教えてくれって言えよw
もうここまで来たら誰も教えてくれないだろうけどw
0338デフォルトの名無しさん
垢版 |
2018/08/22(水) 23:13:50.11ID:0YvB5ppq
マスコットで言えばD言語もかなり人気だけど言語自体を使ってる人って殆ど見たことないよね
0342デフォルトの名無しさん
垢版 |
2018/08/22(水) 23:26:25.80ID:WpJJQu28
プロファイリングが簡単にできるのもいい…あるプログラムを調べて
いたら、整数値の 2^n 乗を計算するのに math.Pow() 使ってる部分が
あって、そこを直すだけで 15% 高速に
0348デフォルトの名無しさん
垢版 |
2018/08/23(木) 12:35:46.76ID:29gBK1aD
BeOSってまだ息してるの?
■ このスレッドは過去ログ倉庫に格納されています