comp.lang.ada
 help / color / mirror / Atom feed
From: "Steve" <nospam_steved94@comcast.net>
Subject: Re: GNAT for MS Visual Studio
Date: Tue, 2 Oct 2007 19:03:23 -0700
Date: 2007-10-02T19:03:23-07:00	[thread overview]
Message-ID: <5o6dnYC_A-KyZZ_anZ2dnUVZ_tSknZ2d@comcast.com> (raw)
In-Reply-To: fdsf0r$q0t$1@jacob-sparre.dk

"Randy Brukardt" <randy@rrsoftware.com> wrote in message 
news:fdsf0r$q0t$1@jacob-sparre.dk...
> "Steve" <nospam_steved94@comcast.net> wrote in message
> news:YcCdnaCp_dEWKmLbnZ2dnUVZ_qqgnZ2d@comcast.com...
> ...
>> > That is perhaps the main point in my slightly jumbled commentary: GUI
>> > builders don't allow you to build abstractions. Using GUI builders
>> > doesn't scale and doesn't promote reuse (of GUI subsystems).
>>
>> With the .NET framework you can create a base form and derive other forms
>> from the base form.  If that doesn't promote re-use, I don't know what
> does.
>
> Whether that is really reuse depends on what you mean by "derive". If the
> derivation is one-time (a copy), then there is little effective reuse,
> because every change to the base would have to be manually reflected in 
> the
> copies. (This is the only kind of derivation I have seen in GUI builders,
> admittedly I haven't looked at many.) And as you have pointed out, a 
> system
> that doesn't change is not very likely.
>

What I mean by derive is in the sense of deriving classes.  A "form" in .NET 
is derived from a base form class.  You may add various controls to a form 
using visual tools.  When you derive one form from another, you get the 
controls from the original form in addition to any controls you add to the 
derived form.  If you add controls to the base form, they show upon all of 
the derived forms.

> OTOH, what I want (and have done in some of my Claw programs) is to create 
> a
> dialog (could call it a form if you like) that takes parameters. In my 
> case,
> it was a name and a registry location. Thus, the dialog would work the 
> same
> way for each use, but get data (and have an appropriate title) from
> different locations for different uses. It turned out that writing that
> abstract GUI module by hand (once) allowed it to be used twenty or so 
> times:
> in GUI builder code. And of course fixing a bug in it will fix all of the
> uses at once.

With .NET to create a form you create an instance of a class and call the 
ShowWindow method.  After creating the instance you can do anything you want 
to tailor it's behavior prior to calling ShowWindow.

>
> I could have used the GUI builder to create it, but I would have ended up
> with twenty copies that would each have to have been changed for any minor
> correction -- which hardly would have saved any development time.
>
> ...
> ...
>> If the effort to develop a GUI interface takes days, weeks, or months.
>> Careful design is critical.  The resources invested in development are
>> significant, and it is important to get it right the first time.
>>
>> If the effor to develop the GUI part of the interface takes minutes,
> careful
>> design OF THE GUI is less critical.  The design of the business part of
> the
>> application is still critical, but since changing the GUI is trivial it
>> becomes less importaint to get it right the first time.
>
> But there is no possibility of the GUI taking minutes. You have to at the
> very least type in the names of the labels for the controls/widgets,
> possibly define some of the data types, etc. Only the very smallest GUIs 
> can
> be done in "minutes". (There is one exception: the direct conversion of a
> record type into a dialog, which can be automated if you don't care about
> the result apperance. But that only would work for very simple systems - 
> no
> menus or dynamism is possible for that.)

What I should have said was something like GUI elements.  Certainly creating 
an entire interface will take more than minutes, but creating each 
individual form may only take minutes.  Creating the entire interface may 
take days or weeks with a high level tool.

> ...
>> In my programmers Utopia, a GUI Ada tool would magically appear.
>
> You should say "an Ada GUI tool THAT I FIND ACCEPTABLE", because of course
> there are many Ada GUI tools out there. You said you tried them and didn't
> like them, which surely is a reasonable opinion, but you should at least
> acknowledge that others may find them quite useful.
>

I acknowledge that these tools may be useful.  But the fact that some 
programmers consider hand coding to be comparable to using the tools is not 
a strong indication of their usefulness.

>> People (like me) who constantly experiment with different development
> tools would
>> try it and discover the wonders of Ada.  The market share of Ada would
> grow,
>> Ada vendord would thrive, and Ada would gain mainstream acceptance.
>
> My experience in the Ada business suggests that no single 'X' could be a
> magic bullet that would increase the acceptance of Ada. If you actually
> tried to make 'X' available, by the time you got it done, the world would
> have moved on. (i.e. Claw). If there is any magic way to increase Ada 
> usage,
> it would be to get ahead of the curve on something (multi-core comes to
> mind: us Ada people have been doing that sort of programming for 25 years)
> and market it for all it is worth.
>

I agree there is no magic bullet.  But there certainly are a number of 
impediments that may be removed.

I have watched a number of obstacles to choosing Ada disappear as the 
language has evolved:

  Ada 95 - Added OOP (tagged types)
               - Added protected types
               - Added interfaces to other languages
  Ada 2005 - Added interface inheritance
                  - Added a standard container library

> But my personal, cynical view is that Ada cannot really succeed, because 
> few
> are really interested in doing things well. (IMHO, that's what's Ada is
> really about, even if we don't always get that right.) Most only care 
> enough
> to hack something out to get by. And Ada will never be about hacking
> something out.
>

Personally I try to be more optimistic.  We have all seen things change 
radically in relatively short periods of time.  Remember how quickly Java 
(formerly Oak) came to the forefront?

There have been echo's of SPARK in the popular computing magazines that have 
interested people who are tired of many of the software development mishaps 
that seem to be happening these days.

Maybe the folks at Microsoft will get tired of trying to patch Windows using 
programming languages that are inherently unsafe and give Ada a shot on a 
pilot project.  You never know.

Steve
(The Duck)

> Of course, there are enough people who do care about doing things well to
> keep Ada around. But it probably will remain a niche language.
>
>                               Randy.
>





  parent reply	other threads:[~2007-10-03  2:03 UTC|newest]

Thread overview: 103+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-09-06  2:20 GNAT for MS Visual Studio William J Thomas
2007-09-06  7:44 ` anon
2007-09-06  8:49   ` Rob Veenker
2007-09-06 11:12     ` William J Thomas
2007-09-11  3:15 ` Jeffrey Creem
2007-09-20  0:00 ` William J Thomas
2007-09-21  0:46   ` Randy Brukardt
2007-09-21  3:27     ` William J Thomas
2007-09-21 17:31       ` Markus E L
2007-09-21 18:13       ` Dmitry A. Kazakov
2007-09-22  1:42         ` Randy Brukardt
2007-09-22  1:59       ` Randy Brukardt
2007-09-22  5:19         ` Simon Wright
2007-09-22 14:42         ` Steve
2007-09-24  8:14           ` Jean-Pierre Rosen
2007-09-25  1:44             ` Steve
2007-09-25  6:41               ` Jean-Pierre Rosen
2007-09-25  8:29               ` Michael Bode
2007-09-25 18:00                 ` Jeffrey R. Carter
2007-09-25 18:31                   ` Michael Bode
2007-09-25 11:20               ` Markus E L
2007-09-26  2:23                 ` Steve
2007-09-26 12:21                   ` Markus E L
2007-09-28  0:49                     ` Randy Brukardt
2007-09-28  2:43                     ` Steve
2007-09-28  9:36                       ` Markus E L
2007-09-29 15:59                         ` Michael Bode
2007-09-29 16:50                           ` Markus E L
2007-09-26  6:58                 ` Ole-Hjalmar Kristensen
2007-09-26 13:35                   ` Steve
2007-09-26 14:06                     ` Markus E L
2007-09-27 18:26                       ` Michael Bode
2007-09-27 20:18                         ` Markus E L
2007-09-28  6:45                         ` Jean-Pierre Rosen
2007-09-29  9:18                           ` michael bode
2007-09-28  2:29                       ` Steve
2007-09-28  9:23                         ` Markus E L
2007-09-30 14:50                           ` Steve
2007-10-02  3:50                             ` Randy Brukardt
2007-10-02 11:06                               ` Peter C. Chapin
2007-10-02 20:38                               ` Maciej Sobczak
2007-10-02 20:45                                 ` Pascal Obry
2007-10-03 19:23                                   ` Maciej Sobczak
2007-10-03 19:40                                     ` Pascal Obry
2007-10-03 20:08                                       ` Maciej Sobczak
2007-10-04 20:18                                         ` Maciej Sobczak
2007-10-04 20:21                                           ` Pascal Obry
2007-10-05 13:25                                             ` Maciej Sobczak
2007-10-06 10:50                                               ` concurrent access to containers (was: GNAT for MS Visual Studio) Georg Bauhaus
2007-10-05 20:15                                         ` GNAT for MS Visual Studio Simon Wright
2007-10-06 14:47                                       ` Matthew Heaney
2007-10-06 15:03                                         ` Pascal Obry
2007-10-06 16:03                                           ` Dmitry A. Kazakov
2007-10-06 17:07                                             ` Pascal Obry
2007-10-06 18:30                                               ` Dmitry A. Kazakov
2007-10-06 20:32                                                 ` Maciej Sobczak
2007-10-07  7:35                                                   ` Dmitry A. Kazakov
2007-10-07 21:30                                                     ` Maciej Sobczak
2007-10-08  7:50                                                       ` Dmitry A. Kazakov
2007-10-08 10:32                                                         ` Maciej Sobczak
2007-10-08 13:39                                                           ` Maciej Sobczak
2007-10-08 15:10                                                           ` Dmitry A. Kazakov
2007-10-08 20:40                                                             ` Maciej Sobczak
2007-10-09  8:32                                                               ` Dmitry A. Kazakov
2007-10-06 16:17                                           ` Matthew Heaney
2007-10-07  3:19                                           ` Randy Brukardt
2007-10-07  7:21                                             ` Pascal Obry
2007-10-07  7:49                                               ` Dmitry A. Kazakov
2007-10-07 16:41                                               ` Georg Bauhaus
2007-10-07 17:44                                               ` Simon Wright
2007-10-08  9:52                                                 ` Georg Bauhaus
2007-10-08 10:42                                                   ` Maciej Sobczak
2007-10-08 10:59                                                     ` Georg Bauhaus
2007-10-08 11:07                                                     ` Georg Bauhaus
2007-10-08 18:44                                                     ` Pascal Obry
2007-10-08 15:21                                                   ` Dmitry A. Kazakov
2007-10-08 18:28                                                 ` Pascal Obry
2007-10-07 21:48                                               ` Maciej Sobczak
2007-10-07 22:27                                                 ` Jeffrey R. Carter
2007-10-08 21:10                                                   ` Simon Wright
2007-10-09  1:53                                               ` Randy Brukardt
2007-10-09 21:01                                                 ` Simon Wright
2007-10-09 22:48                                                   ` Randy Brukardt
2007-10-10  0:21                                                     ` Jeffrey R. Carter
2007-10-10  4:57                                                   ` Simon Wright
2007-10-10  7:46                                                   ` Dmitry A. Kazakov
2007-10-03  5:20                                 ` Licensing again (was Re: GNAT for MS Visual Studio) Simon Wright
2007-10-03  2:03                               ` Steve [this message]
2007-09-28 14:48                         ` GNAT for MS Visual Studio Ed Falis
2007-09-29  2:32                           ` Steve
2007-09-29  6:53                             ` Vadim Godunko
2007-09-26 14:08                     ` Dmitry A. Kazakov
2007-09-25  2:39             ` Randy Brukardt
2007-09-25  8:40               ` Michael Bode
2007-09-25 11:28               ` Markus E L
2007-09-26 10:19               ` Pascal Obry
2007-09-26 13:00                 ` Michael Bode
2007-09-25  2:32           ` Randy Brukardt
2007-09-25  8:27             ` Stephen Leake
  -- strict thread matches above, loose matches on Subject: below --
2007-10-12 22:03 Anatoly Chernyshev
2007-10-13 20:25 ` Maciej Sobczak
2007-10-14 10:37   ` Simon Wright
2007-10-14 11:26     ` Markus E L
replies disabled

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