X



次世代言語15 Go Rust Swift Kotlin TypeScript
■ このスレッドは過去ログ倉庫に格納されています
0003デフォルトの名無しさん
垢版 |
2018/11/05(月) 19:05:36.14ID:C+j+1+CV
そうだよ
0004デフォルトの名無しさん
垢版 |
2018/11/05(月) 21:38:30.50ID:lQJk7sSm
webのものだがrustを採用するよう上司を説得するのに四苦八苦してる
自分が分かることしかやりたくないオタンコナスめ
0005デフォルトの名無しさん
垢版 |
2018/11/05(月) 23:21:46.96ID:LoNBNPyI
>>4 ちょっとでもいいから自分で書いて説得材料に加えた方がいいよ。先行者がいるかいないかで全然印象が変わるから
使う言語も作るサービスも新しかったら上司も二の足も踏むよ
0007デフォルトの名無しさん
垢版 |
2018/11/06(火) 07:01:39.58ID:tzVhC1fN
>>5
書いてるしプロダクトに組み込んでるよ
もっと広く使いたいってはなしさね
0009デフォルトの名無しさん
垢版 |
2018/11/06(火) 17:45:01.68ID:2Imqjq5w
rust使える連中集めるか、僕が一生このプログラムのメンテしますって念書でも書けばいいんじゃね
0010デフォルトの名無しさん
垢版 |
2018/11/06(火) 19:51:58.83ID:tzVhC1fN
だから俺は書いてるってば
しかしいちいち極端だな
0012デフォルトの名無しさん
垢版 |
2018/11/06(火) 22:10:53.50ID:tzVhC1fN
それは言えてる
次で入るはずだし期待だね
0014デフォルトの名無しさん
垢版 |
2018/11/07(水) 22:00:38.98ID:h4FWJh3K
smalltalk由来の?
実装コストの割にちょっと手間が減るだけだから、広まるとは思えないなぁ。。。
あれば便利だけど、拘る程でも無いし。

設計段階で良く使うのを前半に持って来れば現状でもデフォルトの値で省けるし。
0016デフォルトの名無しさん
垢版 |
2018/11/08(木) 00:07:44.66ID:tyCSN+GB
名前付き引数はあったほうが良いけどな。
tsとかjsでもobject使って名前付き引数っぽくはかける
0017デフォルトの名無しさん
垢版 |
2018/11/08(木) 01:03:55.74ID:Q78Fc4n+
あったらたまに使うけど、なくても困らん
0019デフォルトの名無しさん
垢版 |
2018/11/08(木) 08:04:01.41ID:2hCvfT6m
またまたご冗談を
0023デフォルトの名無しさん
垢版 |
2018/11/08(木) 21:07:57.17ID:9Gli7a50
Smalltalkの名前付き引数って引数の順番入れ替えられないってマジ?
ガチでウンコじゃん
0024デフォルトの名無しさん
垢版 |
2018/11/08(木) 22:41:04.48ID:HaAvUdEf
オプション引数が2つ以上になるなら欲しくなるね。
まぁ連想配列を渡せればそれでもいいんだが型安全でない。
そういう意味でTypeScript最強。
0026デフォルトの名無しさん
垢版 |
2018/11/12(月) 15:38:09.44ID:e9R1pplw
>>4
悪いけど趣味でRust書いてる俺ですら
webものでRust採用するなんて言われたら全力で却下するわ
0027デフォルトの名無しさん
垢版 |
2018/11/12(月) 15:44:01.93ID:e9R1pplw
当然異論あるのは承知の上で、
オプション引数が必要だと思ったときはすでにAPI設計が失敗してるって思うのだが
具体的にオプション引数でないとできないことってなんだろう
0028デフォルトの名無しさん
垢版 |
2018/11/12(月) 17:06:45.62ID:gJTIYUPi
webでrust、なんでダメなんだ?
active recordが無いから?
0030デフォルトの名無しさん
垢版 |
2018/11/12(月) 17:46:39.02ID:BrJHJM69
単純にasyncまわりが動乱期で、
今書いても近いうちに書き直しになるのが目に見えてるから>webに導入するの反対

あとはRust使うくらい性能追及しなきゃいけない部分なんて
webでそこまであるか?というのもある
>>29のバカでも書けるに近いかもしれんが、
Goで困る用途がそこまで思い付かない

渋の配信回りみたいな部分で欲しいのは分かる
0031デフォルトの名無しさん
垢版 |
2018/11/12(月) 18:38:42.74ID:/MNcN3ku
てかgoで本格的なアプリ書いてみりゃチャンネル使ってもまだまだ複雑になるってことに気づくわ。
言語の瑣末ごとに時間食ってる余裕はないと感じるようになる。
0032デフォルトの名無しさん
垢版 |
2018/11/12(月) 18:40:01.18ID:gJTIYUPi
渋の配信でなんだろ
0033デフォルトの名無しさん
垢版 |
2018/11/12(月) 19:19:45.27ID:8ric3RZk
>>32
pixiv Sketchのライブ機能とかいうやつのバックエンドがRustで書かれてるんだと
0034デフォルトの名無しさん
垢版 |
2018/11/12(月) 19:47:34.64ID:gJTIYUPi
>>33
ピクシブのシブか

ぼくはjavaやgoで書くくらいならrustで書くけど、馬鹿に合わせなきゃいけないなら仕方ないな
0036デフォルトの名無しさん
垢版 |
2018/11/12(月) 20:12:37.81ID:8ric3RZk
Javaで書くくらいならGoで書く
C++で書くくらいならRustで書く
は分かるんだ
Goで書くくらいならRustで書くと言えるほど
プログラミングスキルに自信はないな

豪語できる実力と後任育てる覚悟があるならいいんじゃないかなとしか言えん
0037デフォルトの名無しさん
垢版 |
2018/11/12(月) 21:13:20.30ID:gJTIYUPi
難しいの意味によると思うけど、例えば予測しきれないGCのほうが難しくない?
みんな作ってるものも求められるものも違うから一概には言えないけどさ
そういう意味では、馬鹿に合わせるってのは言い過ぎだった、ごめん
0038デフォルトの名無しさん
垢版 |
2018/11/12(月) 21:25:41.65ID:Ff8BWBdH
>>27
オプション引数という機構が無くてもやりようはあるという話なら理解できるが、
設計の失敗というのはピンとこないな。どういうこと?
0039デフォルトの名無しさん
垢版 |
2018/11/12(月) 21:46:47.45ID:oqLpMouH
>>37
GCの挙動予測しなきゃいけないくらいシビアに作らなきゃいけないものなら確かにRustで書く
ただ単なるWebのAPIサーバとかでそんなシビアに作るか?という話
例に挙げたpixiv Sketch Liveはエンコーディングが絡むからGoでは確かに辛い
0040デフォルトの名無しさん
垢版 |
2018/11/12(月) 21:51:58.92ID:oqLpMouH
>>38
一言でいうなら後付けの建て増しに見えるから、かな?
初めからオプションによって色々変わる設計ならビルダーパターンなり構造体を引数に渡すなり
設計段階からオプション引数が不要なように書いてると思うんだ

ただ単なる偏見な気もする
0041デフォルトの名無しさん
垢版 |
2018/11/13(火) 09:35:36.18ID:fQuR5//n
それ複雑さがビルダーの初期化に移るだけだろ
記述量でみるならオプション引数の方が簡潔
0042デフォルトの名無しさん
垢版 |
2018/11/13(火) 12:31:21.43ID:cIfg6ryU
1つ2つくらいなら確かにそうだけど、
その流れで気づいた10個越えてたってパターン複数回見てるから、
オプション引数使うより初めからいくつ増えてもいい設計にした方がいいのでは?と思う

もちろん思考停止で増やした奴が一番悪いのは知ってるが
0043デフォルトの名無しさん
垢版 |
2018/11/13(火) 12:33:36.66ID:w+5Fg6TC
10個になったってビルダーよりオプション引数のほうが簡潔でしょ
何言ってんの?
0044デフォルトの名無しさん
垢版 |
2018/11/13(火) 21:27:07.00ID:QLpFZmq5
初めから完璧に設計なんてできないんだから、備えておくこと自体ナンセンスだよ
初めの設計が破綻したらdeprecatedにマークして、その時点で最適なインターフェースを作ればいいじゃん
0045デフォルトの名無しさん
垢版 |
2018/12/07(金) 21:30:32.68ID:UwGzxIiR
rust 2018 editionが標準になったな
書き換えるのに2時間くらいかかったわ
0047デフォルトの名無しさん
垢版 |
2018/12/09(日) 18:02:57.69ID:cEdFWcHV
Kotlinもよろしく
0048デフォルトの名無しさん
垢版 |
2018/12/09(日) 21:31:48.39ID:piyaaQaM
コトリンて仕方なく使うもんでしょ
0049デフォルトの名無しさん
垢版 |
2018/12/10(月) 10:50:15.57ID:4x6+51xy
Javaだと1週間かかっていた機能追加が、Kotlin移行後は2〜3日でできるようになりました。

――工数が半分以下に減ってるんですね……! Android版Yahoo!ニュースではまだJavaを使っている部分もあるかと思いますが、今後Kotlinへ完全移行する予定はあるのでしょうか?

https://employment.en-japan.com/engineerhub/entry/2018/12/07/110000
0050デフォルトの名無しさん
垢版 |
2018/12/10(月) 13:23:39.04ID:csFNmBrf
設計見直したのが大きいってな
Androidならコトリン一択だろうけど
0051デフォルトの名無しさん
垢版 |
2018/12/10(月) 23:03:18.59ID:l83Jt/Qg
逆に言えばAndroidにしか使えない
0053デフォルトの名無しさん
垢版 |
2018/12/10(月) 23:28:47.29ID:l83Jt/Qg
そこはGoogleらしいね。
ただ、鯖ならもっと良い言語あるだろってのはあるし、Goにも言えるけど鯖から外の用途がGoogleの言語は伸びないのよね。
GoもGUIライブラリ弱いし。

自社に関係する用途以外に関心が無いっぽいのがね。。。
オープンソースって元からそういう所あるけど、仮にもGoogleがバックアップしてるのに。

MSも似た様なものだけど、関係する分野自体が手広いからライブラリも充実する。
0054デフォルトの名無しさん
垢版 |
2018/12/10(月) 23:54:10.39ID:csFNmBrf
javaのトランスパイラだならサーバも書けるけど
新規で書くのにコトリン選んでたら指差して笑う
0057デフォルトの名無しさん
垢版 |
2018/12/12(水) 00:50:38.08ID:vL0UIWVV
dart復活あるか?
0059デフォルトの名無しさん
垢版 |
2018/12/24(月) 17:32:37.72ID:72iVvCQA
>>54
新規案件でjavaなんて選ぶ?
0060デフォルトの名無しさん
垢版 |
2018/12/24(月) 18:09:22.26ID:dcQ4yWsY
>>59
気の毒なことにコトリンを選ぶ現場はあるたいなんだ
潜在的にはjavaのが圧倒的に多いだろうけど
0062デフォルトの名無しさん
垢版 |
2018/12/25(火) 09:01:23.38ID:WTLCOmht
選べるのにわざわざjvmに縛られるスカポンタンがいるってこと
0063デフォルトの名無しさん
垢版 |
2018/12/25(火) 12:37:10.28ID:pfsfL+ll
>>61
そうだなあ。Javaしかできないと言ってる人にいきなりやらせてすぐにできるようになったらその人はかなり良いプログラマである可能性があるということはわかる。
何ヵ月やってもダメっぽい場合は他の事も多分ダメでプログラマ向きの人ではないから他の仕事に移すかクビの方向で検討。
0069デフォルトの名無しさん
垢版 |
2019/01/05(土) 13:27:08.69ID:4H3rvHqe
kotlin触った後にdart触るとセミコロンがうっとうしいな
次世代言語にセミコロン不要だわ
0073デフォルトの名無しさん
垢版 |
2019/01/05(土) 20:01:12.72ID:LMfMMSk0
■C#
list.ForEach( e => {
  Console.WriteLine(e);
});

■Java
list.forEach( e -> {
  System.out.print(e);
});

■Rust
list.for_each(|e| {
  println!("{}", e);
});

■Dart
list.forEach( (e) {
  print(e);
});
0074デフォルトの名無しさん
垢版 |
2019/01/05(土) 20:01:57.05ID:LMfMMSk0
■JavaScript
list.forEach( e => {
  print(e)
})

■Groovy
list.forEach { e ->
  print(e)
}

■Kotlin
list.forEach { e ->
  print(e)
}

■Swift
list.forEach { e in
  print(e)
}
0075デフォルトの名無しさん
垢版 |
2019/01/05(土) 20:05:15.93ID:LMfMMSk0
■Go
※筋力でforループ

セミコロンもだけど末尾ラムダの場合に括弧減らせる方が俺は好きだな
0082デフォルトの名無しさん
垢版 |
2019/01/05(土) 22:13:59.65ID:EkyrZm9z
色々調べてお疲れだと思うけど、そのラムダ式を変数に代入した場合を書いてみるといい
ちゃんと色々考えて機能追加したのか、それとも流行りに乗っかっただけなのかが分かるから
0083デフォルトの名無しさん
垢版 |
2019/01/05(土) 22:33:50.07ID:LMfMMSk0
>>81
主眼がラムダ構文だったから

>>82
そこを書いて自分の考えを出してこうぜ

俺も連投の割には>>75の最後の行が言いたかっただけだし
0084デフォルトの名無しさん
垢版 |
2019/01/05(土) 22:53:04.82ID:QuMXMUQO
>>83
俺わかっちゃってます風の文句しか言えないガイジに、自分の考えなんてあるわけないだろ
こういうやつは流行りに乗っかっただけのマウントが取りたいだけのキョロ充以下のゴミ虫なんだよ
0085デフォルトの名無しさん
垢版 |
2019/01/05(土) 23:27:18.90ID:3PJCY/Pt
ラムダを渡すのがポイントなわけね。なら、「作ればある」って感じか。

type anySlice []interface{}
func (this anySlice) forEach(f func(i interface{}) {
 for _, e := range this {
  f(e)
 }
}

list.forEach(func(e interface{}) {
 fmt.Println(e)
}
0086デフォルトの名無しさん
垢版 |
2019/01/06(日) 10:55:17.61ID:xgM5oZ73
そもそもラムダ式を変数に代入とか普通しないのでは
型推論が台無しになるでしょ
0089デフォルトの名無しさん
垢版 |
2019/01/06(日) 18:21:44.80ID:r4E4Sz7P
普通の関数型言語の型推論 ( HM型推論 ) なら
ラムダ式を変数に代入 ( 束縛 ) しても正常に型が付く
0091デフォルトの名無しさん
垢版 |
2019/01/14(月) 11:08:15.85ID:mSU16be8
ベクトル計算,統計,数値解析など
  Python,R

ブラウザ上
  JavaScript
  トランスパイラ
    TypeScript,Dart,Kotlin
  WebAssembly
    (多すぎ省略)

アプリ,サービス
  コンパイル
    C#,Java,Scala,Kotlin,Swift,Objective-C,Dart,Go
  スクリプト
    Ruby,Perl,PHP
  JSフレームワーク使用(Node,React/Native,Electronなど)
    JavaScript,TypeScript

ミドルウェア,ドライバ
  C,C++,Rust,Go

適応領域/縄張り的な観点で人気言語から列挙、異論は認める
0092デフォルトの名無しさん
垢版 |
2019/01/14(月) 11:09:15.12ID:mSU16be8
ハードウェアを使う計算処理のDSLとも言えるようなPython,Rの領域は
他が入り込めそうにない

TypeScriptはJavaScriptの上位互換性がかなりの強みになっているが
ネイティブコールは他に頼る必要がある

.NET Native, Substrate VM, Kotlin/Native, Dart など
VM型だったものがLLVM等を利用し、
FFIを持つだけでなくネイティブのバイナリを生成出来るようになっている

ある程度用途や領域の前提が無いと比較は難しいだろう
ビルド関連,エコシステムも実際上は言語選定に含まれる

もちろん題材としては構文(型システムなど含む)の優劣のみ比較するのでも良いと思うが
0093デフォルトの名無しさん
垢版 |
2019/01/25(金) 08:57:21.46ID:iIPgsGqp
▪Haskell
mapM print list
0094デフォルトの名無しさん
垢版 |
2019/01/25(金) 09:05:36.46ID:iIPgsGqp
>>83
渡す必要もないのにラムダ渡さないとダメですか。。。(震え声)

mapM (\e -> print e) list
0095デフォルトの名無しさん
垢版 |
2019/01/26(土) 19:42:15.89ID:qpwORrxM
流石にラムダは書けるのに関数は渡せないなんてクソ言語は無いだろwww
無いよね?
list.forEach(print)
0096デフォルトの名無しさん
垢版 |
2019/01/27(日) 05:18:31.69ID:RHxd3V/8
広告がめっちゃ悪さするけどいつからマルウェア配布してたんだ?
0097デフォルトの名無しさん
垢版 |
2019/01/27(日) 09:12:28.47ID:2eLr8oJu
>>95
それどの言語?
0099デフォルトの名無しさん
垢版 |
2019/01/27(日) 12:34:46.98ID:dhHHmXdZ
1引数1ステートメント前提での省略書くのは
実用はともかく比較のセンスは悪いと思う・・・
■ このスレッドは過去ログ倉庫に格納されています

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