-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 7-Jun-06, at 4:17 PM, Corey wrote:
I've more or less dimly grokked the not-immediately-obvious-but-
very-elegant
Plan9-as-object-oriented-via-9p concept; but Plan 9 is not a
programming
language.
Agreed - It's more like the CORBA part rather than the language part,
although much nicer/more uniform.
That said, language bindings to services should be simple to write,
not the hideous mess we see in the CORBA and COM world. Sadly, C++
makes for a hideous mess of these models.
File abstractions wind up being pretty easy and relatively clean.
To which I'll probably get the response from someone: "OOP is
pointless -
you can do every thing OOP can do, using 9p and modular programming in
C."
OOP isn't pointless - but most supposed OOP code is just a poor
excuse not to understand your flow control. My annoyance is that the
cult of re-use that is associated with most OOP proselytization makes
the code bloat hugely - I'm as guilty of that as the next guy.
Compare the STL hash implementation with the the elf hash table
implementation - the latter works in 20 lines of code, the former
requires 769 lines of near-opaque code. Sure, it extends to any
object you have, but the development cost was huge. It's good to
have it, but then people mimic that style with substantially less re-
usable constructs that aren't nearly as functionally stable as
hash_map and hash_set.
Which is certainly a valid point, unless for whatever reasons, you
are unable
to write a whole framework or whatever from scratch, and would thus
selfishly
prefer to use an existing one.
Now that's a separate issue, although still touching on re-use. For
that one I question the viability of *any* open source "desktop"
environment and most closed ones too. The cruftiness that is so-
called required to satisfy naive users is dead in the way of
usability for advanced users. It's sad we've all decided that
computers have to be easy-to-use, by which is usually meant "require
little or no training". Sadly, a little training can go a long way
to make usability happen for expert users, which is a level most
users wind up a in a few years: for evidence, see how many windows
users are willing to muck deep in their menus to change interface
options. Perhaps not for their early exposure, but soon enough after
everyone seems to. Yuck.
I don't like C++ either; I'm merely asking about Objective-C,
which I find
enjoyable and mostly sound.
I like it much better than C++, that's for sure. I'm still not so
sure about bastard hybrids though :-)
I can easily imagine a nice smalltalk implementation for Plan 9 that
plays well with the 9P servers.
Yes, that would be cool.
But when I mention: "I can easily imagine a nice <insert
programming language>
implementation for Plan 9 that plays well with the 9P servers", I
somehow quickly
make an annoyance of myself. <grin> It's weird.
:-) I think the key part is that people don't want to see the layers
and layers of cruft that seem to be involved in any port from the
linux (GCC) world these days. Even python is so corrupted by that
environment I want to scream (I had to port it to PS3 recently, and
at least the dev kit uses GCC, but even then the platform
dependencies are hellish to work with).
But mostly I've been finding that rc + awk + sed does most of my 9p
coding, with surprisingly good results.
Paul
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (Darwin)
iD8DBQFEh2MrpJeHo/Fbu1wRAueTAJ9xxU7k91Wzqjn+R6cqEUcQcGmFaACg0Zzi
uDnAaKoJND4amuuJTCBXstE=
=PyZO
-----END PGP SIGNATURE-----