Higher-order functional programming and wildcards in java
Nattawut Sridranop, Ryan Stansifer
Abstract
Nattawut Sridranop, Ryan Stansifer
Abstract
Despite the absence of first-class functions in Java, it is possible to program in the style of functional languages like ML or Haskell using the new capabilities in Java 1.5. We show how to use generic classes to program higher-order functions and how this interacts with object-oriented programming. We also show the necessity of the wildcard construct in Java and reveal several pitfalls. We conclude that the constructs in Java do not permit a functional framework that is completely compatible with object-oriented programming.
OpenAlex reports 1 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
Despite the absence of first-class functions in Java, it is possible to program in the style of functional languages like ML or Haskell using the new capabilities in Java 1.5. We show how to use generic classes to program higher-order functions and how this interacts with object-oriented programming. We also show the necessity of the wildcard construct in Java and reveal several pitfalls. We conclude that the constructs in Java do not permit a functional framework that is completely compatible with object-oriented programming.
Key concepts: Programming language, Computer science, Haskell, Java, Functional programming, Generics in Java, Scala, Real time Java