News for hackers. Stuff that matters.
Re:Symbian Won by secondcoming on Thursday June 25, 2020 @12:15PM (#23642334)
No STL

No std::string

Custom exceptions (no explicit try...catch, I think only ints could be 'thrown')

2-phase construction for C-classes.

Explicit lifetime management (to be fair RAII wasn't a thing in 'normal' C++ at the time either)

Link by ordinal

One interesting thing was that there were mandated, and strictly enforced, naming conventions and coding style. For example, above I mentioned C-classes. You had to use these in certain circumstances by inheriting from a CBase class. This gave you a virtual destructor and zero-initialised the memory. R-classes were resources classes mainly for things that needed Open and Close functionality.

I joined straight out of university and probably learned more about softare development in my first 6 months at Symbian than in 4 years of uni. There were some incredibly clever people there.

Re:Symbian Won by kllrnohj on Thursday June 25, 2020 @12:29PM (#23642466)
> (to be fair RAII wasn't a thing in 'normal' C++ at the time either)

RAII in C++ dates back to 1984-1989, and Strousop wrote about it in his 1994 book Design and Evolution of C++. And C++98 had auto_ptr<>. Symbian's release in 1997 means it had a weird timing relationship with C++ standardization, but RAII was still enough of a thing at the time to be in that very first standardized STL release.

Re:Symbian Won by pjmlp on Friday June 26, 2020 @03:18AM (#23649570)
Turbo Vision, OWL and MFC also made liberal use of RAII.