Filters








9 Hits in 3.3 sec

A Study of Call Graph Construction for JVM-Hosted Languages

Karim Ali, Xiaoni Lai, Zhaoyi Luo, Ondrej Lhotak, Julian Dolby, Frank Tip
2019 IEEE Transactions on Software Engineering  
In this paper, we show that it also works well for diverse other JVM-hosted languages: dynamically-typed functional Scheme, statically-typed object-oriented Scala, and polymorphic functional OCaml.  ...  JVM bytecode.  ...  OCaml-Java [28] compiles OCaml code to JVM bytecode. We used OCaml-Java 2.0-alpha2, based on OCaml 4.01.0. Figure 6 shows an OCaml program that declares functions foo and bar.  ... 
doi:10.1109/tse.2019.2956925 fatcat:kzzsh5a3qjdsbn225ueagoeoya

Programming Languages and Systems Security

C. Skalka
2005 IEEE Security and Privacy  
Acknowledgments The author thanks Michael Hicks for his insights into languages and systems.  ...  Various modern safe languages exist-including OCaml, Java, and C#-that employ a combination of static analyses (such as type inference in OCaml) and dynamic checks (such as cast checking in Java) to enforce  ...  For example, the JVM prevents untrusted programs such as applets from loading classes with the same names as existing libraries to protect local systems against spoofing attacks.  ... 
doi:10.1109/msp.2005.77 fatcat:obx3wzet5zgvfaicoxyfjw3uzi

Sawja: Static Analysis Workshop for Java [chapter]

Laurent Hubert, Nicolas Barré, Frédéric Besson, Delphine Demange, Thomas Jensen, Vincent Monfort, David Pichardie, Tiphaine Turpin
2011 Lecture Notes in Computer Science  
This paper describes the Sawja library: a static analysis framework fully compliant with Java 6 which provides OCaml modules for efficiently manipulating Java bytecode programs.  ...  We present the main features of the library, including (i) efficient functional data-structures for representing program with implicit sharing and lazy parsing, (ii) an intermediate stack-less representation  ...  Barista [7] is an OCaml library used in the OCaml-Java project. It is designed to load, construct, manipulate and save Java class files.  ... 
doi:10.1007/978-3-642-18070-5_7 fatcat:iqaaetrar5gphmiminytzdldwi

Stream Fusion, to Completeness [article]

Oleg Kiselyov, Aggelos Biboudis, Nick Palladinos, Yannis Smaragdakis
2016 arXiv   pre-print
Accordingly, we have two distinct implementations: an OCaml stream library, staged via MetaOCaml, and a Scala library for the JVM, staged via LMS.  ...  We greatly exceed in performance the standard stream libraries available in Java, Scala and OCaml, including the well-optimized Java 8 streams.  ...  Acknowledgments We thank the anonymous reviewers of both the program committee and the artifact evaluation committee for their constructive comments.  ... 
arXiv:1612.06668v1 fatcat:ejoytabhljec5mbiyhzg5sd7gu

Stream fusion, to completeness

Oleg Kiselyov, Aggelos Biboudis, Nick Palladinos, Yannis Smaragdakis
2017 SIGPLAN notices  
Accordingly, we have two distinct implementations: an OCaml stream library, staged via MetaOCaml, and a Scala library for the JVM, staged via LMS.  ...  We greatly exceed in performance the standard stream libraries available in Java, Scala and OCaml, including the well-optimized Java 8 streams.  ...  Acknowledgments We thank the anonymous reviewers of both the program committee and the artifact evaluation committee for their constructive comments.  ... 
doi:10.1145/3093333.3009880 fatcat:n2oa7jrgtfeutevb4grslryvaq

The early history of F#

Don Syme
2020 Proceedings of the ACM on Programming Languages (PACMPL)  
I conclude by examining some uses of F# and the influence F# has had on other languages so far.  ...  F# was one of several responses by advocates of strongly-typed functional programming to the łobject-oriented tidal wavež of the mid-1990s.  ...  The question of OCaml and JVM/.NET was also being discussed on the Caml mailing list around this time.  ... 
doi:10.1145/3386325 fatcat:lk7zpwvyzfdc5gkscsmqmnze2e

Checking type safety of foreign function calls

Michael Furr, Jeffrey S. Foster
2008 ACM Transactions on Programming Languages and Systems  
In this paper, we study the problem of enforcing type safety across the OCaml-to-C FFI and the Java Native Interface (JNI).  ...  O-Saffire also tracks garbage collection information to ensure that local C pointers to the OCaml heap are registered properly, which is not necessary for the JNI.  ...  We would like to thank the anonymous reviewers for their helpful comments.  ... 
doi:10.1145/1377492.1377493 fatcat:bgatytkv5vh6zohnjxknnctdge

Checking type safety of foreign function calls

Michael Furr, Jeffrey S. Foster
2005 Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation - PLDI '05  
In this paper, we study the problem of enforcing type safety across the OCaml-to-C FFI and the Java Native Interface (JNI).  ...  O-Saffire also tracks garbage collection information to ensure that local C pointers to the OCaml heap are registered properly, which is not necessary for the JNI.  ...  We would like to thank the anonymous reviewers for their helpful comments.  ... 
doi:10.1145/1065010.1065019 dblp:conf/pldi/FurrF05 fatcat:br777axqrnex3dmpb5ixg7bedm

Streams a la carte: Extensible Pipelines with Object Algebras

Aggelos Biboudis, Nick Palladinos, George Fourtounis, Yannis Smaragdakis, Marc Herbstritt
2015 European Conference on Object-Oriented Programming  
The architecture underlying this design borrows heavily from Oliveira and Cook's object algebra solution to the expression problem, extended with a design that exposes the push/pull character of the iteration  ...  ) without changes to the library code.  ...  Our work was funded by the Greek Secretariat for Research and Technology under the "MorphPL" Excellence (Aristeia) award.  ... 
doi:10.4230/lipics.ecoop.2015.591 dblp:conf/ecoop/BiboudisPFS15 fatcat:qotqjws5yvcbhkyfhadyhncqmy