It's pleasant to use a minimalist, viable product.
9front is not the only OS I use, but it is one of my daily drivers.
It's pleasant to use a minimalist, viable product.
9front is not the only OS I use, but it is one of my daily drivers.
Additionally, since even minor versions introduce breaking changes, getting something from e.g. Python 1.6 to run on 3.12 is an exercise in trial and error, or unexpected surprises at some moment at runtime.
Would be interesting to hear what levels you think those are because as someone who has been learning and writing C++ and Python for over 20 years now, I'd say there's no level of Python which comes even close to the complexity of C++ at a comparative level.
> getting something from e.g. Python 1.6 to run on 3.12 is an exercise in trial and error, or unexpected surprises at some moment at runtime.
Fair enough. But then again: that's irrelevant for any new project written since about the start of the last decade. And to continue the C++ comparison: whereas Python 1 -> 2 -> 3 imo solved some real issues, the consecutive C++ standards never did this resulting in something which is, yes, backwards comptible (roughly - try getting 30-40 year old code getting to compile with /std:c++latest and /Wall - or look at all those tiny behavior changes between the last couple of standard iterations) but also seriously plagued by that as it holds back innovation. Modern C++ minus a lot of the old UB-prone stuff would definitely be better and less complex than what we have now.
Then just like C++, add the set of key implementations, CPython, Cython, PyPy, key libraries everyone uses (parallel to Boost).
Since you have such a wide Python experience, naturally you already printed out all the PDFs of Python documentation, and read them cover to cover.
I did such thing back on Python 2.0 days, and it only grew bigger.
How many pages was it again?
If you give the tiniest of Fs for your user, do not write your thing in python.
Perhaps vast differences in ergonomics and language-culture-fit but that's orthogonal/unrelated?
The supposed simplicity of Python over Perl has nothing to do with Perl being more feature-rich and that compromising its simplicity.
It seems like Plan9 would get closer to "Python simplicity" by adding features and extending interfaces. Which would be at conflict with the "minimalist MVP simplicity".
You present it as mutually exclusive. I believe it's the same word used for two fundamentally different aspects of software - less of a nit.
Complexity is in conflict with usable composition. Because of simple, small interfaces, the surface area needed for composition to cover all cases in a plan 9 environment is much smaller.
This allows for things like remote login to be implemented as a small number of 'mount' calls, git to serve repos in a way that can be scripted without writing gobs of porcelain, or sshnet to trivially replace the entire network stack in userspace (namespace by namespace), so that software doesn't need to implement features like socks proxy support.
The simplicity and uniformity of the interfaces and tools is an enabler.
But, you're right. I should have picked scheme or lua as an analogy. Scheme is a particularly good one: the simplicity of its syntax enables easier macro manipulation. How many special cases would you need to have if you were implementing a lisp style macro system for C++?
Smaller interfaces and implementations, lead to smaller sets of special cases and contexts to keep in mind, easier interposition and emulation, and faster debugging.
> You present it as mutually exclusive.
I honestly have no idea what you mean. What is the "it" that I am presenting, and what do you think I presented it as excluding?
> I honestly have no idea what you mean. What is the "it" that I am presenting, and what do you think I presented it as excluding?
Simplicity vs feature-rich. Your last follow-up mostly resolves that, I think.
BTW, I think you just sold me on diving into Plan9 some time soonish (:
I should probably make time look again in case I missed something or it's improved in the last decade.