nim
1 :デフォルトの名無しさん :2018/03/01(木) 18:32:18.16 ID:vh/yy2VS.net https://nim-lang.org/
60 :デフォルトの名無しさん :2019/06/19(水) 02:09:28.92 ID:8qBvJS/J.net var name: string = readLine(stdin) なんでvarと書きつつstringと型指定するのか 変な言語仕様だな string name = でいいだろ
61 :デフォルトの名無しさん :2019/06/19(水) 02:10:39.50 ID:8qBvJS/J.net var name = readLine(stdin) 型推論だっていってるけどこれ可読性低下してる string name = readLine(stdin) これがベスト
62 :デフォルトの名無しさん :2019/06/19(水) 02:52:19.54 ID:8qBvJS/J.net nimでデバドラ作ったりできるんだろうか
63 :デフォルトの名無しさん :2019/06/19(水) 02:57:44.38 ID:8qBvJS/J.net https://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++なんか使ってるんだ
64 :デフォルトの名無しさん :2019/06/19(水) 04:14:19.61 ID:8qBvJS/J.net https://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 どうやらNimが適切なCソースコードを作成するには ターゲットのCPUとOSを指定する必要があり、 その組み合わせ全てに何かファイルを用意する必要がある。 これじゃダメだな・・・
65 :デフォルトの名無しさん :2019/06/19(水) 04:24:41.25 ID:8qBvJS/J.net 勘違いした。ダメってことはないか Nimコード自体は環境非依存、Cコードにするとき環境依存、ということか
66 :デフォルトの名無しさん :2019/06/19(水) 14:31:42.44 ID:Yoy0IPRe.net LLVMω
67 :デフォルトの名無しさん :2019/06/21(金) 05:13:28.08 ID:gJOJvtBY.net Nimってめちゃすごなんじゃないかなあ 細かい言語仕様で嫌いなところがあるけど
68 :デフォルトの名無しさん :2019/06/21(金) 14:29:00.17 ID:HK0kbqVP.net 漏れも D がすごいと思ってた時期があるよ
69 :デフォルトの名無しさん :2019/06/21(金) 14:55:07.18 ID:GHyPzIJc.net >>61 name : string := readLine(stdin) のほうがいい。
70 :デフォルトの名無しさん :2019/06/22(土) 05:26:38.53 ID:ecTKxvDL.net https://nim-lang.org/ The Nim compiler and the generated executables support all major platforms like Windows, Linux, BSD and Mac OS X. executablesは機械語?Cコード? いずれにせよ環境依存してると思うけど、大抵のプラットフォームをサポートしてます、ってどういうこと? 大抵のプラットフォームに向けてトランスパイルできますってこと?
71 :デフォルトの名無しさん :2019/06/22(土) 09:58:00.49 ID:fiI8bn9U.net You Nim で Tensorflow が使えるアプリ造っchina YO
72 :デフォルトの名無しさん :2019/06/24(月) 09:23:40.70 ID:4pk2usGN.net >>69 var name : string = readLine(stdin) #nameは変更可能 let name : string = readLine(stdin) #nameは初期化後は変更不可 というletとvarに違いがある。 型推論使ったほうがコード読みやすい、書きやすいという人もいるんだよ。 readLineの戻り値の型はstringに決まってるんだから毎回型を書く必要ないと思うけど
73 :デフォルトの名無しさん :2019/06/24(月) 09:43:12.98 ID:4pk2usGN.net >>70 NimはC言語に変換してからgcc等のCコンパイラを呼んで実行ファイルを作るんだよ。 C言語は大抵のプラットフォームで使える言語だからマルチプラットフォーム化しやすい。 なので一度書いたNimコードをそれぞれのプラットフォーム上でコンパイルするかクロスコンパイルするだけでだいたいは動く。 けどNimから出力されるCコードは特定のCコンパイラ、OS、CPU向けに書かれているので、それだけでマルチプラットフォームな実行ファイルは作れないらしい。 Nimの標準ライブラリのソースコードを読むとOS、CPUによる違いを吸収するためのコードがときどきあるよ。
74 :デフォルトの名無しさん :2019/06/24(月) 09:53:12.36 ID:4pk2usGN.net Nimのソースコードのcompiler/extccomp.nimにNimが対応しているC/C++コンパイラの情報がまとまっていて、compiler/platform.nimにはOSとCPUの情報がまとまってる。
75 :デフォルトの名無しさん :2019/06/24(月) 11:40:11.26 ID:eHWTfFeZ.net https://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-compiler
76 :デフォルトの名無しさん :2019/06/24(月) 15:58:18.33 ID:4pk2usGN.net >>59 NimのGCについてはここに情報がある。 メモリ確保時にいらなくなったメモリを走査して解放しているらしい。 https://nim-lang.org/docs/gc.html NimでGCを使わずにメモリ管理する話もある。 https://github.com/nim-lang/Nim/wiki/Destructors,-2nd-edition >>71 Nimで実装されたTensorflowに相当するらしいlibrary https://github.com/mratsim/Arraymancer
77 :デフォルトの名無しさん :2019/08/11(日) 11:51:35.55 ID:coNgBae3.net 2次元配列って、 var a: array[10,array[10,int]] とか書くしかないの?
78 :デフォルトの名無しさん :2019/09/24(火) 21:02:48.66 ID:WLUvX9Jg.net nim1.0でた〜〜
79 :デフォルトの名無しさん :2019/09/25(水) 05:43:15.78 ID:rQhNlpv9.net Version 1.0 released 23 September 2019 The Nim Team https://nim-lang.org/blog/2019/09/23/version-100-released.html Nim Programming Language Hits Stable Milestone With v1.0 Release https://www.phoronix.com/scan.php?page=news_item&px=Nim-1.0-Programming-Language
80 :デフォルトの名無しさん :2019/09/25(水) 06:16:02.11 ID:vl5hNqVG.net ついでにwandboxのnim ttps://wandbox.org/permlink/npG9hbKwZyKQTXgI?source=post_page-----5d0f58d21e7e----------------------
81 :デフォルトの名無しさん :2019/09/25(水) 10:58:52.25 ID:U8qLrE8v.net GJ
82 :デフォルトの名無しさん :2019/09/26(木) 04:03:18.19 ID:9xzqPVF9.net 1.0おめでとう! ちなみに echo NimVersion echo(NimVersion) NimVersion.echo は同じ意味のコードだよ。Uniform Function Call Syntaxってやつだ
83 :デフォルトの名無しさん :2019/10/27(日) 16:17:57.05 ID:IkTaChA0.net windows 10 Nim 1.0.2 入れてみた tdmgcc は前から使ってて gcc は既に path 通してあったので nim 側はファイル展開しただけで何もしなくても良かった (nim.cfg の書き換え(書き足し)も不要だった) path 通さなくても C:\nim\bin\nim c hogehoge で動いた
84 :デフォルトの名無しさん :2019/10/27(日) 16:18:39.88 ID:IkTaChA0.net あと 日本語の参考書籍ってなんか出てる? Nim in Action とかはどうだった?
85 :デフォルトの名無しさん :2019/10/30(水) 20:48:12.27 ID:obI8HGMc.net >>83 最近のは勝手に gcc 入れてくれるよ。
86 :デフォルトの名無しさん :2019/11/06(水) 15:17:56.57 ID:o3tEvZiY.net HANDLEもこっそりtypedefに_PTR変えたんだっけ
87 :デフォルトの名無しさん :2019/11/06(水) 15:20:05.05 ID:o3tEvZiY.net 誤爆った
88 :デフォルトの名無しさん :2019/11/09(土) 00:06:35.30 ID:LGMQokS+.net Nim playground https://play.nim-lang.org/ 次スレから>>1 に入れといてよ しかしver1到達したのに全然盛り上がらんのなお前ら
89 :デフォルトの名無しさん :2019/11/09(土) 03:28:50.22 ID:fORTWFTH.net https://wandbox.org/ こちらでもNim使えますよ。
90 :デフォルトの名無しさん :2019/11/10(日) 11:17:11.92 ID:ddnKE8WS.net >>85 distフォルダにmingwの7z玉入れておけば、オフラインでのインストールもできるね。
91 :デフォルトの名無しさん :2019/11/10(日) 11:25:43.54 ID:ddnKE8WS.net >>84 日本語の書籍はないが、原著のドキュメントは割とわかりやすい。docs/tut1.htmlから読み始めるといいかもしれない。 NIAは評判が良いらしいのと、製本版を買うと電子書籍版が無料で付いてくるらしい。 国内でのNimの翻訳は有志が約二名ほど作業しているが、まだ始まったばかり。時間かかりそうだね。
92 :デフォルトの名無しさん :2019/11/18(月) 09:38:29.23 ID:ahZzeXy3.net DLLのCの関数を呼ぶ方法はいくつかあるようですが なぜいくつもあるのでしょうか? どれが一番効率が良いのかとか新しいのかとか判りにくい
93 :デフォルトの名無しさん :2019/11/18(月) 15:24:43.91 ID:g/bdYEbz.net 単純にdll内の関数を呼びたいならdynlibプラグマを使うのが一番楽。 少し低レベルな機能が必要ならdynlibモジュウルにあるプロシイジャアを使えばいいんじゃなかろうか
94 :デフォルトの名無しさん :2019/11/18(月) 17:09:32.08 ID:wQWkNxVm.net 成る程。
95 :デフォルトの名無しさん :2019/12/10(火) 23:17:13.67 ID:DeryhXpR.net nimに対応したソースコード可視化ツールってある?
96 :デフォルトの名無しさん :2019/12/12(木) 17:09:11.38 ID:Lo+C9eAO.net nimってあまりかっこよくないね
97 :デフォルトの名無しさん :2019/12/13(金) 23:01:47.25 ID:sYt6sihU.net Cにコンパイルしてからコード解析ツールに。
98 :デフォルトの名無しさん :2020/03/25(水) 04:10:40.05 ID:k6zngd1F.net nimコードはトランスパイルする前ならクロスプラットフォームなんだろうか?
99 :デフォルトの名無しさん :2020/03/27(金) 15:59:22 ID:6mKroLAz.net こんないい言語なのに結局欠点はCに依存してる点
100 :デフォルトの名無しさん :2020/03/27(金) 16:10:13.08 ID:9RtDMjhb.net あんまり本出ないね むしろチャンスか
101 :デフォルトの名無しさん :2020/03/27(金) 22:55:09 ID:2CmTFgv1.net あの糞マクロ以外大して面白みのない言語だしなぁ
102 :デフォルトの名無しさん :2020/04/07(火) 05:01:02 ID:FPXvnSDp.net 逆にマクロの完成度高い言語ってなに?
103 :デフォルトの名無しさん :2020/04/07(火) 07:46:31.57 ID:CJzGmfMl.net common LISP
104 :デフォルトの名無しさん :2020/04/07(火) 14:00:10 ID:izX7gbjy.net Schemeは?
105 :デフォルトの名無しさん :2020/04/07(火) 19:47:26 ID:fJ0U2d01.net nimのマクロは完成度高いと思う。でも完成度高いマクロという存在自体が糞。
106 :デフォルトの名無しさん :2020/04/08(水) 12:06:55 ID:lWfV0IAd.net MACRO-80
107 :デフォルトの名無しさん :2020/04/10(金) 23:13:42 ID:mN42vwgW.net >>102 糞マクロを褒めてるのであって 逆じゃないと思うんだが
108 :デフォルトの名無しさん :2020/04/10(金) 23:14:33 ID:mN42vwgW.net >>101 >>105 が同じってことだろ common lispなんてはるかに糞になるし
109 :デフォルトの名無しさん :2020/04/10(金) 23:15:34 ID:mN42vwgW.net マクロならrustのが定評あると思うが
110 :デフォルトの名無しさん :2020/08/07(金) 22:39:20.68 ID:r3mpGCFQ6 https://marimay.jp ここで麻雀作ってる
111 :デフォルトの名無しさん :2020/09/19(土) 22:27:13.04 ID:9NR8PjVh.net 小数の配列作りたいんだけどやり方教えてください。 [0.0, 0.1, .. 0.9, 1.0] みたいな。 Python なら hoge = [i/10 for i in range(11)] かな。気持ち悪いけど。
112 :デフォルトの名無しさん :2020/09/22(火) 12:29:56.17 ID:w8JrpHTT.net lc[i*0.1 | i<-0..10 ]
113 :デフォルトの名無しさん :2021/01/10(日) 21:59:51.09 ID:HIznKotv.net >>69 var name = readLine stdin var name = stdin.readLine で完結してるよ、型推論で>>72 にも言った通り型を何回も書く意味がない。付け加えれば()カッコも 要らない。第一引数クロージャーのラムダ式で言えばカッコが必要ないのに書く意味が無い。そして varとletとは不変性だが、rustやVの様にたかがGCを搭載したく無いだけで、どこでもmut mutして プログラマに負担を強いるより良い(あくまで個人の感想です) さらに、procとfuncも、片方が純関数なのはキーワードとして明示できる統一性としてありだね。 まあpragmaが多すぎる気もするけど、if likely(true)/unlikely(false)の様にCPUキャッシュ分岐予測に 直接関与出来る高級言語としては、他に類を見ない。GCが嫌ならOFFに出来るし、そして重い Stop the Worldが嫌ならそれをしないGCに変えることが出来る、言語としては機能が多くて Goの様に究極なシンプル(なのに統一性が微妙)じゃ無いけど、こりゃ良いわ var name = stdin.read LineEnum
114 :デフォルトの名無しさん :2021/01/10(日) 22:14:35.92 ID:HIznKotv.net 付け加えるとHaskellみたいなproc() = の宣言が微妙キモいけどfunc(): T =があるから、まあ妥当だね rubyの様なreturnを書かないのは良い。result=xは便利だけど微妙....でそこまでやるならOptionと Future、そして例外を統一して欲しかったな。 普通にtry: except: finally:があるのも点数が高い。Araqが言う様に例外と(Label)goto based exceptは ほとんど同じ何だから、今どきの言語が例外が無いのはおかしい。まあ他を悪く言う気はないけど Goの様に意味合い的に同じでfinallyに対応するdeferがあるのも良いよね
115 :デフォルトの名無しさん :2021/01/12(火) 15:33:30.76 ID:LUlB/OIG.net 超時空ロングパス
116 :デフォルトの名無しさん :2021/01/12(火) 15:57:17.72 ID:kyPiY518.net この言語がJsと比較で優れてる点ってあるの?
117 :デフォルトの名無しさん :2021/01/13(水) 08:29:44.80 ID:oKh8381v.net JavaScript?であれば、JavaScriptはECMAScriptのバージョンとともに型無しのダックタイプから クラス定義で見られるように型を導入して大規模コードを書く際に静的な安全性を求めてきた、 言語的な特徴でもあった動的なメソッド上書きやapply/callは悪とみなされつつ、改良が進む。 TypeScriptもその特徴であろう、altJSあるいはJSX派生と呼ばれる一種の方言が多量に誕生した 一方でJavaScriptの遅さや1言語依存からwasmが考え出されて多くのコンパイラでwasm開発が できるようになった。Nimも例に漏れずJSバックエンド及びwasmコンパイルが可能である。 Rustもwasm開発はそうだがJSバックエンドは無い、Goもwasmは出来るがサイズが大きい NimはGoに比べても型チェックが厳しい、Rustはそれに借用いわゆるボローチェックがそれに 加わるRustもそうだが型安全性はばつぐんだ
118 :デフォルトの名無しさん :2021/01/14(木) 18:15:15.39 ID:ZgCcmsal.net jsって割と底辺だと思うから Nimはそれより上だろ
119 :デフォルトの名無しさん :2021/02/25(木) 19:45:58.25 ID:twDFYCAL.net 1.4.4 age
120 :デフォルトの名無しさん :2021/04/17(土) 20:22:19.25 ID:f1G9K9An.net 1.4.6 age
121 :デフォルトの名無しさん :2021/04/30(金) 20:42:36.52 ID:+hB3gYz3.net Windows defenderでウイルス判定される
122 :デフォルトの名無しさん :2021/05/01(土) 12:24:15.54 ID:afQILYPs.net それはどうしようもない https://forum.nim-lang.org/t/7830
123 :デフォルトの名無しさん :2021/05/10(月) 13:57:34.01 ID:FH4+0Y9S.net 頼むからもう少し流行ってください。Dropトレイト、Rcトレイトと戯れてあいつのコードを直したくない
124 :デフォルトの名無しさん :2021/05/10(月) 15:07:45.08 ID:lCZGOQhN.net 明日に向かって吠えろ
125 :デフォルトの名無しさん :2021/05/13(木) 14:29:40.54 ID:pHijDXLB.net Software Design に記事持ち込め
126 :デフォルトの名無しさん :2021/05/15(土) 12:35:34.04 ID:eYtIld1h.net https://www.akiradeveloper.com/post/give-up-nim/
127 :デフォルトの名無しさん :2021/05/19(水) 07:49:19.67 ID:mvJC2+U+.net 2015年2月なんて大昔だろ…Version 0.11頃の話、貼る奴w
128 :デフォルトの名無しさん :2021/05/19(水) 07:53:15.04 ID:mvJC2+U+.net 間違えた。 2月だから0.11さえ出てないわ、0.10.2…
129 :デフォルトの名無しさん :2021/05/26(水) 22:06:31.04 ID:5a/xy4zx.net >>121-123 バージョン1.4.8がリリースされました 2021年5月25日ニムチーム Nimチームは、Nim1.4の4番目のパッチリリースであるバージョン1.4.8を発表できることを 嬉しく思います。バージョン1.4.8は、1か月のハードワークの結果であり、23のコミットが 含まれており、最も重要なバグが修正され、ORCメモリ管理がさらに改善されています。 すべてのユーザーにバージョン1.4.8をアップグレードして使用することをお勧めします。 リリースのハイライト develブランチと同様に、v1.4.8はcsources_v1を使用して構築されています。つまり、 AppleM1チップで使用できます。 バージョン1.4.6は、いくつかのウイルス対策ソフトウェアでいくつかの誤検知を引き 起こしました。私たちのテストによると、これはv1.4.8では発生しないはずです。
130 :デフォルトの名無しさん :2021/06/24(木) 16:12:27.31 ID:IeJQfUil.net なんか結局流行らなかったな 2019ごろはちょっと来そうな雰囲気出してたのに
131 :デフォルトの名無しさん :2021/06/24(木) 16:13:02.76 ID:IeJQfUil.net 今でも一番書いてて気持ちいい言語ではあるけど
132 :デフォルトの名無しさん :2021/06/24(木) 17:25:26.02 ID:70oiT5zZ.net Luaといい勝負?
133 :デフォルトの名無しさん :2021/06/27(日) 14:10:40.69 ID:YLAmOs9U.net Luaの理念は、簡素、高効率、高移植性(simple, efficient, extensible)、現在はpowerfulとかに変えた。 JITもあるが型の概念が希薄で基本はNativeではない。GCあり、プロトタイプベースのOOPSもC/C++の 相互運用も図られているが、主な用途は本体のプログラムを拡張するスクリプト、ゲームの拡張や 3Dモデリングソフトなどの拡張。 一方、Nimは「Efficient, expressive, elegant」(効率的、表現力豊か、エレガント)であり、型は厳格。 関数、あるいはプロシージャ呼び出しも厳密。Goにあるinterface{}のようなものは無く、Cというか リンケージ指定、オブジェクトコピー方法、インライン展開など明示するような言語と一体化されたプラグマ。 言語と一体化されたマクロ・テンプレート。状況で選べるGC、例外try-catchとdeferを全否定をしない。 RustのようにGCを排除したためプログラマに押し付けた借用チェックは無い。 Goよりも小さくて速いGC、それによる速度低下は最小限、Rustは学ぶ価値が確かにあるが非常に高い敷居。 Nimは非常に低い敷居(Goほどではないが)、表現力はC/C++そのもの、限りなく抑え込まれたタイプ量。
134 :デフォルトの名無しさん :2021/06/27(日) 20:05:41.95 ID:ytkGpeVG.net そんなにヒドいかな?
135 :デフォルトの名無しさん :2021/08/21(土) 08:23:43.68 ID:7GAoG1Iq.net Nimにガベージコレクション(GC)有りは事実なのですが、 NimはオプションでGC無しにできるので、 Nimバージョン:1.5.1でRustのボローチェッカー に似た「View types」が実装されれば GC無しで、View types参照の有効性を検証する ことによってメモリ安全性を保証しつつ高速化して C/C++/Rustの代替に出来ますか?
136 :デフォルトの名無しさん :2021/08/21(土) 08:47:50.25 ID:7GAoG1Iq.net Nimの実験的特徴 著者: アンドレアス・ルンプ バージョン: 1.5.1 http://nim-lang.github.io/Nim/manual_experimental.html
137 :デフォルトの名無しさん :2021/08/21(土) 22:20:40.33 ID:7GAoG1Iq.net 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 Nimは限りなく抑え込まれたタイプ量で高い生産性とPythonのような高い可読性を実現し ているにもかかわらず、高速なCのソースコードを吐き出せるのでC言語でリモートワーク されている方は割り振られた仕事が早く終わっても終わってないふりをして怠けることができる 「怠け者とはこうあるべきだ!」と言うとても大事な事を Nim は我々に教えてくれます
138 :デフォルトの名無しさん :2021/08/22(日) 08:04:08.99 ID:0Cz6ueFz.net 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 は我々に教えてくれます
139 :デフォルトの名無しさん :2021/10/02(土) 12:07:48.96 ID:nsqRCPBa.net いつの間にかJetBrainsのプラグインが出てたね。今更気がついたよ これもかなり良いんじゃない? https://plugins.jetbrains.com/plugin/15128-nim
140 :デフォルトの名無しさん :2021/10/27(水) 21:47:06.11 ID:6tzLPjk/.net const str = [0, 1, 2, 3, 4] for i in 0||str.high: echo str[i] # nim --passC:"-fopenmp" --passL:"-fopenmp" c main.nim
141 :デフォルトの名無しさん :2021/10/28(木) 12:20:10.25 ID:hM84Yf/1.net >>92 Cの関数だけでもいろいろなコンパイラーにより規約が違うから、ダイナミックなリンケージを非常に素直に 書ける言語はこれくらいだと思う。rustもFFIで呼べるけど https://ja.wikipedia.org/wiki/ 呼出規約
142 :デフォルトの名無しさん :2021/10/29(金) 07:15:01.84 ID:pQzUwhXN.net Nim言語の開発者が$100k相当のBitcoinの寄付を受け取ったことが話題になっています。 www.reddit.com/r/programming/comments/qg2srd/nim_receives_100k_in_bitcoin_donations/
143 :デフォルトの名無しさん :2021/11/11(木) 20:14:42.95 ID:sY0aXUs3.net >>99 公式での処理系は基本的にはC/C++のトランスコンパラですがJSのトランスコンパラとしても動作します。 言語的には依存している分けではなく、gccやclangの最適化の恩恵を受けるためにあえてそのようにして いるようです。 また直接バイナリを吐き出す別のコンパイラarnetheduck/nlvmもあります。CrystalやRust、Swiftなどの LLVMバックエンドと同じです。コンパイル時間を短縮しllvmバイナリとして僅かに小さくなります。
144 :デフォルトの名無しさん :2021/11/22(月) 17:33:11.29 .net RustよりC++より速いんですか? 始めてみようかな
145 :デフォルトの名無しさん :2021/11/22(月) 20:36:44.15 ID:Jhs76KRN.net いろんな意味で早いと思う
146 :デフォルトの名無しさん :2021/12/17(金) 19:10:05.51 ID:XHqHc5Ln.net Version 1.6.2 released https://nim-lang.org/blog/2021/12/17/version-162-released.html
147 :デフォルトの名無しさん :2022/02/10(木) 01:19:39.92 ID:OVWQX5q0.net Version 1.6.4 released https://nim-lang.org/blog/2022/02/08/version-164-released.html
148 :デフォルトの名無しさん :2022/03/29(火) 04:55:27.78 ID:cbyFlglW.net 1.6.x系だけDLしようとするとマルウェア警告出るんだけどこれ大丈夫なんかね
149 :デフォルトの名無しさん :2022/03/29(火) 14:58:47.55 ID:mXbypgy+.net Nimの公式サイトから入手したものなら大丈夫なはず。 Nimに含まれている実行ファイルやNimでコンパイルしたプログラムがアンチウィルスソフトウェアに誤検出される問題は多くの人々から報告されている。 Nim言語でマルウェアを書いてる人がいるせいで誤検出さるようになったらしい。 アンチウィルスソフトウェアは悪いことしないプログラムでもマルウェアと似たようなビットパターンを見つけるとマルウェアとみなすっぽい。
150 :デフォルトの名無しさん :2022/03/29(火) 15:37:13.13 ID:j1iUrhcV.net >>149 なるほどね? サンキュー😉👍🎶
151 :デフォルトの名無しさん :2022/03/29(火) 20:54:07.21 ID:/9JyHlX1.net マルウェアと誤検知されたくなければnimで開発しない方が無難か。
152 :デフォルトの名無しさん :2022/03/31(木) 21:33:49.63 ID:3qPlBVYz.net 多くの人が使っているプログラムでない限り誤検出される可能性はある。 C++使ってたころにビルドが完了してすぐに誤検出されことがあったし。
153 :デフォルトの名無しさん :2022/03/31(木) 21:54:44.97 ID:EY1WgKK4.net そういうどっちもどっち論じゃないだろ。>>149 は有意に誤検知が多いと言っているように見えるが。
154 :デフォルトの名無しさん :2022/04/01(金) 11:47:01.52 ID:3pastURm.net Nimコンパイラ自体がマルウェア扱いだからな。
155 :デフォルトの名無しさん :2022/04/03(日) 00:58:55.13 ID:29whmEYr.net Nimを書き初めて1ヶ月...procの第一引数に設定したオブジェクトにprocがバインドされる謎構文にはたまげたけど書き味がいいし気に入ったなあ
156 :デフォルトの名無しさん :2022/04/03(日) 10:37:31.39 ID:Ng2sRKnM.net >>155 ちょっと誤解しているようだけど、a.foo()って書いたら自動的にfoo(a)に変換されるだけだよ。 第一引数の型にそのprocがバインドされるわけじゃないよ。 X.nim: type Foo* = object x: int proc foo*(f: Foo) = echo f Y.nim: import X proc bar*(): Foo = Foo() Z.nim: import Y #X.nimをインポートしてないとfoo()は呼べないよ bar().foo()
157 :デフォルトの名無しさん :2022/04/03(日) 10:53:58.62 ID:Ng2sRKnM.net Nimではプロシージャの呼び出し方が何通りかある。 echo("Hello") # Command invocation syntax echo "Hello" # Method call syntax "Hello".echo "Hello".echo() # Generalized raw string literals # 引数が文字列リテラル一個のときのみ echo"Hello"
158 :デフォルトの名無しさん :2022/04/03(日) 20:20:01.30 ID:29whmEYr.net >>156 なるほど👀 それでも変わった感じですよねえ
159 :デフォルトの名無しさん :2022/04/09(土) 11:44:54.12 ID:P+77Yson.net >157 Method call syntax はスマートだから他言語でも流行ってほしいところ。 特にPythonは真っ先に採用して欲しいわ。
111 KB
新着レスの表示
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver.24052200
本文 スレッドタイトル 投稿者