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
400
プログラミング言語F#を学びはじめました
プログラミング言語 F# をフロントエンドに使う話をします。
Fable というコンパイラを使う事で色々使える話や、そもそも F# とは何かなど、流行るといいなと思って紹介します。
biwakonbu
December 08, 2023
Tweet
Share
More Decks by biwakonbu
See All by biwakonbu
Django を使い続ける理由
biwakonbu
0
190
爆速なPythonフレームワーク
biwakonbu
0
190
HTMX触ってみた
biwakonbu
0
210
スタートアップの技術顧問を3年間続けて発生した事と気付き
biwakonbu
0
490
プログラミングを体系的に学べる言語 Python を推したい
biwakonbu
0
160
開発の生産性を高める事を考える
biwakonbu
0
200
「プログラミングを習得する」を考えてみた
biwakonbu
0
110
Python の型事情について
biwakonbu
0
140
ESLint使ってますか?
biwakonbu
0
140
Other Decks in Technology
See All in Technology
Agent Skills 入門
puku0x
0
160
今こそ学びたいKubernetesネットワーク ~CNIが繋ぐNWとプラットフォームの「フラッと」な対話
logica0419
9
730
バイブコーディングで作ったものを紹介
tatsuya1970
0
120
Oracle Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
3
1.4k
個人的3D Gaussian Splattingニュースをご紹介 / sharing 3d gaussian splatting news
drumath2237
0
220
【Oracle Cloud ウェビナー】[Oracle AI Database + AWS] Oracle Database@AWSで広がるクラウドの新たな選択肢とAI時代のデータ戦略
oracle4engineer
PRO
2
230
LLMOpsのこれまでとこれからを学ぶ
nsakki55
2
580
衛星画像即時マッピングサービスの実現に向けて
lehupa
1
250
ZOZO.swift #2
zozotech
PRO
0
260
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
5
270
AWS Network Firewall Proxyを触ってみた
nagisa53
1
270
AIエージェントを開発しよう!-AgentCore活用の勘所-
yukiogawa
0
220
Featured
See All Featured
30 Presentation Tips
portentint
PRO
1
240
Making Projects Easy
brettharned
120
6.6k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
440
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
460
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.1k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.1k
How to make the Groovebox
asonas
2
2k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.7k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
280
Building a Scalable Design System with Sketch
lauravandoore
463
34k
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. 大阪プログラミングコミュニティ始めました エンジニアのための学習・交流を行うコミュニティスペースを作っています 勉強したい人や人と繋がりたい人に向けてサービス提供していきます
おわり