Java had its originals in Sun research lab as Project
Oak. It was originally intended to be a programming language
suitable for embedded applications. But with the rapid rise of the
internet, it was retargeted as a language suitable for delivering
dynamic content on the web. The rest is history.
AspectJ: aspect-oriented extension to Java. Aspect oriented programming is an
emerging programming paradigm intended to allow better
encapsulation (compared to pure object oriented approaches) of
cross-cutting concerns such as tracing/logging that tends to
permeate through (and complicate) code.