The UK Home Automation Archive

Archive Home
Group Home
Search Archive


Advanced Search

The UKHA-ARCHIVE IS CEASING OPERATIONS 31 DEC 2024


[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

Re: Re: xPL announcement/description protocol -- was xPLDiag



Ian Lowe wrote:

> >There is a a fundemental conflict at the heart of these
discussions..
>
> Nah - there's a mindset shift needed perhaps, but it's not a conflict.
>
> > However, we don't write any of our applications in a cross
platform
> manner - in fact, if > cross-platform was a goal, that would rule
out
> anything written in .NET.
>
> *cough* mono *cough* .Net is portable to Linux and MacOS. As long as
you
> don't invoke win32 calls in your code.

Maybe it is technically possible, but I still don't think I'd choose
.NET if I knew I needed to write a Mac or Linux version too.

> > Unless we stop writing in .NET, xPL will always be a Windows
oriented
> system - but just > how many developers would we have left if we
took
> that path?  I seem to be the only
> > Windows coder here that prefers not to program in .NET.
>
> Cross platform support doesn't mean that we have to write our own
> applications in a cross platform way, nor that we have to write apps
> that can be recompiled across the entire spectrum of OSes. It simply
> means that we have to enforce nothing within the protocol that *can't*
> run cross platform.
>
> There's a fundamental difference between the Protocol being platform
> agnostic, and all applications being written that way. We need to be
> platform agnostic, we *don't* need to write all of our apps that way.
>
I agree, but a protocol is nothing without applications that use it.
But don't get me wrong, I don't really want to go round banging a
cross-platform drum.  If someone asked me if we should make xPL
Windows-only, I'd have said "yes" without batting an eyelid :-)

> > But in any case, how many of us actually want to test our
applications
> on multiple
> > platforms that we have no interest in ourselves?
>
> Very few I would suspect.
>
> > A lot of the issues that are being discussed (such as whether
xPLHal
> should be
> > mandatory) would not be such a problem if we stopped being
> half-hearted about platforms > and made a decision between being
either
> Windows-only, or a *genuine* cross-platform
> > implementation, covering both apps and protocol.
>
> Just because someone ports Linux to your microwave doesn't mean that
> anyone expects to be able to run any app without modification on that
> platform.
>
> If we state that the minimum level to support a "platform"
is a working
> hub, xplhal and development framework, then we have a solid platform.
>
> In most cases, chopping the logic around between platforms is a lot
> simpler once the basic elements are in place - if we provide those
basic
> elements, it's over to the experts on that platform to make it work.
>
> Point in case - you have written a C++ Hub for windows. Nobody now
> expects you (nor should they) to port it to OSX, Linux, VMS(!) etc.
> Instead, it would now be up to someone like Gerry to make sure that
the
> best practice agreed for the C++ Hub on windows is now implemented
> across on Java. If someone wants an OSX version... Then they can code
> one from the examples already produced.
>
If I'd structured the SDK that all my apps (including the hub) in the
same way that I design game engine code at work, it would be very simple
indeed to port the hub, or any of the other apps.  There would be
nothing in the hub code that is Windows specific, and the SDK would have
the  platform-specific parts carefully abstracted and easily replaced.
Once the SDK was ported, building new versions of the apps on other
platforms would become almost as simple as a recompile.  The point is
that it's not that hard to be cross-platform, but it is harder than just
bumbling along in Windows-land.

Mal





xPL Main Index | xPL Thread Index | xPL Home | Archives Home

Comments to the Webmaster are always welcomed, please use this contact form . Note that as this site is a mailing list archive, the Webmaster has no control over the contents of the messages. Comments about message content should be directed to the relevant mailing list.