Filter by products, topics, and types of content

(0 Products)

(122 Topics)

(4 Industries)

(6 Types)

1 - 16 of 16 results
Show Summaries | Hide Summaries
View Results
Title none Type none Date none
Java.next: Memoization and functional synergy
Both Scala and Clojure are functional languages, and Groovy includes many functional features through libraries. This Java.next installment explores how memoization is implemented in the Java.next languages and how the combination of functional features leads to concise power.
Also available in: Chinese   Russian   Japanese  
Articles 18 Feb 2014
Java.next: Choosing your next JVM language
Any of the Java.next languages is a suitable candidate for your next language, so how do you choose? Investigate the factors that contribute to this important decision.
Also available in: Chinese   Russian   Japanese  
Articles 13 May 2014
Java.next: Java 8 as Java.next
This installment of Java.next investigates the Java 8 release as a reasonable candidate for your next programming language. Find out how lambda blocks and the streaming API upgrade Java to a modern language.
Also available in: Chinese   Russian   Japanese  
Articles 28 Apr 2014
Java.next: Contrasting concurrency
Perhaps the starkest difference among the Java.next languages lies in threading, concurrency, and parallelism. This installment shows easy ways to make existing functional code in Scala, Groovy, and Clojure parallel. Then it investigates the actor currency model in Scala.
Also available in: Chinese   Russian   Japanese  
Articles 31 Mar 2014
Java.next: Extension without inheritance, Part 1
Groovy, Scala, and Clojure offer many extension mechanisms, whereas inheritance is virtually the Java language's only option. This installment looks at category classes, the ExpandoMetaClass, implicit casts, and protocols as ways to extend Java classes with the Java.next languages.
Also available in: Chinese   Russian   Japanese  
Articles 12 Jun 2013
Java.next: Common ground in Groovy, Scala, and Clojure, Part 2
Common complaints about the Java language concern excessive ceremony for simple tasks and defaults that are sometimes confusing. All three of the Java.next languages take more sensible approaches in those areas. This installment of Java.next shows how Groovy, Scala, and Clojure smooth out the Java language's rough edges.
Also available in: Chinese   Russian   Japanese  
Articles 14 May 2013
Java.next: The Java.next languages
This article launches a new developerWorks series by Neal Ford that performs a deep comparison of three next-generation JVM languages: Groovy, Scala, and Clojure. In this initial installment, find out what you'll gain from understanding their similarities and differences -- whether or not you choose to keep using Java as your main programming language for now.
Also available in: Chinese   Russian   Japanese  
Articles 14 May 2013
Java.next: Concurrency in Clojure
Clojure has the most radical approach to concurrency of all the Java.next languages. This installment delves into some of the many facets of concurrency in Clojure, including the epochal time model and software transactional memory.
Also available in: Chinese   Russian   Japanese  
Articles 15 Apr 2014
Java.next: Common ground in Groovy, Scala, and Clojure, Part 1
The Java.next languages (Groovy, Scala, and Clojure) have more commonalities than differences, converging toward common ground in many of their features and conveniences. This installment explores how they each address a longstanding deficiency in the Java language -- the inability to overload operators. It also discusses the related concepts of associativity and precedence.
Also available in: Chinese   Russian   Japanese  
Articles 14 May 2013
Java.next: Currying and partial application
All of the Java.next languages include currying and partial application but implement them in different ways. This installment explains both techniques, distinguishes between them, and shows implementation details -- and practical uses -- in Scala, Groovy, and Clojure.
Also available in: Chinese   Russian   Japanese  
Articles 26 Nov 2013
Java.next: Overcome synonym suffering
The previous Java.next installment ("Functional coding styles") compared and contrasted functional coding styles in Scala, Groovy, and Clojure. In this article, series author Neal Ford delves more deeply into the filter, map, and reduce functions in the Java.next languages. A series of short coding examples help you to sort out the somewhat confusing differences in how the three languages name these key functional constructs.
Also available in: Chinese   Russian   Japanese  
Articles 28 Jan 2014
Java.next: Common ground in Groovy, Scala, and Clojure, Part 3
The last of three installments about commonalities among Clojure, Scala, and Groovy investigates how these languages handle exceptions, expressions, and null -- all problem areas for the Java language. Each of the Java.next languages addresses the shortcomings of the Java language through a unique implementation that highlights that language's characteristics.
Also available in: Chinese   Russian   Japanese  
Articles 14 May 2013
Java.next: Functional coding styles
All of the Java.next languages include functional programming constructs, which enable you to think at a higher level of abstraction. However, differences in terminology among the languages can make it difficult to see similar constructs. This installment shows how common functional programming constructs manifest in the Java.next languages, pointing out some subtle differences in the implementation details of those features.
Also available in: Chinese   Russian   Japanese  
Articles 24 Dec 2013
Java.next: Extension without inheritance, Part 2
The Java language suffers from intentional limitations in its extension mechanisms, relying primarily on inheritance and interfaces. Groovy, Scala, and Clojure offer many more extension alternatives. This installment further explores Clojure's use of protocols as an extension mechanism.
Also available in: Chinese   Japanese  
Articles 30 Jul 2013
Java.next: Extension without inheritance, Part 3
The Java.next languages Groovy, Scala, and Clojure remedy the Java language's extension limitations in numerous ways. This Java.next installment covers the astounding extension capabilities that are available through Groovy's metaprogramming facilities.
Also available in: Chinese   Russian   Japanese  
Articles 03 Sep 2013
Java.next: Mixins and traits
The Java language's primary paradigm, object orientation with single inheritance, effectively models most but not all programming problems. The Java.next languages extend this paradigm in various ways, including mixins and traits. This Java.next installment defines the mechanisms that mixins and traits share, and it delves into the subtle differences between mixins in Groovy and traits in Scala.
Also available in: Chinese   Russian   Japanese  
Articles 19 Sep 2013
1 - 16 of 16 results
Show Summaries | Hide Summaries