Mozilla発のRust言語のスレ
公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust
Web上の実行環境
https://play.rust-lang.org
前スレ
https://mevius.5ch.net/test/read.cgi/tech/1507970294/
Rust Part5
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2018/02/11(日) 20:07:24.54ID:ri7dLd1B2018/02/21(水) 00:44:44.35ID:s9stOBAB
unsafe使えば書けるだろ
C++みたいに全部unsafeな言語よりは安全
C++みたいに全部unsafeな言語よりは安全
2018/02/21(水) 13:18:06.33ID:/K+AUWe/
C++ならゲーム
C#ならWindowsフォームアプリケーション
PHPならWebアプリケーション
Pythonなら機械学習
Rustは?
C#ならWindowsフォームアプリケーション
PHPならWebアプリケーション
Pythonなら機械学習
Rustは?
2018/02/21(水) 19:19:52.15ID:ariB2x93
ここはアンチが立てたキチガイ隔離スレです。
キチガイ以外書き込まないでね
キチガイ以外書き込まないでね
2018/02/21(水) 20:00:01.69ID:RN4nUagC
本スレが過疎ってレベルじゃないし実質こっちが本スレだろ
隔離()スレに勢いで負ける言語があるらしい
隔離()スレに勢いで負ける言語があるらしい
2018/02/21(水) 20:01:45.70ID:ariB2x93
まあそうなんだけどね
2018/02/21(水) 21:13:09.57ID:wTdoLSiT
ほんとID:yl4ANYczは戦犯
コンパイルできない厨が最後のコンテンツだったのに…
コンパイルできない厨が最後のコンテンツだったのに…
2018/02/22(木) 09:08:35.45ID:L3BN3Bsr
いわゆるnewtypeパターンをLLVM IRで見てみると
ごく単純なコードで使う分には中身の要素に最適化されてるけど、
それ使って配列を作っただけで最適化されなくなる
こんくらいでゼロコスト抽象化とか言ってるの?
typeでは新しい型作れないし、
結局新しい効率的な型を作る方法さえないんだな
ごく単純なコードで使う分には中身の要素に最適化されてるけど、
それ使って配列を作っただけで最適化されなくなる
こんくらいでゼロコスト抽象化とか言ってるの?
typeでは新しい型作れないし、
結局新しい効率的な型を作る方法さえないんだな
2018/02/22(木) 09:11:43.41ID:3phG5Adg
私にも敵が視える
2018/02/22(木) 12:12:42.57ID:rPAqV5nw
Rustで書くと実行時のメモリ使用量が増える感じは確かにある
2018/02/22(木) 12:12:50.46ID:nEiXxHSj
>>81
トレイトの特殊化でも無理?
トレイトの特殊化でも無理?
2018/02/22(木) 12:45:10.40ID:ETY6aWa8
バグかもしれないからissue立てたら
2018/02/22(木) 13:46:42.12ID:H839Tp+8
>>81
ゼロコスト抽象化はトレイトやジェネリクスを言っててnewtypeパターンは関係ないと思うゾ
Cに比べたらC++もRustもGoもランタイムの分だけメモリ使用量は増えるよね
C++にはランタイム存在しないとか大笑いなギャグを素で言う輩は知らん
ゼロコスト抽象化はトレイトやジェネリクスを言っててnewtypeパターンは関係ないと思うゾ
Cに比べたらC++もRustもGoもランタイムの分だけメモリ使用量は増えるよね
C++にはランタイム存在しないとか大笑いなギャグを素で言う輩は知らん
2018/02/22(木) 17:36:33.79ID:z8mO3my1
その理屈で言うとlibcもランタイムになりそう
88デフォルトの名無しさん
2018/02/24(土) 01:22:38.50ID:it5yKGst 「Rust 1.24」リリース、コード整形ツール「rustfmt」をプレビュー導入 | OSDN Magazine
https://mag.osdn.jp/18/02/17/163000
> ビルドの速度は改善するが、出力されたバイナリの実行速度は少し遅くなるとしている。
https://mag.osdn.jp/18/02/17/163000
> ビルドの速度は改善するが、出力されたバイナリの実行速度は少し遅くなるとしている。
2018/02/24(土) 05:12:18.52ID:sKnrWNZ+
むしろ今まで並列コンパイルをしていなかったのかという驚きがね...
型推論とかボローチェッカーとか大変だろうしと思ってたが、並列コンパイルで早くなるのは助かるよね
型推論とかボローチェッカーとか大変だろうしと思ってたが、並列コンパイルで早くなるのは助かるよね
2018/02/24(土) 12:58:21.72ID:xVNPO9ZK
コンパイルを速くするためにプログラムの速度を犠牲にする
自称低級言語があるらしい
自称低級言語があるらしい
2018/02/24(土) 13:22:49.17ID:F+bRKUHR
言語じゃなくコンパイラの話だぞ
速度を求めたリリースビルドは並列なしに切り替えられる低級調製可能なコンパイラすごいよね(棒読み
速度を求めたリリースビルドは並列なしに切り替えられる低級調製可能なコンパイラすごいよね(棒読み
2018/02/24(土) 14:20:25.52ID:Wx4opHQO
言語仕様には興味あるけど実装は興味ありませんって奇特な方には人気出そうな言語だね。
2018/02/24(土) 14:24:58.18ID:2/pmmfzJ
低レイヤ書く人は仕様より吐かれるバイトコードの方にしか興味ないから
完全にターゲティングに失敗してるよなこの言語
完全にターゲティングに失敗してるよなこの言語
2018/02/24(土) 15:42:04.98ID:F+bRKUHR
むしろコンパイルを通すことが難しくても効率的で安全なマシンコードを出力して欲しい奇特な人向けだけどな
性能無視して生産効率だけを求めるならボローチェッカーとかunsafeとかトレイトとか面倒な言語仕様はマジ辛い
ただ緩く書きたいだけならSwiftとかGoの方が絶対良いよな
ランタイムが馬鹿でかかろうが、goroutineが冗長コストだろうが、言語仕様が楽なそれらは生産効率が断然良い
性能無視して生産効率だけを求めるならボローチェッカーとかunsafeとかトレイトとか面倒な言語仕様はマジ辛い
ただ緩く書きたいだけならSwiftとかGoの方が絶対良いよな
ランタイムが馬鹿でかかろうが、goroutineが冗長コストだろうが、言語仕様が楽なそれらは生産効率が断然良い
2018/02/24(土) 16:20:16.21ID:VjJ87j7v
安全はともかく、Rustが効率的なマシンコードを出力するというのは同意しかねる
2018/02/24(土) 22:13:15.47ID:Z3ajdh1I
やはりD言語が最強か
2018/02/27(火) 14:30:57.99ID:b6IHds+I
ソースとマシンコードが一対一になる言語は安心感あるな
98デフォルトの名無しさん
2018/02/27(火) 14:35:36.74ID:UR+NQY+Q やはりアセンブラか
99デフォルトの名無しさん
2018/02/27(火) 14:36:01.06ID:MLnedvVc 【UFO】 山本太郎も横浜で遭遇 ≪W◇″型の発光体≫ 世界にテレパシー放送 【大宣言】
http://rosie.5ch.net/test/read.cgi/liveplus/1519704223/l50
http://rosie.5ch.net/test/read.cgi/liveplus/1519704223/l50
100デフォルトの名無しさん
2018/03/01(木) 00:41:00.21 【お知らせ】Packt出版より Network Programming with Rust が発売されました。
101デフォルトの名無しさん
2018/03/05(月) 15:59:00.63ID:iGOVMObf https://play.rust-lang.org/?gist=0bed0aa16c0679665fee05cc6bfda41f&version=nightly
fn nanka() -> Option<u32>{
println!("nanka called");
None
}
fn nanka2() -> Option<u32>{
println!("nanka2 called");
None
}
fn nanka3() -> Option<u32>{
println!("nanka3 called");
None
}
fn main() {
match (nanka(), nanka2(), nanka3()){
(None, _, _) => println!("nanka ha None"),
(Some(_), Some(_), Some(_)) => println!("some"),
(_, _, _) => println!("else")
}
}
nanka2, nanka3が呼ばれなくて困る!って副作用があるパターンぐらいじゃないですか?
nanka1がNoneと判定した時点ですぐprintしてくれないものでしょうか
fn nanka() -> Option<u32>{
println!("nanka called");
None
}
fn nanka2() -> Option<u32>{
println!("nanka2 called");
None
}
fn nanka3() -> Option<u32>{
println!("nanka3 called");
None
}
fn main() {
match (nanka(), nanka2(), nanka3()){
(None, _, _) => println!("nanka ha None"),
(Some(_), Some(_), Some(_)) => println!("some"),
(_, _, _) => println!("else")
}
}
nanka2, nanka3が呼ばれなくて困る!って副作用があるパターンぐらいじゃないですか?
nanka1がNoneと判定した時点ですぐprintしてくれないものでしょうか
102デフォルトの名無しさん
2018/03/05(月) 19:46:36.35ID:S3T8EfYp println!("nanka2 called"); とか副作用あるよね
103デフォルトの名無しさん
2018/03/05(月) 21:01:55.89ID:YH1rjFLX まさに副作用あって呼ばれなきゃ困るパターン書いてて草
104デフォルトの名無しさん
2018/03/05(月) 21:44:52.21ID:rDxXu9uq 遅延評価の言語ではないから言語仕様的に全部評価することが保証されてるからなぁ
副作用なくて同じcrate内に処理があるなら最適化で消えるのでは
副作用なくて同じcrate内に処理があるなら最適化で消えるのでは
105デフォルトの名無しさん
2018/03/07(水) 19:29:12.10ID:LRCrToXv 横着してたから気づかなかった…
>>104
https://play.rust-lang.org/?gist=548477e609761c03d062880ceebec28a&version=stable
MIR見る限りあるっぽいです(これ副作用ないですよね?)
>>104
https://play.rust-lang.org/?gist=548477e609761c03d062880ceebec28a&version=stable
MIR見る限りあるっぽいです(これ副作用ないですよね?)
106デフォルトの名無しさん
2018/03/07(水) 21:27:53.74ID:VXG6nm0Z 良く分からないけどReleaseにしてASM見ると消えてるみたい
MIRに対する最適化は現時点ではそれほどやられてなさそう
MIRに対する最適化は現時点ではそれほどやられてなさそう
107デフォルトの名無しさん
2018/03/07(水) 21:51:00.14ID:LRCrToXv108デフォルトの名無しさん
2018/03/07(水) 22:06:37.97ID:5W30026P 言語仕様で消えるってどっか書いてある?探したけど見つからんかった
109デフォルトの名無しさん
2018/03/07(水) 22:42:40.55ID:MkNIh69G110デフォルトの名無しさん
2018/03/08(木) 07:35:45.52ID:VN6/Zkeb 会社大変だから許してあげよう
111デフォルトの名無しさん
2018/03/08(木) 09:01:09.79ID:SDzhQ04b >>108
最適化の話だから言語仕様では決められてないと思う
最適化の話だから言語仕様では決められてないと思う
112デフォルトの名無しさん
2018/03/08(木) 13:04:24.48ID:XQ95i3sC あのtanakhですら擁護できなくなってきたRustとかいう何か
やっぱクソ言語じゃん
やっぱクソ言語じゃん
113デフォルトの名無しさん
2018/03/08(木) 13:05:40.24ID:FYuhJ3+Z 逆にたなこふ氏が好きな言語って何だよ
Haskellくらいだろ
Haskellくらいだろ
114デフォルトの名無しさん
2018/03/08(木) 13:10:19.32ID:FYuhJ3+Z115デフォルトの名無しさん
2018/03/08(木) 13:42:39.37ID:XQ95i3sC いくつか言語……?ってなるのが混じってるな
116デフォルトの名無しさん
2018/03/08(木) 17:46:17.85ID:3H4xAb5h >>114
Rust評価高いくてGoは糞って評価だな。
Rust評価高いくてGoは糞って評価だな。
117デフォルトの名無しさん
2018/03/08(木) 20:48:12.88ID:Qr0iRnUQ 絶対一緒に仕事したくないようなコード書きそうな人柄なのがよくわかるのはいいことだね。
118デフォルトの名無しさん
2018/03/09(金) 02:34:49.09ID:C5IjE5Kn スタック使うかヒープ使うか考えなきゃいけないしマジで低級言語だなRust
119デフォルトの名無しさん
2018/03/09(金) 09:09:56.97ID:MtNghMxY 低級プログラミング言語というときの低級は必ずしも蔑む意味とはならない
120デフォルトの名無しさん
2018/03/09(金) 12:35:50.11ID:Awo4Q9T/ >>118は別に蔑んでないと思うが…
121デフォルトの名無しさん
2018/03/09(金) 12:41:07.31ID:X+hGjMr5 118が低級
122デフォルトの名無しさん
2018/03/09(金) 13:10:31.19ID:Awo4Q9T/ どう読んでも>>118は事実を言っただけでrustを誉めても貶してもいないと思うが…
「CはPythonよりも低級言語」これC言語を蔑んでる意味で取るアホなんているの?
「CはPythonよりも低級言語」これC言語を蔑んでる意味で取るアホなんているの?
123デフォルトの名無しさん
2018/03/09(金) 17:25:20.32ID:4MawrcZA 初心者は大体そのように取るよ
124デフォルトの名無しさん
2018/03/09(金) 17:29:38.88ID:Oir5mzi3 はいはいわかったわかった
125デフォルトの名無しさん
2018/03/09(金) 18:10:23.86ID:TjQY2cN8 枯れてる言われて古いんだなと思ってそう
126デフォルトの名無しさん
2018/03/10(土) 02:47:36.63ID:RGnl5SiL 高級言語のcobol最強ですかね
127デフォルトの名無しさん
2018/03/10(土) 04:12:59.75ID:YINDWKAW 蔑んでいるように見えるのはあなた自身が心の奥底でRustを蔑んでいるのです
128デフォルトの名無しさん
2018/03/10(土) 07:06:56.73ID:PbOmOUXH はいはいわかったわかった
129デフォルトの名無しさん
2018/03/11(日) 03:31:49.17ID:UKNdLJMW 1つのstructにいっぱい詰め込むと初期化が面倒なんですが
130デフォルトの名無しさん
2018/03/11(日) 04:15:48.10ID:4b/1QsDB new()用意しとけ
131デフォルトの名無しさん
2018/03/11(日) 13:22:28.79ID:vP34sga0 derive(Default)使えば
132デフォルトの名無しさん
2018/03/11(日) 13:57:51.99ID:91F3yKR+ よくインターネット上の広告で半年でエンジニアに!みたいなのあるけど、インターネット不得手、プログラム未経験者が真剣に半年頑張れば本当にそんなこと可能なんですか?
可能ならその理由はなんでしょう?人材が足りていないというのは存じ上げていますが
可能ならその理由はなんでしょう?人材が足りていないというのは存じ上げていますが
133デフォルトの名無しさん
2018/03/11(日) 13:58:22.81ID:91F3yKR+ ごめんなさい誤爆しました
134デフォルトの名無しさん
2018/03/11(日) 14:13:04.94ID:zWe+i43K >>132
言われたことやるだけなら可能じゃね?
言われたことやるだけなら可能じゃね?
135デフォルトの名無しさん
2018/03/18(日) 21:30:14.47ID:jQGugCpv >>8
今更だけどこれ書いた奴もブコメした奴も誰一人rustまともに使ったこと無さそうで草
今更だけどこれ書いた奴もブコメした奴も誰一人rustまともに使ったこと無さそうで草
136デフォルトの名無しさん
2018/03/19(月) 15:39:12.03ID:dH7nnHk9137デフォルトの名無しさん
2018/03/19(月) 19:45:41.61ID:ahbMAcYG 俺の技量不足なんだろうけどmutmut地獄は確かにわかる
138デフォルトの名無しさん
2018/03/19(月) 20:01:00.05ID:dH7nnHk9139デフォルトの名無しさん
2018/03/19(月) 20:11:12.51ID:bbBltail C++erだったのでconst地獄はむしろ慣れてるので歓迎
140デフォルトの名無しさん
2018/03/19(月) 20:37:55.38ID:+FMR/dfx 一方、記述の美しさを重視する Nim では let と var に分けた
141デフォルトの名無しさん
2018/03/19(月) 21:23:39.57ID:dH7nnHk9 Nimは引数を可変にしようとすると下記のようになる。
proc test(x: var string): string =
x = x & " world"
return x
var x = "hello"
let y = test(x)
echo y
関数宣言で引数にvarと書かなきゃ可変にできないんじゃRustとそれほど手間は変わらない
それに、宣言はvarと書かせるクセに呼び出し側がtest(var x)じゃなくてtest(x)となるのが解せない
これじゃ呼び出し側を見ただけじゃxが不変か可変か判断できない
C++と同じ類の過ちを犯してる
簡潔ではあるかもしれないが全然美しくない(美しいの定義によるが…)
https://play.nim-lang.org/?gist=9e8b6b6059cf8640f6c71fd2075b07c8
proc test(x: var string): string =
x = x & " world"
return x
var x = "hello"
let y = test(x)
echo y
関数宣言で引数にvarと書かなきゃ可変にできないんじゃRustとそれほど手間は変わらない
それに、宣言はvarと書かせるクセに呼び出し側がtest(var x)じゃなくてtest(x)となるのが解せない
これじゃ呼び出し側を見ただけじゃxが不変か可変か判断できない
C++と同じ類の過ちを犯してる
簡潔ではあるかもしれないが全然美しくない(美しいの定義によるが…)
https://play.nim-lang.org/?gist=9e8b6b6059cf8640f6c71fd2075b07c8
142デフォルトの名無しさん
2018/03/19(月) 21:32:11.25ID:dH7nnHk9 あとRustの場合はそもそもmutは出来るだけ使うなという方針だから
mutの記述が面倒なのはワザとやってるという点もあるし…
mutの記述が面倒なのはワザとやってるという点もあるし…
143デフォルトの名無しさん
2018/03/20(火) 08:39:12.91ID:iuzVSye9 なるほど
144デフォルトの名無しさん
2018/03/20(火) 14:11:19.46ID:J0Id73NT > これじゃ呼び出し側を見ただけじゃxが不変か可変か判断できない
珍しいご意見ですよね。
珍しいご意見ですよね。
145デフォルトの名無しさん
2018/03/20(火) 16:01:11.80ID:/+MVnq9/ >>144
よくよく考えるとRustも呼び出し側にmut付けること自体は必須ではないんだよな
所有権を借用するために大抵は&mutを書かされるってだけで…
渡す変数の型がもともと&mut Tだった場合は書かなくてもいい…
Rustの場合は呼び出し側で&mut書く羽目になる経験が多かったので
俺が勝手に「可変にしたければmutを絶対に書かないといけない」という勘違いをしていただけか…
でも、書かされた方が読むときには分かりやすいので個人的にはこっちの方が好き
俺自身がNimはどうしても好きになれなくて不満点を挙げたつもりが自ら墓穴を掘ってしまった感じだな
一般的にはNimの方がよっぽど簡潔で美しいのかもしれない…
ただ単に俺の感性の方が狂ってるだけっぽいな…
よくよく考えるとRustも呼び出し側にmut付けること自体は必須ではないんだよな
所有権を借用するために大抵は&mutを書かされるってだけで…
渡す変数の型がもともと&mut Tだった場合は書かなくてもいい…
Rustの場合は呼び出し側で&mut書く羽目になる経験が多かったので
俺が勝手に「可変にしたければmutを絶対に書かないといけない」という勘違いをしていただけか…
でも、書かされた方が読むときには分かりやすいので個人的にはこっちの方が好き
俺自身がNimはどうしても好きになれなくて不満点を挙げたつもりが自ら墓穴を掘ってしまった感じだな
一般的にはNimの方がよっぽど簡潔で美しいのかもしれない…
ただ単に俺の感性の方が狂ってるだけっぽいな…
146デフォルトの名無しさん
2018/03/20(火) 16:05:30.99ID:ck80uwiX そんな珍しくもない気もするが
147デフォルトの名無しさん
2018/03/20(火) 21:24:24.10ID:kx/m1AUo 俺もそんな珍しくもないと思う
148デフォルトの名無しさん
2018/03/20(火) 23:15:30.72ID:RYTCq15b 「変数」が値に名前を付けたイメージに人とメモリ領域に名前を付けたイメージの人と
149デフォルトの名無しさん
2018/03/21(水) 00:20:42.31ID:mtmyqFMA データがメモリのスタック領域ヒープ領域あるいは別の領域などどこに記憶されるのかという低レベルなことを考慮しながらプログラミングしなきゃならない
変数とは何かと言えば
スタック領域の特定のメモリ番地に名前をつける行為でしかなく
所有権の委譲って何かと思えばそのメモリ番地の名前を変える行為でしかない
クソ
変数とは何かと言えば
スタック領域の特定のメモリ番地に名前をつける行為でしかなく
所有権の委譲って何かと思えばそのメモリ番地の名前を変える行為でしかない
クソ
150デフォルトの名無しさん
2018/03/21(水) 21:34:47.63ID:JvyRf7uK 分かりやすい説明だね
151デフォルトの名無しさん
2018/03/23(金) 00:30:01.20ID:DIa3/8ef GBAのプログラムを書いてみたいな。どうせならRustでやってみるか
ARMポートあったよね。Thumbコードも吐けるのかな
とか思ってググっていたら先人がいた。考えることはみんな一緒かw
ARMポートあったよね。Thumbコードも吐けるのかな
とか思ってググっていたら先人がいた。考えることはみんな一緒かw
152デフォルトの名無しさん
2018/03/23(金) 08:40:36.80ID:yG5SnYrv Unityが北欧のニートから生まれたって話を聞いて
Rustでゲームエンジン作ればワンチャンあるんじゃないかと思い始めてきた。
Rustでゲームエンジン作ればワンチャンあるんじゃないかと思い始めてきた。
153デフォルトの名無しさん
2018/03/23(金) 08:44:26.71ID:0DDzAR5J 気のせい。
154デフォルトの名無しさん
2018/03/23(金) 10:01:19.78ID:+d3L/XtB あるかもね
155デフォルトの名無しさん
2018/03/24(土) 02:46:18.89ID:Q4O/QWqD unsafe使い始めたらCのがやっぱ楽じゃね?ってことにすぐなる。
156デフォルトの名無しさん
2018/03/24(土) 07:57:37.67ID:AYaIp/Or そしてメモリ周りのバグで悩まされた時にやっぱRustで書いときゃ良かったってなる
157デフォルトの名無しさん
2018/03/24(土) 11:41:10.67ID:lA18Hk/y バグなんてメモリに限ったことじゃないのにね
158デフォルトの名無しさん
2018/03/24(土) 12:51:11.00ID:6E9wdkyi 要因の種類が減るのは良いことだ
159デフォルトの名無しさん
2018/03/24(土) 19:57:38.34ID:Hl/X5tEX rust未経験者なんだけど、この言語ってweb開発には向いてないの?
goより高度なこと出来るならweb開発も全然苦じゃないように思うんだけど
何かしらweb開発に向いてない要素あんるんかな?
goより高度なこと出来るならweb開発も全然苦じゃないように思うんだけど
何かしらweb開発に向いてない要素あんるんかな?
160デフォルトの名無しさん
2018/03/24(土) 20:11:16.11ID:lcHhOSrB DOMいじれんの?
161デフォルトの名無しさん
2018/03/24(土) 20:22:46.33ID:Hl/X5tEX ごめん。聞き方がふんわりしてた。
webのバックグラウンドで動いてるrestAPIサーバに向いてない要因は何かあるのかな?
SPAとかマイクロサービスとかの構成でjavaとかgoとかの代わりに成り得るのかなって。
webのバックグラウンドで動いてるrestAPIサーバに向いてない要因は何かあるのかな?
SPAとかマイクロサービスとかの構成でjavaとかgoとかの代わりに成り得るのかなって。
162デフォルトの名無しさん
2018/03/24(土) 20:22:52.79ID:6E9wdkyi 一応WebAssemblyで吐けばRustのコードとJavaScriptのコードを混在出来るけど
軽く触っただけなんでデバッグなどの開発環境の事は未知数
軽く触っただけなんでデバッグなどの開発環境の事は未知数
163デフォルトの名無しさん
2018/03/24(土) 20:22:54.62ID:eKuOy/a9 >>160
無理
無理
164デフォルトの名無しさん
2018/03/24(土) 20:25:44.26ID:bGodUaM+ サーバ側でしょ?言語としては代わりになるだろうけどwebに向いてる部分てのが何を指してるかによるんじゃない
165デフォルトの名無しさん
2018/03/24(土) 20:33:09.05ID:Hl/X5tEX hello world出たからもう初心者と言っても過言ではない。。
>>164
個人的には静的言語ならどれも大差ないと思ってるんだけど、
その方面では全然注目されてないように見えたから何か原因があるのかなって。
>>164
個人的には静的言語ならどれも大差ないと思ってるんだけど、
その方面では全然注目されてないように見えたから何か原因があるのかなって。
166デフォルトの名無しさん
2018/03/24(土) 20:36:37.33ID:6E9wdkyi >>161
以前Goでサーバーサイド書いたことあって、バイナリ一つデプロイするお手軽さがとにかく良かった
といってもほんとに小機能で、WAFにEcho使って静的ファイル(CSS・画像)とか
レスポンスにDBから引っ張ったJSON返すRESTfulの出来損ないみたいのだけど
開発はWindows、デプロイ先がCentOSだったんだけど、
WindowsでCentOS用のバイナリ吐けるし、プロセスの再起動監視も今はDocker-composeがやってくれてるし(restart: always オプション)
Windowsで開発してPUSH、CIツールがCentOS用にバイナリ吐いて、CentOSではバイナリ受け取ったら
$ docker-compose down && docker-compose up -d --build
叩くだけでデプロイ完了っていう超絶お手軽、もちろんデプロイはAnsibleやItamaeで自動化しても良い
以前Goでサーバーサイド書いたことあって、バイナリ一つデプロイするお手軽さがとにかく良かった
といってもほんとに小機能で、WAFにEcho使って静的ファイル(CSS・画像)とか
レスポンスにDBから引っ張ったJSON返すRESTfulの出来損ないみたいのだけど
開発はWindows、デプロイ先がCentOSだったんだけど、
WindowsでCentOS用のバイナリ吐けるし、プロセスの再起動監視も今はDocker-composeがやってくれてるし(restart: always オプション)
Windowsで開発してPUSH、CIツールがCentOS用にバイナリ吐いて、CentOSではバイナリ受け取ったら
$ docker-compose down && docker-compose up -d --build
叩くだけでデプロイ完了っていう超絶お手軽、もちろんデプロイはAnsibleやItamaeで自動化しても良い
167デフォルトの名無しさん
2018/03/24(土) 20:51:06.97ID:Hl/X5tEX hello worldが10個出た。
>>166
goのシングルバイナリ良さそうだよね。
全然分かってないんだけど、rustでもちょびっと頑張れば
クロスコンパイルできるって認識なんだけど間違ってるのかな?
>>166
goのシングルバイナリ良さそうだよね。
全然分かってないんだけど、rustでもちょびっと頑張れば
クロスコンパイルできるって認識なんだけど間違ってるのかな?
168デフォルトの名無しさん
2018/03/24(土) 21:09:10.81ID:6E9wdkyi Rust経験浅いんで良く分かってない、一応nickelってWAFあるしrustupでコンパイル出来るから土台はあるけど
RustってわりとカジュアルにC製のライブラリをdllとして利用してるからそこが未知数
まあそれらのライブラリを使わなきゃいいんだろうけど
RustってわりとカジュアルにC製のライブラリをdllとして利用してるからそこが未知数
まあそれらのライブラリを使わなきゃいいんだろうけど
169デフォルトの名無しさん
2018/03/24(土) 21:09:38.20ID:6E9wdkyi rustupでクロスコンパイル
170デフォルトの名無しさん
2018/03/24(土) 21:17:38.55ID:Hl/X5tEX171デフォルトの名無しさん
2018/03/24(土) 21:29:23.70ID:LUxFSHaJ >>165
そういう観点なら学習コストが高いのがじゃくてんだと思う
そういう観点なら学習コストが高いのがじゃくてんだと思う
172デフォルトの名無しさん
2018/03/24(土) 21:45:47.85ID:glWbEBFl >>165
個人的にはGCありなしの差が大きい気はする。
特にweb系はGCがあって当たり前だから
急にlifetimeとか言われても…ってなりそうな。
C/C++だと結局脳内でlifetime管理してるから
そこの学習コストは相対的には低い。
個人的にはGCありなしの差が大きい気はする。
特にweb系はGCがあって当たり前だから
急にlifetimeとか言われても…ってなりそうな。
C/C++だと結局脳内でlifetime管理してるから
そこの学習コストは相対的には低い。
173デフォルトの名無しさん
2018/03/24(土) 22:12:42.54ID:AYaIp/Or174165
2018/03/24(土) 23:05:16.49ID:YaLUXLZ4 >>171
>>172
なるほど。確かにWEB系だと短い納期+人海戦術で乗り切ることも多いから
そういうのには辛そうだね。でも言語仕様的にWEB(の裏のサービス)が不得意という
訳では無さそうだから、細く長くやるようなサービスなら導入もアリっちゃアリという認識でいいのかな。
>>173
そだね。なんにもわからんわw っていうかWEBやっててGCであんまり困ったことないかも知れん。
困ったことがないことに起因して難易度が上がった言語を「使いたいです」って提案するにはちょっと強引さが必要そうやね。
今、初心者用の練習問題やってるんだけどメモリの管理なんて全然出てこない。
みんなどうやってRUSTの勉強してるの?やっぱり何か動くもの作ってみるのが早いかな?
>>172
なるほど。確かにWEB系だと短い納期+人海戦術で乗り切ることも多いから
そういうのには辛そうだね。でも言語仕様的にWEB(の裏のサービス)が不得意という
訳では無さそうだから、細く長くやるようなサービスなら導入もアリっちゃアリという認識でいいのかな。
>>173
そだね。なんにもわからんわw っていうかWEBやっててGCであんまり困ったことないかも知れん。
困ったことがないことに起因して難易度が上がった言語を「使いたいです」って提案するにはちょっと強引さが必要そうやね。
今、初心者用の練習問題やってるんだけどメモリの管理なんて全然出てこない。
みんなどうやってRUSTの勉強してるの?やっぱり何か動くもの作ってみるのが早いかな?
175デフォルトの名無しさん
2018/03/24(土) 23:11:45.93ID:gYQh0+lt 簡単なApp serverならrocketが楽だった
早くstableで動くようになってほしい
早くstableで動くようになってほしい
■ このスレッドは過去ログ倉庫に格納されています
