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
Contributing to Crystal
Search
Linda_pp
January 21, 2016
Programming
540
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Contributing to Crystal
Contributing to being-developed language is so fun!
Linda_pp
January 21, 2016
More Decks by Linda_pp
See All by Linda_pp
actionlint の Linter 設計
rhysd
7
6.7k
ripgrep をライブラリとして使う
rhysd
0
790
port-monolith-to-wasm-for-chrome-extension
rhysd
0
580
Fuzzing Rust Text Editor
rhysd
1
3.1k
Vim compiled to WebAssembly
rhysd
5
2.4k
about-neovim-0.4.0-floating-window
rhysd
3
2.4k
reply.vim
rhysd
0
1.4k
Vim ported to WebAssembly (VimConf 2018)
rhysd
4
3.6k
go-selfupdate-github で ツールを自己アップデートする
rhysd
5
4.7k
Other Decks in Programming
See All in Programming
SREの越境 / SRE Collaboration
y0hgi
2
290
テストを司るデーモンに会いに行く 〜隔離した仮想マシンでテストを通すまで〜
h1d3mun3
1
600
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Rails World 2026, Austin, Texas
marcoroth
0
140
Webの地図
yosuke_furukawa
PRO
6
5k
GitHubハンズオン講座 — 実務レベルのチーム開発のフローを身につけよう
junhat6
0
110
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
1.1k
Are APIs Still Relevant in the AI Era?
soyuka
0
390
すこし踏み込む CancellationToken
htkym
2
1.6k
TiDB Cloudのカスタムコントローラーによるオートスケール対応
takaidohigasi
0
140
AI Agent時代のリアーキテクチャ戦略と実践
hokaccha
9
5.3k
AgentCore CLI で進化した AWS での AI エージェントの作り方 : 必要な機能を必要な時に
icoxfog417
PRO
4
410
AHC070解法紹介
eijirou
0
150
Featured
See All Featured
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
450
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
Building Adaptive Systems
keathley
44
3.2k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Producing Creativity
orderedlist
PRO
348
41k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
Deep Space Network (abreviated)
tonyrice
0
350
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
SEO for Brand Visibility & Recognition
aleyda
0
4.8k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
Transcript
Contributing to Crystal LT at ౦ژ Crystal ษڧձ #3 @Linda_pp
@rhysd
is:pr author:rhysd repo:manastech/crystal • Random::Mt19937 ࣮ • Array#transpose ࣮ •
ͦͷଞɼࡉ͔͍मਖ਼վળ • vim-crystal
Crystal ͱ… • ݱࡏ 0.10.2 Ͱ։ൃதͷݴޠ • ഁյతมߋ͕ೖΓ·͘Γɼ·ͩ production ready
Ͱͳ͍ʢ #1824 ʹͯ·ͨେ͖͍ม ߋ͕དྷͦ͏ʣ • ٯʹݴ͏ͱഁյతมߋΛ͏ఏҊͰൺֱ త؆୯ʹऔΓࠐ·ΕΔঢ়ଶ
ഁյతมߋͰൺֱత؆୯ʹ औΓࠐ·ΕΔ ޓੑʹनΘΕͣʹվળΛߟ͑ΒΕΔɽϓϧ ϦΫ࣌มߋͷྑ͠ѱ͠ʹूதͯٞ͠Ͱ͖ Δ ݴޠॲཧܥ͍͡Γ͍ͨʹͱָ͍ͬͯ͠ʂ
✌('ω'✌ )ࡾ✌('ω')✌ࡾ( ✌'ω')✌
গ͚ͩ͠ Crystal ͷίϯύΠϥʹ ͍ͭͯ • Crystal Ͱॻ͔Ε͍ͯΔʢself hostedʣ • AST
ͷఆٛʢ·ͣσʔλߏΛΔ͖ʣɹɹɹɹɹɹɹ crystal/src/compiler/crystal/semantic/ast.cr • LexerɼParser ͱͯૉͳ࣮ͰಡΈ͍͢ɽߏจΛՃɾ मਖ਼͍ͨ͠ͳΒ͜͜Λ͍͡Δɹɹɹɹɹɹɹɹɹɹɹɹɹ crystal/src/compiler/crystal/syntax • ίʔυੜ LLVM ͷ C binding Λݺͼग़͍ͯͬͯ͠Δ ʢLLVM IR Builder)ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ crystal/src/compiler/crystal/codegen
Crystal ʹ contribute ͢Δํ๏ • ҰൠతͳϦϙδτϦͱಉ͡ • खݩͰमਖ਼ͯ͠ spec Λ࣮ߦͯ͠ແ͍ࣄΛ
֬ೝ͢Δ • ϓϧϦΫΛॻ͘ • େମ @asterite ͞ΜͷҰଘͰϚʔδʢυΩϡϝ ϯτमਖ਼؆୯ͳमਖ਼ͳΒ @jhass ͞Μʣ
ҙʢmakeʣ • make (crystal/bin/crystal) ίϯύΠϧͨ͠ίϯύΠ ϥͰίϯύΠϧ͢Δ • ↓Ͳ͕͜·͍͔͔ͣΓ·͔͢ʁ 1. ίϯύΠϥͷίʔυΛ͍͡Δ
2. make ͰίϯύΠϧ 3. 1. ͷมߋ͕·͔ͣͬͨͷͰमਖ਼͢Δ 4. make ͰίϯύΠϧ
ҙʢmakeʣ 1. ίϯύΠϥͷίʔυΛ͍͡Δ 2. make ͰίϯύΠϧ ← ෆదͳίϯύΠϥAΛੜ ʣ 3.
1. ͷมߋ͕·͔ͣͬͨͷͰमਖ਼͢Δ 4. make ͰίϯύΠϧ ← ෆదͳίϯύΠϥ A Λ ͬͯ৽ͨʹίϯύΠϥ B Λੜ • ݁Ռͱͯ͠ग़དྷ্͕ͬͨίϯύΠϥ B ਖ਼͠ ͘ಈ͔ͳ͍Մೳੑ͕͋Δ
ͳΔ΄ͲΘ͔ΒΜ ϓϧϦΫϒϥϯνʹ push ͢Δલʹɼͻͱ· ͣ make clean ͔ͯ͠Β make ͯ͠ςετ͕
௨Δ͔֬ೝ͢Ε OK
·ͱΊ • ݴޠॲཧܥ͍͡Δͷָ͍͠ • Ͱ…ʢϋʔυϧ͕ʣ͓ߴ͍ΜͰ͠ΐ͏ʁ • Crystal ͳΒߴ͘ͳ͍ • Crystal
ͳΒഁյతมߋͰؾܰʹϓϧϦΫͰ͖Δ • ͪΖΜυΩϡϝϯτमਖ਼ͳͲܴ͞ΕΔ by ɹɹɹ@Linda_pp