From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <3e1162e60608110710y3a856f2dxb61912238df0f763@mail.gmail.com> Date: Fri, 11 Aug 2006 07:10:33 -0700 From: "David Leimbach" To: "Fans of the OS Plan 9 from Bell Labs" <9fans@cse.psu.edu> Subject: Re: Re: [9fans] I suppose if there's no other way to do it (a quote from the tcl web site) In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <3e1162e60608110021g6e820143oa2461d3d14b00103@mail.gmail.com> Topicbox-Message-UUID: 9b91b142-ead1-11e9-9d60-3106f5b1d025 On 8/11/06, erik quanstrom wrote: > *not* providing a library for these things is the key. > for example, page doesn't link against the jpeg library. > it just runs jpg. nedmail doesn't link against the mime > library, it uses upas/fs and marshal. I guess my point is it's just one abstraction that needs to be filled in to get the same expressive behavior as you get by making a 9P capable server for connecting to a given resource. Then you get the "same I/O commands you'd use..." as the quoted paragraph states. If they're saying TCL is somehow deeper than OOP, I didn't absorb that information from the copied paragraph. OOP systems are very open-ended, they're just terribly "close topped" (which is how we end up with things like Aspect Oriented Programming so you can cross-cut functionality into an existing system rather than just extending and overriding.) > > if plan 9 provided fancy library interfaces for such things, > we might be temted by the sirens "shared libraries" and "oop > languages". > Right but I'm not sure what that had to do with TCL? ;-). In some ways having a binary you can call from another process *is* a kind of "shared library" already. Just as the kernel is a shared library of sorts.... but yeah I understand your point. Plan 9's abstractions for doing these things in the OS itself are (for the lack of a better word at this early hour for me) "freakin' badass!". As a result I can far more with a shell, which is a safer programming environment in terms of resource management I think, than I can in pretty much any other programming language. If people thought Unix is a good programming environment, they really should give Plan 9 a try. > - erik > > On Fri Aug 11 02:22:13 CDT 2006, leimy2k@gmail.com wrote: > > On 8/10/06, Ronald G Minnich wrote: > > > "Sure, some other languages have libraries for accessing web or ftp > > > sites, or looking inside zip files. But how many provide an open ended > > > and extensible system that allows you to access any such resource using > > > the same I/O commands you'd use with regular disk files?" > > > > > > > C++ iostreams perhaps? I've got one for sockets, pipes etc... Now > > that's not the same as FTP sites and zip files, but it could be done. > > Then you can use the same iterators and algorithms to glue it all > > together. In fact, I think I saw a zlibstream once. I was thinking > > of writing one. > > > > It's done via a blend of template generic programming and OOP. Too > > bad C++ quickly becomes quite confusing and is very easy to abuse and > > make difficult to maintain (probably an understatement). > > > > Plan 9 gives me a lot of that power right at the shell because the OS > > multiplexes 9P so well. > > > > > > > hmm. in the language library? Well, I guess if that's all you can do ... > > > but this is a really odd quote. > > > > > > And I actually like tcl ... > > > > > > ron >