F#」カテゴリーアーカイブ

俺のラズパイ2で.NET Core 2.0なF#が動いたよ

俺のラズパイ2で.NET Core 2.0が動くまで | Moonmile Solutions Blog http://www.moonmile.net/blog/archives/8732 では C# が動いたので、今度は F# で試してみましょう。 手順は、C# の時と一緒で、 Raspberry Pi2/3でRasbianを用意する。 PC上で、.NET Coreのプログラムを作る。 PCからRaspberry Piにデプロイする(アセンブリをコピーする) すれば ok です。コードが F# なので、デプロイするアセンブリに「FSharp.Core.dll」が含まれていれば、ああ F# で動いているね、ということになります。 F#なコンソールアプリを作る プログラム言語を -lang で指定して、コンソールアプリを作ります。 できあがったコードは、こんな感じ。皆さん、見慣れた F# … 続きを読む

カテゴリー: 開発, F#, RaspberryPi | コメントする

Scratch から Arduino を操作しよう、というわけで NetScrattino を作る

Scratch を使って Arduino を動かそうとすると http://scratchx.org/ を使うのがいいのだろうけど、どうも自分の環境ではうまく動かない。オフラインの Scratch 2.0 の場合、ファイルメニューをシフトを押しながら開くと「実験的なHTTP拡張を取り込み」というのが出て、適当なHTTPサーバーを作ると繋がるらしいことが分かった。 サーバーを作るのが手間といえば手間なんだけど(ScratchXの場合は、Chrome拡張をインストールすると、Chrome側にHTTPサーバーを立てる仕組みになっている)、一度作っておけば、Arduino 以外に接続するのも楽ではないかなと思って、作ってみることにする。.NET で作れば HttpListener があるので、何とかなるのではないかな、と。 Scrattino 2 | Yengawa Systems http:// … 続きを読む

カテゴリー: 開発, F#, Scratch | コメントする

F#でXamarin.Formsを使う

いつからできるようになったんだっけ? Petzold Book Blog – Writing Xamarin.Forms Apps in F# http://www.charlespetzold.com/blog/2015/10/Writing-Xamarin-Forms-Apps-in-FSharp.html なところなので、実は随分前からある。 で、Visual Studio for Mac の「Blank Forms App」で F# が選べるようになっていたので試してみる。ちなみに、Windows のほうの Visual Studio 2017 には F# のテンプレートがないので、Mac で作ったものを Windows 側にコピーしている。 テンプレートが少しおかしいらしく、Android のほうの Xamarin.Forms が入らない(入れようとしてエラーになって … 続きを読む

カテゴリー: 開発, F#, Xamarin | コメントする

アリスは無限にプラダから猫を取り出す(F#編)

アリスは無限にプラダから猫を取り出す | Moonmile Solutions Blog http://www.moonmile.net/blog/archives/8179 これをF#版に直してみる。 実は、GetCatsメソッドを末尾呼び出しにして、F#のほうは無限に猫を取り出せる…という風にやろうと思ったのだが、この方式だと lst に詰め込むときにスタックオーバーフローになってしまう。 最初は head::tail 方式で書いていたのだが、なんか面倒になって(ツリー構造だから)、外部で list を持っているのが問題かも。

カテゴリー: F# | コメントする

メソッドの後付けを python で考える

以前に、 後付け言語 post を考えてみる | Moonmile Solutions Blog http://www.moonmile.net/blog/archives/5866 というのを考えていたのだけど、実は pytohn でそれができることをつい最近知った。 和訳 なぜPythonのメソッド引数に明示的にselfと書くのか | TRIVIAL TECHNOLOGIES 4 @ats のイクメン日記 http://coreblog.org/ats/translation-of-why-explicit-self-has-to-stay/ Raspberry Pi を触っていると Python コードに触れる機会が多いはずなのだが、Windows IoT Core を乗せたり、mono + F# という組み合わせでやっているうちに遠ざかってしまった(苦笑)ので、全然書いたことがなか … 続きを読む

カテゴリー: 開発, F#, python | コメントする

俺のラズパイ3で.NET CoreなF#が動かないわけがない

と、思っていましたが、動きません orz. dotnet/coreclr: https://github.com/dotnet/coreclr/ dotnet/cli: https://github.com/dotnet/cli .NET Coreをビルドしようと思うと、 な感じで拒否られるし、じゃあ、dotnet コマンドだけでもビルドできないかと思うと、 な感じで、前回ビルド済みの dotnet コマンドを要求されるし、どうにもなりません。 Problem install .Net Core on Raspberry Pi Model B ・ Issue #140 ・ dotnet/core https://github.com/dotnet/core/issues/140 How to use dotnet cli in debian linux on arm. ・ Issue #3 … 続きを読む

カテゴリー: ASP.NET, F#, RaspberryPi | コメントする

F#でASP.NET CoreのWeb APIを作ろう(SQLite編)

F#でASP.NET CoreのWeb APIを作ろう | Moonmile Solutions Blog http://www.moonmile.net/blog/archives/7996 の続きで、データベースにSQLiteを使ってWeb APIを作成します。 .NET Core用のSQLite は NuGet で「”Microsoft.EntityFrameworkCore.Sqlite”」があるので、これを使えばokです。 C#の.NET CoreのWeb APIプロジェクトからコピーしたあとから、再スタート。 project.jsonの修正 – “includeFiles” にF#のファイルをひとつずつ追加(面倒だけど) – “dependencies” に4つの参照をを追加 &#8 … 続きを読む

カテゴリー: ASP.NET, F#, SQLite | コメントする

F#でASP.NET CoreのWeb APIを作ろう

なぜ、F#で作るのかはさておき、C#のWeb APIアプリをF#にコンバートしてみます。本当のところは、ASP.NET Core MVCのほうをF#に対応させてみたかったのですが、Razor構文がF#に(たぶん)対応していないので無理ってことで、ViewページのないWeb APIで試しています。まあ、F#の関数型なところがステートレスなHTTPプロトコルに合っているんじゃないか、常々思ってはいるのですが。 いわゆる、ASP.NET Core Web Application(.NET Core) をF#に直します。 単純なWebアプリのほうは、いくつかサンプルが見つかるのですが、Web APIのコンバートは見つからなかったので参考になると思います。先行きは、SQLiteを使って、データベースのアクセスまで作りたいところ。 Visual Studio Codeの準備 実は、F#の.NET Co … 続きを読む

カテゴリー: ASP.NET, F# | コメントする

LEGO Mindstorms EV3+MonoBrick+F# で倒立振子ロボット

F# Advent Calendar 2015 – connpass の 12日目です。 中身的には 倒立振子ロボットを MonoBrick で作成する(F#編) | Moonmile Solutions Blog の延長線上で、何故 F#(関数型言語)でロボット制御をやろうとするのか?ってのをつらつらと書いていきます。 C# 版は、EV3 + MonoBrick + C# なスライドを参照して貰うということで、計算のところを少し突っ込んで行きます。 物理方程式を解く 実は、制御工学を習ったことが無かったので知らなかったのですが、倒立振子ロボットのように「状態の変化に対して少しずつ対応していく」という方式は単純な線形の式で表せます。線形と非線形の違いは、直線近似とそれ以外の複雑な変化を解くという違いにもなりますが、ある意味で物理現象のような「とある時刻 t の状態から、少し異な … 続きを読む

カテゴリー: F# | コメントする

倒立振子ロボットを MonoBrick で作成する(F#編)

つらつらと、はじめての制御工学 を読んで、やっとこさ PID 制御のところを過ぎて講座12のボード線図のところに来たところですが、C#版をF#版に直します。F# なのだから、関数型っぽい式の作り方とか制御工学で使われている変数をそのまま流用するとかしたいところなのですが、そのあたりはまだ理解&コードの読み進めが足りず…ひとまず、C#からF#にコンバートして倒立振子できるところまでいきました。 コード moonmile/MonoBalancer https://github.com/moonmile/MonoBalancer ここの MonoBalancerF が F# のコードです。 Xamarin Studio で F# プロジェクトを作る MonoBrick を使う場合、Xamarin Stduio を使う方法と Visual Studio + WinSCP を使う方法の2種類がありま … 続きを読む

カテゴリー: EV3, F#, MonoBrick | コメントする