mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: retu <retu834@yahoo.com>
To: James Antill <james@and.org>
Cc: m.fioretti@inwind.it, linux-kernel@vger.kernel.org
Subject: Re: 2.7 thoughts: common well-architected object model
Date: Mon, 13 Oct 2003 22:01:36 -0700 (PDT)	[thread overview]
Message-ID: <20031014050136.80712.qmail@web13007.mail.yahoo.com> (raw)
In-Reply-To: <m31xtg3n3a.fsf@code.and.org>

// these ungeneric interfaces will kill. Right now
it's a
{/usr/local/,/usr/bin/,/usr/..}NameYourClassLibrary_empty.
Below a list pasted from the .net namespace with many
dozens of classes covering everything from io to
drawing. 

They _appear for the most part to be consistent
wrappers to underlying existing APIs (including some
for >kernelspace< to userspace), are quite well done
although a little on the heavy side. I've not seen
Nextstep for years but this was a very good design
along the same lines and much thinner (implemented to
fly on 20MHz+ 68040s).

Hence, what would be needed is in the first place a
component model (well architected - thin - efficient)
that would allow folks to populate the other areas
successively. Replicating .net for licensing and
efficiency reasons (Linux ought to scale to HPC
levels), broadening some application class library OR
architecting something without the kernel in mind is
not it I believe. It's gotta come from the core, have
the ingenuity that leads others to build on it and not
start with a disconnect (to the kernelspace that is). 

If there are multiple sets of classes for e.g. 2D
drawing then so what as long as they use the same
Linux component model (which has yet to be defined or
even a grain of consens found that it is necessary in
the first place). 
 
Now here's the competition:

System 
System.CodeDom 
System.CodeDom.Compiler 
System.Collections 
System.Collections.Specialized 
System.ComponentModel 
System.ComponentModel.Design 
System.ComponentModel.Design.Serialization 
System.Configuration 
System.Configuration.Assemblies 
System.Configuration.Install 
System.Data 
System.Data.Common 
System.Data.Odbc 
System.Data.OleDb 
System.Data.OracleClient 
System.Data.SqlClient 
System.Data.SqlServerCE 
System.Data.SqlTypes 
System.Diagnostics 
System.Diagnostics.SymbolStore 
System.DirectoryServices 
System.Drawing 
System.Drawing.Drawing2D, System.Drawing.Imaging, and
System.Drawing.Text namespaces. 
System.Drawing.Design 
System.Drawing.Drawing2D 
System.Drawing.Imaging 
System.Drawing.Printing 
System.EnterpriseServices
System.Globalization 
System.IO 
System.IO.IsolatedStorage 
System.Management 
System.Net 
System.Net.Sockets 
System.Reflection 
System.Resources 
System.Runtime.CompilerServices 
System.Runtime.InteropServices 
System.Runtime.InteropServices.CustomMarshalers 
System.Runtime.InteropServices.Expando 
System.Runtime.Remoting 
System.Runtime.Remoting.Activation 
System.Runtime.Remoting.Channels 
System.Runtime.Remoting.Channels.Http 
System.Runtime.Remoting.Channels.Tcp 
System.Runtime.Remoting.Contexts 
System.Runtime.Remoting.Lifetime 
System.Runtime.Remoting.Messaging 
System.Runtime.Remoting.Metadata 
System.Runtime.Remoting.Metadata.W3cXsd2001 
System.Runtime.Remoting.MetadataServices 
System.Runtime.Remoting.Proxies 
System.Runtime.Remoting.Services 
System.Runtime.Serialization 
System.Runtime.Serialization.Formatters 
System.Runtime.Serialization.Formatters.Binary 
System.Runtime.Serialization.Formatters.Soap 
System.Security 
System.Security.Cryptography 
System.Security.Cryptography.X509Certificates 
System.Security.Cryptography.Xml 
System.Security.Permissions 
System.Security.Policy 
System.Security.Principal 
System.ServiceProcess 
System.Text 
System.Text.RegularExpressions 
System.Threading 
System.Timers 
System.Web 
System.Web.Caching 
System.Web.Hosting 
System.Web.Mail 
System.Web.Mobile 
System.Web.Security 
System.Web.Services 
System.Web.Services.Configuration 
System.Web.Services.Description 
System.Web.Services.Discovery 
System.Web.Services.Protocols 
System.Web.SessionState 
System.Web.UI 
System.Web.UI.Design 
System.Web.UI.Design.WebControls 
System.Web.UI.HtmlControls 
System.Web.UI.MobileControls 
System.Web.UI.MobileControls.Adapters 
System.Web.UI.WebControls 
System.Windows.Forms 
System.Windows.Forms.Design 
System.Xml 
System.Xml.Schema 
System.Xml.Serialization 
System.Xml.XPath 
System.Xml.Xsl 

These are massive and can't be built in a day. But
with a very decent component model and design
philosphy on what to put in and what not it would
enable people to quickly fill in the blanks (plus
maybe some rapid abstracting/wrapping) which would do
a very lot for the OS.  


--- James Antill <james@and.org> wrote:
> asdfd esadd <retu834@yahoo.com> writes:
> 
> > There is a connex, fork() might be a bad example,
> > 
> > it's simple - yes but 20 years have passed as
> Solaris
> > is finding:
> > 
> > pid_t fork(void); vs. 
> > 
> > the next step in the evolution CreateProcess
> > 
> > BOOL CreateProcess(...)
> 
>  If you _really_ want this on Linux, then you can
> look in
> /usr/include/spawn.h
> 
>  Of course, as with all of these ungeneric
> interfaces, it should
> really be called spawn-of-satan.h
> 
> -- 
> # James Antill -- james@and.org
> :0:
> * ^From: .*james@and\.org
> /dev/null


__________________________________
Do you Yahoo!?
The New Yahoo! Shopping - with improved product search
http://shopping.yahoo.com

  reply	other threads:[~2003-10-14  5:01 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-10-11  4:45 asdfd esadd
2003-10-11 14:30 ` Valdis.Kletnieks
2003-10-11 16:06   ` asdfd esadd
2003-10-11 16:48     ` Valdis.Kletnieks
2003-10-11 17:13       ` asdfd esadd
2003-10-11 17:38         ` Valdis.Kletnieks
2003-10-11 17:56           ` asdfd esadd
2003-10-11 18:20             ` Mark Hahn
2003-10-11 18:13       ` Zwane Mwaikambo
2003-10-11 23:33         ` J.A. Magallon
2003-10-11 17:00     ` Scott Robert Ladd
2003-10-11 17:57     ` Kenn Humborg
2003-10-11 18:34       ` asdfd esadd
2003-10-11 18:46         ` Valdis.Kletnieks
2003-10-11 19:01         ` Kenn Humborg
2003-10-11 19:11           ` retu
2003-10-11 19:25           ` viro
2003-10-12 11:59         ` Jamie Lokier
2003-10-12 16:04           ` retu
2003-10-12 16:44             ` Valdis.Kletnieks
2003-10-12 16:51               ` retu
2003-10-12 17:50                 ` viro
2003-10-12 21:52             ` Jamie Lokier
2003-10-12 20:21         ` Rik van Riel
2003-10-13 20:21         ` James Antill
2003-10-14  5:01           ` retu [this message]
2003-10-14  6:00             ` Nick Piggin
2003-10-14  5:31           ` retu
2003-10-14  6:05             ` Tim Hockin
2003-10-14  6:46             ` viro
     [not found] <Ft4B.3ML.3@gated-at.bofh.it>
     [not found] ` <FutO.5TB.29@gated-at.bofh.it>
2003-10-11 17:03   ` Ihar 'Philips' Filipau

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20031014050136.80712.qmail@web13007.mail.yahoo.com \
    --to=retu834@yahoo.com \
    --cc=james@and.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=m.fioretti@inwind.it \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®