Nimでカーネルを書くとか無理なのかなーと思ってたんですが 実際やるわけじゃないけど、いまのところ 0055デフォルトの名無しさん2019/06/18(火) 12:48:21.44ID:1CtlGReK C++でカーネル書いたひとはいるね 0056デフォルトの名無しさん2019/06/18(火) 14:22:47.46ID:6YVmUs6+ 実際Linuxカーネルのコードは疑似OOPだみたいな説明を見かけたので NimやC++で書いても良いのかもしれない。 個人的にCへのトランスパイラとしてのNimにひじょーに興味がある 0057デフォルトの名無しさん2019/06/18(火) 14:25:52.94ID:6YVmUs6+https://forum.nim-lang.org/t/2261 >So let's say that implementing your game in Nim instead of C++ means 20% larger binary sizes, 20% more RAM usage, and 20% more CPU/GPU usage.
どうやって解放タイミングを調べてるんだ? GC言語から非GC言語へのトランスパイルがなぜ可能なのか? 0060デフォルトの名無しさん2019/06/19(水) 02:09:28.92ID:8qBvJS/J var name: string = readLine(stdin)
なんでvarと書きつつstringと型指定するのか 変な言語仕様だな string name = でいいだろ 0061デフォルトの名無しさん2019/06/19(水) 02:10:39.50ID:8qBvJS/J var name = readLine(stdin)
型推論だっていってるけどこれ可読性低下してる string name = readLine(stdin) これがベスト 0062デフォルトの名無しさん2019/06/19(水) 02:52:19.54ID:8qBvJS/J nimでデバドラ作ったりできるんだろうか 0063デフォルトの名無しさん2019/06/19(水) 02:57:44.38ID:8qBvJS/Jhttps://forum.nim-lang.org/t/2541 Nim also can produce a program that will be put in an embedded system. In such environment, usually there is no OS or only primitive OS, and Nim produced program have higher chances to access hardware directly.
できそうだ Nimは流行りそうな気がする なんで組み込みでC++なんか使ってるんだ 0064デフォルトの名無しさん2019/06/19(水) 04:14:19.61ID:8qBvJS/Jhttps://forum.nim-lang.org/t/3223 >Basically, 10 OS for 10 CPUs would contain 100 sets of C source code, that get bundled up over in csources.git
これじゃダメだな・・・ 0065デフォルトの名無しさん2019/06/19(水) 04:24:41.25ID:8qBvJS/J 勘違いした。ダメってことはないか Nimコード自体は環境非依存、Cコードにするとき環境依存、ということか 0066デフォルトの名無しさん2019/06/19(水) 14:31:42.44ID:Yoy0IPRe LLVMω 0067デフォルトの名無しさん2019/06/21(金) 05:13:28.08ID:gJOJvtBY Nimってめちゃすごなんじゃないかなあ 細かい言語仕様で嫌いなところがあるけど 0068デフォルトの名無しさん2019/06/21(金) 14:29:00.17ID:HK0kbqVP 漏れも D がすごいと思ってた時期があるよ 0069デフォルトの名無しさん2019/06/21(金) 14:55:07.18ID:GHyPzIJc>>61 name : string := readLine(stdin) のほうがいい。 0070デフォルトの名無しさん2019/06/22(土) 05:26:38.53ID:ecTKxvDLhttps://nim-lang.org/ The Nim compiler and the generated executables support all major platforms like Windows, Linux, BSD and Mac OS X.
executablesは機械語?Cコード? いずれにせよ環境依存してると思うけど、大抵のプラットフォームをサポートしてます、ってどういうこと? 大抵のプラットフォームに向けてトランスパイルできますってこと? 0071デフォルトの名無しさん2019/06/22(土) 09:58:00.49ID:fiI8bn9U You Nim で Tensorflow が使えるアプリ造っchina YO 0072デフォルトの名無しさん2019/06/24(月) 09:23:40.70ID:4pk2usGN>>69 var name : string = readLine(stdin) #nameは変更可能 let name : string = readLine(stdin) #nameは初期化後は変更不可 というletとvarに違いがある。 型推論使ったほうがコード読みやすい、書きやすいという人もいるんだよ。 readLineの戻り値の型はstringに決まってるんだから毎回型を書く必要ないと思うけど 0073デフォルトの名無しさん2019/06/24(月) 09:43:12.98ID:4pk2usGN>>70 NimはC言語に変換してからgcc等のCコンパイラを呼んで実行ファイルを作るんだよ。 C言語は大抵のプラットフォームで使える言語だからマルチプラットフォーム化しやすい。 なので一度書いたNimコードをそれぞれのプラットフォーム上でコンパイルするかクロスコンパイルするだけでだいたいは動く。 けどNimから出力されるCコードは特定のCコンパイラ、OS、CPU向けに書かれているので、それだけでマルチプラットフォームな実行ファイルは作れないらしい。 Nimの標準ライブラリのソースコードを読むとOS、CPUによる違いを吸収するためのコードがときどきあるよ。 0074デフォルトの名無しさん2019/06/24(月) 09:53:12.36ID:4pk2usGN Nimのソースコードのcompiler/extccomp.nimにNimが対応しているC/C++コンパイラの情報がまとまっていて、compiler/platform.nimにはOSとCPUの情報がまとまってる。 0075デフォルトの名無しさん2019/06/24(月) 11:40:11.26ID:eHWTfFeZhttps://github.com/nim-lang/Nim/blob/devel/compiler/extccomp.nim https://github.com/nim-lang/Nim/blob/devel/compiler/platform.nim https://github.com/nim-lang/Nim/wiki/Consts-defined-by-the-compiler0076デフォルトの名無しさん2019/06/24(月) 15:58:18.33ID:4pk2usGN>>59 NimのGCについてはここに情報がある。 メモリ確保時にいらなくなったメモリを走査して解放しているらしい。 https://nim-lang.org/docs/gc.html