comp.lang.ada
 help / color / mirror / Atom feed
* GUI was Re: why Ada is so unpopular ?
@ 2004-01-20  4:06 Robert C. Leif
  2004-01-20  7:39 ` Preben Randhol
  2004-01-20 13:22 ` Marin David Condic
  0 siblings, 2 replies; 34+ messages in thread
From: Robert C. Leif @ 2004-01-20  4:06 UTC (permalink / raw)
  To: Comp. Lang. Ada

Since the subject of this discussion is GUI's, I changed the subject.  Since
we lack both the resources and probably the human engineering expertise to
develop a GUI, instead of inventing a new GUI for Ada; why not use a
language neutral technology?  XML has many sublanguages that are
appropriate.  In fact, it would be possible to use presently existing
technology like GtkAda or better yet CLAW to create the simplest version of
Scalable Vector Graphics or a thick binding to an existing version, such as
that available from Adobe. This could then serve as a foundation to host
XForms. 

In fact by using XML schemas and Ada packages that have identical
data-types, one might have two versions of the same GUI.  The first would be
an XML version powered as much as possible by Ada and the second would be an
Ada version with minimal code in other languages.  In short, the simplest
approach is to use the designs and data-types from the World Wide Web
Consortium, www.w3.org

If successful, this might even increase the popularity of Ada.  Ada is now
worse than unpopular; most of the programming community does not realize
that it exists; and the others think that Ada is only useful for military
projects.  Parenthetically, the real reason Ada is not popular is that we do
not have a hero who has become filthy rich using it. 

Bob Leif
-----------------------------------------------------------
Message: 5
Date: Mon, 19 Jan 2004 13:28:30 GMT
From: Marin David Condic <nobody@noplace.com>
Subject: Re: why ada is so unpopular ?
To: comp.lang.ada@ada-france.org
Message-ID: <400BDB7C.40100@noplace.com>
Content-Type: text/plain; charset=us-ascii; format=flowed

Preben Randhol wrote:
> 
> Well if you look at Java you see that the GUI isn't the same in all
> platforms and IMHO the GUI is butt-ugly.
> 
Java's GUI may or may not be butt-ugly. But one thing it is: It's 
_Java's_ GUI and as it evolves, Java users pretty much get full access 
to whatever new features are added without having to wait for some 
binding to catch up.


> The only benifit of a special Ada GUI would be portability and not
> having to use C library.
> 

Portability would be one thing, but not the only thing. "Product 
Distinction" would be another: An Ada GUI could go its own way and do 
things "The Ada Way" from the programmer's perspective and might even 
provide a unique "Look & Feel" to Ada apps. (People might then actually 
*care* that their apps were done with Ada, eh?) You'd also benefit from 
the fact that (as observed above for Java) it would be _Ada's_ GUI and 
there would be no waiting around for some binding to catch up. It goes 
its own direction, develops its own look-and-feel and might start 
developing features that user's of other languages would wish *they* had 
available to them. (Hint: Switch to Ada and you can have them.)

I've tinkered with GtkAda and - while it is a good and useful thing - I 
can observe that there seem to be some features that Gtk has (under 
Gnome?) that are simply not available through GtkAda. One might want to 
use those features - but its either roll your own, wait for GtkAda to 
catch up or go use C/C++ like the entire rest of the world does. What do 
you suppose most programmers do? (Hint: Look at the relative popularity 
of C/C++ to that of Ada.)

This is always the problem that Ada has with bindings, etc. It's playing 
the "Me Too!!!!" catch-up game. The best you can hope for then is to 
come in second-place. That's why Ada ought to be developing a library of 
its own to supply a GUI and the other things that seem to come along for 
the ride with C++ or Java.

MDC





^ permalink raw reply	[flat|nested] 34+ messages in thread
* RE: GUI was Re: why Ada is so unpopular ?
@ 2004-01-20 14:16 amado.alves
  2004-01-21 13:22 ` Marin David Condic
  0 siblings, 1 reply; 34+ messages in thread
From: amado.alves @ 2004-01-20 14:16 UTC (permalink / raw)
  To: comp.lang.ada

<<...
Various enthusiasts have suggested "Well let's go build one from 
bottom-dead-center and *make* it the library of choice..." - a noble 
ambition but one that *at best* would take a really long time...>>

There's another way: compromise. In the ASCLWG we eventually managed to agree upon selecting a pre-existing container library (Charles) to form the basis of the standard proposal. I didn't take long. The group was assembled in June 2002 (the Ada Europe workshop in Vienna), and the proposal was filed in September 2003 (AI-302/2). In the intervening dense discussion (circa 500 messages on the group list, plus circa 100 on the ARG forum) every one of us compromised about something from naming to featured abstractions to iteration methods.

If someone had started a similar process with GTK (or JEWL or...) we'd have it in Ada 2005, the standard GUI. Of course there is still plenty of time for a separate standard, or a reference API or whatever SIGAda calls it.

(I'm not disagreeing with anything, just telling a story.)







^ permalink raw reply	[flat|nested] 34+ messages in thread
* Re: GUI was Re: why Ada is so unpopular ?
@ 2004-01-20 17:55 Robert C. Leif
  2004-01-20 18:58 ` Georg Bauhaus
  0 siblings, 1 reply; 34+ messages in thread
From: Robert C. Leif @ 2004-01-20 17:55 UTC (permalink / raw)
  To: Comp. Lang. Ada

Scalable Vector Graphics, SVG, is a World Wide Web Consortium standard that
is operating system independent.  Since CLAW is a thick binding, it quite is
possible that a good part of it could be hosted on a different technology
than Windows.  I might also note that in terms of address space the Web is
the default operating system and can even be used to manage the files on a
Windows system.  In fact, a large part of Microsoft's next operating system
is in XML.

Copied from W3C SVG site:
"SVG is a language for describing two-dimensional graphics and graphical
applications in XML. SVG 1.1 is a W3C Recommendation and forms the core of
the current SVG developments. SVG 1.2 is the specification currently being
developed as is available in draft form (comments welcome). The SVG Mobile
Profiles: SVG Basic and SVG Tiny are targetted to resource-limited devices
and are part of the 3GPP platform for third generation mobile phones. SVG
Print is a set of guidelines to produce final-form documents in XML suitible
for archiving and printing. Read more about SVG." 

The following are NOT Windows!  Please notice that the amounts of money are
considerable.  A portable, reliable Ada implementation might be worth the
effort.

"2003-12-09: Sharp and BitFlash release SVG Mobile handsets
Sharp Electronics and BitFlash have teamed to release a SVG Tiny handset in
Japan. They also provide a document conversion tool, allowing Word, PDF and
Powerpoint documents to be transcoded to SVG for display on the phone. More
information in the Sharp and BitFlash press releases."

"2003-12-08: libRSVG 2.5.0 available
The librsvg team have anounced a new release of the librsvg SVG rendering
library. This release fixes a lot of rendering bugs in order to enable near
perfect rendering of the Sodipodi flag collection and the
gnome-themes-extras SVG metathemes. People using SVG through the libRSVG
library, for instance with GNOME, are highly recommended to upgrade to this
release."

"2003-10-31: GEMoDe: an SVG Graphics Engine for Mobile Devices
The German research institute Fraunhofer IDG Rostock have announced GEMoDe,
a Java-based graphics engine that supports SVG. It supports interactivity,
and therefore can be used as a platform for developing applications. There
are some screenshots and a demonstration applet. The viewer is designed to
be easily adapted to resource limited devices such as mobile or smart
phones."

"2003-10-28: AOL purchases Viewpoint source for rendering images, including
SVG
AOL has purchased US$9M of source and US$ 1M of services from Viewpoint
Corporation. This gives them the ability to display and intermix video,
audio, 3-D and 2-D images in various formats including SVG. Since SVG 1.2
adds audio and video support, AOL would be well placed to implement SVG 1.2
should they see customer demand." 

"2003-10-27: Geosoft announces US$3M deal for SVG Mobiile GIS content
Geosoft announced a 3 million US dollar deal with MTI to supply SVG based
mapping data for deployment on cellular phones, PDAs and vehicle mapping
systems." 

"2003-10-20: Oracle and Corel integrate SVG tools with Oracle Database 10g
Oracle and Corel announced integration of the XML functionality in OracleR
Database 10g with Corel's XML and SVG tools, CorelR XMetaLR and CorelR Smart
Graphics Studio." 

"2003-10-17: Beatware announce Mobile SVG authoring with e-Picture Pro 4.0
Beatware announced e-Picture Pro 4.0 with authoring support for SVG Tiny,
SVG Basic, and SVG Full. The product is bundled with the BitFlash SVG Tiny
viewer so that content can be previewed on the desktop before deployment to
mobile clients. e-Picture Pro 4.0 runs on Windows platforms and a trial
version is availabe for download." 

Bob Leif
------------------------------------------------------
Message: 9
Date: Tue, 20 Jan 2004 07:39:14 +0000 (UTC)
From: Preben Randhol <randhol+valid_for_reply_from_news@pvv.org>
Subject: Re: GUI was Re: why Ada is so unpopular ?
To: comp.lang.ada@ada-france.org
Message-ID:
	
<slrnc0pmp2.205.randhol+valid_for_reply_from_news@k-083152.nt.ntnu.no>

On 2004-01-20, Robert C. Leif <rleif@rleif.com> wrote:
> technology like GtkAda or better yet CLAW to create the simplest version
of
> Scalable Vector Graphics or a thick binding to an existing version, such
as
> that available from Adobe. This could then serve as a foundation to host
> XForms. 

Why would we want to use a library that *only* works on one OS. I
thought the point was a *portable* library.


-- 
"Saving keystrokes is the job of the text editor, not the programming
 language."





^ permalink raw reply	[flat|nested] 34+ messages in thread
* RE: GUI was Re: why Ada is so unpopular ?
@ 2004-01-21 15:42 amado.alves
  2004-01-21 19:22 ` Randy Brukardt
  2004-01-22 13:26 ` Marin David Condic
  0 siblings, 2 replies; 34+ messages in thread
From: amado.alves @ 2004-01-21 15:42 UTC (permalink / raw)
  To: comp.lang.ada

<<...If GtkAda was going to return a 
list of something, shouldn't it ought to be a *Charles* list rather than 
something that was specific to GtkAda? ...>>

Absolutely. This is a fascinating issue. I thought about it when I wrote here before, but kept silent. But now that you've touched it, I'll add a bit. A *lot* of Ada libraries, including already standard ones (e.g. ASIS) and upcoming standard (e.g. Directory_Operations), deal with a lot of data structures, and so they should be using the standard for that (Ada.Containers, also upcoming, AI-302). The result would be clearly a good thing, more cohesion both in the standard and in applications. This is motivation number 1 for Ada.Containers in my paper in Ada-Europe 2004 (about persistent containers, but touching the general issue in passing).



^ permalink raw reply	[flat|nested] 34+ messages in thread
* RE: GUI was Re: why Ada is so unpopular ?
@ 2004-01-21 18:15 amado.alves
  0 siblings, 0 replies; 34+ messages in thread
From: amado.alves @ 2004-01-21 18:15 UTC (permalink / raw)
  To: comp.lang.ada

<<But the proposal isn't Charles and is very minimalist.>>

Charles-for-ARG (AI-302/2) is basically a distilled version of Charles, yes.

<<The proposal 
based on the PragmAda Reusable Components (AI-302-01) has also had to 
change to something different from the PragmARCs.>>

I know. It's a pity the AI is split in *alternatives*. I don't see PragmARC-for-ARG (alternative 1) and Charles-for-ARG (alternative 2) really as alternatives. Even if they were in fact developed separately [to my knowledge what is now alternative 2 counted with more discussion in the ASCLWG forum (a Yahoo! group), than PragmARC-for-ARG], both socalled alternatives have specific pluses. For example, I think alternative 1 has better naming and iteration model, and alternative 2 has better reference implementation.

I have formulated my contributions to AI-302 in an alternative-independent way. But by the ARG process they had to go into one alternative. (My document on design bases went to 1, while the persistence and indefinite elements annexes proposal went to 2.

But at least in the second case I explicitly say right there that it is alternative-independent.) Let's hope the Ada.Containers team be able to merge the good things from both alternatives--and with the alternative-independent persistent and indefinite elements proposals ;-)

(Sorry for the illformatted text. I'm currently limited to a stupid webmail system that I cannot configure.)



^ permalink raw reply	[flat|nested] 34+ messages in thread
* RE: GUI was Re: why Ada is so unpopular ?
@ 2004-01-22 19:03 amado.alves
  2004-01-23 17:55 ` Warren W. Gay VE3WWG
  0 siblings, 1 reply; 34+ messages in thread
From: amado.alves @ 2004-01-22 19:03 UTC (permalink / raw)
  To: comp.lang.ada

<<...this doesn't work very well when you drop
into a directory with thousands of files. A smart tree widget
might just peruse "directory portions", where the tree widget
is visible (perhaps a less than trivial exercise). But I suspect
they take the easy way out, and require all entries to be loaded
in to the widget's dynamic memory...>>

A solution to this is to have and use standard iterator signatures, defined e.g. as formal packages descendants of Ada.Containers. (As an iterator is clearly an item of container design, iterator signatures belong there.)

Directory_Listing (say) builds an 'internal' iterator, and return an instantiation of the standard signature, grounded on this internal iterator. Then all is well. The Directory package would not be using the Ada.Containers 'engines', but just their specification. (The advantages include the possiblity of interaction with other standard containers e.g. perform a deep copy of a part of the tree to send to a GUI object).

However, I think Ada.Containers should provide 'real' containers with the structure and efficiency required by Directories. Even the possible cyclic graphs of directories with links. If Ada.Containers does not have this already (I don't recall), it should be a simple (!) matter of adjusting (basically, generalizing) the structures already in the reference implementation of Directories (?) and moving them to Ada.Containers.

I suspect these things don't happen because of the communication costs between the teams working on the several proposals (Containers, Directories, ASIS, ...) The costs are high, we simply don't have the means to support them, so there simply is no communication. Result: a disconnected standard :-(



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

end of thread, other threads:[~2004-01-24  9:37 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-01-20  4:06 GUI was Re: why Ada is so unpopular ? Robert C. Leif
2004-01-20  7:39 ` Preben Randhol
2004-01-20 10:40   ` Georg Bauhaus
2004-01-20 10:59     ` Preben Randhol
2004-01-20 19:42       ` Randy Brukardt
2004-01-20 20:12         ` tmoran
2004-01-21 13:01           ` Marin David Condic
2004-01-21 18:05             ` tmoran
2004-01-21 12:52         ` Marin David Condic
2004-01-20 13:22 ` Marin David Condic
2004-01-20 17:41   ` Warren W. Gay VE3WWG
2004-01-19  4:11     ` Mark Lorenzen
  -- strict thread matches above, loose matches on Subject: below --
2004-01-20 14:16 amado.alves
2004-01-21 13:22 ` Marin David Condic
2004-01-21 17:28   ` Jeffrey Carter
2004-01-20 17:55 Robert C. Leif
2004-01-20 18:58 ` Georg Bauhaus
2004-01-21 15:42 amado.alves
2004-01-21 19:22 ` Randy Brukardt
2004-01-22 13:42   ` Marin David Condic
2004-01-22 17:48     ` Warren W. Gay VE3WWG
2004-01-22 19:30       ` Jeffrey Carter
2004-01-23 17:37         ` Warren W. Gay VE3WWG
2004-01-23 13:34       ` Marin David Condic
2004-01-23 17:50         ` Warren W. Gay VE3WWG
2004-01-23 19:20           ` Hyman Rosen
2004-01-24  6:26             ` Robert I. Eachus
2004-01-24  9:37             ` Georg Bauhaus
2004-01-22 19:33     ` Randy Brukardt
2004-01-23 13:38       ` Marin David Condic
2004-01-22 13:26 ` Marin David Condic
2004-01-21 18:15 amado.alves
2004-01-22 19:03 amado.alves
2004-01-23 17:55 ` Warren W. Gay VE3WWG

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