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
Crystal - Ruby 風シンタックスな静的言語の紹介 - (LT 版)
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Pine Mizune
July 15, 2015
Programming
94
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Crystal - Ruby 風シンタックスな静的言語の紹介 - (LT 版)
渋谷.rb[:20150715] で発表した資料です。
https://shibuyarb.doorkeeper.jp/events/28109
Pine Mizune
July 15, 2015
More Decks by Pine Mizune
See All by Pine Mizune
多言語対応と絵文字ジェネレーター / i18n of Emoji Generator
pine
0
880
C++ 製グラフィックライブラリ Skia の紹介 / Introduction to the graphics library Skia written by C++
pine
0
2k
asyncio + aiohttp で作るウェブサービス / How to develop a web service with asyncio and aiohttp
pine
0
700
Lerna による明示的疎結合アーキテクチャ
pine
1
680
CircleCI 2.0 x JavaScript
pine
3
570
Perl 卒業式
pine
0
370
Android Studio の気になる warnings を抑制する方法まとめ
pine
0
530
Emoji Generator meets Browser Extensions
pine
1
3k
近年の OSS 開発における CI 選択のベストプラクティス
pine
3
4.5k
Other Decks in Programming
See All in Programming
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
1
220
Laravel Boostに学ぶ、AIにPHPを書かせる技術 〜OSSの実装から蒸留するエージェント制御の王道〜
kentaroutakeda
3
530
「正の参照」と 「負の導出」で組む ハーネスエンジニアリング
cottpan
1
150
act1-costs.pdf
sumedhbala
0
250
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
140
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
390
【やさしく解説 設計編 #1】「ドメイン駆動」と「実装駆動」ってなに? 〜設計の考え方を、たとえ話で学ぼう〜
panda728
PRO
1
130
The Bowling Game- From Imperative to Functional Programming - Part 1
philipschwarz
PRO
0
340
生成AI導入の「期待外れ」を乗り越える ー 開発フロー改革が目指す、真の組織変革
starfish719
0
2.2k
5分で問診!Composer セキュリティ健康診断
codmoninc
0
590
『コードを書く以外の』エンジニアリング〜課金基盤移行プロジェクト推進のためのTips4選
yuriko1211
0
540
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
3k
Featured
See All Featured
Designing for Timeless Needs
cassininazir
1
400
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
72
40k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Context Engineering - Making Every Token Count
addyosmani
9
1k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.4k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
340
Statistics for Hackers
jakevdp
799
230k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
120k
Side Projects
sachag
455
43k
Making the Leap to Tech Lead
cromwellryan
135
10k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
280
Transcript
Crystal Ruby 風シンタックスな静的言語の紹介 水音氷音 Mobile Factory, Inc
あなたはだれ? • Mobile Factory, Inc. • ソーシャルアプリつくってます –Swift / Perl
Crystal とは? 3 Ruby ◦ 高い表現力 ◦ 高い生産性 × 遅い
C 言語 ◦ 非常に高速 × 表現力が乏しい × 生産性が低い Crystal 同時に実現
Crystal のコンセプト 4 1. Ruby 風シンタックス 2. 型推論による静的型付け 3. C
言語との容易なバインディング 4. コンパイル時評価によるコード生成 5. 高速なネイティブコード出力
Ruby syntax 100.times do |x| if x % 15 ==
0 puts ”fizzbuzz” elsif x % 3 == 0 puts ”fizz” elsif x % 5 == 0 puts “baz” else puts x end end 5 Crystal syntax 100.times do |x| if x % 15 == 0 puts ”fizzbuzz” elsif x % 3 == 0 puts ”fizz” elsif x % 5 == 0 puts “baz” else puts x end end
Crystal syntax ≒ Ruby syntax 6 • ほとんど同じだって Matz も言ってる!!
出展: https://twitter.com/yukihiro_matz/status/610842781091672064
Crystal の使い所 7 • 速度が求められる場所 • C / C++ からの段階的移植
• Ruby エンジニアが多い環境 – 新しく Golang 覚えるより...
• セルフホスティングコンパイラ – ある仕様 FIX & 安定動作するフェーズ • 最新版: v0.7.4
(2015/06/24) • Travis CI 公式サポート (2015/06/30~) 8 開発進捗
• 東京 Crystal 勉強会 #1 in 五反田 • 会場: Mobile
Factory, Inc • http://j.mp/crystal-jp ... connpass • http://j.mp/crystal-jp-slack ... Slack 9 [宣伝] Crystal 勉強会開催決定
Fin.