Earlier quoted context omitted.
Presumably the intent is not to depend on boost, but rather only standardized parts of the language. Also using something like boost ties you to a specific version of boost due to the wonders of c++ abi - your OS libraries can’t expose anything that explicitly or implicitly includes things that aren’t ABI stable. (I’m sure kling is already requiring 100% stable abi :) )
Fair, but I was replying to this being a good example of modern C++. It's atypical that implementing your own vector and string is even a good idea, let alone exemplary.
SerenityOS – a graphical Unix-like OS for x86, with 90s aesthetics
101–110 of 186 posts
Re: SerenityOS – a graphical Unix-like OS for x86, with 90s aesthetics
#102Earlier quoted context omitted.
One could always also throw together a virtual machine for running Windows 3.1 like I keep doing.
For most non-technical people, a Windows 3.1 type GUI is all they need.
Re: SerenityOS – a graphical Unix-like OS for x86, with 90s aesthetics
#103Earlier quoted context omitted.
The C++ stdlib versions of vectors have different design goals, including a bunch of ABI constraints for very old code (things like the vector specializations). Likewise there are questionable spec behaviors like unordered_map that specifies suboptimal implementation.
Follow on thought - what happens for operator new[]() in kernel space? Does it depend on a malloc (vs. traditional kmalloc)?
Re: SerenityOS – a graphical Unix-like OS for x86, with 90s aesthetics
#104Re: SerenityOS – a graphical Unix-like OS for x86, with 90s aesthetics
#105Earlier quoted context omitted.
This strikes me as profound and I would like to hear more. Do you have other writings? Are there any books about this? Do you think about this often?
There's a small, if somewhat contrarian move, especially in the *nix/free software communities, that goes along those lines. You'll find a lot of people fed up with hamburger menus and nondescript icons and widgets, poor API stability (and, therefore, lack of easy scriptability (is that a word?)) and other questionable developments of the more "modern" approach to building desktop systems. Some of the folks in this c…
Re: SerenityOS – a graphical Unix-like OS for x86, with 90s aesthetics
#106Re: SerenityOS – a graphical Unix-like OS for x86, with 90s aesthetics
#107Earlier quoted context omitted.
You are absolutely right about the benefits of mimicking existing UI paradigms. It saves so much time already knowing basically how I want things to look and work. And not having to worry as much about resources as people did in the past is a huge load off. (Although I do all my development with 128MB of RAM or less, because I enjoy that sort of challenge..) Serenity is an unapologetic remix/mash-up of all the things…
> I do all my development with 128MB of RAM or less, because I enjoy that sort of challenge I remember being excited that I was able to splurge on a 486 with 4 Mb RAM.
Re: SerenityOS – a graphical Unix-like OS for x86, with 90s aesthetics
#108"Flat" UI is both lazy and an overreaction to the ridiculous skeuomorphism that plagued us years ago.
Re: SerenityOS – a graphical Unix-like OS for x86, with 90s aesthetics
#109I think this is an impressive achievement, and certainly something I could never do. But I'm a little disappointed in the state of desktop operating systems these days. I don't see any innovation. Every OS is just splashing chrome on the same WIMP paradigm that's been available to consumers for 35 years. Maybe I'm looking for the equivalent of a flying car, but I wish someone would come up with an OS, or even just an…
I have a different conception of what a desktop OS should be than you seem to, though. I want one that embraces simplicity. It should elicit a resounding "meh" because it doesn't do anything particularly impressive and is just a really good execution of already existing ideas.
Re: SerenityOS – a graphical Unix-like OS for x86, with 90s aesthetics
#110I think this is an impressive achievement, and certainly something I could never do. But I'm a little disappointed in the state of desktop operating systems these days. I don't see any innovation. Every OS is just splashing chrome on the same WIMP paradigm that's been available to consumers for 35 years. Maybe I'm looking for the equivalent of a flying car, but I wish someone would come up with an OS, or even just an…
I happen to (wishfullly) think the next major OS will have capability-based permissions at the core level, a model a bit like Mobile permissions but composable. Good thing that Google's Fuschia is based on capabilities. It's in C++ though.