Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
プログラミング言語F#を学びはじめました
Search
biwakonbu
December 08, 2023
Technology
0
350
プログラミング言語F#を学びはじめました
プログラミング言語 F# をフロントエンドに使う話をします。
Fable というコンパイラを使う事で色々使える話や、そもそも F# とは何かなど、流行るといいなと思って紹介します。
biwakonbu
December 08, 2023
Tweet
Share
More Decks by biwakonbu
See All by biwakonbu
Django を使い続ける理由
biwakonbu
0
170
爆速なPythonフレームワーク
biwakonbu
0
180
HTMX触ってみた
biwakonbu
0
200
スタートアップの技術顧問を3年間続けて発生した事と気付き
biwakonbu
0
450
プログラミングを体系的に学べる言語 Python を推したい
biwakonbu
0
140
開発の生産性を高める事を考える
biwakonbu
0
160
「プログラミングを習得する」を考えてみた
biwakonbu
0
91
Python の型事情について
biwakonbu
0
120
ESLint使ってますか?
biwakonbu
0
120
Other Decks in Technology
See All in Technology
生成AIを安心して活用するために──「情報セキュリティガイドライン」策定とポイント
gree_tech
PRO
1
350
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.2k
Linux カーネルが支えるコンテナの仕組み / LF Japan Community Days 2025 Osaka
tenforward
1
120
現場データから見える、開発生産性の変化コード生成AI導入・運用のリアル〜 / Changes in Development Productivity and Operational Challenges Following the Introduction of Code Generation AI
nttcom
1
460
MCP ✖️ Apps SDKを触ってみた
hisuzuya
0
330
CREが作る自己解決サイクルSlackワークフローに組み込んだAIによる社内ヘルプデスク改革 #cre_meetup
bengo4com
0
310
OpenTelemetry が拡げる Gemini CLI の可観測性
phaya72
2
2.1k
OSSで50の競合と戦うためにやったこと
yamadashy
3
960
[2025年10月版] Databricks Data + AI Boot Camp
databricksjapan
1
250
AIとともに歩んでいくデザイナーの役割の変化
lycorptech_jp
PRO
0
840
Digitization部 紹介資料
sansan33
PRO
1
5.7k
FinOps について (ちょっと) 本気出して考えてみた
skmkzyk
0
210
Featured
See All Featured
Bash Introduction
62gerente
615
210k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
Documentation Writing (for coders)
carmenintech
75
5.1k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Speed Design
sergeychernyshev
32
1.2k
Visualization
eitanlees
149
16k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
Transcript
プログラミング言語F#を学びはじめました 株式会社coroutine 東川 諒央
自己紹介 1 あれ、でもフロントと関係ある? 3 F#のよさそうなところ 4 F#とは? 2 5 F#の難点
6 まとめ
自己紹介 1 株式会社 coroutine 東川 諒央 @biwakonbu 大学教員 ゲームバックエンド フリーランス
経歴 Go Python 実績言語 Ruby 技術顧問 エンジニア教育 業務 設計 プログラミング インフラ etc… Rust Haskell TypeScript 趣味言語 Lisp F#
> F# とは?
F#とは? 2
F#とは? 2 ❏ Microsoft Research が開発したマルチパラダイム言語 ❏ .NET ランタイム上で動作する VM
型言語 ❏ .NET というと Windows のイメージ ❏ 今は OSS でマルチプラットフォームな VM として開発されている ❏ Windows 専用の環境は WPF として分けられている ❏ Windows / Linux / Mac の上で開発・動作可能 ❏ 各環境向けにバイナリを出力できる ❏ Ocaml の影響を受けた言語で構文は非常に似ている ❏ Haskell も Ocaml の系統 ❏ つまり Haskell と F# は似ている
> あれ、でもフロントと関係ある?
あれ、でもフロントと関係ある? 3 ❏ ある ❏ F# には Fable というコンパイラが存在する ❏
元々 JavaScript をターゲットにしたコンパイラ ❏ Fable 4 からは beta を含め 4 言語をターゲットに stable stable beta beta
あれ、でもフロントと関係ある? 3 ❏ JS, TS がターゲットの場合はブラウザ API の利用 npm の利用はもちろん可能
❏ React を使う F# 用ライブラリもある ❏ Feliz, UI ライブラリも色々ある
> F# のよさそうなところ
F#のよさそうなところ 4 ❏ 筋の良いプログラミング言語がでてきても流行らない理由を悉くつぶす言語 F# ❏ スマホアプリ開発 (.NET MAUI) ❏
WEB 開発 (SAFE Stack) ❏ Saturn (WEB アプリケーションフレームワーク ) ❏ Azure (クラウドインフラ) ❏ Fable (JS コンパイラ) ❏ Elmish (UI フレームワーク) ❏ バイナリ出力可能 ❏ つまり何の用途でも現実的で可
F#のよさそうなところ 4 ❏ 忘れてはいけない、マイクロソフト社製言語 ❏ 大量のドキュメント ❏ .NET も F#
も情報だらけ ❏ Azure を使ったデプロイの話もある ❏ 正直 C# の出来がよい以外に弱点がない
F#のよさそうなところ 4 ❏ 言語機能が強力なのに、構文が難解ではない ❏ パターンマッチの一例 ❏ TypeScript だとこういう事が上手くできない...
F#のよさそうなところ 4 ❏ TypeScript で存在しない型のバリエーションが使える
> 難点も探してみました
F#の難点 5 ❏ 日本語の書籍が無さすぎる... ❏ 洋書を頑張ってよむとか (今は Kindle も翻訳できるけど割と大変) ❏
日本の事例がなさすぎる (ブログとかもほぼない) ❏ TypeScript と比較しても Star 数が 25 倍くらい
まとめ 6 ❏ F# というまだあまり広まっていない言語がおすすめ ❏ と思いきや最近 でも実は F# 良いのでは?と評判になりつつある (偏ってます)
❏ Ocaml が好きな人に人気で、言語オタクの間では非常に言語の出来が褒められている ❏ 言語として完成度が高いものはエコシステムが未熟だったりするが .NET 採用のため最強 ❏ 登場時期は Rust と同じくらいでそろそろ火付けがあれば一発ありえそう (主観) ❏ これだけ道具が揃ってるのに流行ってないのは流行らせる側にまわれるチャンス ❏ どんどん触ってどんどん情報発信がおすすめ ❏ WEB バックエンド、フロント、スマホ & デスクトップ、AI、バイナリ生成対応 ❏ MS が推してるだけあってこれ一個で全部できるを狙ってると言えるレベル ❏ みんなで F# 勉強しましょう
P.S. 大阪プログラミングコミュニティ始めました エンジニアのための学習・交流を行うコミュニティスペースを作っています 勉強したい人や人と繋がりたい人に向けてサービス提供していきます 色々なご相談にも対応します ・就活・キャリアアップ相談 ・業務に関する相談 ・個人的な学習の相談 大阪でのエンジニアコミュニティを応援します ・勉強会場として無料で場所貸し
・むしろ開催応援のギフト券なども考えています ・長く続く開発者コミュニティ作りを実行します
P.S. 大阪プログラミングコミュニティ始めました エンジニアのための学習・交流を行うコミュニティスペースを作っています 勉強したい人や人と繋がりたい人に向けてサービス提供していきます
おわり