Happy My Life

日常とか技術とか

F#はじめました

1年に1つ新しい言語をはじめると良いと、とある本に書いてあったので、今年はF#に手を伸ばしてみた。

これまでScalaHaskellなど、いくつかの関数型言語の勉強を始めていたのだが、学習だけでなく解決すべく手頃な問題がなかったため、勉強するモチベーションが続かなかった。

そこで新しくMSから登場したF#に手を出した次第。Windowsアプリだと、個人的に手頃な問題を抱えていたりする。現時点で問題かなーと思っているのは、chutil1の今後について。

chutilの今と今後

このアプリは、ここ1年半ほどバージョンアップしていない。実際は仕事の合間に要望があった機能追加していたのだが、デバッグや公表するタイミングを失い、放置してしまって今に至るという状況。

このアプリは個人的にもよく利用する(もともと自分が欲しくて作成した)のだが、つかっているうちに問題点が見えてきた。あと、今のアプリの状態を元にバージョンアップしても、バージョンアップの魅力がないだろう、という気持ちもある(ゴテゴテと機能を追加しても使いづらいだけだし)

問題点かなーとおもっている点は、以下の2つ。

  • 起動時の待ち時間。ぶっちゃけ長い。
  • メニューなどの操作性

まあ、これらの解決策の方針もすでに見えている。ただ、これらの問題を解決しようとすると

  • 今のコードをイジルよりイチから作りなおした方が早い
  • せっかくだし別言語で作るか
  • ではF#で

という考えに至った次第。F#の勉強しつつ、今までよりよいものを作っていこうかと。夏ごろ完成を目指して進めて行く予定。

F#のテキスト

新しい言語をはじめるには、まずテキストから。ということで、実践F#を購入した。

実践 F# 関数型プログラミング入門
荒井 省三: いげ太
技術評論社
売り上げランキング: 61684

少しずつ進めているが、F#の文法というより、関数型言語特有の考え方の説明が多いので、おいらのような関数型言語の勉強で挫折した人間にはぴったり(笑)

この本で知ったことを、少しずつでもblogに反映できればいいかな、と。


  1. iTunesの重複曲をちゃんと判別して削除するアプリ