nim (443レス)
nim http://mevius.5ch.net/test/read.cgi/tech/1519896738/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
1: デフォルトの名無しさん [sage] 2018/03/01(木) 18:32:18.16 ID:vh/yy2VS https://nim-lang.org/ http://mevius.5ch.net/test/read.cgi/tech/1519896738/1
317: デフォルトの名無しさん [sage] 2022/12/17(土) 18:07:52.62 ID:GzYo/1Xm 今はNimNodeじゃなく、quote do:で書くのが良いよな。どうしてもNimNodeじゃなきゃ書けないマクロもあるだろうけどね http://mevius.5ch.net/test/read.cgi/tech/1519896738/317
318: デフォルトの名無しさん [sage] 2022/12/17(土) 19:18:25.81 ID:2DPGsS1m >>317 https://nim-lang.org/docs/genasts.html https://github.com/nim-lang/Nim/pull/17426 https://github.com/nim-lang/RFCs/issues/122 http://mevius.5ch.net/test/read.cgi/tech/1519896738/318
319: デフォルトの名無しさん [sage] 2022/12/22(木) 07:38:06.92 ID:Fm5nn8iV 最初のrelease candidate for Nim v2.0が公開されました。 https://nim-lang.org/blog/2022/12/21/version-20-rc.html http://mevius.5ch.net/test/read.cgi/tech/1519896738/319
320: デフォルトの名無しさん [sage] 2022/12/22(木) 10:51:20.76 ID:Y6cO6Ymu ペース早いよなあ http://mevius.5ch.net/test/read.cgi/tech/1519896738/320
321: デフォルトの名無しさん [sage] 2022/12/22(木) 10:52:43.57 ID:N8bfJDIh nim-2.0 RC1 がリリースされた https://nim-lang.org/blog/2022/12/21/version-20-rc.html 来年1月か2月には正式2.0になるのかも http://mevius.5ch.net/test/read.cgi/tech/1519896738/321
322: デフォルトの名無しさん [sage] 2022/12/23(金) 02:05:06.61 ID:PNJSSvHF もう2.0かよ(´・ω・`)公開してるライブラリ大丈夫かな http://mevius.5ch.net/test/read.cgi/tech/1519896738/322
323: デフォルトの名無しさん [sage] 2022/12/23(金) 20:17:33.78 ID:244A80LW バージョンが大きく変わって大丈夫と思う方が 無理がある http://mevius.5ch.net/test/read.cgi/tech/1519896738/323
324: デフォルトの名無しさん [] 2023/01/16(月) 16:24:59.02 ID:MsfEWWA2 あっという間に2月 http://mevius.5ch.net/test/read.cgi/tech/1519896738/324
325: デフォルトの名無しさん [sage] 2023/01/23(月) 22:52:56.91 ID:NHwV5soq 書き込みが1ヶ月に1回しかないスレ w http://mevius.5ch.net/test/read.cgi/tech/1519896738/325
326: デフォルトの名無しさん [sage] 2023/01/26(木) 03:28:17.45 ID:To7TXanK Nim言語を使っていても特につまづくことがないから話題があんまりないんだよね。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/326
327: デフォルトの名無しさん [sage] 2023/01/26(木) 18:39:32.28 ID:MzjwjnoQ 使用者の絶対数が少なすぎ http://mevius.5ch.net/test/read.cgi/tech/1519896738/327
328: デフォルトの名無しさん [sage] 2023/02/01(水) 01:23:34.72 ID:p1uaZW7X てすと http://mevius.5ch.net/test/read.cgi/tech/1519896738/328
329: 【だん吉】 [!omikuji] 2023/03/01(水) 09:22:10.73 ID:68s28u+f !omikuji http://mevius.5ch.net/test/read.cgi/tech/1519896738/329
330: デフォルトの名無しさん [sage] 2023/03/01(水) 12:20:14.81 ID:q8rzgPd8 初心者はys3mとかrs3mで十分 Ziicubeでys3m出た 1割引き価格後の値段 679円 マグネット 1151円 Maglev 1623円 Boall-Core https://www.ziicube.com/Moyu-333-HuaMeng-YS3M http://mevius.5ch.net/test/read.cgi/tech/1519896738/330
331: デフォルトの名無しさん [sage] 2023/03/01(水) 12:20:39.02 ID:q8rzgPd8 >>330 誤爆 http://mevius.5ch.net/test/read.cgi/tech/1519896738/331
332: デフォルトの名無しさん [sage] 2023/03/05(日) 11:11:16.11 ID:/Qd0pRlS WinnyとNimってネーミングセンス似てるね http://mevius.5ch.net/test/read.cgi/tech/1519896738/332
333: デフォルトの名無しさん [sage] 2023/03/05(日) 19:55:40.66 ID:gl/xkADq >>332 Nimは元々Nimrodっていう名前だったんだけどその由来は https://forum.nim-lang.org/t/9591#63054 http://mevius.5ch.net/test/read.cgi/tech/1519896738/333
334: デフォルトの名無しさん [sage] 2023/03/06(月) 14:19:57.93 ID:diWxUEyJ https://www.cosme.net/product/product_id/10190076/top http://mevius.5ch.net/test/read.cgi/tech/1519896738/334
335: デフォルトの名無しさん [sage] 2023/04/03(月) 17:59:13.21 ID:dNC7VYHk この言語ってRustみたいにプログラマに押し付けるmutなんて使ってないのに、なんでいわゆるMove操作が勝手に出来るの? 説明しろください! http://mevius.5ch.net/test/read.cgi/tech/1519896738/335
336: デフォルトの名無しさん [sage] 2023/04/03(月) 18:32:57.47 ID:3grB/pQG >>335 こちらの資料には目をとおされましたか? https://nim-lang.org/docs/destructors.html http://mevius.5ch.net/test/read.cgi/tech/1519896738/336
337: デフォルトの名無しさん [] 2023/04/09(日) 09:29:43.33 ID:Dm0aM9sg Nim良いよね Rustは宣伝がうざいだけだが Nimは判ってる人の間でまったり進化してくれ http://mevius.5ch.net/test/read.cgi/tech/1519896738/337
338: デフォルトの名無しさん [sage] 2023/05/04(木) 21:15:01.62 ID:wwnsNcS0 公式読めばだいたいのことはわかるから特にここでも議論は出ないよね 唯一日本語の書籍がもう一冊くらい欲しいなあくらい http://mevius.5ch.net/test/read.cgi/tech/1519896738/338
339: デフォルトの名無しさん [sage] 2023/05/06(土) 09:24:18.50 ID:u7gslL5e importとincludeの違いってなに? http://mevius.5ch.net/test/read.cgi/tech/1519896738/339
340: デフォルトの名無しさん [sage] 2023/05/07(日) 06:11:02.39 ID:uVIPnqNg >>339 https://qiita.com/tauplus/items/80afbd47f3a44158ea1f#import-statement https://qiita.com/tauplus/items/80afbd47f3a44158ea1f#include-statement http://mevius.5ch.net/test/read.cgi/tech/1519896738/340
341: デフォルトの名無しさん [sage] 2023/06/28(水) 19:11:48.73 ID:cQY5DEV3 Nim言語 1.6.14 リリース https://nim-lang.org/blog/2023/06/27/version-1614-released.html http://mevius.5ch.net/test/read.cgi/tech/1519896738/341
342: デフォルトの名無しさん [sage] 2023/07/02(日) 18:18:52.72 ID:4yDce2PB 夜遅くにすいません。 SyntaxHilighter用のNim Brushってどっかにありませんか? http://mevius.5ch.net/test/read.cgi/tech/1519896738/342
343: デフォルトの名無しさん [sage] 2023/07/02(日) 18:34:57.51 ID:DcMb4mOQ >>342 話の内容が全然理解できないけど。。。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/343
344: デフォルトの名無しさん [sage] 2023/07/02(日) 21:16:17.65 ID:w86HyNV3 >>343 ごめんなさい。 SyntaxHighlighter でした。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/344
345: デフォルトの名無しさん [sage] 2023/07/02(日) 21:56:05.97 ID:DcMb4mOQ >>344 SyntaxHighlighter っていうのがよくわからないけど VSCode拡張とかのこと? http://mevius.5ch.net/test/read.cgi/tech/1519896738/345
346: デフォルトの名無しさん [sage] 2023/07/03(月) 07:33:58.97 ID:VgAxDpje >>345 えぇエ~それぐらいネットで調べ「てく」ださいよ~~。 伝えるのめんど「い」し、説明上手くないからネッ-トで調べた方が絶対%絶対%にわかると思うんですよね。 お願いしますよ~~ http://mevius.5ch.net/test/read.cgi/tech/1519896738/346
347: デフォルトの名無しさん [sage] 2023/07/03(月) 10:05:16.82 ID:erf1sDFe >>346 うわぁ~ 怖い 引っ込んでます http://mevius.5ch.net/test/read.cgi/tech/1519896738/347
348: デフォルトの名無しさん [sage] 2023/07/03(月) 12:35:43.48 ID:VgAxDpje >>347 恐がらせてごめん。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/348
349: デフォルトの名無しさん [sage] 2023/07/04(火) 04:16:26.79 ID:YbUZ4vjn Nim言語はコンパイル時にreadFileとwriteFileを使えるんだけどコンパイル時にファイルを読み書きできるプログラミング言語ってあまりないんじゃないか? staticExecていうコンパイル時にコマンドを実行できるプロシージャもあるし。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/349
350: デフォルトの名無しさん [sage] 2023/07/07(金) 02:08:00.59 ID:B1cwSpdy どっかで既出かもしれんけど、結局VSCの拡張は何入れれば安牌? http://mevius.5ch.net/test/read.cgi/tech/1519896738/350
351: デフォルトの名無しさん [sage] 2023/08/01(火) 18:27:12.50 ID:JtUN40O9 https://github.com/nim-lang/Nim/releases/tag/v2.0.0 http://mevius.5ch.net/test/read.cgi/tech/1519896738/351
352: デフォルトの名無しさん [sage] 2023/08/02(水) 00:52:58.78 ID:4aCNkU8+ Nim 2.0がリリースされました。 https://nim-lang.org/blog/2023/08/01/nim-v20-released.html http://mevius.5ch.net/test/read.cgi/tech/1519896738/352
353: デフォルトの名無しさん [sage] 2023/08/26(土) 23:20:45.36 ID:6K2VICrE 初めてお邪魔します 下のスレッドでフィボナッチ数列(回帰関数)のベンチマークをやったのですが Nim 2.0がダントツの速さでした 原因が分かる方、教えていただけますでしょうか、よろしくお願いいたします Qiita 3 - キータぞ、来たぞ、キータだぞー https://mevius.5ch.net/test/read.cgi/tech/1685235361/368-371 https://mevius.5ch.net/test/read.cgi/tech/1685235361/373-375 上記スレ、fibonacci(44)の計算、抜粋 Nim(44はコマンドライン引数) https://wandbox.org/permlink/WoYP0STRKxaRBGCY >Time= 0.240s Result=701408733 C/gcc(44はソース直書き) https://wandbox.org/permlink/9OYZBH14tYooZHF7 > Time: 0.89583 seconds C/clang(44はソース直書き) https://wandbox.org/permlink/U97PecZYrzymnfH4 >Time=1.58712s Result=701408733 http://mevius.5ch.net/test/read.cgi/tech/1519896738/353
354: デフォルトの名無しさん [sage] 2023/08/27(日) 00:54:05.78 ID:M561FwxM >>353 Nimでコンパイルするときに'--listcmd'オプションを与えるとNimがgccを呼び出すときにどんな引数を渡しているか表示されるようになります。 もしかすると凄く最適化されるようなオプションを渡しているのかもしれません。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/354
355: デフォルトの名無しさん [sage] 2023/08/27(日) 01:58:10.81 ID:CxwZcjGE >>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) https://wandbox.org/permlink/RVJ4eHKKl5DARK3u >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 >Time= 0.251s Result=701408733 >Time= 0.250s Result=701408733 >Time= 0.250s Result=701408733 今度は確実に LTO無し gcc -O2 になりましたが、実効速度はダントツに速いままでした 何か気が付く点がありましたらまた今度教えてください (私の方は今日は限界です...) http://mevius.5ch.net/test/read.cgi/tech/1519896738/355
356: デフォルトの名無しさん [] 2023/08/27(日) 17:22:00.42 ID:P6KX7G/o >>355 Nim言語が高速なのはC言語コードを吐き出した時に 再帰処理をgotoループに置き換えている可能性があります その場合C言語のオプションをいくら変更してもあまり意味はない です 確認はコマンドライン引数に --nimcache:.cache を加えて コンパイルして.cacheフォルダ内のC言語ファイルを確認すれば わかるはず nim c --nimcache:.cache -d:release ... -d:relsese の部分は -d:danger で 置き換え可能で dangerのほうが高速です 詳細はここ https://nim-lang.org/docs/nimc.html コンパイル型言語のベンチを取る時は再帰処理コードは 避けた方が良いと思います http://mevius.5ch.net/test/read.cgi/tech/1519896738/356
357: デフォルトの名無しさん [] 2023/08/27(日) 17:25:13.06 ID:P6KX7G/o >>356 追記 末尾再帰になっている可能性もありかな http://mevius.5ch.net/test/read.cgi/tech/1519896738/357
358: デフォルトの名無しさん [sage] 2023/08/27(日) 22:36:37.59 ID:M561FwxM Nimコンパイラ自体は再帰関数の最適化はしてなかったと思う。 gccは再帰関数をループに置き換えているかもしれないからその確認をしたかったら-S -masm=intelを付けてアセンブリコードを出力させて読んでみよう。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/358
359: デフォルトの名無しさん [sage] 2023/08/28(月) 06:30:35.88 ID:eKgmQu1D >>356 変換キャッシュの見方、ありがとうございます >再帰処理をgotoループに置き換えている可能性があります 確認したところ、置き換わっていませんでした >コンパイル型言語のベンチを取る時は再帰処理コードは >避けた方が良いと思います ↑ここ詳しくお願いします >再帰処理をgotoループに置き換えている ↑こうなっていませんでしたが、これ前提での話だったのですか? 再帰fibonacciは個別の言語コンパイラ(更にバージョン)の 最適化ベンチマークには持って来いに見えますので http://mevius.5ch.net/test/read.cgi/tech/1519896738/359
360: デフォルトの名無しさん [sage] 2023/08/28(月) 06:40:36.37 ID:eKgmQu1D >>358 >Nimコンパイラ自体は再帰関数の最適化はしてなかったと思う。 その通りでした 確かめたところ二つの再帰関数コールがそのまま残っていて、 その他はNimのトランスパイル過程でのノイズがあるだけです gccがノイズを消すために最適化を頑張った結果、Cより速くなったのですかね http://mevius.5ch.net/test/read.cgi/tech/1519896738/360
361: デフォルトの名無しさん [sage] 2023/08/28(月) 06:47:48.48 ID:eKgmQu1D 何気にNim + gcc HEADにしてみたら、更に速かったです Nim 2.0.0 + gcc 12.2.0 -O2 (44はコマンドライン引数) https://wandbox.org/permlink/RVJ4eHKKl5DARK3u >Time= 0.250s Result=701408733 これ↑がこう↓ Nim 2.0.0 + gcc HEAD 14.0.0 -O2 (44はコマンドライン引数) https://wandbox.org/permlink/cpYesJtnlRNJiu7Z >Time= 0.197s Result=701408733 参考値再掲(>>353) C/gcc -O2 (44はソース直書き) https://wandbox.org/permlink/9OYZBH14tYooZHF7 > Time: 0.89583 seconds C/clang -O2 (44はソース直書き) https://wandbox.org/permlink/U97PecZYrzymnfH4 >Time=1.58712s Result=701408733 gccの最適化が凄すぎて意味わからないですが、ありがたく享受する事にします http://mevius.5ch.net/test/read.cgi/tech/1519896738/361
362: デフォルトの名無しさん [] 2023/09/06(水) 06:10:42.54 ID:8VjD58re レバテックωωω Rust in Nim out ωωωωωω http://mevius.5ch.net/test/read.cgi/tech/1519896738/362
363: デフォルトの名無しさん [sage] 2023/11/15(水) 08:06:37.71 ID:6Kiw7POr >>349 F#が、 F# Dataってライブラリで、コンパイル時に ファイルの読み取りは、やってたけれど、あまり見かけないね。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/363
364: デフォルトの名無しさん [sage] 2023/11/28(火) 09:23:46.10 ID:XbNpNPYt happyxってdjungoの上位互換なれねーかな https://hapticx.github.io/happyx/#/ http://mevius.5ch.net/test/read.cgi/tech/1519896738/364
365: デフォルトの名無しさん [] 2023/12/06(水) 09:31:30.20 ID:oM0gjrfW >>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 http://nim-lang.github.io/Nim/manual_experimental.html 第二プログラミング言語として Rust はオススメしません Nim をやるのです https://wolfbash.hateblo.jp/entry/2017/07/30/193412 Nimは限りなく抑え込まれたタイプ量で高い生産性とPythonのような高い可読性を実現し ているにもかかわらず、高速なCのソースコードを吐き出せるのでC言語でリモートワーク されている方は割り振られた仕事が早く終わっても終わってないふりをして怠けることができる 「怠け者とはこうあるべきだ!」と言うとても大事な事を Nim は我々に教えてくれます http://mevius.5ch.net/test/read.cgi/tech/1519896738/365
366: デフォルトの名無しさん [] 2023/12/06(水) 20:32:47.84 ID:7Cu2FhSW Nim って python を強調し過ぎてるのはミスリードだと思うな python と相性が良いってのは事実だけど Nim の特徴のほんの一部でしかない http://mevius.5ch.net/test/read.cgi/tech/1519896738/366
367: デフォルトの名無しさん [sage] 2023/12/08(金) 21:38:37.62 ID:xBCOoZoU >>366 Python使える人が多いからNimを広めるためにNim言語はpythonと同じだという人は多い。 文法がpythonに近いだけで中身は静的型言語だからpythonよりC++とかRustに近いと思う。 pythonしか知らない人がNimのオーバーロードとかGenericsとかobjectとref objectの違いとかちゃんと理解して使えるのかどうか心配になる。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/367
368: デフォルトの名無しさん [] 2023/12/10(日) 11:41:19.18 ID:1MxEINjf 「文法がpythonに近い」が事実じゃないんだよな 観た目が似てるだけであって文法が似てる訳じゃない 全然別物 http://mevius.5ch.net/test/read.cgi/tech/1519896738/368
369: デフォルトの名無しさん [sage] 2023/12/10(日) 17:02:37.56 ID:S5Hrhavn そういう意味では構文で結構損してそう オフサイドルールが気に入らない人にとってはそもそも検討に値しないし Python好きな人ならそこは気にならないだろうけど、別に移行しやすくもない http://mevius.5ch.net/test/read.cgi/tech/1519896738/369
370: デフォルトの名無しさん [sage] 2023/12/11(月) 04:52:12.28 ID:E9pPgJ3z >>369 でも静的型言語でオフサイドルールの言語はNimとcrystal以外あまりないのでは。 オフサイドルールが好きで型システムがちゃんとしていて高速に動くプログラムを書きたい人にはぴったり。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/370
371: デフォルトの名無しさん [sage] 2023/12/11(月) 06:10:19.79 ID:dU0p99Eo 型で安全性を静的に担保したいと考える人が、同時にインデントで意味が変わってしまうオフサイドを好むってのはちぐはぐさを感じる http://mevius.5ch.net/test/read.cgi/tech/1519896738/371
372: デフォルトの名無しさん [sage] 2023/12/11(月) 06:46:36.74 ID:Oijs0Efp HaskellとデフォルトF#もオフサイドルールありですね。どうせインデントするんだしって使ってやれってくらいの感じなのかね? あとは、インデントに意味はないけれど、goが標準のフォーマッタでインデント入れてくるね。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/372
373: デフォルトの名無しさん [sage] 2023/12/11(月) 06:54:57.74 ID:n3cFiyWX Python登場当時だと{}前後のどこで改行するか論争みたいなのがあったりして確かに括弧書くのが面倒な空気はあったんだよな それがGo/Rustの世代だと言語標準のフォーマッタが勝手にやってくれるってなって めんどくさくないっていうオフサイドのメリットはなくなってしまった そうすると自動フォーマットしづらいとかコピペしづらいとかデメリットばかり目立つことになってしまう http://mevius.5ch.net/test/read.cgi/tech/1519896738/373
374: デフォルトの名無しさん [sage] 2023/12/12(火) 04:50:08.02 ID:X9wYEqIf ブロック毎に'{}'や行末に';'があるとソースコードが少し汚く見えるし 無いとすっきりして読みやすいと思うけどね。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/374
375: デフォルトの名無しさん [sage] 2023/12/12(火) 05:58:22.17 ID:6YpoyKxr そんなの単なる慣れ http://mevius.5ch.net/test/read.cgi/tech/1519896738/375
376: デフォルトの名無しさん [sage] 2023/12/12(火) 08:04:30.17 ID:BxX9TTWN まぁ人によるんじゃない 自分は{}がある方がブロックの識別性が良くて読みやすい オフサイドは特にネストしたブロックの戻りが何段戻ったか見づらいんだよな http://mevius.5ch.net/test/read.cgi/tech/1519896738/376
377: デフォルトの名無しさん [sage] 2023/12/12(火) 08:08:33.42 ID:BYtUbVYs カッコありなら、lisp系が好き。 悩む事が減る。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/377
378: デフォルトの名無しさん [sage] 2023/12/12(火) 13:00:45.46 ID:GxOznL1S >>374 セミコロンはオフサイドルールじゃなくてもRuby/Go/Kotlin/Swiftのように無しできるから関係ないよね それにセミコロンをタイプするのは面倒だとは思うが慣れると読む時のノイズにはならない 自然言語の文章で句点やピリオド+改行がノイズにならないのと同じこと http://mevius.5ch.net/test/read.cgi/tech/1519896738/378
379: デフォルトの名無しさん [sage] 2023/12/12(火) 19:48:14.86 ID:X9wYEqIf CやC++を10年以上使っていたけど';'や'{}'が無いほうがすっくりして読みやすいと思うから慣れでどうにかなるものでは無いと思う。 こういうのは個人差があるのかもしれないが http://mevius.5ch.net/test/read.cgi/tech/1519896738/379
380: デフォルトの名無しさん [sage] 2023/12/12(火) 19:54:02.65 ID:X9wYEqIf ttps://github.com/jeetsukumaran/vim-indentwise このVimのプラグインを使うと同じインデント間のカーソル移動、異なるインデント間のカーソル移動が簡単にできるからお勧めです。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/380
381: デフォルトの名無しさん [sage] 2023/12/12(火) 22:53:30.64 ID:wCEkJKJx >>379 CやC++やっててそんなこと言うやつ初めて聞いたぞ 本当に日々コード書いてる? http://mevius.5ch.net/test/read.cgi/tech/1519896738/381
382: デフォルトの名無しさん [sage] 2023/12/12(火) 23:44:06.92 ID:CyOM3fCk そりゃ仕事で使える言語でオフサイドルールなのってPythonくらいだし ほんとはオフサイドがいいけどC/C++の仕事してるって人くらいいるでしょ http://mevius.5ch.net/test/read.cgi/tech/1519896738/382
383: デフォルトの名無しさん [sage] 2023/12/13(水) 00:18:56.36 ID:YitMt0Fm >>382 {}や;がノイズになるかどうかと オフサイドがいいかどうかの話は別だよ http://mevius.5ch.net/test/read.cgi/tech/1519896738/383
384: デフォルトの名無しさん [sage] 2023/12/13(水) 04:42:50.35 ID:/pcasGi0 >>381 今はC/C++殆ど書いてないけど以前はほぼ毎日使ってたよ。 {}や;に慣れてもやっぱり余計な文字が少ない方がすっきりして読みやすいと思うのだが、そういう人は少数派なんかな? http://mevius.5ch.net/test/read.cgi/tech/1519896738/384
385: デフォルトの名無しさん [sage] 2023/12/13(水) 05:36:33.39 ID:R3z2LBuJ 主観で読みやすいかどうか力説しても結論でるわけない オフサイドは誤ってインデントずれても気付かないままになってしまうのが問題 http://mevius.5ch.net/test/read.cgi/tech/1519896738/385
386: デフォルトの名無しさん [sage] 2023/12/13(水) 06:48:31.89 ID:RhfHz66O >>384 まぁ実際オフサイド採用の新規言語ってあまり出てこないし 少数派なんじゃないかな http://mevius.5ch.net/test/read.cgi/tech/1519896738/386
387: デフォルトの名無しさん [sage] 2023/12/13(水) 07:21:31.19 ID:vQeZuGNk f#みたいに、使う側が選択できれば、解決なんじゃない? http://mevius.5ch.net/test/read.cgi/tech/1519896738/387
388: デフォルトの名無しさん [sage] 2023/12/13(水) 07:35:42.19 ID:q/L8o2wk やれやれお前らCOBOLを知らんのか http://mevius.5ch.net/test/read.cgi/tech/1519896738/388
389: デフォルトの名無しさん [sage] 2023/12/13(水) 11:38:44.64 ID:rzHxkjlX >>384 どちらの方がすっきりして読みやすいかと {}や;が思考ノイズになるかどうかは別だよ 前者はそれなりにいる 後者はツチノコレベルで稀有 http://mevius.5ch.net/test/read.cgi/tech/1519896738/389
390: デフォルトの名無しさん [sage] 2023/12/14(木) 19:26:43.32 ID:xAMEKx/6 エディタの色設定で{};を薄い色にすればいいだけやん http://mevius.5ch.net/test/read.cgi/tech/1519896738/390
391: デフォルトの名無しさん [sage] 2023/12/15(金) 03:05:56.17 ID:/ClHmJDY {}がノイズになるようなら:や=はもちろんのことblock:なんて発狂ものだろうからNimは無理やろな http://mevius.5ch.net/test/read.cgi/tech/1519896738/391
392: デフォルトの名無しさん [sage] 2023/12/15(金) 05:55:25.21 ID:12rLPAnL 思考ノイズって エロい事連想してるって意味だよな? http://mevius.5ch.net/test/read.cgi/tech/1519896738/392
393: デフォルトの名無しさん [sage] 2023/12/15(金) 06:50:06.26 ID:4QMbv0z8 Nimってオフサイドルール以外の所は目立った欠点の無い言語なんかな。 それに実際にオフサイドルールでコードを書いていて困ったことないし。 インデントがずれても困るという人はインデントの幅をスペース4個とか広めにすればいいのでは http://mevius.5ch.net/test/read.cgi/tech/1519896738/393
394: デフォルトの名無しさん [sage] 2023/12/15(金) 17:55:10.13 ID:BxRUp1+8 オフサイドルールは欠点だらけ Pythonを例にすると - カットペーストは命がけ - ネット等で共有しにくい - テキストエディタやIDEの支援が激弱 - dedentは手動タイピング必須 - 改行のために追加の()や\が結局必要 - インデントだけでは可読性が低いから余計な:が必要 - 空行の数まで厳密に意識する必要もある - lambdaのone expression縛りのように言語の成長を阻害しやすい - “explicit is better than implicit”と言いながらブロックはimplicit http://mevius.5ch.net/test/read.cgi/tech/1519896738/394
395: デフォルトの名無しさん [sage] 2023/12/15(金) 18:18:19.69 ID:b3hxnew5 次は、良い点を挙げてみて! http://mevius.5ch.net/test/read.cgi/tech/1519896738/395
396: デフォルトの名無しさん [sage] 2023/12/15(金) 18:24:50.43 ID:pkr2dCwK >>395 プログラミング初心者を釣れる 以上 http://mevius.5ch.net/test/read.cgi/tech/1519896738/396
397: デフォルトの名無しさん [sage] 2023/12/15(金) 20:46:34.27 ID:4QMbv0z8 Vim使ってるけどコピペは問題無くできるしインデントの深さもブロックごと'>'で調整できる。 vim-indentwiseでブロック毎カーソル移動可能。 スペース一個分だけでインデントするとかしない限りブロックの開始、終わりは前後の行のインデントの位置の違いでわかる。 vim-indentwiseでカーソル移動すればブロックの範囲も簡単にわかる。 以前はC/C++を書いてたけど{}や;が無くて読みづらいとか書きづらいとか思ったことは無いよ。 Nim書いていて改行のために追加の()や\が必要になることはほぼ無い 空行の数を厳密に意識する必要もない。 Nimを実際に書いたことあるの? http://mevius.5ch.net/test/read.cgi/tech/1519896738/397
398: デフォルトの名無しさん [sage] 2023/12/15(金) 21:02:40.08 ID:4QMbv0z8 https://wandbox.org/permlink/Nfe6exUFmtWPdWZj NimのAnonymous proceduresでは複数行書けるし こうしてコードを共有できてる。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/398
399: デフォルトの名無しさん [sage] 2023/12/15(金) 22:17:03.24 ID:kBMLRaUx >>398 でもアロー関数にすると()を追加するなどしないと1行しか書けなくなる これもオフサイドルールのせい しかもこんな明らかなバグでも修正しようともしない 言語の成長を阻害するとはこういうこと http://mevius.5ch.net/test/read.cgi/tech/1519896738/399
400: デフォルトの名無しさん [sage] 2023/12/15(金) 22:29:33.41 ID:kBMLRaUx >>397 論点理解せずにvim使いなら誰でも知ってる基本を必死に解説されても困るわ >以前はC/C++を書いてたけど{}や;が無くて読みづらいとか書きづらいとか思ったことは無いよ。 {}や;が無くて読みづらいとか書きづらいとか誰もそんなこと言ってないだろ? 勝手に脳内変換するなや ついでに言うとセミコロン無い方が書きやすいのは当たり前のこと だから新しい言語の多くがセミコロンレスを採用してる(オフサイドは採用しないけど) http://mevius.5ch.net/test/read.cgi/tech/1519896738/400
401: デフォルトの名無しさん [sage] 2023/12/15(金) 23:45:28.85 ID:4QMbv0z8 >>399 アロー関数ってNimのsugarモジュールにある`=>`マクロのこと? あくまでこの=>は二項演算子だから両辺は式になっていないといけない。 オフサイドルールに関係無く二項演算子の両辺に文を直接書けず式を置かないといけないのは殆どのプログラミング言語で同じじゃない? 複数文を書きたければanonymous procedureで書けばよいし。 オフサイドルールじゃない言語で無名関数に複数文を書くときは必ず{}で囲む必要があるし。 どうしてこれが言語の成長を阻害していることになるの? 明らかなバグなのに修正しようとしないって言うけどGithubのNimのリポジトリにそういうissueある? 無名関数を書くときはdo notationというのもあるよ。 https://nim-lang.org/docs/manual.html#procedures-do-notation http://mevius.5ch.net/test/read.cgi/tech/1519896738/401
402: デフォルトの名無しさん [sage] 2023/12/16(土) 08:47:38.44 ID:yzC0WAGQ 「vimを使えばいい」とか「無名関数を使えばいい」などと列挙されても 他の言語はそんな特別なケアなしに使えるわけでな… このあたりがいまいち広まらない原因なんじゃない? http://mevius.5ch.net/test/read.cgi/tech/1519896738/402
403: デフォルトの名無しさん [sage] 2023/12/16(土) 08:53:10.18 ID:mPzLcjX0 以前インデントの代わりに{}を使える機能があったようだ。 https://github.com/nim-lang/Nim/commit/10bd488daafa79f52fec0d5e7ea76ec8d5902465 https://forum.nim-lang.org/t/10730#71570 けれども殆ど使われなかったのと、{}があるとgrammarとparserが発展するのが難しくなるので削除されたらしい。 https://forum.nim-lang.org/t/10349#68930 http://mevius.5ch.net/test/read.cgi/tech/1519896738/403
404: デフォルトの名無しさん [sage] 2023/12/16(土) 09:38:42.94 ID:mPzLcjX0 >>402 現代では高機能なテキストエディタやIDEが使えるから それを使うことを前提にプログラミング言語をデザインしたらいいんじゃね? って話は聞いたことがある。 sugarの`=>`マクロはNim言語のanonymous procedureを特定の条件下で簡単に書けるよう作られたもので完全にanonymous procedureを置き換えられるものでない。 sugarモジュール自体がシンタックスシュガーのようなものを提供するマクロなどを集めたものだし。 制限とか気にせずにanonymous procedureを書きたかったら=>を使わずに書くしかない。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/404
405: デフォルトの名無しさん [sage] 2023/12/16(土) 09:56:43.39 ID:yzC0WAGQ >>404 そのへんがまさに省略記法の悪い点が出てる感じするな 省略するってことはソースコードの情報量は減っていて、それはタダではない 「OOのときにはXXを使う」みたいな規則がたくさん発生するというコストがあるんだよね これはセミコロンレスもそうで、時々変なエッジケースが発生したりする http://mevius.5ch.net/test/read.cgi/tech/1519896738/405
406: デフォルトの名無しさん [sage] 2023/12/16(土) 16:45:38.17 ID:kvk3r8Lt オフサイドルールと違ってセミコロンレス(optional semicolon)は多くの言語で妥当なトレードオフ オフサイドルールが妥当なトレードオフとして成立してるのはHaskell系の言語くらい http://mevius.5ch.net/test/read.cgi/tech/1519896738/406
407: デフォルトの名無しさん [sage] 2023/12/16(土) 20:00:00.36 ID:USjLXMUH なんかどうでもいいことをいつまでも うじうじと 気に入らないなら使わなきゃいいだけ 気に入ったら使えばいいだけ http://mevius.5ch.net/test/read.cgi/tech/1519896738/407
408: デフォルトの名無しさん [sage] 2023/12/17(日) 07:10:31.29 ID:clYlz397 >>407 気に入っていても: ある日突然: 気に入らなくなる事ってあるよね? 気に入らなくても: ちょっとしたきっかけで: すごく気に入ってしまうことも あるよね? そういう時はどうすればいいの? http://mevius.5ch.net/test/read.cgi/tech/1519896738/408
409: デフォルトの名無しさん [sage] 2023/12/17(日) 12:19:34.98 ID:WUPd6f5k >>408 > すごく気に入ってしまうことも > あるよね? Error: invalid indentation http://mevius.5ch.net/test/read.cgi/tech/1519896738/409
410: デフォルトの名無しさん [sage] 2023/12/17(日) 18:41:59.56 ID:F9NekDqG Nimはよく考えずに機能追加して既にC++並みに複雑化してる 目新しさだけで飛びつくと後悔するぞ http://mevius.5ch.net/test/read.cgi/tech/1519896738/410
411: デフォルトの名無しさん [] 2023/12/18(月) 02:13:02.65 ID:DdCrjTir そうなの? じゃあもうC++でいいじゃん http://mevius.5ch.net/test/read.cgi/tech/1519896738/411
412: デフォルトの名無しさん [sage] 2023/12/18(月) 08:55:26.31 ID:DG+uqCiP 例えば最近実装している変更についてもちゃんとここに理由とか書いてあるよ。 https://github.com/nim-lang/RFCs/issues/516 このあたりをよく読めばちゃんと考えて機能を実装していることがわかるよ。 https://github.com/nim-lang/RFCs/issues https://github.com/nim-lang/Nim/pulls Discord/Nimのinternalチャンネルをときどき読んでるけど 開発者は論文読んだり他のプログラミング言語の機能を調査しているようだよ。 https://en.cppreference.com/w/cpp と https://nim-lang.org/docs/manual.html を読み比べてみればわかると思うけどC++のほうがはるかに複雑だよ。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/412
413: デフォルトの名無しさん [sage] 2023/12/18(月) 20:40:29.88 ID:DG+uqCiP Nim言語がどのような考えで設計されたか知りたい人はNimのblogを読むといいよ。 https://nim-lang.org/araq/ https://nim-lang.org/blog.html http://mevius.5ch.net/test/read.cgi/tech/1519896738/413
414: デフォルトの名無しさん [sage] 2023/12/18(月) 20:49:37.54 ID:CbnA3O4k Nimの現状を知りたい人はこれを読むといい https://forum.nim-lang.org/t/9145 http://mevius.5ch.net/test/read.cgi/tech/1519896738/414
415: デフォルトの名無しさん [] 2023/12/19(火) 00:16:35.74 ID:mrSFrPG8 議論をよく読めば何やらちゃんと考えて実装しているらしいのはC++も同じなんだよなあ http://mevius.5ch.net/test/read.cgi/tech/1519896738/415
416: デフォルトの名無しさん [sage] 2023/12/19(火) 08:00:58.06 ID:w9OEXcqM >>415 単純に >>410 への反論なだけじゃない? http://mevius.5ch.net/test/read.cgi/tech/1519896738/416
417: デフォルトの名無しさん [sage] 2023/12/20(水) 12:37:14.01 ID:Cvw2c2UZ バグ修正版のNim 2.0.2と1.6.18がリリースされました。 https://nim-lang.org/blog/2023/12/19/versions-1618-202-released.html http://mevius.5ch.net/test/read.cgi/tech/1519896738/417
418: デフォルトの名無しさん [sage] 2023/12/23(土) 09:16:16.92 ID:VfEmk1mn 寂しいスポンサーページだな😢 https://nim-lang.org/sponsors.html こりゃnimが普及しないのも当然か rustとは大違い https://foundation.rust-lang.org/members/ http://mevius.5ch.net/test/read.cgi/tech/1519896738/418
419: デフォルトの名無しさん [sage] 2023/12/23(土) 10:35:51.40 ID:M8dtHAyN でもRustは誰も使ってないじゃん http://mevius.5ch.net/test/read.cgi/tech/1519896738/419
420: デフォルトの名無しさん [sage] 2023/12/23(土) 11:58:51.47 ID:BXldyzev Rust言語はトヨタ自動車が採用してると どこかで読んだ http://mevius.5ch.net/test/read.cgi/tech/1519896738/420
421: デフォルトの名無しさん [sage] 2023/12/23(土) 13:41:38.19 ID:fLdoaHTJ >>419 誰も使ってないは草 http://mevius.5ch.net/test/read.cgi/tech/1519896738/421
422: デフォルトの名無しさん [sage] 2023/12/23(土) 13:46:35.58 ID:6J3b/0Sr Nimと書き間違えたんだと思うが http://mevius.5ch.net/test/read.cgi/tech/1519896738/422
423: デフォルトの名無しさん [sage] 2023/12/23(土) 18:13:17.30 ID:A6gu1Hml Nimを使っている組織のリスト https://github.com/nim-lang/Nim/wiki/Organizations-using-Nim http://mevius.5ch.net/test/read.cgi/tech/1519896738/423
424: デフォルトの名無しさん [sage] 2023/12/27(水) 19:41:58.29 ID:g/RhhP+m プログラムをビルドするためにC++だったらCMake、Rustだったらcargo.tomlにTOMLを使う。 Nimだったらconfig.nimsも.nimbleファイルもNim言語で書ける。 一つの言語でコンパイル言語としてもスクリプト言語としても使えて便利。 Nimはマクロやconstなどをコンパイル時に実行するためにVM使ってるんだけど、そのVMを使ってNimをスクリプト言語のように実行できるらしい。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/424
425: デフォルトの名無しさん [] 2023/12/27(水) 19:50:00.04 ID:J2C6aYvl rustも複雑なことをしようと思ったらbuild.rsに書けるけど、それはそうとして依存関係をプログラム言語で書きたいかと言われると http://mevius.5ch.net/test/read.cgi/tech/1519896738/425
426: デフォルトの名無しさん [sage] 2023/12/27(水) 20:16:43.40 ID:E4kPlntL あれもこれもできて便利!みたいなのはぱっと見良さそうでも 大規模・多人数・長期開発になると負債になりがちではある http://mevius.5ch.net/test/read.cgi/tech/1519896738/426
427: デフォルトの名無しさん [sage] 2023/12/27(水) 20:24:29.72 ID:qErwbOrg happyxが起爆剤にならないかなぁ、、🙏 http://mevius.5ch.net/test/read.cgi/tech/1519896738/427
428: デフォルトの名無しさん [sage] 2023/12/27(水) 23:05:07.37 ID:LUGQIuRd zigなら全部zigで書ける(便乗) http://mevius.5ch.net/test/read.cgi/tech/1519896738/428
429: デフォルトの名無しさん [sage] 2023/12/27(水) 23:27:30.38 ID:7WiLoZ1Z 一体なにがエレガントなんだろうなこの言語って http://mevius.5ch.net/test/read.cgi/tech/1519896738/429
430: デフォルトの名無しさん [] 2023/12/27(水) 23:34:47.36 ID:qmMlPacq まあアイコンはエレガントなんじゃない?王冠だし http://mevius.5ch.net/test/read.cgi/tech/1519896738/430
431: デフォルトの名無しさん [sage] 2023/12/27(水) 23:51:57.04 ID:Ra91RrOg procとmethodとfuncを使い分けつつ{.global.}や{.async.}なとの{.pragma.}とmacroでぐちゃぐちゃにかき混ぜられるのが超エレガントw 他の言語では類を見ない http://mevius.5ch.net/test/read.cgi/tech/1519896738/431
432: デフォルトの名無しさん [sage] 2023/12/28(木) 22:46:05.11 ID:u+MANgUc エレガントすぎてついていけないわ http://mevius.5ch.net/test/read.cgi/tech/1519896738/432
433: デフォルトの名無しさん [sage] 2023/12/28(木) 23:18:44.60 ID:u+MANgUc エレガントすぎてついていけないわ http://mevius.5ch.net/test/read.cgi/tech/1519896738/433
434: デフォルトの名無しさん [sage] 2024/02/20(火) 19:40:26.76 ID:iQdtjO/s 新年の記念 保守 http://mevius.5ch.net/test/read.cgi/tech/1519896738/434
435: デフォルトの名無しさん [sage] 2024/06/17(月) 22:36:28.67 ID:y0rZbngO https://nim-lang.org/blog/2024/06/17/version-206-released.html Nim version 2.0.6がリリースされました。 http://mevius.5ch.net/test/read.cgi/tech/1519896738/435
436: デフォルトの名無しさん [sage] 2024/10/04(金) 21:03:40.29 ID:jm0g8/rX https://github.com/kostya/benchmarks#primes から派生させた、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 Rust 2430ms overflow-checks = true Zigが速かったので他は色々と変更した Zigの変更は最小限なので再現検証をする場合は各自のZig計測値を基準にしてください http://mevius.5ch.net/test/read.cgi/tech/1519896738/436
437: デフォルトの名無しさん [sage] 2024/10/04(金) 21:11:00.73 ID:jm0g8/rX 特にデータ構造で Nim seq[bool] Rust Vec<bool> は遅いので直ぐに取り換えてください C++のvector<bool>は最適化がされていますが、最終的に別のものにしました http://mevius.5ch.net/test/read.cgi/tech/1519896738/437
438: デフォルトの名無しさん [sage] 2024/10/04(金) 21:12:20.19 ID:jm0g8/rX >>436は取り換えた後の計測値です http://mevius.5ch.net/test/read.cgi/tech/1519896738/438
439: デフォルトの名無しさん [] 2024/12/31(火) 13:29:53.82 ID:dvbSbmj1 ねんまつ記念 保守 http://mevius.5ch.net/test/read.cgi/tech/1519896738/439
440: デフォルトの名無しさん [sage] 2025/02/18(火) 12:43:21.45 ID:HbHlBTpR C++のVectorは最悪 http://mevius.5ch.net/test/read.cgi/tech/1519896738/440
441: デフォルトの名無しさん [sage] 2025/03/30(日) 03:12:16.26 ID:oBGwoxyW 最近元気ないな http://mevius.5ch.net/test/read.cgi/tech/1519896738/441
442: デフォルトの名無しさん [sage] 2025/04/27(日) 14:57:44.22 ID:rRExk4WB ねこのすれ http://mevius.5ch.net/test/read.cgi/tech/1519896738/442
443: デフォルトの名無しさん [sage] 2025/05/08(木) 16:20:58.41 ID:anhDrZ/H バイアグラ飲め http://mevius.5ch.net/test/read.cgi/tech/1519896738/443
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.013s