Re: Spec vs. Implementation

Rogelio Serrano <[email protected]>
Newsgroups gmane.comp.graphics.y.devel
Message-ID <3226e06cd01c86307c19be3497e5035d@debian>
On 2004-07-02 11:17:11 +0800 clearm <[email protected]> wrote:

> I think the best way to develop a window system these days is 
> to develop a
> specification instead of a single source tree implementation.  
> You'd simply
> publish the specification (like the X Window spec or Java 
> spec), and let
> anyone who wants to develop an implementation have at it.  The 
> advantage of
> this is:
> 
> 1)  Everyone can develop their own Y Server on whatever 
> hardware/OS they
> want.  All they have to do is make sure that they interface 
> with the client
> API properly.  So, if Joe Blow knows how to do hardware 
> acceleration on a
> Xenocorp Model 300X Ultracomputer then by all means he can 
> create his own
> fully optimized Model 300X Y Server without having to worry 
> about having to
> target SDL, DirectX, OpenGL, GGI, DirectFB, SVGALIB, iPAQ, 
> Palmpilot, etc.
> in the same source tree.
> 
> 2)  In the same vane as point #1 above, it simplifies the 
> reference
> implementation (i.e. the current source tree) because it 
> doesn't have to be
> portable.  We don't need a gazillion abstraction layers in the 
> reference
> implementation to account for every single possible hardware/OS
> configuration.
> 
> 3)  They can write the Y server in whatever programming 
> language they want.
> It can be C, C++, Lisp, even friggin perl if they want.  So 
> long as a client
> can connect to it and send Y messages, it doesn't matter what 
> language the
> server is programmed in.
> 
> 4)  There can be more developers working/exploring the 
> project.  With one
> source tree, only a few people can submit changes without 
> screwing it up.
> You don't want everyone and their grandmother dipping into the 
> source and
> changing things.  But if there are multiple small groups 
> implementing their
> own Y servers they can do as they please.
> 
> 5)  Makes it easier to develop.  I guess this is just a 
> rehash, but if
> everyone can use their own language and coding style; develop 
> and their own
> pace; and not have to flip through a huge, over-abstracted, 
> single base of
> code; then it will be easier for them to work on the project.  
> For example,
> when I look at a function called DrawWindow() I want to see 
> code that puts a
> grey box on the screen.  I don't want to see two or three 
> layers of
> abstraction, pointers to user-defined functions, structures 
> that hold
> who-knows-what information, and other garbage.
> 
> Whaddya think?
> 
> Mack
> 
> 
> 

I like that idea. Then all Mark has to do is make a reference 
implementation.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.