Java is missing many features. I'd think the biggest blatantly missing feature is first class functions which people commonly, but incorrectly, label as "closures", which is a separate feature that Java actually does have (although purists argue that the final requirement makes them not "pure" closures).
Nevertheless, you can stilly apply many functional programming concepts and immutable logic with Java (or any language). We are using the Functional Java library which helps. Scala is the real imperative/functional hybrid language. You can code completely imperative/OO/Java-style and you can code completely functionally. C#, is ahead of Java in terms of functional type features, but it is still primarily a imperative/OO language with some functional features added on to it. On Feb 9, 12:56 pm, Casper Bang <[email protected]> wrote: > True, but C# truly caters to a hybrid approach, functional when you > can, imperative when you must (along with static when you can, dynamic when > you must). > > Since Java does not support yield in lazy iterators (as C# does), how to > you push/pop the state? -- You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/javaposse?hl=en.
