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
FAST Resolution (benevol13)
Search
Yuriy Tymchuk
December 17, 2013
Research
0
420
FAST Resolution (benevol13)
Presentation of FAST generic symbol resolution at BENEVOL 2013 workshop
Yuriy Tymchuk
December 17, 2013
Tweet
Share
More Decks by Yuriy Tymchuk
See All by Yuriy Tymchuk
JIT Feedback — what Experienced Developers like about Static Analysis (icpc2018)
uko
0
320
Renraku — the One Static Analysis Model to Rule Them All (iwst2017)
uko
0
170
Pharo Quality Engine: The Last Strokes (esug2017)
uko
0
120
The False False Positives of Static Analysis (sattose2017)
uko
0
120
Про що не говорять програмісти, про що мовчать науковці MK2 (ucu2016)
uko
1
160
Walls, Pillars and Beams: A 3D Decomposition of Quality Anomalies (vissoft2016)
uko
0
220
Stories About Renraku — the new Quality Model of Pharo (esug2016)
uko
0
340
When QualityAssistant Meets Pharo [Enforced Code Critiques Motivate More Valuable Rules] (iwst2016)
uko
0
270
Про що не говорять програмісти, про що мовчать науковці (ucu2015)
uko
1
130
Other Decks in Research
See All in Research
Language Models Are Implicitly Continuous
eumesy
PRO
0
280
Nullspace MPC
mizuhoaoki
1
150
電通総研の生成AI・エージェントの取り組みエンジニアリング業務向けAI活用事例紹介
isidaitc
1
1k
EarthSynth: Generating Informative Earth Observation with Diffusion Models
satai
3
360
Remote sensing × Multi-modal meta survey
satai
4
430
ip71_contraflow_reconfiguration
stkmsd
0
110
Pythonでジオを使い倒そう! 〜それとFOSS4G Hiroshima 2026のご紹介を少し〜
wata909
0
710
RHO-1: Not All Tokens Are What You Need
sansan_randd
1
190
2021年度-基盤研究B-研究計画調書
trycycle
PRO
0
330
生成的推薦の人気バイアスの分析:暗記の観点から / JSAI2025
upura
0
280
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
0
190
CoRL2025速報
rpc
1
1.7k
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
185
22k
Navigating Team Friction
lara
189
15k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Why Our Code Smells
bkeepers
PRO
339
57k
A Tale of Four Properties
chriscoyier
160
23k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
YesSQL, Process and Tooling at Scale
rocio
173
14k
How GitHub (no longer) Works
holman
315
140k
Gamification - CAS2011
davidbonilla
81
5.5k
Facilitating Awesome Meetings
lara
56
6.6k
Transcript
Generic Name Resolution with Metamodels Yuriy Tymchuk, Benjamin Arezki, Anne
Etien, Nicolas Anquetil and Stéphane Ducasse
Software Assessment Development Assessment
Software Assessment
Modelling source code #middleOf:and: b a sum ^st st :=
sum + a b / sum 2 middleOf: a and: b | sum | sum := a + b. ^ sum / 2
Resolving symbols #middleOf:and: b a sum ^st st := sum
+ a b / sum 2 a b sum
Moose Toolchain www.moosetechnology.org
FAMIX Metamodel
! "# # # FAMIX
Core metamodel
!"#$ %!"#$ %&!"#$ % %& !"#$ !' !' & # $ $ ( % ) *" ) #$+, ) #$ ! ) #$!
Smalltalk metamodel
! " # # $ ! %&' $%( ! $ ) $ "( ) *+ ) !) *+ !) %! !) % % ) % , ' ) % %
Java (sub)Metamodel
! " #$%&' ( &' ( &' #$% ( ( &' ! &' &' " " & ! ' ! ) * + $( #$% ' , &' - , &' ./ , &' $ !, &' $ ! ', !, &' ! 0 ' - - ' $( . ! ( . ! . $ ( ! # $& !' & "+ "+ #$%
Resolving a symbol ⚜
Lookup Symbol Method scope Class scope Superclass scope Package scope
Select Symbol private? public? protected?
Case studies Pharo (smalltalk) Java (subset) Cobol
None