Which widely used programming languages were designed ground-up with Unicode support?
A lot of programming languages have added Unicode support as an afterthought in later versions, but which widely used languages were released with Unicode support from day one?
Google's Go programming language supports Unicode and works with UTF-8.
java and .net languages
Java uses characters from the Unicode character set.
Basically all of the .NET languages are Unicode languages, such as C# and VB.NET.
I don't know how far this goes in other languages, but a fun thing about C# is that not only is the runtime (the
string
class etc) unicode aware - but unicode is fully supported in source:Java and the .NET languages, as other commenters have pointed out, although Java's strings are UTF-16 rather than UCS or UTF-8. (At the time, it seemed like a sensible idea! Now clearly either UTF-8 or UCS would be better.) And Python 3 is really a different, incompatible language from Python 1.x and 2.x, so it qualifies too.
The Plan9 languages around 1992 were probably the first to do this: their dialect of C,
rc
, Alef,mk
, ACID, and so on, were all Unicode-enabled. They took the very simple approach that anything that wasn't ASCII was an identifier character. See their paper from 1993 on the subject. (This is the project where UTF-8 was invented, which meant they could do this in a pretty compatible way, in particular without plumbing binary-versus-text through all their programs.)Other languages that support non-ASCII identifiers include current PHP.