nim (443レス)
1-

1
(1): 2018/03/01(木)18:32 ID:vh/yy2VS(1) AAS
外部リンク:nim-lang.org
317
(1): 2022/12/17(土)18:07 ID:GzYo/1Xm(1) AAS
今はNimNodeじゃなく、quote do:で書くのが良いよな。どうしてもNimNodeじゃなきゃ書けないマクロもあるだろうけどね
318: 2022/12/17(土)19:18 ID:2DPGsS1m(2/2) AAS
>>317
外部リンク[html]:nim-lang.org
外部リンク:github.com
外部リンク:github.com
319: 2022/12/22(木)07:38 ID:Fm5nn8iV(1) AAS
最初のrelease candidate for Nim v2.0が公開されました。
外部リンク[html]:nim-lang.org
320: 2022/12/22(木)10:51 ID:Y6cO6Ymu(1) AAS
ペース早いよなあ
321: 2022/12/22(木)10:52 ID:N8bfJDIh(1) AAS
nim-2.0 RC1 がリリースされた
外部リンク[html]:nim-lang.org

来年1月か2月には正式2.0になるのかも
322: 2022/12/23(金)02:05 ID:PNJSSvHF(1) AAS
もう2.0かよ(´・ω・`)公開してるライブラリ大丈夫かな
323: 2022/12/23(金)20:17 ID:244A80LW(1) AAS
バージョンが大きく変わって大丈夫と思う方が
無理がある
324: 2023/01/16(月)16:24 ID:MsfEWWA2(1) AAS
あっという間に2月
325: 2023/01/23(月)22:52 ID:NHwV5soq(1) AAS
書き込みが1ヶ月に1回しかないスレ w
326: 2023/01/26(木)03:28 ID:To7TXanK(1) AAS
Nim言語を使っていても特につまづくことがないから話題があんまりないんだよね。
327: 2023/01/26(木)18:39 ID:MzjwjnoQ(1) AAS
使用者の絶対数が少なすぎ
328: 2023/02/01(水)01:23 ID:p1uaZW7X(1) AAS
てすと
329: 【だん吉】 [!omikuji] 2023/03/01(水)09:22 ID:68s28u+f(1) AAS
!omikuji
330
(1): 2023/03/01(水)12:20 ID:q8rzgPd8(1/2) AAS
初心者はys3mとかrs3mで十分

Ziicubeでys3m出た
1割引き価格後の値段

679円 マグネット
1151円 Maglev
1623円 Boall-Core

外部リンク:www.ziicube.com
331: 2023/03/01(水)12:20 ID:q8rzgPd8(2/2) AAS
>>330
誤爆
332
(1): 2023/03/05(日)11:11 ID:/Qd0pRlS(1) AAS
WinnyとNimってネーミングセンス似てるね
333: 2023/03/05(日)19:55 ID:gl/xkADq(1) AAS
>>332
Nimは元々Nimrodっていう名前だったんだけどその由来は
外部リンク:forum.nim-lang.org
334: 2023/03/06(月)14:19 ID:diWxUEyJ(1) AAS
外部リンク:www.cosme.net
335
(1): 2023/04/03(月)17:59 ID:dNC7VYHk(1) AAS
この言語ってRustみたいにプログラマに押し付けるmutなんて使ってないのに、なんでいわゆるMove操作が勝手に出来るの?
説明しろください!
336: 2023/04/03(月)18:32 ID:3grB/pQG(1) AAS
>>335
こちらの資料には目をとおされましたか?
外部リンク[html]:nim-lang.org
337: 2023/04/09(日)09:29 ID:Dm0aM9sg(1) AAS
Nim良いよね
Rustは宣伝がうざいだけだが
Nimは判ってる人の間でまったり進化してくれ
338: 2023/05/04(木)21:15 ID:wwnsNcS0(1) AAS
公式読めばだいたいのことはわかるから特にここでも議論は出ないよね
唯一日本語の書籍がもう一冊くらい欲しいなあくらい
339
(1): 2023/05/06(土)09:24 ID:u7gslL5e(1) AAS
importとincludeの違いってなに?
340: 2023/05/07(日)06:11 ID:uVIPnqNg(1) AAS
>>339
外部リンク:qiita.com
外部リンク:qiita.com
341: 2023/06/28(水)19:11 ID:cQY5DEV3(1) AAS
Nim言語 1.6.14 リリース
外部リンク[html]:nim-lang.org
342
(1): 2023/07/02(日)18:18 ID:4yDce2PB(1) AAS
夜遅くにすいません。
SyntaxHilighter用のNim Brushってどっかにありませんか?
343
(1): 2023/07/02(日)18:34 ID:DcMb4mOQ(1/2) AAS
>>342
話の内容が全然理解できないけど。。。
344
(1): 2023/07/02(日)21:16 ID:w86HyNV3(1) AAS
>>343
ごめんなさい。
SyntaxHighlighter でした。
345
(1): 2023/07/02(日)21:56 ID:DcMb4mOQ(2/2) AAS
>>344
SyntaxHighlighter っていうのがよくわからないけど
VSCode拡張とかのこと?
346
(1): 2023/07/03(月)07:33 ID:VgAxDpje(1/2) AAS
>>345
えぇエ~それぐらいネットで調べ「てく」ださいよ~~。
伝えるのめんど「い」し、説明上手くないからネッ-トで調べた方が絶対%絶対%にわかると思うんですよね。
お願いしますよ~~
347
(1): 2023/07/03(月)10:05 ID:erf1sDFe(1) AAS
>>346
うわぁ~
怖い

引っ込んでます
348: 2023/07/03(月)12:35 ID:VgAxDpje(2/2) AAS
>>347
恐がらせてごめん。
349
(1): 2023/07/04(火)04:16 ID:YbUZ4vjn(1) AAS
Nim言語はコンパイル時にreadFileとwriteFileを使えるんだけどコンパイル時にファイルを読み書きできるプログラミング言語ってあまりないんじゃないか?
staticExecていうコンパイル時にコマンドを実行できるプロシージャもあるし。
350: 2023/07/07(金)02:08 ID:B1cwSpdy(1) AAS
どっかで既出かもしれんけど、結局VSCの拡張は何入れれば安牌?
351: 2023/08/01(火)18:27 ID:JtUN40O9(1) AAS
外部リンク:github.com
352: 2023/08/02(水)00:52 ID:4aCNkU8+(1) AAS
Nim 2.0がリリースされました。
外部リンク[html]:nim-lang.org
353
(2): 2023/08/26(土)23:20 ID:6K2VICrE(1) AAS
初めてお邪魔します

下のスレッドでフィボナッチ数列(回帰関数)のベンチマークをやったのですが
Nim 2.0がダントツの速さでした

原因が分かる方、教えていただけますでしょうか、よろしくお願いいたします

Qiita 3 - キータぞ、来たぞ、キータだぞー
2chスレ:tech
2chスレ:tech

上記スレ、fibonacci(44)の計算、抜粋
省9
354
(1): 2023/08/27(日)00:54 ID:M561FwxM(1/2) AAS
>>353
Nimでコンパイルするときに'--listcmd'オプションを与えるとNimがgccを呼び出すときにどんな引数を渡しているか表示されるようになります。
もしかすると凄く最適化されるようなオプションを渡しているのかもしれません。
355
(1): 2023/08/27(日)01:58 ID:CxwZcjGE(1) AAS
>>354
早速の回答ありがとうございます

wandboxのspeedだとO3が見られたので、nim.cfgに gcc.options.speed = "-O2" を追加してついでに-d:ltoも外しました

Nim 2.0.0 + gcc 12.2.0(-O2) --verbosity:2 --listcmd --passL:-s (strip symbols)
外部リンク:wandbox.org

>CC: prog.nim: /opt/wandbox/gcc-12.2.0/bin/gcc -c -w -fmax-errors=3 -O2 -I...
>Hint: /opt/wandbox/gcc-12.2.0/bin/gcc ... -lm -lm -lrt -s -ldl [Link]
>Hint: mm: orc; opt: speed; options: -d:danger

>Time= 0.274s Result=701408733
>Time= 0.252s Result=701408733
省5
356
(2): 2023/08/27(日)17:22 ID:P6KX7G/o(1/2) AAS
>>355
Nim言語が高速なのはC言語コードを吐き出した時に
再帰処理をgotoループに置き換えている可能性があります
その場合C言語のオプションをいくら変更してもあまり意味はない
です

確認はコマンドライン引数に --nimcache:.cache を加えて
コンパイルして.cacheフォルダ内のC言語ファイルを確認すれば
わかるはず

nim c --nimcache:.cache -d:release ...

-d:relsese の部分は -d:danger で 置き換え可能で
省5
357: 2023/08/27(日)17:25 ID:P6KX7G/o(2/2) AAS
>>356 追記
末尾再帰になっている可能性もありかな
358
(1): 2023/08/27(日)22:36 ID:M561FwxM(2/2) AAS
Nimコンパイラ自体は再帰関数の最適化はしてなかったと思う。
gccは再帰関数をループに置き換えているかもしれないからその確認をしたかったら-S -masm=intelを付けてアセンブリコードを出力させて読んでみよう。
359: 2023/08/28(月)06:30 ID:eKgmQu1D(1/3) AAS
>>356
変換キャッシュの見方、ありがとうございます

>再帰処理をgotoループに置き換えている可能性があります
確認したところ、置き換わっていませんでした

>コンパイル型言語のベンチを取る時は再帰処理コードは
>避けた方が良いと思います
↑ここ詳しくお願いします

>再帰処理をgotoループに置き換えている
↑こうなっていませんでしたが、これ前提での話だったのですか?

再帰fibonacciは個別の言語コンパイラ(更にバージョン)の
省1
360: 2023/08/28(月)06:40 ID:eKgmQu1D(2/3) AAS
>>358
>Nimコンパイラ自体は再帰関数の最適化はしてなかったと思う。
その通りでした

確かめたところ二つの再帰関数コールがそのまま残っていて、
その他はNimのトランスパイル過程でのノイズがあるだけです

gccがノイズを消すために最適化を頑張った結果、Cより速くなったのですかね
361: 2023/08/28(月)06:47 ID:eKgmQu1D(3/3) AAS
何気にNim + gcc HEADにしてみたら、更に速かったです

Nim 2.0.0 + gcc 12.2.0 -O2 (44はコマンドライン引数)
外部リンク:wandbox.org
>Time= 0.250s Result=701408733

これ↑がこう↓

Nim 2.0.0 + gcc HEAD 14.0.0 -O2 (44はコマンドライン引数)
外部リンク:wandbox.org
>Time= 0.197s Result=701408733

参考値再掲(>>353)
C/gcc -O2 (44はソース直書き)
省6
362: 2023/09/06(水)06:10 ID:8VjD58re(1) AAS
レバテックωωω
Rust in
Nim out
ωωωωωω
363
(1): 2023/11/15(水)08:06 ID:6Kiw7POr(1) AAS
>>349
F#が、 F# Dataってライブラリで、コンパイル時に
ファイルの読み取りは、やってたけれど、あまり見かけないね。
364: 2023/11/28(火)09:23 ID:XbNpNPYt(1) AAS
happyxってdjungoの上位互換なれねーかな
外部リンク:hapticx.github.io
365: 2023/12/06(水)09:31 ID:oM0gjrfW(1) AAS
>>363
Rustのメモリ安全性はボローチェッカーによって担保されているが、
Nimと比較してRustはタイプ量が多い事により限りなく低い生産性と
C++のような高い難読性、超巨大なバイナリ生成性能を兼ね備えています

Nimはバージョン1.5.1でRustのボローチェッカーに似た「View types」が実装されれば、
GC無しのView typesで参照の有効性を検証することによってメモリ安全性を保証しつつ
限りなく抑え込まれたタイプ量で高速化したCのソースコードを吐き出せます

Nimソースコード ==nimコンパイラ==> Cソースコード ==Cコンパイラ==> バイナリ

なので、nimコンパイラが通った時点でメモリ安全性が担保されませんか?

Nimの実験的特徴 バージョン1.5.1
省7
366
(1): 2023/12/06(水)20:32 ID:7Cu2FhSW(1) AAS
Nim って python を強調し過ぎてるのはミスリードだと思うな
python と相性が良いってのは事実だけど Nim の特徴のほんの一部でしかない
367: 2023/12/08(金)21:38 ID:xBCOoZoU(1) AAS
>>366
Python使える人が多いからNimを広めるためにNim言語はpythonと同じだという人は多い。
文法がpythonに近いだけで中身は静的型言語だからpythonよりC++とかRustに近いと思う。
pythonしか知らない人がNimのオーバーロードとかGenericsとかobjectとref objectの違いとかちゃんと理解して使えるのかどうか心配になる。
368: 2023/12/10(日)11:41 ID:1MxEINjf(1) AAS
「文法がpythonに近い」が事実じゃないんだよな
観た目が似てるだけであって文法が似てる訳じゃない
全然別物
369
(1): 2023/12/10(日)17:02 ID:S5Hrhavn(1) AAS
そういう意味では構文で結構損してそう
オフサイドルールが気に入らない人にとってはそもそも検討に値しないし
Python好きな人ならそこは気にならないだろうけど、別に移行しやすくもない
370: 2023/12/11(月)04:52 ID:E9pPgJ3z(1) AAS
>>369
でも静的型言語でオフサイドルールの言語はNimとcrystal以外あまりないのでは。
オフサイドルールが好きで型システムがちゃんとしていて高速に動くプログラムを書きたい人にはぴったり。
371: 2023/12/11(月)06:10 ID:dU0p99Eo(1) AAS
型で安全性を静的に担保したいと考える人が、同時にインデントで意味が変わってしまうオフサイドを好むってのはちぐはぐさを感じる
372: 2023/12/11(月)06:46 ID:Oijs0Efp(1) AAS
HaskellとデフォルトF#もオフサイドルールありですね。どうせインデントするんだしって使ってやれってくらいの感じなのかね?

あとは、インデントに意味はないけれど、goが標準のフォーマッタでインデント入れてくるね。
373: 2023/12/11(月)06:54 ID:n3cFiyWX(1) AAS
Python登場当時だと{}前後のどこで改行するか論争みたいなのがあったりして確かに括弧書くのが面倒な空気はあったんだよな
それがGo/Rustの世代だと言語標準のフォーマッタが勝手にやってくれるってなって
めんどくさくないっていうオフサイドのメリットはなくなってしまった
そうすると自動フォーマットしづらいとかコピペしづらいとかデメリットばかり目立つことになってしまう
374
(1): 2023/12/12(火)04:50 ID:X9wYEqIf(1/3) AAS
ブロック毎に'{}'や行末に';'があるとソースコードが少し汚く見えるし
無いとすっきりして読みやすいと思うけどね。
375: 2023/12/12(火)05:58 ID:6YpoyKxr(1) AAS
そんなの単なる慣れ
376: 2023/12/12(火)08:04 ID:BxX9TTWN(1) AAS
まぁ人によるんじゃない
自分は{}がある方がブロックの識別性が良くて読みやすい
オフサイドは特にネストしたブロックの戻りが何段戻ったか見づらいんだよな
377: 2023/12/12(火)08:08 ID:BYtUbVYs(1) AAS
カッコありなら、lisp系が好き。
悩む事が減る。
378: 2023/12/12(火)13:00 ID:GxOznL1S(1) AAS
>>374
セミコロンはオフサイドルールじゃなくてもRuby/Go/Kotlin/Swiftのように無しできるから関係ないよね

それにセミコロンをタイプするのは面倒だとは思うが慣れると読む時のノイズにはならない
自然言語の文章で句点やピリオド+改行がノイズにならないのと同じこと
379
(1): 2023/12/12(火)19:48 ID:X9wYEqIf(2/3) AAS
CやC++を10年以上使っていたけど';'や'{}'が無いほうがすっくりして読みやすいと思うから慣れでどうにかなるものでは無いと思う。
こういうのは個人差があるのかもしれないが
380: 2023/12/12(火)19:54 ID:X9wYEqIf(3/3) AAS
外部リンク:github.com
このVimのプラグインを使うと同じインデント間のカーソル移動、異なるインデント間のカーソル移動が簡単にできるからお勧めです。
381
(1): 2023/12/12(火)22:53 ID:wCEkJKJx(1) AAS
>>379
CやC++やっててそんなこと言うやつ初めて聞いたぞ
本当に日々コード書いてる?
382
(1): 2023/12/12(火)23:44 ID:CyOM3fCk(1) AAS
そりゃ仕事で使える言語でオフサイドルールなのってPythonくらいだし
ほんとはオフサイドがいいけどC/C++の仕事してるって人くらいいるでしょ
383: 2023/12/13(水)00:18 ID:YitMt0Fm(1) AAS
>>382
{}や;がノイズになるかどうかと
オフサイドがいいかどうかの話は別だよ
384
(2): 2023/12/13(水)04:42 ID:/pcasGi0(1) AAS
>>381
今はC/C++殆ど書いてないけど以前はほぼ毎日使ってたよ。
{}や;に慣れてもやっぱり余計な文字が少ない方がすっきりして読みやすいと思うのだが、そういう人は少数派なんかな?
385: 2023/12/13(水)05:36 ID:R3z2LBuJ(1) AAS
主観で読みやすいかどうか力説しても結論でるわけない
オフサイドは誤ってインデントずれても気付かないままになってしまうのが問題
386: 2023/12/13(水)06:48 ID:RhfHz66O(1) AAS
>>384
まぁ実際オフサイド採用の新規言語ってあまり出てこないし
少数派なんじゃないかな
387: 2023/12/13(水)07:21 ID:vQeZuGNk(1) AAS
f#みたいに、使う側が選択できれば、解決なんじゃない?
388: 2023/12/13(水)07:35 ID:q/L8o2wk(1) AAS
やれやれお前らCOBOLを知らんのか
389: 2023/12/13(水)11:38 ID:rzHxkjlX(1) AAS
>>384
どちらの方がすっきりして読みやすいかと
{}や;が思考ノイズになるかどうかは別だよ

前者はそれなりにいる
後者はツチノコレベルで稀有
390: 2023/12/14(木)19:26 ID:xAMEKx/6(1) AAS
エディタの色設定で{};を薄い色にすればいいだけやん
391: 2023/12/15(金)03:05 ID:/ClHmJDY(1) AAS
{}がノイズになるようなら:や=はもちろんのことblock:なんて発狂ものだろうからNimは無理やろな
392: 2023/12/15(金)05:55 ID:12rLPAnL(1) AAS
思考ノイズって
エロい事連想してるって意味だよな?
393: 2023/12/15(金)06:50 ID:4QMbv0z8(1/4) AAS
Nimってオフサイドルール以外の所は目立った欠点の無い言語なんかな。
それに実際にオフサイドルールでコードを書いていて困ったことないし。
インデントがずれても困るという人はインデントの幅をスペース4個とか広めにすればいいのでは
394: 2023/12/15(金)17:55 ID:BxRUp1+8(1) AAS
オフサイドルールは欠点だらけ

Pythonを例にすると
- カットペーストは命がけ
- ネット等で共有しにくい
- テキストエディタやIDEの支援が激弱
- dedentは手動タイピング必須
- 改行のために追加の()や\が結局必要
- インデントだけでは可読性が低いから余計な:が必要
- 空行の数まで厳密に意識する必要もある
- lambdaのone expression縛りのように言語の成長を阻害しやすい
省1
395
(1): 2023/12/15(金)18:18 ID:b3hxnew5(1) AAS
次は、良い点を挙げてみて!
396: 2023/12/15(金)18:24 ID:pkr2dCwK(1) AAS
>>395
プログラミング初心者を釣れる
以上
397
(1): 2023/12/15(金)20:46 ID:4QMbv0z8(2/4) AAS
Vim使ってるけどコピペは問題無くできるしインデントの深さもブロックごと'>'で調整できる。
vim-indentwiseでブロック毎カーソル移動可能。
スペース一個分だけでインデントするとかしない限りブロックの開始、終わりは前後の行のインデントの位置の違いでわかる。
vim-indentwiseでカーソル移動すればブロックの範囲も簡単にわかる。
以前はC/C++を書いてたけど{}や;が無くて読みづらいとか書きづらいとか思ったことは無いよ。
Nim書いていて改行のために追加の()や\が必要になることはほぼ無い
空行の数を厳密に意識する必要もない。
Nimを実際に書いたことあるの?
398
(1): 2023/12/15(金)21:02 ID:4QMbv0z8(3/4) AAS
外部リンク:wandbox.org
NimのAnonymous proceduresでは複数行書けるし
こうしてコードを共有できてる。
399
(1): 2023/12/15(金)22:17 ID:kBMLRaUx(1/2) AAS
>>398
でもアロー関数にすると()を追加するなどしないと1行しか書けなくなる
これもオフサイドルールのせい
しかもこんな明らかなバグでも修正しようともしない
言語の成長を阻害するとはこういうこと
400: 2023/12/15(金)22:29 ID:kBMLRaUx(2/2) AAS
>>397
論点理解せずにvim使いなら誰でも知ってる基本を必死に解説されても困るわ

>以前はC/C++を書いてたけど{}や;が無くて読みづらいとか書きづらいとか思ったことは無いよ。
{}や;が無くて読みづらいとか書きづらいとか誰もそんなこと言ってないだろ?
勝手に脳内変換するなや

ついでに言うとセミコロン無い方が書きやすいのは当たり前のこと
だから新しい言語の多くがセミコロンレスを採用してる(オフサイドは採用しないけど)
401: 2023/12/15(金)23:45 ID:4QMbv0z8(4/4) AAS
>>399
アロー関数ってNimのsugarモジュールにある`=>`マクロのこと?
あくまでこの=>は二項演算子だから両辺は式になっていないといけない。
オフサイドルールに関係無く二項演算子の両辺に文を直接書けず式を置かないといけないのは殆どのプログラミング言語で同じじゃない?
複数文を書きたければanonymous procedureで書けばよいし。
オフサイドルールじゃない言語で無名関数に複数文を書くときは必ず{}で囲む必要があるし。
どうしてこれが言語の成長を阻害していることになるの?
明らかなバグなのに修正しようとしないって言うけどGithubのNimのリポジトリにそういうissueある?
無名関数を書くときはdo notationというのもあるよ。
外部リンク[html]:nim-lang.org
402
(1): 2023/12/16(土)08:47 ID:yzC0WAGQ(1/2) AAS
「vimを使えばいい」とか「無名関数を使えばいい」などと列挙されても
他の言語はそんな特別なケアなしに使えるわけでな…
このあたりがいまいち広まらない原因なんじゃない?
403: 2023/12/16(土)08:53 ID:mPzLcjX0(1/2) AAS
以前インデントの代わりに{}を使える機能があったようだ。
外部リンク:github.com
外部リンク:forum.nim-lang.org

けれども殆ど使われなかったのと、{}があるとgrammarとparserが発展するのが難しくなるので削除されたらしい。
外部リンク:forum.nim-lang.org
404
(1): 2023/12/16(土)09:38 ID:mPzLcjX0(2/2) AAS
>>402
現代では高機能なテキストエディタやIDEが使えるから
それを使うことを前提にプログラミング言語をデザインしたらいいんじゃね?
って話は聞いたことがある。

sugarの`=>`マクロはNim言語のanonymous procedureを特定の条件下で簡単に書けるよう作られたもので完全にanonymous procedureを置き換えられるものでない。
sugarモジュール自体がシンタックスシュガーのようなものを提供するマクロなどを集めたものだし。
制限とか気にせずにanonymous procedureを書きたかったら=>を使わずに書くしかない。
405: 2023/12/16(土)09:56 ID:yzC0WAGQ(2/2) AAS
>>404
そのへんがまさに省略記法の悪い点が出てる感じするな
省略するってことはソースコードの情報量は減っていて、それはタダではない
「OOのときにはXXを使う」みたいな規則がたくさん発生するというコストがあるんだよね
これはセミコロンレスもそうで、時々変なエッジケースが発生したりする
406: 2023/12/16(土)16:45 ID:kvk3r8Lt(1) AAS
オフサイドルールと違ってセミコロンレス(optional semicolon)は多くの言語で妥当なトレードオフ
オフサイドルールが妥当なトレードオフとして成立してるのはHaskell系の言語くらい
407
(1): 2023/12/16(土)20:00 ID:USjLXMUH(1) AAS
なんかどうでもいいことをいつまでも
うじうじと

気に入らないなら使わなきゃいいだけ
気に入ったら使えばいいだけ
408
(1): 2023/12/17(日)07:10 ID:clYlz397(1) AAS
AA省
409: 2023/12/17(日)12:19 ID:WUPd6f5k(1) AAS
AA省
410
(1): 2023/12/17(日)18:41 ID:F9NekDqG(1) AAS
Nimはよく考えずに機能追加して既にC++並みに複雑化してる
目新しさだけで飛びつくと後悔するぞ
411: 2023/12/18(月)02:13 ID:DdCrjTir(1) AAS
そうなの? じゃあもうC++でいいじゃん
412: 2023/12/18(月)08:55 ID:DG+uqCiP(1/2) AAS
例えば最近実装している変更についてもちゃんとここに理由とか書いてあるよ。
外部リンク:github.com
このあたりをよく読めばちゃんと考えて機能を実装していることがわかるよ。
外部リンク:github.com
外部リンク:github.com
Discord/Nimのinternalチャンネルをときどき読んでるけど
開発者は論文読んだり他のプログラミング言語の機能を調査しているようだよ。
外部リンク:en.cppreference.com

外部リンク[html]:nim-lang.org
省1
413: 2023/12/18(月)20:40 ID:DG+uqCiP(2/2) AAS
Nim言語がどのような考えで設計されたか知りたい人はNimのblogを読むといいよ。
外部リンク:nim-lang.org
外部リンク[html]:nim-lang.org
414: 2023/12/18(月)20:49 ID:CbnA3O4k(1) AAS
Nimの現状を知りたい人はこれを読むといい
外部リンク:forum.nim-lang.org
415
(1): 2023/12/19(火)00:16 ID:mrSFrPG8(1) AAS
議論をよく読めば何やらちゃんと考えて実装しているらしいのはC++も同じなんだよなあ
416: 2023/12/19(火)08:00 ID:w9OEXcqM(1) AAS
>>415
単純に >>410 への反論なだけじゃない?
417: 2023/12/20(水)12:37 ID:Cvw2c2UZ(1) AAS
バグ修正版のNim 2.0.2と1.6.18がリリースされました。
外部リンク[html]:nim-lang.org
418: 2023/12/23(土)09:16 ID:VfEmk1mn(1) AAS
寂しいスポンサーページだな😢
外部リンク[html]:nim-lang.org
こりゃnimが普及しないのも当然か
rustとは大違い
外部リンク:foundation.rust-lang.org
419
(1): 2023/12/23(土)10:35 ID:M8dtHAyN(1) AAS
でもRustは誰も使ってないじゃん
420: 2023/12/23(土)11:58 ID:BXldyzev(1) AAS
Rust言語はトヨタ自動車が採用してると
どこかで読んだ
421: 2023/12/23(土)13:41 ID:fLdoaHTJ(1) AAS
>>419
誰も使ってないは草
422: 2023/12/23(土)13:46 ID:6J3b/0Sr(1) AAS
Nimと書き間違えたんだと思うが
423: 2023/12/23(土)18:13 ID:A6gu1Hml(1) AAS
Nimを使っている組織のリスト
外部リンク:github.com
424: 2023/12/27(水)19:41 ID:g/RhhP+m(1) AAS
プログラムをビルドするためにC++だったらCMake、Rustだったらcargo.tomlにTOMLを使う。
Nimだったらconfig.nimsも.nimbleファイルもNim言語で書ける。
一つの言語でコンパイル言語としてもスクリプト言語としても使えて便利。
Nimはマクロやconstなどをコンパイル時に実行するためにVM使ってるんだけど、そのVMを使ってNimをスクリプト言語のように実行できるらしい。
425: 2023/12/27(水)19:50 ID:J2C6aYvl(1) AAS
rustも複雑なことをしようと思ったらbuild.rsに書けるけど、それはそうとして依存関係をプログラム言語で書きたいかと言われると
426: 2023/12/27(水)20:16 ID:E4kPlntL(1) AAS
あれもこれもできて便利!みたいなのはぱっと見良さそうでも
大規模・多人数・長期開発になると負債になりがちではある
427: 2023/12/27(水)20:24 ID:qErwbOrg(1) AAS
happyxが起爆剤にならないかなぁ、、🙏
428: 2023/12/27(水)23:05 ID:LUGQIuRd(1) AAS
zigなら全部zigで書ける(便乗)
429: 2023/12/27(水)23:27 ID:7WiLoZ1Z(1) AAS
一体なにがエレガントなんだろうなこの言語って
430: 2023/12/27(水)23:34 ID:qmMlPacq(1) AAS
まあアイコンはエレガントなんじゃない?王冠だし
431: 2023/12/27(水)23:51 ID:Ra91RrOg(1) AAS
procとmethodとfuncを使い分けつつ{.global.}や{.async.}なとの{.pragma.}とmacroでぐちゃぐちゃにかき混ぜられるのが超エレガントw
他の言語では類を見ない
432: 2023/12/28(木)22:46 ID:u+MANgUc(1/2) AAS
エレガントすぎてついていけないわ
433: 2023/12/28(木)23:18 ID:u+MANgUc(2/2) AAS
エレガントすぎてついていけないわ
434: 2024/02/20(火)19:40 ID:iQdtjO/s(1) AAS
新年の記念 保守
435: 2024/06/17(月)22:36 ID:y0rZbngO(1) AAS
外部リンク[html]:nim-lang.org
Nim version 2.0.6がリリースされました。
436
(1): 2024/10/04(金)21:03 ID:jm0g8/rX(1/3) AAS
外部リンク:github.com
から派生させた、Atkin Sieveベンチマーク
計算本体だけの計測に改め、更に桁を増やし、途中計算がオーバーフローしないように関係変数はすべて64bit
UPPER_BOUND: 500_000_000

Zig 1912ms
g++ 1916ms
Nim 1920ms gcc
Nim 1969ms clang
clang++ 2151ms
Rust 2411ms overflow-checks = false
省3
437: 2024/10/04(金)21:11 ID:jm0g8/rX(2/3) AAS
特にデータ構造で
Nim seq[bool]
Rust Vec<bool>
は遅いので直ぐに取り換えてください
C++のvector<bool>は最適化がされていますが、最終的に別のものにしました
438: 2024/10/04(金)21:12 ID:jm0g8/rX(3/3) AAS
>>436は取り換えた後の計測値です
439: 2024/12/31(火)13:29 ID:dvbSbmj1(1) AAS
ねんまつ記念 保守
440: 02/18(火)12:43 ID:HbHlBTpR(1) AAS
C++のVectorは最悪
441: 03/30(日)03:12 ID:oBGwoxyW(1) AAS
最近元気ないな
442: 04/27(日)14:57 ID:rRExk4WB(1) AAS
ねこのすれ
443: 05/08(木)16:20 ID:anhDrZ/H(1) AAS
バイアグラ飲め
1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 1.912s*