You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
はじめに こんにちは、データインテーグレーション部の平野です。 台風接近により、入社2日目にして15時半過ぎに会社を出て家からのリモートワーク中です。 まだ家でできる仕事がないため、ブログの執筆をしています。 …いえいえ、弊社ではブログ執筆は立派な業務ですから、ちゃんと仕事をしています! Nimという言語 皆様、Nimというプログラミング言語をご存知でしょうか? Nimはpython風構文でサクッと書くことができて、 コンパイルして出力される実行ファイルはC言語と同等の速度で動くと言われる言語です。 認知度は低いのですが、パフォーマンスの高さやコードの書き味の良さなど密かに人気があります。 ガベージコレクションもしてくれるので、C言語やC++は敷居が高くて・・・という人(私)にはぴったりな感じです。 CUIの文字列処理なんかだと本当にサクッと書くことができるので、 標準のLinuxコマンド
Python使いで『今後はデータビジネスの現場かも』って人、NimData/Arraymancerをさわってみておこう。Python機械学習Nimarraymancer創薬ダジャレ はじめに 本エントリーは、主には、python使いな人でデータビジネス界隈でのバッチ処理/ストリーム処理やIoTのエッジ端末側のことが気になっている人の流し読み向けポエムかと。 前提とする近未来像 IoT+AIな開発案件で、サーバー(クラウド)側での学習済モデルを迅速にフィールド展開(モバイル端末やIoTエッジ端末へのデプロイ)することがしばしば求められるようになっている状況。 #参考TensorFlow Liteのliteな話 IBM QやMS Q#など量子コンピューティングな界隈がざわついている年の瀬に地味な話だろうけど 、通信速度に制約ある限り、必要な話。今後の展開先としては、『自律的にふるまうドローン、
以下のコードをそれぞれちょいとベンチしてみました。 Nim import asynchttpserver, asyncdispatch const port = 8080 let server = newAsyncHttpServer(true, true) waitFor server.serve(Port(port), proc (req: Request) {.async.} = await req.respond( Http200, "Hello world", newHttpHeaders([("Content-Type", "text/plain")]) ) ) golang package main import ( "fmt" "net/http" ) func handler(w http.ResponseWriter, r *http.Request) { fmt.Fp
Nim言語の利用の幅を広げるため、GUIアプリケーションを作成してみます。 なぜNim ネーミング、HPの雰囲気、言語記述などが全体的に好き。 Go、Rustなどもちょこちょこ触りましたが、このへんの比較記事なども含めてNimいいなーと思っています。 Nimを実行するまで Windows:10 nim:0.18.0 MinGW:6.3.0 ここまでは通常のNimの開発環境です。こちらのページに従って簡単に構成できます。 https://nim-lang.org/install_windows.html GUIを作成する環境 使用するライブラリ:IUP NimでGUIを作成するのには、IUPというGUIライブラリを使用します。 このIUPはNimに限ったGUIライブラリではなく、もともとLuaなど、Cを中心としたビルド環境でマルチプラットフォームでネイティブGUIを開発するためのライブラリの
概要 なんとなくあるんだなーぐらいにしか感じていなかったnimbleについて、ビルドに関する部分を調べてテンプレート化してみました。 (2019/09/28追記) Nim-1.0.0に対応しました nimbleのプロジェクト管理機能について nimbleのタスクはいくつかあるのですが、プロジェクト管理機能は、以下の4つくらいです。 * nimble init 新規プロジェクト作成 * nimble build プロジェクトのビルド * nimble test テスト実行 * nimble install リリースビルド&~/.nimbleへのインストール nimble initによりカレントディレクトリに*.nimbleファイルのみが生成されます。 その後、ソースはsrc/フォルダ配下にするとか、実行モジュールはbin/フォルダに生成するなどの設定は、生成された*.nimbleファイルに記
概要 2018/09/10 VSCodeによるNimのデバッグを追加しました。VSCodeによるステップ実行ができます。 nimでのデバッグ・ステップ実行の手段は今のところ2種類あるようです。 デバッグオプションを指定して実行 KDevelopでnimプラグインを利用してデバッグ(おすすめ!!nim-0.14.0でも可能です) デバッグオプションで実行 以下のようなコマンドラインで実行すると、起動時にプロンプトモードとなります。 Embedded Nim Debugger 注意:Emedded Nim Debuggerは、もうメンテされていないようで、次のバージョンで使えるかどうかはなんとも言えないようです。 $nim c --run --debugger:on ref_basic.nim Hint: system [Processing] Hint: ref_basic [Process
# Nim import os import times import strutils proc fibonacci*(n: int64): int64 = if n <= 1'i64: 1'i64 else: fibonacci(n - 1'i64) + fibonacci(n - 2'i64) proc main() = let args = commandLineparams() let n = args[0].parseInt() echo "fibonacci($#) = $#" % [$n, $fibonacci(n.int64)] main() // C #include <stdint.h> #include <inttypes.h> #include <stdio.h> #include <stdlib.h> int64_t fibonacci(int64_t n) {
この記事は「Nim Advent Calendar 2017」の記事として登録させてもらっています。 NimはNimソースコードをC言語ソースへ変換するトランスコンパイラ言語です。これは普段C++を使っている人にとって非常に重要なことです。なぜなら、C++(C言語)が使える環境なら基本的にはどこでもNimを使うことができるからです*1。もちろん、普段C++を使っている環境でNimを使うにはメモリ管理やC++側との連携についてなど考慮すべきことはいろいろあると思いますが、やはりC言語のソースコードが生成されるというのは大きなメリットです。普段C++やC言語を使っている人が現実的な選択肢としてNimの利用を考えることができるわけですから。というわけで、この記事ではC++とNimの書き方の違い、機能の違いなどを紹介したいと思います。 Nimの言語機能についての詳細は公式の Nim Manual
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く