comp.lang.ada
 help / color / mirror / Atom feed
* [announcement] SYSAPI and SYSSVC for Windows
@ 2003-12-15 14:18 Ekkehard Morgenstern
  2003-12-15 15:10 ` Ekkehard Morgenstern
                   ` (4 more replies)
  0 siblings, 5 replies; 25+ messages in thread
From: Ekkehard Morgenstern @ 2003-12-15 14:18 UTC (permalink / raw)



Hello,

I'd like to announce the new version of my SYSAPI / SYSSVC packages for Windows.

This version provides the following features:
- uses features of Windows 2000 and XP (if present).
- synchronous 64-bit file I/O.
- asynchronous 64-bit file I/O.

The package contains:
- the SYSAPI DLL and import library for GNAT 3.15p or higher
- the source code and makefile for SYSAPI DLL (Visual C/C++ 7.0)
- the Ada spec and body files for SYSAPI and SYSSVC.
- two test programs with Ada source and executables.

The package requires:
- GNAT 3.15p or higher, might also work with other Ada compilers.
- Visual C/C++ 7.0 (only for recompilation of SYSAPI), might also work with
  other compilers.

You can download the package here:
http://www.ekkehardmorgenstern.de/ada-sysapisvc-03121501.zip

Since I'm a relative Ada newbie, it'd be great if someone could look over it
and tell me about inconsistencies, style problems or errors.

The package has been thoroughly tested, but I cannot give any guarantee that
it will always work under any circumstance. Use at your own risk!

Note: The Windows Platform SDK documentation now (02/2003) states that 
asynchronous file I/O is possible with Windows 95, 98 and ME (i.e. the 
comments from some years before where it said it wasn't possible have been 
removed). It could be that it's still not possible with those OSes, I cannot
verify this. If you can, please notify me of the results.

best wishes,
Ekkehard Morgenstern.




^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-15 14:18 [announcement] SYSAPI and SYSSVC for Windows Ekkehard Morgenstern
@ 2003-12-15 15:10 ` Ekkehard Morgenstern
  2003-12-15 17:10 ` Jeffrey Carter
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 25+ messages in thread
From: Ekkehard Morgenstern @ 2003-12-15 15:10 UTC (permalink / raw)



"Ekkehard Morgenstern" <ekkehard.morgenstern@onlinehome.de> wrote:
> Note: The Windows Platform SDK documentation now (02/2003) states that 
> asynchronous file I/O is possible with Windows 95, 98 and ME (i.e. the 
> comments from some years before where it said it wasn't possible have been 
> removed). It could be that it's still not possible with those OSes, I cannot
> verify this. If you can, please notify me of the results.

Indeed, in the API documentation for ReadFileEx() I found the confirmation
that on Windows 95, 98 and ME, there's no asynchronous file access.

I just fixed the code to emulate asychronous file I/O on these OSes by
using synchronous I/O instead (untested, but should work).

Download the new version here:

http://www.ekkehardmorgenstern.de/ada-sysapisvc-03121502.zip

Regards,
Ekkehard Morgenstern.





^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-15 14:18 [announcement] SYSAPI and SYSSVC for Windows Ekkehard Morgenstern
  2003-12-15 15:10 ` Ekkehard Morgenstern
@ 2003-12-15 17:10 ` Jeffrey Carter
  2003-12-15 18:38   ` Ekkehard Morgenstern
  2003-12-15 20:44 ` David Marceau
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 25+ messages in thread
From: Jeffrey Carter @ 2003-12-15 17:10 UTC (permalink / raw)


Ekkehard Morgenstern wrote:

> I'd like to announce the new version of my SYSAPI / SYSSVC packages
> for Windows.

What are they? What do they do?

-- 
Jeff Carter
"In the frozen land of Nador they were forced to
eat Robin's minstrels, and there was much rejoicing."
Monty Python & the Holy Grail
70




^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-15 17:10 ` Jeffrey Carter
@ 2003-12-15 18:38   ` Ekkehard Morgenstern
  2003-12-16  0:25     ` Stephen Leake
  0 siblings, 1 reply; 25+ messages in thread
From: Ekkehard Morgenstern @ 2003-12-15 18:38 UTC (permalink / raw)



"Jeffrey Carter" <spam@spam.com> wrote:
> > I'd like to announce the new version of my SYSAPI / SYSSVC packages
> > for Windows.
> 
> What are they? What do they do?

SYSAPI is a package that interfaces directly to the Microsoft Windows API.
It's not a direct binding to the Windows DLLs however; it is a DLL that
interfaces to Windows. The reason for this is that I'd like to encapsulate
access to the Windows API in a way that can bridge platform dependencies.
There are different platforms of Windows: Windows 95, 98, ME, NT, 2000 and
XP; all are distinct with distinct features, and they need specialized code
to handle them properly. 

I tried using the Win32Ada binding, but it covers only Windows NT 4.0 and
Windows 95, which are both very outdated (from 1995). So I got the idea to
write my own. GNAT's tools for Windows DLL binding also seem to be outdated,
and so that's another reason for providing my own abstraction. And while it
would be possible perhaps to create import libraries to use directly from
Ada, I think it's better to encapsulate the system dependencies away.

SYSSVC provides an Ada server task to access the SYSAPI library from a 
central point, and with an Ada interface. So it's possible to write Ada
programs that use the features of SYSAPI without knowing of the underlying
platform (Windows in this case). I plan to port SYSSVC to other platforms
as well.

I will also add windowing and graphics support (especially for DirectX 
Graphics, formerly known as DirectDraw and Direct 3D), and also audio and
video support.

I know this will take some time, but I think it's a good project to 
contribute something to the Ada community as well as my own projects.

For now, it contains only file services, namely 64-bit synchronous and
asynchronous services. I've seen that the GNAT libraries do not provide
those, and hence I had to write my own. I need 64-bit file I/O for a 
database project of my own (to allow for files bigger than 4 GB).





^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-15 14:18 [announcement] SYSAPI and SYSSVC for Windows Ekkehard Morgenstern
  2003-12-15 15:10 ` Ekkehard Morgenstern
  2003-12-15 17:10 ` Jeffrey Carter
@ 2003-12-15 20:44 ` David Marceau
  2003-12-16  0:34   ` Ekkehard Morgenstern
  2003-12-17 12:05 ` Dmitry A. Kazakov
  2003-12-20 19:24 ` Ekkehard Morgenstern
  4 siblings, 1 reply; 25+ messages in thread
From: David Marceau @ 2003-12-15 20:44 UTC (permalink / raw)


Ekkehard Morgenstern wrote:
> Note: The Windows Platform SDK documentation now (02/2003) states that
> asynchronous file I/O is possible with Windows 95, 98 and ME (i.e. the

1)Go to msdn.microsoft.com and check out the device driver developer kit aka
"DDK".
2)The book "Microsoft...Guide for System Engineers..." discusses how to create
virtual device drivers(VXD's and VSD's).

You'll definitely be able to confirm everything you want here.  There are third
party DDK tools like Vireo that might also have answers for you.

Cheers :)



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-15 18:38   ` Ekkehard Morgenstern
@ 2003-12-16  0:25     ` Stephen Leake
  2003-12-16  0:56       ` Ekkehard Morgenstern
  0 siblings, 1 reply; 25+ messages in thread
From: Stephen Leake @ 2003-12-16  0:25 UTC (permalink / raw)
  To: Ekkehard Morgenstern; +Cc: comp.lang.ada

"Ekkehard Morgenstern" <ekkehard.morgenstern@onlinehome.de> writes:

> "Jeffrey Carter" <spam@spam.com> wrote:
> > > I'd like to announce the new version of my SYSAPI / SYSSVC packages
> > > for Windows.
> > 
> > What are they? What do they do?
> 
> SYSAPI is a package that interfaces directly to the Microsoft Windows API.

More precisely, to a _very_ small subset, dealing with synchronous and
asynchronous file IO.

> I will also add windowing and graphics support (especially for DirectX 
> Graphics, formerly known as DirectDraw and Direct 3D), and also audio and
> video support.

Before you do that, you should look at the other Ada Windows bindings
out there; see www.adapower.com. Rather than start another one,
consider adding to one of those; that will be much more useful.

> For now, it contains only file services, namely 64-bit synchronous and
> asynchronous services. I've seen that the GNAT libraries do not provide
> those, and hence I had to write my own. I need 64-bit file I/O for a 
> database project of my own (to allow for files bigger than 4 GB).

ok. Even better would be to add this to the GNAT Ada.Text_IO runtime!
If you get it working, I bet ACT would be happy to include it in GNAT.

As for style, it is better to provide at least some comments in the
spec saying what the functions do. Since you say these are not thin
bindings, I have no idea what the various functions are for, beyond
the English meaning of their names.

You have constants CFALSE and CTRUE in the spec; that doesn't sound
like a thick Ada binding, it sounds like a thin one. Almost every
function returns a CBOOL, or has a CBOOL out parameter; what do they
mean? A thick Ada binding should raise exceptions for errors (or one
exception, with an error message string).

-- 
-- Stephe




^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-15 20:44 ` David Marceau
@ 2003-12-16  0:34   ` Ekkehard Morgenstern
  0 siblings, 0 replies; 25+ messages in thread
From: Ekkehard Morgenstern @ 2003-12-16  0:34 UTC (permalink / raw)



"David Marceau" <davidmarceau@sympatico.ca> wrote:
> Ekkehard Morgenstern wrote:
> > Note: The Windows Platform SDK documentation now (02/2003) states that
> > asynchronous file I/O is possible with Windows 95, 98 and ME (i.e. the
> 
> 1)Go to msdn.microsoft.com and check out the device driver developer kit aka
> "DDK".
> 2)The book "Microsoft...Guide for System Engineers..." discusses how to create
> virtual device drivers(VXD's and VSD's).
> 
> You'll definitely be able to confirm everything you want here.  There are third
> party DDK tools like Vireo that might also have answers for you.

Thank you very much actually for bringing my attention to the DDK! :)

This particular project doesn't need the DDK, just the regular SDK, and I 
corrected my point already in another post in this thread, but your comment
made me go look again for the DDK on Microsoft's website! :)

I long wanted to write a filing system for Windows (a database actually with
filing system interface), and perhaps I can even do it with Ada, if I write
a device driver abstraction kit for my system service library or similar! :)

I know that in Longhorn, Microsoft plans to ship a database with the filing
system, but AFAIK it's not official yet what it will be like or when it will be
available. Yet, I still want to study my own filing system approach and the
DDK hopefully will enable me to. :)

I am pleasantly surprised that the DDK is now available almost free of charge,
a big change compared to earlier this year, when it was very expensive! :)

I'm also a big fan of virtual device drivers, and I'd write many if I could.
With the DDK, I'll perhaps soon be able to. :)

For example, picture a virtual device driver that would enable any application
to create windows and graphics using regular file I/O. This would simplify
programming a lot. I have written similar stuff already for AmigaOS, and it
was only the price of the DDK or the MSDN subscription that stopped me from
doing that on Windows. Now that I can order the DDK separately almost for free,
things look brighter and new possibilities arise (and perhaps not just for me)! :)

best wishes,
Ekkehard. :)




^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-16  0:25     ` Stephen Leake
@ 2003-12-16  0:56       ` Ekkehard Morgenstern
  2003-12-16  2:47         ` Ludovic Brenta
  2003-12-16  5:36         ` [announcement] SYSAPI and SYSSVC for Windows tmoran
  0 siblings, 2 replies; 25+ messages in thread
From: Ekkehard Morgenstern @ 2003-12-16  0:56 UTC (permalink / raw)



"Stephen Leake" <stephen_leake@acm.org> wrote:
> > SYSAPI is a package that interfaces directly to the Microsoft Windows API.
> 
> More precisely, to a _very_ small subset, dealing with synchronous and
> asynchronous file IO.

That statement of mine didn't elaborate on the scope of the package, 
I clarified that a couple of paragraphs later in my original post, to which
you also replied. Please read the entire post before you reply to anything.
This prevents things from being taken out of context. :)

> > I will also add windowing and graphics support (especially for DirectX 
> > Graphics, formerly known as DirectDraw and Direct 3D), and also audio and
> > video support.
> 
> Before you do that, you should look at the other Ada Windows bindings
> out there; see www.adapower.com. Rather than start another one,
> consider adding to one of those; that will be much more useful.

I've looked at a couple of other Ada Windows bindings, and didn't find them
satisfying, either because they're out of date, or because they're too 
expensive. I also explained this point in another post of this thread. :)

I'm not sure whether one of the existing packages can be extended.

Win32Ada looks like it needs a big update, and I don't have the time to do
an update of the entire binding. Also, since the GNAT DLL tools cannot link
to the new XP libraries (because of all-Stdcall exports), I decided to
abstract things with a DLL specifically written for GNAT.

> > For now, it contains only file services, namely 64-bit synchronous and
> > asynchronous services. I've seen that the GNAT libraries do not provide
> > those, and hence I had to write my own. I need 64-bit file I/O for a 
> > database project of my own (to allow for files bigger than 4 GB).
> 
> ok. Even better would be to add this to the GNAT Ada.Text_IO runtime!
> If you get it working, I bet ACT would be happy to include it in GNAT.

It would require file size and positioning APIs to support Large_Integers.

It would also require that there's a dynamic binding to some of the Windows
API functions. For example, GetFileSizeEx() is supported only on Windows
2000 and XP, while GetFileSize() is cumbersome to use but works with older
releases as well. 

I could modify GNAT if I get the source and a proper compilation environment
for it. :)

I suspect GNAT's Windows support hasn't been updated for a while, and 
somebody's got to do that. :)

> As for style, it is better to provide at least some comments in the
> spec saying what the functions do. Since you say these are not thin
> bindings, I have no idea what the various functions are for, beyond
> the English meaning of their names.

Yes, I've not added comments in some of the source files, I will when
I get around to it. :)

> You have constants CFALSE and CTRUE in the spec; that doesn't sound
> like a thick Ada binding, it sounds like a thin one. Almost every
> function returns a CBOOL, or has a CBOOL out parameter; what do they
> mean? A thick Ada binding should raise exceptions for errors (or one
> exception, with an error message string).

Perhaps you have misunderstood the concept. I've explained what the two
packages do already in my original post. 

SYSAPI is the layer that sits directly on top of the Windows API,
a thin layer or so, you might say.

SYSSVC provides the Ada-related services to call SYSAPI. You should also
take a look at the SYSSVC package and its spec file. I do throw exceptions
for failed I/O requests in SYSSVC. So that provides the thick layer, I guess.

But thanks for having a look at my code anyway! :)

Best wishes,
Ekkehard.




^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-16  0:56       ` Ekkehard Morgenstern
@ 2003-12-16  2:47         ` Ludovic Brenta
  2003-12-16 17:45           ` Ekkehard Morgenstern
  2003-12-16  5:36         ` [announcement] SYSAPI and SYSSVC for Windows tmoran
  1 sibling, 1 reply; 25+ messages in thread
From: Ludovic Brenta @ 2003-12-16  2:47 UTC (permalink / raw)


"Ekkehard Morgenstern" <ekkehard.morgenstern@onlinehome.de> writes:

> I could modify GNAT if I get the source and a proper compilation environment
> for it. :)

The sources are available[1] for you to modify freely as you will.
That is what makes GNAT Free Software.  As for the proper compilation
environment, there are several Free operating systems available to
choose from, all of which are vastly superior (IMHO) to Windows.

[1] ftp://ftp.cs.nyu.edu/pub/gnat

> I suspect GNAT's Windows support hasn't been updated for a while, and 
> somebody's got to do that. :)

Nah.  Somebody's got to switch to a Free operating system, thereby
becoming Free instead of Captive of one OS supplier.  As long as you
program specifically for Windows, you are Captive.

-- 
Ludovic Brenta.



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-16  0:56       ` Ekkehard Morgenstern
  2003-12-16  2:47         ` Ludovic Brenta
@ 2003-12-16  5:36         ` tmoran
  2003-12-16 17:30           ` Ekkehard Morgenstern
  1 sibling, 1 reply; 25+ messages in thread
From: tmoran @ 2003-12-16  5:36 UTC (permalink / raw)


>> Before you do that, you should look at the other Ada Windows bindings
>> out there; see www.adapower.com. Rather than start another one,
>> consider adding to one of those; that will be much more useful.
>
>I've looked at a couple of other Ada Windows bindings, and didn't find them
>satisfying, either because they're out of date, or because they're too
>expensive.
  Interesting.  I only know of one which, in its full-up version, costs
anything at all.  What did you find too expensive?  As to up-to-date,
it's always a hazard when you depend entirely on one person's available
time and his pleasure as the sole motivation for continuing support.

>I also explained this point in another post of this thread. :)
  My newsreader (and Google groups) seems to have missed this.   Could
you re-explain please?



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-16  5:36         ` [announcement] SYSAPI and SYSSVC for Windows tmoran
@ 2003-12-16 17:30           ` Ekkehard Morgenstern
  0 siblings, 0 replies; 25+ messages in thread
From: Ekkehard Morgenstern @ 2003-12-16 17:30 UTC (permalink / raw)



<tmoran@acm.org> wrote:
> >I've looked at a couple of other Ada Windows bindings, and didn't find them
> >satisfying, either because they're out of date, or because they're too
> >expensive.
>   Interesting.  I only know of one which, in its full-up version, costs
> anything at all.  What did you find too expensive?  As to up-to-date,
> it's always a hazard when you depend entirely on one person's available
> time and his pleasure as the sole motivation for continuing support.

So, then tell me of all the free Ada bindings for Windows that support the
latest APIs of Windows XP, I'd be curious to know! Would save me a lot of
work! :)
 
> >I also explained this point in another post of this thread. :)
>   My newsreader (and Google groups) seems to have missed this.   Could
> you re-explain please?

I wrote it in the 4th post of this thread (at the time of this writing):

"I tried using the Win32Ada binding, but it covers only Windows NT 4.0 and
Windows 95, which are both very outdated (from 1995). So I got the idea to
write my own. GNAT's tools for Windows DLL binding also seem to be outdated,
and so that's another reason for providing my own abstraction. And while it
would be possible perhaps to create import libraries to use directly from
Ada, I think it's better to encapsulate the system dependencies away."

You might also want to read the remainder of that post.

As for other bindings listed on AdaPower, AdaHome etc., I tried to download
GWindows but it wouldn't compile and it's outdated anyway. IDEs like 
ObjectAda and AdaGide apparently haven't been maintained properly for years,
as well.

My SYSSVC/SYSAPI library is very small and covers only specific purposes,
but it satisfies my needs for now, and I will extend it of course to provide
up-to-date bindings. I do not wish to compete with other libraries, I just
want to provide an alternate way of doing things. :)

Taken that I took only two days to write it, I think I will make more 
progress with it soon. :)





^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-16  2:47         ` Ludovic Brenta
@ 2003-12-16 17:45           ` Ekkehard Morgenstern
  2003-12-16 19:54             ` Ludovic Brenta
  0 siblings, 1 reply; 25+ messages in thread
From: Ekkehard Morgenstern @ 2003-12-16 17:45 UTC (permalink / raw)



"Ludovic Brenta" <ludovic.brenta@insalien.org> wrote:
> > I could modify GNAT if I get the source and a proper compilation environment
> > for it. :)
> 
> The sources are available[1] for you to modify freely as you will.
> That is what makes GNAT Free Software.  As for the proper compilation
> environment, there are several Free operating systems available to
> choose from, all of which are vastly superior (IMHO) to Windows.
> 
> [1] ftp://ftp.cs.nyu.edu/pub/gnat

Thank you! I recall having seen the sources there, but I didn't download them.
Thanks for bringing that back to my attention! :)

> > I suspect GNAT's Windows support hasn't been updated for a while, and 
> > somebody's got to do that. :)
> 
> Nah.  Somebody's got to switch to a Free operating system, thereby
> becoming Free instead of Captive of one OS supplier.  As long as you
> program specifically for Windows, you are Captive.

Oh c'mon. I still have to use Windows because the applications I use aren't
available on GNU/Linux, plus I invested a lot into my Windows system, and
I don't want to toss that overboard.

But I will set up a GNU/Linux box for my private projects as well, because
I have to to create code for it (Cygwin might do as well, but it's not the
same as a real GNU/Linux box).

Windows certainly can't be dealt with by ignoring it. It's the big mistake
IMO of the GNU/Linux community to do that. Why is the Wine project not 
finished yet, the Windows API is so easy to emulate! It could permit 
running at least some of the Windows apps on GNU/Linux. But the real strength
of Windows is often overlooked: It's its components! Windows XP alone
comes with over 1.5 GB of components. Where's the .NET/CLR port or emulation
for GNU/Linux? It could boost GNU/Linux server sales.

Where are the good, easy-to-use desktops for GNU/Linux? As long as you have
to touch a single shell file to get your machine to run, GNU/Linux will be
no option for the user who wants an easy-to-use system.

People don't even update their Windows with the latest Windows Update, and
then their machines don't run properly. If the GNU/Linux community was a 
bit more clever, they would exploit the situation and provide a mega-easy
GNU/Linux that is attractive to the non-tech user.





^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-16 17:45           ` Ekkehard Morgenstern
@ 2003-12-16 19:54             ` Ludovic Brenta
  2003-12-16 22:09               ` Ekkehard Morgenstern
  0 siblings, 1 reply; 25+ messages in thread
From: Ludovic Brenta @ 2003-12-16 19:54 UTC (permalink / raw)


"Ekkehard Morgenstern" <ekkehard.morgenstern@onlinehome.de> writes:

> "Ludovic Brenta" <ludovic.brenta@insalien.org> wrote:
> > Nah.  Somebody's got to switch to a Free operating system, thereby
> > becoming Free instead of Captive of one OS supplier.  As long as you
> > program specifically for Windows, you are Captive.
> 
> Oh c'mon. I still have to use Windows because the applications I use aren't
> available on GNU/Linux, plus I invested a lot into my Windows system, and
> I don't want to toss that overboard.

As I said: your investment in Windows-specific programs made you
Captive.  You are not alone in this situation.

> But I will set up a GNU/Linux box for my private projects as well, because
> I have to to create code for it (Cygwin might do as well, but it's not the
> same as a real GNU/Linux box).
> 
> Windows certainly can't be dealt with by ignoring it. It's the big mistake
> IMO of the GNU/Linux community to do that. Why is the Wine project not 
> finished yet, the Windows API is so easy to emulate! It could permit 
> running at least some of the Windows apps on GNU/Linux.

It does permit running some of the Windows apps on GNU/Linux.  Wine
has been production-worthy for a couple of years now.  A few months
ago, I was running Microsoft Visual SourceSafe on top of Wine on my
GNU/Linux box at work.  And Microsoft Office runs on top of
CodeWeaver's enhanced Wine, called CrossOver Office.  This is possible
because Wine is free for all to enhance and modify.

Now, the poor quality of Microsoft applications (especially WRT
security and viruses) makes it, ah, difficult to choose them when
you've got free alternatives.  Hence the lack of interest in running
Microsoft apps on GNU/Linux.

> But the real strength of Windows is often overlooked: It's its
> components! Windows XP alone comes with over 1.5 GB of
> components. Where's the .NET/CLR port or emulation for GNU/Linux? It
> could boost GNU/Linux server sales.

Most GNU/Linux or {Free,Net,Open}BSD distributions come with much,
much more than 1.5 Gb of libraries, and it increases by the day.  Not
only are the libraries there, you can also inspect their source code
and get in touch with their developers.  You can extend them to suit
your needs, and have your changes merged into the main line of
development.  Try that with components supplied by Microsoft.

But for people who just cannot think outside the wonderful world of
Microsoft, there is a project called Mono[1] to provide a
.NET-compliant platform on GNU/Linux.  Complete with the freedom to
modify it, of course.

[1] http://www.go-mono.com

> Where are the good, easy-to-use desktops for GNU/Linux? As long as you have
> to touch a single shell file to get your machine to run, GNU/Linux will be
> no option for the user who wants an easy-to-use system.

They are here: http://www.gnome.org, http://www.kde.org, and included
in all major distributions.  BTW, both include a component framework à
la Microsoft DCOM.

Besides, I do not want an easy-to-use system.  I want a powerful
system which I can control and modify to suit my needs.  This is
particularly important, IMHO, when developing software that depends on
gigabytes of other software.

> People don't even update their Windows with the latest Windows Update, and
> then their machines don't run properly. If the GNU/Linux community was a 
> bit more clever, they would exploit the situation and provide a mega-easy
> GNU/Linux that is attractive to the non-tech user.

But the GNU/Linux community does exploit the situation properly.  So
do the *BSD communities.

For technically savvy users, Debian, Gentoo or the *BSD's are the
ultimate distributions where updates are made available every day.
For newbies, Mandrake, SuSE, Knoppix or LindowsOS provide the ultimate
in ease of installation.  Just take your pick: you are Free.  For more
information, you should pay a visit to http://www.distrowatch.com.

And most of the distros have package management systems (apt or RPM)
that put Microsoft to shame.  And yes, they do run properly whether or
not you update them, because they are much less vulnerable to viruses
than Windows.

-- 
Ludovic Brenta.



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-16 19:54             ` Ludovic Brenta
@ 2003-12-16 22:09               ` Ekkehard Morgenstern
  2003-12-17 15:24                 ` Ludovic Brenta
  0 siblings, 1 reply; 25+ messages in thread
From: Ekkehard Morgenstern @ 2003-12-16 22:09 UTC (permalink / raw)



"Ludovic Brenta" <ludovic.brenta@insalien.org> wrote:
> As I said: your investment in Windows-specific programs made you
> Captive.  You are not alone in this situation.

Yes, and it continues. People are forced to use Windows for some
reason or other, and that limits their OS choices.

I used to have a GNU/Linux-only system in 1996, but there were bugs
in some IPC code, and I couldn't use it and returned to Windows.

As a programmer, I don't really care on what platform I develop on,
as long as it works.

As a user, I'm forced to use Windows, because many drivers are only
available on Windows. For example, there are ISDN and DSL drivers for
GNU/Linux, but the setup might be complicated, and it might take days
or weeks to get them to work. USB drivers might also be a problem,
and I have plenty of USB devices. Also, my 3D graphics card might not
be supported, or my TV card, and so on.

I know there's plenty of good programs in the GNU/Linux, *BSD etc.
program libraries. But I would have either to get my machine to run
any of the free OSes properly, or to install it on a seperate machine
with a less complicated set-up and use the Windows box as a server.

As for hardware drivers, Windows drivers are often (esp. if certified
by Microsoft) more fault-tolerant and reliable.

However, the driver model is one of Windows' weak points, since it's
not upward compatible enough (also applies to the APIs). Hence, many
companies deliver uncertified drivers with lots of bugs, often more
of them than corresponding GNU/Linux drivers.

BTW, my SYSAPI / SYSSVC library is fully open-source! I yet need to add
a GPL license, however. The source is included in the archive as I stated.

I have plans for a new kind of open-source operating system, and it might
support running GNU/Linux, *BSD, and Windows apps. For example, I might
provide an interface to load GNU/Linux drivers. I will use Ada as an
implementation language. For now, it will run on top of some host OS,
currently Windows, and GNU/Linux and/or FreeBSD in the future.

> It does permit running some of the Windows apps on GNU/Linux.  Wine
> has been production-worthy for a couple of years now.

*cough* I've read (and seen) other things! ;)

Luckily, there's a list of programs that are known to run.

> Now, the poor quality of Microsoft applications (especially WRT
> security and viruses) makes it, ah, difficult to choose them when
> you've got free alternatives.  Hence the lack of interest in running
> Microsoft apps on GNU/Linux.

I have no security or virus problems. I've been using Windows Update
once a week to install the latest patches, and recently I've also
installed a virus scanner that found no viruses so far.

Windows XP has a built-in firewall that is good enough for daily use
(if it's switched on, that is! ;) ).

But yeah, price is an issue. Free OSes like GNU/Linux often come
in distributions with plenty of packages, and if you download them
yourself, you don't even need to pay for that.

However, some of the better drivers for GNU/Linux don't come for free,
and then the advantage of it can dwindle. Like, a good sound card driver,
or a good NTFS driver cost quite some buck.

In a sense, it's also a money machinery, whether or not desired so by
its authors.

So it's difficult to decide, especially on some desktop workstation,
which OS to choose from.

A server with memory, processor(s), disk and ethernet is a different
kind of beast than a multimedia desktop for watching TV, playing
movies and DVDs, creating and listening to music, or playing or
authoring 3D games, plus plenty of add-on hardware for PCI, AGP or
USB buses. That's why it might be a problem for some people to decide
for one of the free OSes if there's no clarity about whether the
hardware is supported.

It happened once, at my former employer, when I installed a server
with some GNU/Linux and the machine hung every now and then. If you
don't have time to fix the problem, you wipe GNU/Linux off your
harddisk and install Windows 2000 or something, which works right
out of the box, and even better after an update.

There should be something like a GNU/Linux software quality
assurance group that makes sure that all available packages do indeed
work.

I knew the GNU project even before the Linux kernel was developed,
and I had GNU ports for AmigaOS. And I still remember that GCC didn't
work, because it was compiled with itself and every GNU tool suffered
the same problems. And the only comment from the distributor in the
"ReadMe" file was "here's the latest version, I didn't get around to
test it". ;) -- of course, later on, there were some good GNU ports
for AmigaOS, also before GNU/Linux was a topic.

> Most GNU/Linux or {Free,Net,Open}BSD distributions come with much,
> much more than 1.5 Gb of libraries, and it increases by the day.  Not
> only are the libraries there, you can also inspect their source code
> and get in touch with their developers.  You can extend them to suit
> your needs, and have your changes merged into the main line of
> development.  Try that with components supplied by Microsoft.

That's true of course, but you're talking about program packages,
not components. Unfortunately, there's no documentation for all the
OLE components provided in Windows. :(

You have to use an OLE browser and figure the details out yourself.

> But for people who just cannot think outside the wonderful world of
> Microsoft, there is a project called Mono[1] to provide a
> .NET-compliant platform on GNU/Linux.  Complete with the freedom to
> modify it, of course.
>
> [1] http://www.go-mono.com

Thanks for the link! :)

> They are here: http://www.gnome.org, http://www.kde.org, and included
> in all major distributions.  BTW, both include a component framework �
> la Microsoft DCOM.

Now, which one to choose? GNOME or KDE? And which apps run where?

I'm surprised you think that they're easy to use. Perhaps some things
changed. I haven't used GNOME yet, and the latest KDE I've seen was 2.0.

> Besides, I do not want an easy-to-use system.  I want a powerful
> system which I can control and modify to suit my needs.  This is
> particularly important, IMHO, when developing software that depends on
> gigabytes of other software.

Yeah, but how often do you actually modify it?

I certainly don't have enough time to write my own sound card driver
for GNU/Linux or a better kernel that works properly (I haven't seen
the new 2.6 yet, but the versions of the 2.4 that I've seen and/or
their drivers weren't reliable).

I want to write application software and development tools foremost,
and then I have to rely on the underlying system.

> But the GNU/Linux community does exploit the situation properly.  So
> do the *BSD communities.
>
> For technically savvy users, Debian, Gentoo or the *BSD's are the
> ultimate distributions where updates are made available every day.

Yes, I once bought a Debian distrib, and the installer wasn't working.
This gives you the tech Debian feel that makes you wish for a hammer.

Not that I'm impatient or anything, but after a couple of days of
messing with it I returned to good old Windoze. ;)

Untested distributions, mmmm! ;)

Perhaps next time I will download and compose my own distribution to
avoid such problems.

> For newbies, Mandrake, SuSE, Knoppix or LindowsOS provide the ultimate
> in ease of installation.  Just take your pick: you are Free.  For more
> information, you should pay a visit to http://www.distrowatch.com.

These distributions can become more expensive than Windows when you
update them regularly.

On the other hand, if they do indeed work, you can live with them
for years without or with selective updating, as you said below.

> And most of the distros have package management systems (apt or RPM)
> that put Microsoft to shame.

Don't forget that Windows has a simpler organization and nowadays,
Setup programs like InstallShield do all the installing jobs for the user.

The cross-depency stuff in the RPM's works only if it's configured
and tested properly. I often had it that an RPM installation broke
more than it added to the system. Perhaps it's a bad idea to rely
on scripts for installing.

But on Windows, there are also bad installers, even with InstallShield. ;)

> And yes, they do run properly whether or
> not you update them, because they are much less vulnerable to viruses
> than Windows.

That's true for most parts, but things like sendmail or the network
configuration can provide security risks too. Or bad access rights.

Especially Windows XP is quite safe when patched up properly.

(there's sendmail, httpd and inetd patches now for GNU/Linux etc. too,
things do evolve indeed)




^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-15 14:18 [announcement] SYSAPI and SYSSVC for Windows Ekkehard Morgenstern
                   ` (2 preceding siblings ...)
  2003-12-15 20:44 ` David Marceau
@ 2003-12-17 12:05 ` Dmitry A. Kazakov
  2003-12-17 15:00   ` Ekkehard Morgenstern
  2003-12-20 19:24 ` Ekkehard Morgenstern
  4 siblings, 1 reply; 25+ messages in thread
From: Dmitry A. Kazakov @ 2003-12-17 12:05 UTC (permalink / raw)


Ekkehard Morgenstern wrote:

> Note: The Windows Platform SDK documentation now (02/2003) states that
> asynchronous file I/O is possible with Windows 95, 98 and ME (i.e. the
> comments from some years before where it said it wasn't possible have been
> removed). It could be that it's still not possible with those OSes, I
> cannot verify this. If you can, please notify me of the results.

I have used async I/O under Win95/98 3-4 years back from now. That was
serial port I/O. It worked that time. Maybe it will not, just because MS
claims that it will. (:-))

-- 
Regards,
Dmitry A. Kazakov
www.dmitry-kazakov.de



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-17 12:05 ` Dmitry A. Kazakov
@ 2003-12-17 15:00   ` Ekkehard Morgenstern
  0 siblings, 0 replies; 25+ messages in thread
From: Ekkehard Morgenstern @ 2003-12-17 15:00 UTC (permalink / raw)



"Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> wrote:
> I have used async I/O under Win95/98 3-4 years back from now. That was
> serial port I/O. It worked that time. Maybe it will not, just because MS
> claims that it will. (:-))

In the meantime (as stated in another post in this thread), I found the
explanation in the ReadFileEx() API documentation:

On Windows 95/98/ME, asynchronous I/O works only with serial and TCP/IP
communication ports. Asynchronous I/O with disk files is permitted only
on Windows NT/2000/XP.

The other post of mine links to an updated version of my library which
emulates asynchronous file I/O with synchronous I/O for Win95/98/ME to
spare the programmer using the feature from getting an I/O error on these
platforms.

Asynchronous I/O is fun! :)

It's also a useful feature on UNIXes, like AIX and Solaris, and since
a couple of years, also available on GNU/Linux and the like. :)





^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-16 22:09               ` Ekkehard Morgenstern
@ 2003-12-17 15:24                 ` Ludovic Brenta
  2003-12-17 23:23                   ` Ekkehard Morgenstern
  2003-12-19 18:14                   ` Warren W. Gay VE3WWG
  0 siblings, 2 replies; 25+ messages in thread
From: Ludovic Brenta @ 2003-12-17 15:24 UTC (permalink / raw)


"Ekkehard Morgenstern" <ekkehard.morgenstern@onlinehome.de> writes:
> BTW, my SYSAPI / SYSSVC library is fully open-source! I yet need to add
> a GPL license, however. The source is included in the archive as I stated.

That's a good thing to hear.  It is very important that you do include
a copyright statement.

> I have plans for a new kind of open-source operating system, and it might
> support running GNU/Linux, *BSD, and Windows apps. For example, I might
> provide an interface to load GNU/Linux drivers. I will use Ada as an
> implementation language. For now, it will run on top of some host OS,
> currently Windows, and GNU/Linux and/or FreeBSD in the future.

Is this related to the AdaOS[1] project?  I thought that it was
stalled.

[1] http://www.adaos.net

> A server with memory, processor(s), disk and ethernet is a different
> kind of beast than a multimedia desktop for watching TV, playing
> movies and DVDs, creating and listening to music, or playing or
> authoring 3D games, plus plenty of add-on hardware for PCI, AGP or
> USB buses. That's why it might be a problem for some people to decide
> for one of the free OSes if there's no clarity about whether the
> hardware is supported.

I agree that GNU/Linux distributions lag behind in terms of support
for the latest multimedia hardware, especially on laptops.  I think
that the BSD's support even less fancy hardware than Linux does.  But
hey, if you want multimedia, you should be using a Macintosh anyway :)

> It happened once, at my former employer, when I installed a server
> with some GNU/Linux and the machine hung every now and then. If you
> don't have time to fix the problem, you wipe GNU/Linux off your
> harddisk and install Windows 2000 or something, which works right
> out of the box, and even better after an update.

The last time I had a machine that would hand every now and then was
in the Linux 1.0 or 1.2 days back in 1994/5.  I also had cases where
running Linux or OS/2 on some machine would reveal hardware bugs which
Windows could live with.  Nowadays this does not happen as much
anymore.

> There should be something like a GNU/Linux software quality
> assurance group that makes sure that all available packages do indeed
> work.

There is the Debian QA group[2] that does just that, not only for the
kernel but also for all the apps.  The BSD's have QA groups for the
operating system but not for the apps.

[2] http://qa.debian.org

> I knew the GNU project even before the Linux kernel was developed,
> and I had GNU ports for AmigaOS. And I still remember that GCC didn't
> work, because it was compiled with itself and every GNU tool suffered
> the same problems. And the only comment from the distributor in the
> "ReadMe" file was "here's the latest version, I didn't get around to
> test it". ;) -- of course, later on, there were some good GNU ports
> for AmigaOS, also before GNU/Linux was a topic.

Yes.  The GNU project never said they were making "products".  They
are "sharing experiences and knowledge".  They encourage users not to
have a consumer attitude, but to participate in enhancing the
software, and to stand up for their freedom.

> Now, which one to choose? GNOME or KDE? And which apps run where?

GNOME apps run on KDE; KDE apps run on GNOME.  They just load
different libraries in memory.  As for which one to choose, this is a
matter of taste.  If you want to program in Ada, GNOME is the way to
go because there is no Ada binding for KDE.

> I'm surprised you think that they're easy to use. Perhaps some things
> changed. I haven't used GNOME yet, and the latest KDE I've seen was 2.0.

Things have definitely changed.  GNOME is at version 2.4 and KDE at
3.1 (with 3.2 due out real soon now).  You should really check them
out before you make such bold statements as "they're not easy to use".

> > Besides, I do not want an easy-to-use system.  I want a powerful
> > system which I can control and modify to suit my needs.  This is
> > particularly important, IMHO, when developing software that depends on
> > gigabytes of other software.
> 
> Yeah, but how often do you actually modify it?

It has happened several times.  Other times, by inspecting the souce
code, I was able to discover a workaround for particular problems, or
even saw the bug in *my* software.

> I certainly don't have enough time to write my own sound card driver
> for GNU/Linux or a better kernel that works properly (I haven't seen
> the new 2.6 yet, but the versions of the 2.4 that I've seen and/or
> their drivers weren't reliable).
> 
> I want to write application software and development tools foremost,
> and then I have to rely on the underlying system.

Then, Debian is for you.  Use the stable distribution.  It does not
change often, so your target platform is not a moving target (the
moving target syndrome plagues distributions that are updated every 6
months).

> Yes, I once bought a Debian distrib, and the installer wasn't working.
> This gives you the tech Debian feel that makes you wish for a hammer.
> 
> Not that I'm impatient or anything, but after a couple of days of
> messing with it I returned to good old Windoze. ;)

Was that on a laptop with plenty of recent hardware?  Was that the
stable distribution?  Did you ask for help?  You should also check out
Knoppix, which is renowned for its outstanding hardware detection
feature.  FWIW, the beauty of Debian is that you don't normally have
to install more than once per machine.

> Untested distributions, mmmm! ;)
> 
> Perhaps next time I will download and compose my own distribution to
> avoid such problems.

Yes, that would help you understand how hard it is to put a distro
together.

> > And most of the distros have package management systems (apt or RPM)
> > that put Microsoft to shame.
> 
> Don't forget that Windows has a simpler organization and nowadays,
> Setup programs like InstallShield do all the installing jobs for the user.

I was not referring to "setup programs".  I was referring to "package
management".  This is different altogether.  Package management means
taking care of conflicts and dependencies between packages, and
keeping track of which package owns what file.  Windows is known for
DLL hell, which proper package management handles nicely.  (IBM's
AS/400 machines now called iSeries have had such a feature since 1988,
BTW, so there's really no excuse for Microsoft not to have it in
2003).

> The cross-depency stuff in the RPM's works only if it's configured
> and tested properly. I often had it that an RPM installation broke
> more than it added to the system. Perhaps it's a bad idea to rely
> on scripts for installing.

Indeed.  I switched from Red Hat to Debian because the RH distribution
did not contain some packages I wanted, and when I found RPMs from
other distros they would often break things.  Debian is the largest of
all distributions and does not suffer this problem to the same extent,
because most everything I want is just there already.

> That's true for most parts, but things like sendmail or the network
> configuration can provide security risks too. Or bad access rights.

But you'd only run sendmail on a server.  For a workstation you can
pretty much rely on things working just right.

-- 
Ludovic Brenta.



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-17 15:24                 ` Ludovic Brenta
@ 2003-12-17 23:23                   ` Ekkehard Morgenstern
  2003-12-19 18:14                   ` Warren W. Gay VE3WWG
  1 sibling, 0 replies; 25+ messages in thread
From: Ekkehard Morgenstern @ 2003-12-17 23:23 UTC (permalink / raw)



"Ludovic Brenta" <ludovic.brenta@insalien.org> wrote:
> Is this related to the AdaOS[1] project?  I thought that it was
> stalled.
> 
> [1] http://www.adaos.net

No, not at all, my project isn't related to AdaOS, but thanks
for the link!

My operating system is called DELOS, and I've been working on its
design on and off since 1989. DELOS means "Dynamic Environment
Layered Operating System". There's a rough overview of the project
in German on my website: http://www.ekkehardmorgenstern.de/delos.html

In the past few days I designed a filing system for use with it,
and I'll soon put that online too. I want to make the design public,
to prevent companies from patenting ideas and concepts that are 
meant for public use.

I already had to abandon the ideas of run-time optimizing virtual 
machines because of the Java Hotspot engine that Sun patented before
I got to publish my concept for it, and code-morphing techniques that
have been patented by Transmeta in the meantime. However, I'm sure
I will find new solutions for that that don't conflict with their
patents, no big deal so far.

DELOS will have much more depth and features than AdaOS, btw. 
My concept might be about 10 years ahead of the current OS industry,
but I don't know all OSes that exist, of course.

BTW, I think that SQL is not a good idea for an object-based 
database engine inside a OS. ASCII statements have to be created
and parsed and interpreted, steps that can be easily skipped.

OS/400 solves the database issue much more elegantly. Ideally,
the database commands should be embedded in the system's virtual
machine instruction set.

I think Ada might be the ideal language for DELOS, because it
forces the programmer to program cleanly to some extent, at least
much more so than C or C++. It's also a bit harder to learn
and so programmers have to have a certain maturity to use Ada.
If all levels of DELOS go open-source and public, I want to 
reduce the number of bugs introduced into the project by
inexperienced programmers. As long as I live at least, I might
be able to have a hand on what changes go into the system, if
they're necessary at all. I'll try to make the design as final
as possible, and reduce the number of changes that people might
wish for.

Ada might also help me to develop DELOS more quickly. In C/C++,
I often tend to write things and throw them away, because it's
not much effort and gets boring after a while. Ada takes much
more attention and is more interesting. I need some motivation
to carry on with the project. And at least I'm beginning to make
things public now so other people can try their luck with it. :)

I also need to fix myself on some design, which I'm currently
beginning to do.

That's also why I publish every flyspeck of Ada library that I
happen to write. ;)

This way I can manifest some path, at least. :)





^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-17 15:24                 ` Ludovic Brenta
  2003-12-17 23:23                   ` Ekkehard Morgenstern
@ 2003-12-19 18:14                   ` Warren W. Gay VE3WWG
  2003-12-20 12:37                     ` GNU/Linux distro wars (was: SYSAPI and SYSSVC for Windows) Ludovic Brenta
  1 sibling, 1 reply; 25+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-12-19 18:14 UTC (permalink / raw)


Ludovic Brenta wrote:

> "Ekkehard Morgenstern" <ekkehard.morgenstern@onlinehome.de> writes:
...
> Indeed.  I switched from Red Hat to Debian because the RH distribution
> did not contain some packages I wanted, and when I found RPMs from
> other distros they would often break things.  Debian is the largest of
> all distributions and does not suffer this problem to the same extent,
> because most everything I want is just there already.

I have been trying out Gentoo lately (www.gentoo.org). They seem to
have better Ada packages support than some other distros (this is
important if you're time pressed or lazy ;-). But depending
upon whether or not you insist on compiling everything
from sources or not, it is not for the faint of heart. There is
much less autoconfiguration for things like dhcp, ftp and such.
A "basic system" really is "basic". But I liked that, because you
only add what you expect to use.

Gentoo is great for those that want to compile optimized code for
their system and keep it up to date. In theory, with Gentoo, you
never need to do a system upgrade, since you can update it
piece-meal as time moves on (automated with their emerge command).
For developers like me, this is great (I hate wasting precious
time on system upgrades).

Ada packages support is what coaxed me into trying it. I have a few
small issues with it (bugs to report), and some of the Ada packages
are not fully bug free yet. But they obviously have plans to fix
these at some point. I was impressed to see that they have packaged
things like Booch components and the Charles library (as only two
examples). They have even packaged the cbind tool, for generating
thin Ada bindings from C code.

Compared to Debian, Gentoo has the advantage that they are
more or less, software license agnostic. They support many many
different license schemes, which seems to contrast with Debian.
Depending upon how important this is to you, the Debian approach
may be less than optimal for some users.

Gentoo's ebuild packages concept seems to work well too. Gentoo borrows
some of the good FreeBSD concepts (being source based), and applied
it to Linux. Keep up the good work guys!   See http://www.gentoo.org

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




^ permalink raw reply	[flat|nested] 25+ messages in thread

* GNU/Linux distro wars (was: SYSAPI and SYSSVC for Windows)
  2003-12-19 18:14                   ` Warren W. Gay VE3WWG
@ 2003-12-20 12:37                     ` Ludovic Brenta
  2003-12-22 17:48                       ` GNU/Linux distro wars Warren W. Gay VE3WWG
  0 siblings, 1 reply; 25+ messages in thread
From: Ludovic Brenta @ 2003-12-20 12:37 UTC (permalink / raw)


"Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> writes:

> Ludovic Brenta wrote:
> 
> > "Ekkehard Morgenstern" <ekkehard.morgenstern@onlinehome.de> writes:
> ...
> > Indeed.  I switched from Red Hat to Debian because the RH distribution
> > did not contain some packages I wanted, and when I found RPMs from
> > other distros they would often break things.  Debian is the largest of
> > all distributions and does not suffer this problem to the same extent,
> > because most everything I want is just there already.
> 
> I have been trying out Gentoo lately (www.gentoo.org). They seem to
> have better Ada packages support than some other distros (this is
> important if you're time pressed or lazy ;-).

Now you're insulting me :) I've been packaging Ada software for Debian
since July this year, and my ambition is to make Debian the best Ada
platform around.

[...]
> Ada packages support is what coaxed me into trying it. I have a few
> small issues with it (bugs to report), and some of the Ada packages
> are not fully bug free yet. But they obviously have plans to fix
> these at some point. I was impressed to see that they have packaged
> things like Booch components and the Charles library (as only two
> examples). They have even packaged the cbind tool, for generating
> thin Ada bindings from C code.

I have packaged Charles for Debian, but not the Booch Components.  For
now I have 7 packages in unstable, and there are other packages
maintained by other people.  My packages are:

In unstable: asis, gnat, gnat-doc, gnat-gdb, gnat-glade,
libflorist-3.15p-1, libgtkada2

On my repository at ada-france (will be added to unstable shortly):
gnade, gnat-glade-doc, gnat-gps, libcharles0

All of these are available today in binary form.  There are several
other Ada-related packages in Debian, such as gnat-3.3 (the FSF
version of GNAT), ada-reference-manual, libgtkada, gvd, and gch.
Also, I have noted some bugs in the Gentoo packages like GPS.  I spend
a lot of time ensuring the Debian packages are as bug-free as
possible, and do not hesitate to patch the source code if I have to.

If anyone on this list wishes to package more stuff for Debian, I can
assist.  However, I am not an official Debian developer yet and I have
decided no to overtax my sponsor with gazillions of new packages. I
think I have already packaged most of the important Ada stuff, but if
you think there is something badly missing I will consider packaging
it.

-- 
Ludovic Brenta.



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [announcement] SYSAPI and SYSSVC for Windows
  2003-12-15 14:18 [announcement] SYSAPI and SYSSVC for Windows Ekkehard Morgenstern
                   ` (3 preceding siblings ...)
  2003-12-17 12:05 ` Dmitry A. Kazakov
@ 2003-12-20 19:24 ` Ekkehard Morgenstern
  4 siblings, 0 replies; 25+ messages in thread
From: Ekkehard Morgenstern @ 2003-12-20 19:24 UTC (permalink / raw)



The project is now GPL'ed. You can download the new version from

    http://www.ekkehardmorgenstern.de/projects.html

I also added lots of source comment. :)

best wishes,
Ekkehard.




^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: GNU/Linux distro wars
  2003-12-20 12:37                     ` GNU/Linux distro wars (was: SYSAPI and SYSSVC for Windows) Ludovic Brenta
@ 2003-12-22 17:48                       ` Warren W. Gay VE3WWG
  2003-12-22 19:33                         ` Duncan Sands
  2003-12-22 23:25                         ` Ludovic Brenta
  0 siblings, 2 replies; 25+ messages in thread
From: Warren W. Gay VE3WWG @ 2003-12-22 17:48 UTC (permalink / raw)


Ludovic Brenta wrote:

> "Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> writes:
>>Ludovic Brenta wrote:
>>>"Ekkehard Morgenstern" <ekkehard.morgenstern@onlinehome.de> writes:
>>...
>>>Indeed.  I switched from Red Hat to Debian because the RH distribution
>>>did not contain some packages I wanted, and when I found RPMs from
>>>other distros they would often break things.  Debian is the largest of
>>>all distributions and does not suffer this problem to the same extent,
>>>because most everything I want is just there already.
>>
>>I have been trying out Gentoo lately (www.gentoo.org). They seem to
>>have better Ada packages support than some other distros (this is
>>important if you're time pressed or lazy ;-).
> 
> Now you're insulting me :) I've been packaging Ada software for Debian
> since July this year, and my ambition is to make Debian the best Ada
> platform around.
> 
> [...]

I see the :) but I hope you don't see my post as a discouragement
to your efforts! Debian is a whole lot less work to install,
so I don't think Gentoo will every be everyone's choice. So
in short, keep up the good work!

>>Ada packages support is what coaxed me into trying it. I have a few
>>small issues with it (bugs to report), and some of the Ada packages
>>are not fully bug free yet. But they obviously have plans to fix
>>these at some point. I was impressed to see that they have packaged
>>things like Booch components and the Charles library (as only two
>>examples). They have even packaged the cbind tool, for generating
>>thin Ada bindings from C code.

I haven't checked recently, but I haven't seen a
stable >= GNAT-3.15p release available for Debian
(but I noticed that Gentoo had it).

> I have packaged Charles for Debian, but not the Booch Components.  For
> now I have 7 packages in unstable, and there are other packages
> maintained by other people.  My packages are:
> 
> In unstable: asis, gnat, gnat-doc, gnat-gdb, gnat-glade,
> libflorist-3.15p-1, libgtkada2
> 
> On my repository at ada-france (will be added to unstable shortly):
> gnade, gnat-glade-doc, gnat-gps, libcharles0

I have to say, that on the whole, seeing increased GNAT/Ada
support in Linux is great. Packaged Ada support makes it easier
for others like me that want to share their own packages,
without having to worry about how to teach the end [non-Ada]
users how to install the components that your software may
have dependancies for.

> All of these are available today in binary form.  There are several
> other Ada-related packages in Debian, such as gnat-3.3 (the FSF
> version of GNAT), ada-reference-manual, libgtkada, gvd, and gch.

How is the gcc-3.3 version >= gnat-3.15p in terms of passing
the ACATs tests? I've personally been avoiding the gcc-3.x
series for my own development until it stabilizes more. I
seem to provoke enough bugs in the stable versions of gnat
without using something less stable.

> Also, I have noted some bugs in the Gentoo packages like GPS.  I spend
> a lot of time ensuring the Debian packages are as bug-free as
> possible, and do not hesitate to patch the source code if I have to.

Yes, I had problems with GPS also (it was looking for a libpng shared
library that Gentoo doesn't offer out of the box). Some of their
other packages are still in "bug" status at present.

For the record, I haven't destroyed my debian instances just yet.
Both Debian and Gentoo have their own advantages and disadvantages.
I do however favour the compile everything from sources approach,
which seems to favour Gentoo. But overall, the
jury is still out ;-)

I did a FreeBSD stint for a while (good for firewalls), but
the Ada support there seemed to be on the decline.

> If anyone on this list wishes to package more stuff for Debian, I can
> assist.  However, I am not an official Debian developer yet and I have
> decided no to overtax my sponsor with gazillions of new packages. I
> think I have already packaged most of the important Ada stuff, but if
> you think there is something badly missing I will consider packaging
> it.

I may be using Charles more in the near future, but I still have
projects that use the Booch components (so I see that as being
important to me at least ;-)

If I ever get my next release of APQ out the door (perhaps after
the holiday season winds down), I would like to get APQ packaged
for both Debian and Gentoo. I think APQ represents the most
painless way to work with MySQL or PostgreSQL databases from
Ada (and soon Sybase, where supported). Shall I contact you
directly by email?

-- 
Warren W. Gay VE3WWG
http://home.cogeco.ca/~ve3wwg




^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: GNU/Linux distro wars
  2003-12-22 17:48                       ` GNU/Linux distro wars Warren W. Gay VE3WWG
@ 2003-12-22 19:33                         ` Duncan Sands
  2003-12-22 23:25                         ` Ludovic Brenta
  1 sibling, 0 replies; 25+ messages in thread
From: Duncan Sands @ 2003-12-22 19:33 UTC (permalink / raw)
  To: Warren W. Gay VE3WWG, comp.lang.ada

> I haven't checked recently, but I haven't seen a
> stable >= GNAT-3.15p release available for Debian
> (but I noticed that Gentoo had it).

There is no stable > GNAT-3.15p release.  IFAIK gcc-3.3
corresponds (more or less) to < 3.15p.  In my experience
3.15p has many fewer bugs.  The current gcc cvs tree has
many recent GNAT changes however, with more going in all
the time, so hopefully gcc-3.4 will be better.

Ciao,

Duncan.



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: GNU/Linux distro wars
  2003-12-22 17:48                       ` GNU/Linux distro wars Warren W. Gay VE3WWG
  2003-12-22 19:33                         ` Duncan Sands
@ 2003-12-22 23:25                         ` Ludovic Brenta
  2003-12-23 10:18                           ` Samuel Tardieu
  1 sibling, 1 reply; 25+ messages in thread
From: Ludovic Brenta @ 2003-12-22 23:25 UTC (permalink / raw)


"Warren W. Gay VE3WWG" <ve3wwg@cogeco.ca> writes:

> I see the :) but I hope you don't see my post as a discouragement to
> your efforts! Debian is a whole lot less work to install, so I don't
> think Gentoo will every be everyone's choice. So in short, keep up
> the good work!

Far from discouraging me, your post prompted me to expedite my
packaging of XML/Ada.  So there.  It's now on my repository at
http://www.ada-france.org/debian and waiting for a sponsor.  See, I'm
not an official Debian developer yet.  There is a lengthy screening
process before anyone is coopted.

> I haven't checked recently, but I haven't seen a stable >=
> GNAT-3.15p release available for Debian (but I noticed that Gentoo
> had it).

The latest stable version of Debian is 17 months old and counting; the
version of gnat in it is 3.14p.  My package for gnat 3.15p is in
unstable.  Due to some dependency problems, it is currently waiting to
go into testing.  The dependencies are libgtkada1 and gvd; promoting
gnat to testing would make them uninstallable.  I am in touch with the
maintainers to resolve this issue.  BTW, does Gentoo have such a
process for ensuring that the next stable version has as few
dependency problems as possible?

> I have to say, that on the whole, seeing increased GNAT/Ada support
> in Linux is great. Packaged Ada support makes it easier for others
> like me that want to share their own packages, without having to
> worry about how to teach the end [non-Ada] users how to install the
> components that your software may have dependancies for.

Exactly; this is why I chose Debian over Gentoo.  Debian is the ideal
target platform for anyone developing software.  It is rich, reliable,
does not change too often (moving target syndrome), and very easy to
administer for your customers, even in large-scale deployments.

> How is the gcc-3.3 version >= gnat-3.15p in terms of passing the
> ACATs tests? I've personally been avoiding the gcc-3.x series for my
> own development until it stabilizes more. I seem to provoke enough
> bugs in the stable versions of gnat without using something less
> stable.

My sponsor for Debian is one of the maintainers of gnat-3.2 and -3.3,
so I won't bad-mouth it too much here.  I have not tried the ACATS
tests against 3.3, but I see that ACT have added them to the mainline
for inclusion in 3.4.

gnat-3.2 is there on all 11 platforms, but has received little testing
and has many bugs.  gnat-3.3 is there on all platforms except MIPS,
and still has some bugs.  One is that it doesn't provide a shared
libgnat.  Then there is trusty old gnat 3.15p, which is only available
on 3 platforms (i386, sparc and powerpc) but offers reliablity and
shared libraries.  Several other packages rely on 3.15p; none on
either 3.2 or 3.3.

> Yes, I had problems with GPS also (it was looking for a libpng shared
> library that Gentoo doesn't offer out of the box). Some of their
> other packages are still in "bug" status at present.

Furthermore, I note that the Gentoo ebuild for GPS is (a) out of date
since it pertains to 1.2.2, and (b) relies on the upstream binary
distribution from ACT, which only exists on i386 and is
binary-incompatible with everything else since it was built with a
recent GNAT Pro not available to the public.  My Debian package is
built from source using GNAT 3.15p on three platforms (i386, powerpc
and sparc), links dynamically against libgnat and libgtkada2, has
manual pages, and is up to date (1.4.0).  I've boasted about it enough
now :)

> For the record, I haven't destroyed my debian instances just yet.
> Both Debian and Gentoo have their own advantages and disadvantages.
> I do however favour the compile everything from sources approach,
> which seems to favour Gentoo. But overall, the jury is still out ;-)

Yes, but you're an individual developer.  I'm an individual developer,
too, and I have recompiled my own packages several times, but I also
appreciate the fact that Debian offers a reliable target platform for
software, and solves distribution issues for corporations as well as
for individuals.

> I did a FreeBSD stint for a while (good for firewalls), but
> the Ada support there seemed to be on the decline.

Now Sam Tardieu might not like that.  He is the former maintainer of
several Ada packages for Debian, and he switched to FreeBSD where he
maintains gnat among others.

> If I ever get my next release of APQ out the door (perhaps after the
> holiday season winds down), I would like to get APQ packaged for
> both Debian and Gentoo. I think APQ represents the most painless way
> to work with MySQL or PostgreSQL databases from Ada (and soon
> Sybase, where supported). Shall I contact you directly by email?

Definitely, yes.  In fact, I have already done preliminary work to
package APQ 2.1 for Debian, but found problems in the way you generate
code from MySQL.  OTOH, I've promised not to overtax my sponsor with
too many new packages until Sarge is released.  So I'll just take a
vacation and we'll talk more about it next year.

Cheers

PS. I'm leaving to spend christmas and the new year in Lyon tomorrow
morning.  I probably won't be online often until I return on Jan 2.
So, have a merry christmas and a happy new year y'all!

-- 
Ludovic Brenta.



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: GNU/Linux distro wars
  2003-12-22 23:25                         ` Ludovic Brenta
@ 2003-12-23 10:18                           ` Samuel Tardieu
  0 siblings, 0 replies; 25+ messages in thread
From: Samuel Tardieu @ 2003-12-23 10:18 UTC (permalink / raw)


Warren> I did a FreeBSD stint for a while (good for firewalls), but the Ada
Warren> support there seemed to be on the decline.

Ludovic> Now Sam Tardieu might not like that.  He is the former
Ludovic> maintainer of several Ada packages for Debian, and he
Ludovic> switched to FreeBSD where he maintains gnat among others.

Bad information: Dan Eischen is the current maintainer for this port :)

And I bet that the quality of GNAT for FreeBSD will still improve in the
near future.

  Sam
-- 
Samuel Tardieu -- sam@rfc1149.net -- http://www.rfc1149.net/sam



^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2003-12-23 10:18 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-12-15 14:18 [announcement] SYSAPI and SYSSVC for Windows Ekkehard Morgenstern
2003-12-15 15:10 ` Ekkehard Morgenstern
2003-12-15 17:10 ` Jeffrey Carter
2003-12-15 18:38   ` Ekkehard Morgenstern
2003-12-16  0:25     ` Stephen Leake
2003-12-16  0:56       ` Ekkehard Morgenstern
2003-12-16  2:47         ` Ludovic Brenta
2003-12-16 17:45           ` Ekkehard Morgenstern
2003-12-16 19:54             ` Ludovic Brenta
2003-12-16 22:09               ` Ekkehard Morgenstern
2003-12-17 15:24                 ` Ludovic Brenta
2003-12-17 23:23                   ` Ekkehard Morgenstern
2003-12-19 18:14                   ` Warren W. Gay VE3WWG
2003-12-20 12:37                     ` GNU/Linux distro wars (was: SYSAPI and SYSSVC for Windows) Ludovic Brenta
2003-12-22 17:48                       ` GNU/Linux distro wars Warren W. Gay VE3WWG
2003-12-22 19:33                         ` Duncan Sands
2003-12-22 23:25                         ` Ludovic Brenta
2003-12-23 10:18                           ` Samuel Tardieu
2003-12-16  5:36         ` [announcement] SYSAPI and SYSSVC for Windows tmoran
2003-12-16 17:30           ` Ekkehard Morgenstern
2003-12-15 20:44 ` David Marceau
2003-12-16  0:34   ` Ekkehard Morgenstern
2003-12-17 12:05 ` Dmitry A. Kazakov
2003-12-17 15:00   ` Ekkehard Morgenstern
2003-12-20 19:24 ` Ekkehard Morgenstern

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox