Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Scala Native
Search
yubessy
January 29, 2018
Programming
250
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Scala Native
社内勉強会用資料です
yubessy
January 29, 2018
More Decks by yubessy
See All by yubessy
DDIA (Designing Data-Intensive Applications) はいいぞ
yubessy
0
1.7k
Introduction to CircleCI
yubessy
1
150
Docker Hands-on
yubessy
0
140
Resource Polymorphism
yubessy
0
330
不動点コンビネータ?
yubessy
0
330
とりあえず機械学習したかった
yubessy
0
360
Type Erasure と Reflection のはなし
yubessy
1
520
量子暗号
yubessy
0
270
5分ちょいでわかった気になるラムダアーキテクチャ
yubessy
0
2.3k
Other Decks in Programming
See All in Programming
AIが生成したコードは読むべきか?抽象化設計とコードの品質保証 / abstraction-design-and-quality
minodriven
16
8.5k
はじめてのPLATEAU
nokonoko1203
1
350
Modernizing iOS Apps
seyfoyun
0
150
조합이폭발하는디자인시스템이걸눈으로도테스트하라고요
giljongyu
0
710
JIS keyboard support in Omarchy
lef237
0
180
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
1.2k
Vue.jsで作る空間解析アプリとCapacitorプラグインのData Bridge
hal_spidernight
1
160
そのデザイントークン、Flutterでも同じ見た目になりますか?
nakamizu
0
300
Next.js: The final boss of Web Performance
guaca
0
380
React Native経験者が Flutterを30⽇間触って驚いたこと
3saito
0
140
プロジェクトコードをキレイキレイしよう!暗黙的な参照を読み解く静的解析
ostk0069
0
200
當我們開始不讀 Code - AI Agent 時代,Code Review 與 Clean Code 還剩下什麼?
jame2408
1
360
Featured
See All Featured
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
2
390
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.9k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
290
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
660
Discover your Explorer Soul
emna__ayadi
2
1.3k
Building Applications with DynamoDB
mza
96
7.3k
New Earth Scene 8
popppiees
4
2.8k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
290
Measuring & Analyzing Core Web Vitals
bluesmoon
9
1.1k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
1
300
Darren the Foodie - Storyboard
khoart
PRO
4
4.1k
Transcript
Scala Native @yubessy 0x64 Reboot #10 " "
: : ( ) x -> o +
Scala Native Scala Scala JVM -> Java Scala Native ->
Java
LLVM (?) Scala Native Scala SBT
$ sbt new scala-native/scala-native.g8 object Main { def main(args: Array[String]):
Unit = println("Hello, world!") } $ sbt run Hello, World!
LLVM https://github.com/okapies/scala-native-example bonacci
(rec) def fib(n: Long): Long = n match { case
0 => 0 case 1 => 1 case _ => fib(n - 2) + fib(n - 1) }
(tail rec) def fibImpl(n: Long, a: Long, b: Long): Long
= n match { case 0 => a case _ => fibImpl(n - 1, b, a + b) } def fib(n: Long): Long = { fibImpl(n, 0, 1) }
(mut rec) def fib(n: Long): Long = n match {
case 0 => 0 case _ => fibS(n - 1) } def fibS(n: Long): Long = n match { case 0 => 1 case _ => fib(n - 1) + fibS(n - 1) }
(μs) rec tail rec mut rec JAR 74801223 262 67248872
Native -O0 168336051 4 164421481 Native -O2 77311107 4 34026913 Native -O0 ( ) rec, mute rec JAR . tail rec Native -O2 ( ) mute rec JAR
Scala Native LLVM