3 ms·
Java was designed to have a syntax familiar to C++ programmers as its original intended use case was on embedded devices where C++ was king. What about the lan
by meddlepal 8y ago
Java was designed to have a syntax familiar to C++ programmers as its original intended use case was on embedded devices where C++ was king.
What about the language design makes you think it _is not_ influenced heavily by C++?
- pjmlp 8y agoInterfaces are based on Objective-C protocols. The class reflection, dynamic loading, JIT come from Smalltalk. Checked exceptions from CLU, Modula-3. Packages from Modula-2, Mesa, Ada,... GC from Lisp, Mesa/Cedar, Similar, Smalltalk,...
- mcv 8y agoJava takes a lot of features from a lot of different languages, but I too remember Java being intended as an improved C++, by keeping most of the syntax, while adding some badly needed features like memory management, exceptions, more consistent standard classes (at the time; it's turned into a mess now) etc.
- pjmlp 8y agoJust like it happened with Go, around 20 years later. However the similarities are only superficial, given the semantic differences. Here are some nice links regarding it. https://cs.gmu.edu/~sean/stuff/java-objc.html https://cs.gmu.edu/~sean/stuff/java-objc.html https://www.artima.com/intv/gosling1P.html https://www.artima.com/intv/gosling1P.html
- sagartewari01 8y agoJust about everything other than the syntax, and even that is similar to that C++ only at the method level.