Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Salikh Zakirov

dblp:66/8636 · DBLP profile ↗
← Back
2ranked-venue papers
1as first author
0since 2021 · last 2010
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 2 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
1 paper
Programming languages and type systems · 61% Requirements engineering and software design · 30% Compilers and program optimization · 9%

Topics — the 4 heaviest of 4, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Programming languages and type systems
aspect-oriented programming
0.112010
Mostly modular compilation of crosscutting concerns by contextual predicate dispatch · OOPSLA 2010
Requirements engineering and software design
modularity
0.112010
Mostly modular compilation of crosscutting concerns by contextual predicate dispatch · OOPSLA 2010
Programming languages and type systems
type systems
0.112010
Mostly modular compilation of crosscutting concerns by contextual predicate dispatch · OOPSLA 2010
Compilers and program optimization › compiler toolchain
separate compilation
0.012010
Mostly modular compilation of crosscutting concerns by contextual predicate dispatch · OOPSLA 2010

Methods — techniques the papers use, named apart from their topics

contextual predicate dispatch · 0.1
YearPublicationVenuePosition
2010 Optimizing dynamic dispatch with fine-grained state tracking
abstract
Dynamic mixin is a construct available in Ruby and other dynamic languages. It can be used as a base to implement a range of programming paradigms, such as dynamic aspect-oriented programming and context-oriented programming. However, the performance characteristics of current implementation of dynamic mixin in Ruby leaves much to be desired under condition of frequent dynamic mixin operations, global method cache and inline cache misses incur significant overhead. In this work we implemented fine-grained state tracking for CRuby 1. and were able to improve performance by more than six times on the microbenchmark exercising extreme case flowing 4 times to global method cache clearing, 28% to fine-grained state tracking and further 12% to inline cache miss elimination by caching alternating states. We demonstrated a small application using dynamic mixins that gets 48% improvement in performance from our techniques. We also implemented in C a more general delegation object models and proposed an algorithm of thread-local caching, which allows to reduce inline cache misses while permitting thread-local delegation changes.
Salikh Zakirov, Shigeru Chiba, Etsuya Shibayama
DLS1
2010 Mostly modular compilation of crosscutting concerns by contextual predicate dispatch
abstract
The modularity of aspect-oriented programming (AOP) has been a controversial issue. To investigate this issue compared with object-oriented programming (OOP), we propose a simple language providing AOP mechanisms, which are enhanced traditional OOP mechanisms. We also present its formal system and then show that programs in this language can be only mostly modularly (i.e. separately) typechecked and compiled.We mention a source of this unmodularity and discuss whether or not it is appropriate to claim that AOP breaks modularity compared with OOP.
Shigeru Chiba, Atsushi Igarashi, Salikh Zakirov
OOPSLA3