comp.lang.ada
 help / color / mirror / Atom feed
* Migrating to Ada : a mini success story
@ 2010-02-13 22:04 Hibou57 (Yannick Duchêne)
  2010-02-14  1:05 ` Georg Bauhaus
                   ` (3 more replies)
  0 siblings, 4 replies; 10+ messages in thread
From: Hibou57 (Yannick Duchêne) @ 2010-02-13 22:04 UTC (permalink / raw)


Hello once again,

Here is a new quote about Ada, in another interesting context (no more LP  
this time) :
http://gmarceau.qc.ca/blog/2009/05/speed-size-and-dependability-of.html

Lanny wrote (2009 dated, so let suppose it was Ada 2005):
> Several years ago, I was doing a one-programmer job to move a large
> medical-laboratory instrumentation control from DIBOL to Ada. I was
> using the open-source GNAT Ada compiler and the DIBOL compiler from
> Synergex, as I had to maintain the old DIBOL program while writing
> its replacement in Ada. Unfortunately, the project was canceled
> after three months of work when the laboratory was sold, but I was
> able to compare DIBOL and Ada with respect to the time needed to
> find and fix a bug, and Ada was a huge win. Most DIBOL bugs took a
> full day to run down, and the worst-case bugs required 4 days to run
> down. During the same three months, the large majority of Ada bugs
> were found and fixed in 15 minutes or less, and the most difficult
> one took 4 hours.

The interesting context, is that this comment was one after an article  
containing interesting graphic charts comparing some measurable language  
characteristics. Unfortunately, Ada is not part of any of these charts,  
but there is this comment, and the charts which may be nice for your own  
knowledge anyway.

-- 
No-no, this isn't an oops ...or I hope (TM) - Don't blame me... I'm just  
not lucky



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

* Re: Migrating to Ada : a mini success story
  2010-02-13 22:04 Migrating to Ada : a mini success story Hibou57 (Yannick Duchêne)
@ 2010-02-14  1:05 ` Georg Bauhaus
  2010-02-14  1:09 ` Georg Bauhaus
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 10+ messages in thread
From: Georg Bauhaus @ 2010-02-14  1:05 UTC (permalink / raw)


On 2/13/10 11:04 PM, Hibou57 (Yannick Duchï¿œne) wrote:
> Hello once again,
>
> Here is a new quote about Ada, in another interesting context (no more
> LP this time) :
> http://gmarceau.qc.ca/blog/2009/05/speed-size-and-dependability-of.html

> The interesting context, is that this comment was one after an article
> containing interesting graphic charts comparing some measurable language
> characteristics. Unfortunately, Ada is not part of any of these charts,
> but there is this comment, and the charts which may be nice for your own
> knowledge anyway.


There is a chart "Ada 2005 GNAT" on the linked page, though.

*

The Shootout GCC compiler appears to have been updated to version 4.4,
recently.
- The good news:
As a consequence, the chameneos-redux Ada program is working
again.
- The bad news:
As a consequence, the chameneos-redux Ada program is working
again.   It runs 16 times slower than the best Java
entry.  Apparently Ada's median has moved from 1.xx to 2.xx.
I believe this is related.
(I'm not criticising, the program has been present for
a long time.  It obviously is performing better than its
compiler :-)

The Ada solution uses full tasking and this seems to be showing
overhead here:
Each task in chameneos-redux does *very* little, but communicates
a *lot* with via POs, delays execution in a selective accept,
the POs have entries, ..., so I think it is Ada's tasking overhead.
I have tried using Ravenscar profile facilities instead (i.e. just
suspension objects entry-less tasks) but rewriting this requires
care (and skills, and time, and looking at different solutions...
and possibly the resulting code is helped by a run-time
that produces faster code if pragma Profile (Ravenscar)
is in effect).



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

* Re: Migrating to Ada : a mini success story
  2010-02-13 22:04 Migrating to Ada : a mini success story Hibou57 (Yannick Duchêne)
  2010-02-14  1:05 ` Georg Bauhaus
@ 2010-02-14  1:09 ` Georg Bauhaus
  2010-02-14  1:23   ` Hibou57 (Yannick Duchêne)
  2010-02-15 13:50 ` Simon Clubley
  2010-02-15 17:21 ` Isaac Gouy
  3 siblings, 1 reply; 10+ messages in thread
From: Georg Bauhaus @ 2010-02-14  1:09 UTC (permalink / raw)


On 2/13/10 11:04 PM, Hibou57 (Yannick Duchï¿œne) wrote:
> Hello once again,
>
> Here is a new quote about Ada, in another interesting context (no more
> LP this time) :
> http://gmarceau.qc.ca/blog/2009/05/speed-size-and-dependability-of.html


Do you think source text size, not weighted, is a meaningful measure?
What is its meaning?

OCaml is remarkably close to (short, fast) there. Looking at the OCaml
Shootout programs, the OCaml cultr sms t favr sqizn vwls o of pgms,
nst funs a l+, & uz mth w.

I'm curious if OCaml will perform closer to Ada regarding source
size in case programs use full words for functions, most variables,
constants and so on, fewer embedded lambdas, etc.
(The measurement procedure for code size at the Shootout seems to
be this:
"We started with the source-code markup you can see, removed comments,
removed duplicate whitespace characters, and then applied minimum GZip
compression. The Code-used measurement is the size in bytes of that
GZip compressed source-code file."
http://shootout.alioth.debian.org/help.php#gzbytes )




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

* Re: Migrating to Ada : a mini success story
  2010-02-14  1:09 ` Georg Bauhaus
@ 2010-02-14  1:23   ` Hibou57 (Yannick Duchêne)
  0 siblings, 0 replies; 10+ messages in thread
From: Hibou57 (Yannick Duchêne) @ 2010-02-14  1:23 UTC (permalink / raw)


Le Sun, 14 Feb 2010 02:09:48 +0100, Georg Bauhaus  
<rm-host.bauhaus@maps.futureapps.de> a écrit:
> Do you think source text size, not weighted, is a meaningful measure?
> What is its meaning?
The corner at the bottom-left, labelled “ Perfect language ”, was so at  
the sole discretion of the author of this paper ;)
This kept apart, you're right to notice that there are measurements, there  
are interpretations, and these are different things.
I have personally noticed memory consumption during runtime is also  
missing (three dimensions would have been needed).

-- 
No-no, this isn't an oops ...or I hope (TM) - Don't blame me... I'm just  
not lucky



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

* Re: Migrating to Ada : a mini success story
  2010-02-13 22:04 Migrating to Ada : a mini success story Hibou57 (Yannick Duchêne)
  2010-02-14  1:05 ` Georg Bauhaus
  2010-02-14  1:09 ` Georg Bauhaus
@ 2010-02-15 13:50 ` Simon Clubley
  2010-02-15 14:52   ` Ludovic Brenta
  2010-02-15 19:04   ` Hibou57 (Yannick Duchêne)
  2010-02-15 17:21 ` Isaac Gouy
  3 siblings, 2 replies; 10+ messages in thread
From: Simon Clubley @ 2010-02-15 13:50 UTC (permalink / raw)


On 2010-02-13, Hibou57 <yannick_duchene@yahoo.fr> wrote:
> Hello once again,
>
> Here is a new quote about Ada, in another interesting context (no more LP  
> this time) :
> http://gmarceau.qc.ca/blog/2009/05/speed-size-and-dependability-of.html
>
> Lanny wrote (2009 dated, so let suppose it was Ada 2005):
>> Several years ago, I was doing a one-programmer job to move a large
>> medical-laboratory instrumentation control from DIBOL to Ada. I was
>> using the open-source GNAT Ada compiler and the DIBOL compiler from
>> Synergex, as I had to maintain the old DIBOL program while writing
>> its replacement in Ada. Unfortunately, the project was canceled
>> after three months of work when the laboratory was sold, but I was
>> able to compare DIBOL and Ada with respect to the time needed to
>> find and fix a bug, and Ada was a huge win. Most DIBOL bugs took a
>> full day to run down, and the worst-case bugs required 4 days to run
>> down. During the same three months, the large majority of Ada bugs
>> were found and fixed in 15 minutes or less, and the most difficult
>> one took 4 hours.
>

I actually use DIBOL (along with other more traditional languages) as
part of my day job and there are times when I dream about replacing
it with Ada after tripping up over yet another language feature or not
been able to model a problem in the way I can in Ada.

Unfortunately, he doesn't say what features of the Synergex toolkit
he uses as it's more than just a compiler. Given it's intended use in
business applications, it contains, amongst other things, a forms toolkit
which will run on a character cell terminal and a file toolkit
which implements support for ISAM files with multiple and segmented keys.

The forms toolkit is actually quite advanced given it's character cell
requirements, containing the ability to define a form in terms of fields
containing different types of data (alpha, numeric, dates, etc) and
containing support for callback routines for custom field level validation.

I would love to find an open source equivalent of the forms and ISAM
toolkits which could be called from Ada.

Simon.

-- 
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
Microsoft: Bringing you 1980's technology to a 21st century world



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

* Re: Migrating to Ada : a mini success story
  2010-02-15 13:50 ` Simon Clubley
@ 2010-02-15 14:52   ` Ludovic Brenta
  2010-02-16 17:48     ` Simon Clubley
  2010-02-15 19:04   ` Hibou57 (Yannick Duchêne)
  1 sibling, 1 reply; 10+ messages in thread
From: Ludovic Brenta @ 2010-02-15 14:52 UTC (permalink / raw)


Simon Clubley wrote on comp.lang.ada:
> I would love to find an open source equivalent of the forms and ISAM
> toolkits which could be called from Ada.

For the forms toolkit, I'd start with TextTools[1]. It may not be
complete enough but certainly provides a starting point.

For ISAM, it depends on whether you need support for a specific binary
file format or if you are content with equivalent functionality.

If binary compatibility doesn't matter, I'd suggest writing an Ada
binding to Berkeley DB[2] or using the existing GNADE[3] binding to
SQLite[4]. The former is faster because it uses no SQL parser. The
latter is more structured, thanks to SQL. In both cases, the file
format will stand the test of time; that's the main benefit of free
software.

[1] http://www.pegasoft.ca/tt.html
[2] http://www.oracle.com/technology/products/berkeley-db/db/index.html
[3] http://gnade.sourceforge.net/
[4] http://sqlite.org/

(Berkeley DB, SQLite, GNADE and TextTools are all pre-packaged and
ready to use in Debian).

--
Ludovic Brenta.



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

* Re: Migrating to Ada : a mini success story
  2010-02-13 22:04 Migrating to Ada : a mini success story Hibou57 (Yannick Duchêne)
                   ` (2 preceding siblings ...)
  2010-02-15 13:50 ` Simon Clubley
@ 2010-02-15 17:21 ` Isaac Gouy
  3 siblings, 0 replies; 10+ messages in thread
From: Isaac Gouy @ 2010-02-15 17:21 UTC (permalink / raw)


On Feb 13, 2:04 pm, Hibou57 (Yannick Duchêne)
<yannick_duch...@yahoo.fr> wrote:
> Hello once again,
>
> Here is a new quote about Ada, in another interesting context (no more LP  
> this time) :http://gmarceau.qc.ca/blog/2009/05/speed-size-and-dependability-of.html

-snip-
> The interesting context, is that this comment was one after an article  
> containing interesting graphic charts comparing some measurable language  
> characteristics. Unfortunately, Ada is not part of any of these charts,  
> but there is this comment, and the charts which may be nice for your own  
> knowledge anyway.

That is not correct - look again and you'll see charts labelled "Ada
2005 GNAT" on the page you linked.


Also see -

http://shootout.alioth.debian.org/u64q/code-used-time-used-shapes.php

http://shootout.alioth.debian.org/u32q/code-used-time-used-shapes.php

etc



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

* Re: Migrating to Ada : a mini success story
  2010-02-15 13:50 ` Simon Clubley
  2010-02-15 14:52   ` Ludovic Brenta
@ 2010-02-15 19:04   ` Hibou57 (Yannick Duchêne)
  2010-02-16 17:57     ` Simon Clubley
  1 sibling, 1 reply; 10+ messages in thread
From: Hibou57 (Yannick Duchêne) @ 2010-02-15 19:04 UTC (permalink / raw)


Le Mon, 15 Feb 2010 14:50:35 +0100, Simon Clubley  
<clubley@remove_me.eisner.decus.org-earth.ufp> a écrit:
> The forms toolkit is actually quite advanced given it's character cell
> requirements, containing the ability to define a form in terms of fields
> containing different types of data (alpha, numeric, dates, etc) and
> containing support for callback routines for custom field level  
> validation.
>
> I would love to find an open source equivalent of the forms and ISAM
> toolkits which could be called from Ada.
Does this toolkit comes with formally and cleanly documented  
specifications ?

-- 
No-no, this isn't an oops ...or I hope (TM) - Don't blame me... I'm just  
not lucky



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

* Re: Migrating to Ada : a mini success story
  2010-02-15 14:52   ` Ludovic Brenta
@ 2010-02-16 17:48     ` Simon Clubley
  0 siblings, 0 replies; 10+ messages in thread
From: Simon Clubley @ 2010-02-16 17:48 UTC (permalink / raw)


On 2010-02-15, Ludovic Brenta <ludovic@ludovic-brenta.org> wrote:
> Simon Clubley wrote on comp.lang.ada:
>> I would love to find an open source equivalent of the forms and ISAM
>> toolkits which could be called from Ada.
>
> For the forms toolkit, I'd start with TextTools[1]. It may not be
> complete enough but certainly provides a starting point.
>

Thanks for the pointer; I didn't know this toolkit existed.

You are correct that it's not functional enough to replace the Synergex
forms toolkit, but I am going to look at it anyway sometime over the next
few weeks to see what it is capable of.

> For ISAM, it depends on whether you need support for a specific binary
> file format or if you are content with equivalent functionality.
>
> If binary compatibility doesn't matter, I'd suggest writing an Ada
> binding to Berkeley DB[2] or using the existing GNADE[3] binding to
> SQLite[4]. The former is faster because it uses no SQL parser. The
> latter is more structured, thanks to SQL. In both cases, the file
> format will stand the test of time; that's the main benefit of free
> software.
>

Binary compatibility does not matter.

The Berkeley DB library seems to have had a serious reworking since
I last looked at it and dismissed it, so I will have a look at that
as well.

Thanks for the pointers,

Simon.

-- 
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
Microsoft: Bringing you 1980's technology to a 21st century world



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

* Re: Migrating to Ada : a mini success story
  2010-02-15 19:04   ` Hibou57 (Yannick Duchêne)
@ 2010-02-16 17:57     ` Simon Clubley
  0 siblings, 0 replies; 10+ messages in thread
From: Simon Clubley @ 2010-02-16 17:57 UTC (permalink / raw)


On 2010-02-15, Hibou57 <yannick_duchene@yahoo.fr> wrote:
> Le Mon, 15 Feb 2010 14:50:35 +0100, Simon Clubley  
><clubley@remove_me.eisner.decus.org-earth.ufp> a �crit:
>> The forms toolkit is actually quite advanced given it's character cell
>> requirements, containing the ability to define a form in terms of fields
>> containing different types of data (alpha, numeric, dates, etc) and
>> containing support for callback routines for custom field level  
>> validation.
>>
>> I would love to find an open source equivalent of the forms and ISAM
>> toolkits which could be called from Ada.
> Does this toolkit comes with formally and cleanly documented  
> specifications ?
>

No.

The forms toolkit is heavily documented at API level in Synergex supplied
documentation, but that documentation is not freely available online and
is only supplied as part of a purchase so for various reasons making that
documentation available online is absolutely _NOT_ a viable option. Sorry.

Also, this documentation details how to use the library, but it's not
a design document.

The ISAM library implements a multiple and segmented key ISAM file
structure. Once again, the documentation is about using it, not about how
it's implemented internally.

Simon.

-- 
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
Microsoft: Bringing you 1980's technology to a 21st century world



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

end of thread, other threads:[~2010-02-16 17:57 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-02-13 22:04 Migrating to Ada : a mini success story Hibou57 (Yannick Duchêne)
2010-02-14  1:05 ` Georg Bauhaus
2010-02-14  1:09 ` Georg Bauhaus
2010-02-14  1:23   ` Hibou57 (Yannick Duchêne)
2010-02-15 13:50 ` Simon Clubley
2010-02-15 14:52   ` Ludovic Brenta
2010-02-16 17:48     ` Simon Clubley
2010-02-15 19:04   ` Hibou57 (Yannick Duchêne)
2010-02-16 17:57     ` Simon Clubley
2010-02-15 17:21 ` Isaac Gouy

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