Filters








238 Hits in 7.5 sec

Towards performance measurements for the Java Virtual Machine's invokedynamic

Chanwit Kaewkasi
2010 Virtual Machines and Intermediate Languages on - VMIL '10  
Surprisingly, benchmarking results show that the invokedynamic mode with direct method handles on the server virtual machine is just 2-5 times slower than native Java invocations, except the Monte Carlo  ...  It describes binary translation techniques to prepare benchmarks to run on the invokedynamic mode of the prototype, resulting in the invokedynamic version of the SciMark 2.0 suite.  ...  After refactoring, the first suite of benchmark programs is recompiled with the binary translator to be the second suite. All invocation instructions are replaced by invokedynamic.  ... 
doi:10.1145/1941054.1941057 fatcat:gfao4fhalrfvllfvdkf6da5xoi

Always-available static and dynamic feedback

Michael Bayne, Richard Cook, Michael D. Ernst
2011 Proceeding of the 33rd international conference on Software engineering - ICSE '11  
If they opt instead to use a dynamic language, they forgo the many benefits of static typing, including machine-checked documentation, improved correctness and reliability, tool support (such as for refactoring  ...  In case studies, DuctileJ conferred benefits both during prototyping and during the evolution of existing code.  ...  The type system replaces type equality with type consistency, which permits coercions that add and remove instances of ? (their name for Dynamic).  ... 
doi:10.1145/1985793.1985864 dblp:conf/icse/BayneCE11 fatcat:v3jy4jas5bckvnth2a3jsewqdi

Recommending rename refactorings

Andreas Thies, Christian Roth
2010 Proceedings of the 2nd International Workshop on Recommendation Systems for Software Engineering - RSSE '10  
To explore the feasibility of our approach, we implemented a tool recommending rename refactorings to harmonize variable names based on an analysis of assignments and static type information.  ...  As a first approach, we focus on assignments to discover possible inconsistency of naming, exploiting that a variable assigned to another likely points to same objects and, if declared with the same type  ...  For that reason we -preliminary -bypass method names by replacing them with the returned expression.  ... 
doi:10.1145/1808920.1808921 dblp:conf/icse/ThiesR10 fatcat:tru4vbsosjg3pnvxyccfeyazaq

The ruby intermediate language

Michael Furr, Jong-hoon (David) An, Jeffrey S. Foster, Michael Hicks
2009 Proceedings of the 5th symposium on Dynamic languages - DLS '09  
We hope that RIL's features will enable others to more easily build analysis tools for Ruby, and that our design will inspire the creation of similar frameworks for other dynamic languages.  ...  We demonstrate the usefulness of RIL by presenting a simple static analysis and source code transformation to eliminate null pointer errors in Ruby programs.  ...  Putting this all together, the actual visitor pattern matching case for transforming a method call is Here we construct the new code as node and instruct the visitor to replace the existing node with this  ... 
doi:10.1145/1640134.1640148 dblp:conf/dls/FurrAFH09 fatcat:vtxmv5po7jcdhe6om2d77obk64

Evolution of dynamic feature usage in PHP

Mark Hills
2015 2015 IEEE 22nd International Conference on Software Analysis, Evolution, and Reengineering (SANER)  
We believe the results of this analysis provide useful insights for researchers and tool developers into the evolving use of dynamic features in real PHP programs.  ...  In this paper we examine how usage of these features has changed over time, looking at usage trends for three categories of dynamic features across the release histories of two popular open-source PHP  ...  They discovered that these features are generally used in ways that are almost static, allowing them to replace many uses of dynamic features with static variants that are amenable to static type inference  ... 
doi:10.1109/saner.2015.7081870 dblp:conf/wcre/000115 fatcat:7xcbznfnurffvbfg7exk62bqgi

LDA Mallet implementation on Design Discussions on StackOverflow [article]

Rohith Pudari, Roshan Lasrado, Dave Cheng
2020 Zenodo  
We replicate the methods used by a previous study (Bangash et al., 2019) for the domain of Software Design.  ...  First, we identify the list of design-related topics using the Latent Dirichlet Allocation (LDA) algorithm for topic modelling and utilize inductive coding to label the topics.  ...  com/questions/40795754/how- to-use-the-memento-design- pattern-to-save-the-state-of- multiple-objects Separation of Concerns Design 1 no theoretical long term yes 60 design pattern game  ... 
doi:10.5281/zenodo.4314692 fatcat:pnr2rfescbe5fhlj76jzchmq5u

The ruby intermediate language

Michael Furr, Jong-hoon (David) An, Jeffrey S. Foster, Michael Hicks
2009 SIGPLAN notices  
We hope that RIL's features will enable others to more easily build analysis tools for Ruby, and that our design will inspire the creation of similar frameworks for other dynamic languages.  ...  We demonstrate the usefulness of RIL by presenting a simple static analysis and source code transformation to eliminate null pointer errors in Ruby programs.  ...  Putting this all together, the actual visitor pattern matching case for transforming a method call is Here we construct the new code as node and instruct the visitor to replace the existing node with this  ... 
doi:10.1145/1837513.1640148 fatcat:zpoaux3w3fcsbld6yz2wua6xla

Integrating typed and untyped code in a scripting language

Tobias Wrigstad, Francesco Zappa Nardelli, Sylvain Lebresne, Johan Östlund, Jan Vitek
2010 Proceedings of the 37th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '10  
While good for initial development, the lack of static type annotations can impact code-quality and performance in the long run.  ...  Thus like types provide some of the benefits of static typing without decreasing the expressiveness of the language.  ...  We thank the entire Thorn team: Brian Burg, Gregor Richards, Bard Bloom, Nate Nystrom, and John Field. This work was partially supported by ONR grant N140910754 and ANR grant ANR-06-SETI-010-02.  ... 
doi:10.1145/1706299.1706343 dblp:conf/popl/WrigstadNLOV10 fatcat:dlezdwqoyvgyvcx2ek4xk6bpjq

Empirically Examining the Parallelizability of Open Source Software System

Saleh M. Alnaeli, Abdulkareem Alali, Jonathan I. Maletic
2012 2012 19th Working Conference on Reverse Engineering  
Static analysis methods are applied to each system to determine the number of for-loops and free-loops (i.e., loops that can be parallized).  ...  This is somewhat contradictory to the literature, which is focused primarily on the removal of data dependencies within loops.  ...  The first two columns, shows the distribution of for-loops and while-loops for each system. With the exception of Httpd and Ruby all of the systems, show a much larger use of for-loops.  ... 
doi:10.1109/wcre.2012.47 dblp:conf/wcre/AlnaeliAM12 fatcat:3xcdujjpw5gafdbl77mmx6m6xm

A history of the Groovy programming language

Paul King
2020 Proceedings of the ACM on Programming Languages (PACMPL)  
Groovy would borrow ideas from dynamic languages like Ruby, Python and Smalltalk where needed to provide compelling JVM solutions for some of Java's shortcomings.  ...  A number of nuances to the static nature came about to support the style of coding used by Groovy developers.  ...  With the ascendancy of Ruby, I became interested in dynamic languages.  ... 
doi:10.1145/3386326 fatcat:r6k7hgcs6fcola4m234ujcnc5q

The Next 7000 Programming Languages [chapter]

Robert Chatley, Alastair Donaldson, Alan Mycroft
2019 Lecture Notes in Computer Science  
Half-a-century on, we cast programming languages in a Darwinian 'tree of life' and explore languages, their features (genes) and language evolution from the viewpoint of 'survival of the fittest'.  ...  expected if the languages of the 1960s had evolved optimally to fill programming niches.  ...  We are grateful to Sophia Drossopoulou, Stephen Kell, Tom Stuart, Joost-Pieter Katoen, Flemming Nielson and Bernhard Steffen for their useful feedback on an earlier draft of this work.  ... 
doi:10.1007/978-3-319-91908-9_15 fatcat:kympenwph5ajjg2ilydix423he

How do developers react to API deprecation?

Romain Robbes, Mircea Lungu, David Röthlisberger
2012 Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering - FSE '12  
with a community of developers.  ...  Although studies of ripple effects exist at the single system level, no study has been performed on the actual extent and impact of these API changes in practice, on an entire software ecosystem associated  ...  Calculating the frequency of each replacements for all studied deprecations yields the following results: In 16% of the cases, the replacement is systematic, that is, one single way of replacing the deprecated  ... 
doi:10.1145/2393596.2393662 dblp:conf/sigsoft/RobbesLR12 fatcat:f2uwv64orvgm3n6nkk5gdzbm3a

Specifying and Solving Constraints on Object Behavior

Tim Felgentreff, Alan Borning, Robert Hirschfeld
2014 Journal of Object Technology  
There is a long history of research on integrating constraint programming with the imperative paradigm.  ...  The performance of Ruby code without constraints is only modestly impacted, with typically less than 10% overhead compared with the unmodified virtual machine.  ...  Acknowledgments We would like to thank all of the members of the Software Architecture Group at Hasso Plattner Institute and of Viewpoints Research Institute for comments and suggestions on the work, in  ... 
doi:10.5381/jot.2014.13.4.a1 fatcat:zdcbv35aobbknec2mb2vemrneq

How (and why) developers use the dynamic features of programming languages: the case of smalltalk

Oscar Callaú, Romain Robbes, Éric Tanter, David Röthlisberger
2012 Empirical Software Engineering  
For instance, usage of these features hampers the design of type systems, the accuracy of static analysis techniques, or the introduction of optimizations by compilers.  ...  In addition, we performed a qualitative analysis of a representative sample of usages of dynamic features in order to uncover (1) the principal reasons that drive people to use dynamic features, and (2  ...  Acknowledgements We thank the anonymous reviewers for their helpful comments. Romain Robbes is partially funded by FONDECYT Project 11110463, Chile.  ... 
doi:10.1007/s10664-012-9203-2 fatcat:sdsexk2lgjeztc5p4466qztdai

Impact of Using a Static-Type System in Computer Programming

Ismail Rizky Harlin, Hironori Washizaki, Yoshiaki Fukazawa
2017 2017 IEEE 18th International Symposium on High Assurance Systems Engineering (HASE)  
However, only a few empirical experiments exist on the potential benefits of static-type systems in programming activities.  ...  This paper describes an experiment that tests whether static-type systems help developers create solutions for certain programming tasks.  ...  Acknowledgment This paper is an extended version of a paper presented at the 18th IEEE International Symposium on High Assurance Systems Engineering [7] .  ... 
doi:10.1109/hase.2017.17 dblp:conf/hase/HarlinWF17 fatcat:n7jid7pbhve6df3xsjxsimk3jm
« Previous Showing results 1 — 15 out of 238 results