http://www.cs.wustl.edu/~schmidt/TAO.html
Which is based on
http://www.cs.wustl.edu/~schmidt/ACE.html
A very nice set of libraries.
Artur K.
On Mon, Jun 9, 2008 at 1:50 PM, Kurt Stephens <[EMAIL PROTECTED]> wrote:

> Karl Robillard wrote:
> > On Sunday 08 June 2008 03:30:29 am Ivan Krstić wrote:
> >> On Jun 8, 2008, at 12:47 AM, Karl Robillard wrote:
> >>> "I will write portable code, which does not assume any specific CPU or
> OS, so as to respect the users right to run my software on many different
> >>> systems."
> >> CPU, maybe, but writing OS-portable code is another matter entirely.
> With low-level code, OS portability does not require the _absence_ of some
> action
> >> (making assumptions about a specific OS), but a very strong _presence_
> of a dedicated effort to keep up with a pile of mutually incompatible
> systems. It's
> >>  reasonable to hold programmers to an understanding of endianness and
> writing 64-bit clean code, yes, but "not assuming a particular OS" is a pipe
> dream.
> >> Even if you follow POSIX to the letter, you'll find yourself
> special-casing behavior across Solaris, Linux and *BSD, and just about every
> subsystem on
> >> Windows.
> >
> > I don't see any real difference.  In fact, OS portability is probably the
> easier part to achieve due to existing standards (TCP/IP, OpenGL, etc) and a
> > plethora of cross-platform libraries.  As for low-level code, its not
> difficult to hide OS differences behind a small interface.  In the end,
> supporting more
> >  than one platform is simply a choice to be made - mostly in the form of
> choosing *not* to use tools which are deliberately designed to *prevent*
> portability
> >  (e.g. Direct3D).
> >
> >
> > On Sunday 08 June 2008 09:28:10 pm Kurt Stephens wrote:
> >> Worked with a programmer who did just such a thing for an application
> that he knew he need to port between Solaris, NeXTSTEP and Windows.  It was
> a lot of
> >>  work, but it only paid-off after the project lasted 6 years.
> >
> > Really?  This isn't rocket science guys.  I work for a small company
> which ships GUI apps on Linux, Mac OS, Solaris, and Windows.  I think I
> spend more time
> >  packaging the software for each platform than getting it to run.
> > You folks may be reading too much into my comment.  I don't expect
> everyone to write
> > software that will magically run everywhere.
> > I would just be happy if people didn't go out of their way to tie
> software to any specific OS.
> >
>
> I don't think developers with any real experience do not have portability
> in mind early in a project, it's probably mostly laziness and lack of
> platform-specific
> knowledge.  But premature portability is like premature optimization.
>
> Porting a language and its system software is far different
> than porting a GUI application;  Machine and OS dependencies:
> calling conventions, code generation issues, endianness (and having to
> support more than one),
> memory layout, alignment and protection, register allocation, object file
> formats, threading, I/O, signals,
> deviations from "standards", buggy libraries, etc. at a much lower-level.
>
> Most GUI environments have similar models that abstract most of the OS away
> -- e.g.: Java AWT.
>
> For a good example of how difficult portability is for system software,
> read the Boehm GC source.
> They have explicitly dropped portability support for old, uncommon
> platforms in recent versions.
> Sometimes it is too difficult to maintain it against the momentum of the
> rest of the world when effort
> is not warranted on a small user base.
>
> Its not impossible -- but portability much more difficult in lower layers
> because everything
> is different and changing underneath and everything above relies on those
> layers being stable, yet flexible.
>
> Hopefully well-layered and self-reinforcing systems like COLAs make
> portability easier than
> the typical programming toolset.  But not without making some difficult and
> subtle decisions in
> lower levels: deciding where to keep things flexible and where to stick to
> an implementation plan.
> Things should be open to make portability more tractable, but not at the
> expense of progress.
>
> I'd rather work on a full-featured system on a single, commonly-used
> platform, than a system
> that is only partially functional on many platforms.
>
> > Achieving this is not a pipe dream and does not take 6 years
>
> I did not mean to imply it took 6 years to port the code, it took 6 years
> of feature development on the project by one developer to make porting
> worthwhile.
>
> During those 6 years one of those platforms became "unsupported" -- guess
> which one?
> The platform was my personal favorite and it could not scale > 2GB/process.
>
> Emulation and virtualization is the future and present of computing; maybe
> portability is not
> really an issue?  Which parts of Ocean are difficult to port?
>
> Hmm... speaking of software which magically runs everywhere,
> > did anyone use the TAO system?
>
> Link?
>
> Kurt Stephens
>
> _______________________________________________
> fonc mailing list
> [email protected]
> http://vpri.org/mailman/listinfo/fonc
>
_______________________________________________
fonc mailing list
[email protected]
http://vpri.org/mailman/listinfo/fonc

Reply via email to