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
370
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
270
Renraku — the One Static Analysis Model to Rule Them All (iwst2017)
uko
0
140
Pharo Quality Engine: The Last Strokes (esug2017)
uko
0
100
The False False Positives of Static Analysis (sattose2017)
uko
0
95
Про що не говорять програмісти, про що мовчать науковці MK2 (ucu2016)
uko
1
130
Walls, Pillars and Beams: A 3D Decomposition of Quality Anomalies (vissoft2016)
uko
0
190
Stories About Renraku — the new Quality Model of Pharo (esug2016)
uko
0
300
When QualityAssistant Meets Pharo [Enforced Code Critiques Motivate More Valuable Rules] (iwst2016)
uko
0
210
Про що не говорять програмісти, про що мовчать науковці (ucu2015)
uko
1
98
Other Decks in Research
See All in Research
Weekly AI Agents News! 10月号 プロダクト/ニュースのアーカイブ
masatoto
1
150
国際会議ACL2024参加報告
chemical_tree
1
350
Weekly AI Agents News!
masatoto
26
35k
CoRL2024サーベイ
rpc
1
1.1k
言語処理学会30周年記念事業留学支援交流会@YANS2024:「学生のための短期留学」
a1da4
1
260
熊本から日本の都市交通政策を立て直す~「車1割削減、渋滞半減、公共交通2倍」の実現へ~@公共交通マーケティング研究会リスタートセミナー
trafficbrain
0
180
ミニ四駆AI用制御装置の事例紹介
aks3g
0
180
20240918 交通くまもとーく 未来の鉄道網編(こねくま)
trafficbrain
0
340
Weekly AI Agents News! 8月号 プロダクト/ニュースのアーカイブ
masatoto
1
210
大規模言語モデルのバイアス
yukinobaba
PRO
4
760
リモートワークにおけるパッシブ疲労
matsumoto_r
PRO
4
1.6k
第 2 部 11 章「大規模言語モデルの研究開発から実運用に向けて」に向けて / MLOps Book Chapter 11
upura
0
430
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.4k
Designing for Performance
lara
604
68k
4 Signs Your Business is Dying
shpigford
181
21k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
28
900
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
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