comp.lang.ada
 help / color / mirror / Atom feed
From: dewar@gnat.com
Subject: Re: Why both "with" and "use"?
Date: 1999/02/14
Date: 1999-02-14T00:00:00+00:00	[thread overview]
Message-ID: <7a6bck$627$1@nnrp1.dejanews.com> (raw)
In-Reply-To: 7a529a$t54@drn.newsguy.com

In article <7a529a$t54@drn.newsguy.com>,
  bill <bill@newsguy.com> wrote:

> it would be nice to have a smart editor that is context
> senstive, where if you point the mouse to a name and say
> right-click, it will show properties of the thing pointed
> to, such as it type, the package it came from, etc.

You can get this functionality using GNAPSE (one of the
development environments available for GNAT,
based on EMACS Ada mode). Using
this editor, you can go immediately from a reference to
the declaration in the source (which presumably, together
with its comments tells you the properties you are looking
for). This functionality is based on the cross-reference
information that is now placed by default into ali files.
Note that this will only work with GNAT, since it depends
on this information.

> This way, one can have their cake and eat too. One can
> use 'use', but still know from which packages things came
> from by simple point/click.

There is no course of doubt that the choice of whether to
use the use clause is influenced by the presence of such
tools. However, that's not the whole story. A lot depends
on the names. If a package like Posix has a function called
Error, then you probably want to say Posix.Error anyway, if
the function is called Posix_Error, then it makes better
sense to USE Posix, so naming choices are definitely a
factor here.
>
> offcourse this editor must be free sourced and GPL'ed :)
> so eveyone can use it. wonder if it possible to do such a
> thing with xemacs...

This is a bit confused. I would guess what you are
interested in is that this tool be freely and publicly
available. But the GPL is neither necessary nor sufficient
to achieve this. Remember that the GPL never forces anyone
to distribute anything at any time for any reason. It is
about what you can do *if* you have the software and hold
the license.

The fact that there are public releases of GNAT (and indeed
of the GNAPSE technology mentioned above) is a result of
Ada Core Technology's policy of making free releases, not
of the GPL per se.

It would be legally possible for ACT to make the next
release of GNAT much more proprietary (e.g. by abandoning
the GPL on those parts that are copyright ACT), but of
course we have no intention of doing this, and we are
absolutely committed to periodic public releases of all
our GNAT-related technology.

I mention this because I am constantly running into people
who think that the GPL forces you to distribute things. As
an example (ACT is really not a good one, since we always
distribute everything publicly anyway), consider a company
that gets hold of GNAT, and then makes an extension for its
own use. There is absolutely no obligation of any kind for
that company to distribute this extension publicly. This is
true even if the company distributes copies of this
extension to a small number of companies it works with.
In the latter case, neither the original author, nor the
companies that have copies have any obligation whatsoever
to distribute.

This is an important point, because some other proposed
"open source" licenses have suggested that some kind of
distribution (e.g. at least distribution back to the
original author) would be required.

But such a distribution requirement goes against the idea
of "freedom" in free software. The whole idea is that you
can use the software in anyway you want, including
modifying it for yourself and not distributing it. The
only thing you can't do is to take away this freedom from
others, so when you distribute the software, in either its
original form, or modified, the recipient must have the
same freedoms. It's sort of like a democracy in which the
people can vote for anything except to take away the vote
from succeeding generations.

Anyway, this is all theoretical in this case, the GNAPSE
capability that I mention above is indeed available with
the publicly available 3.11p release of GNAT. Try it out!

Robert Dewar
Ada Core Technologies

-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/       Search, Read, Discuss, or Start Your Own    




  parent reply	other threads:[~1999-02-14  0:00 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-02-13  0:00 Why both "with" and "use"? Mike Silva
1999-02-13  0:00 ` Pat Rogers
1999-02-13  0:00   ` bill
1999-02-13  0:00     ` Pat Rogers
1999-02-13  0:00       ` Matthew Heaney
1999-02-13  0:00         ` bill
1999-02-14  0:00         ` Pat Rogers
1999-02-14  0:00           ` Bob Collins
1999-02-14  0:00             ` Pat Rogers
1999-02-16  0:00         ` Samuel Mize
1999-02-13  0:00     ` Matthew Heaney
1999-02-15  0:00     ` Jean-Pierre Rosen
1999-02-15  0:00       ` Ed Falis
1999-02-16  0:00         ` Jean-Pierre Rosen
1999-02-13  0:00 ` Corey Minyard
1999-02-13  0:00   ` Matthew Heaney
1999-02-13  0:00     ` bill
1999-02-14  0:00       ` dewar
1999-02-14  0:00       ` Matthew Heaney
1999-02-14  0:00       ` dewar [this message]
1999-02-13  0:00     ` Tom Moran
1999-02-14  0:00       ` Matthew Heaney
1999-02-16  0:00     ` Samuel Mize
1999-02-17  0:00       ` Matthew Heaney
1999-02-17  0:00       ` Jean-Pierre Rosen
1999-02-18  0:00         ` dennison
1999-02-18  0:00           ` robert_dewar
1999-02-19  0:00             ` bourguet
1999-02-19  0:00               ` robert_dewar
1999-02-19  0:00             ` Robert I. Eachus
1999-02-19  0:00               ` robert_dewar
1999-02-23  0:00                 ` Robert I. Eachus
1999-02-19  0:00               ` Brian Hanson
1999-02-19  0:00                 ` robert_dewar
1999-02-19  0:00             ` dennison
1999-02-19  0:00           ` Matthew Heaney
1999-02-19  0:00             ` dennison
1999-02-19  0:00               ` robert_dewar
1999-02-19  0:00                 ` Ada multiple string personalities. why so many? mike
1999-02-19  0:00                   ` Tom Moran
1999-02-19  0:00                     ` Mike Silva
1999-02-22  0:00                       ` Brian Hanson
1999-02-19  0:00                   ` robert_dewar
1999-02-19  0:00                 ` Why both "with" and "use"? dennison
1999-02-19  0:00                   ` robert_dewar
1999-02-18  0:00         ` robert_dewar
1999-02-18  0:00           ` Jean-Pierre Rosen
1999-02-18  0:00             ` robert_dewar
1999-02-19  0:00               ` Jean-Pierre Rosen
1999-02-17  0:00       ` Jean-Pierre Rosen
1999-02-17  0:00       ` dennison
1999-02-17  0:00         ` Samuel Mize
1999-02-17  0:00         ` Nick Roberts
1999-02-13  0:00   ` mike
1999-02-15  0:00 ` Jean-Pierre Rosen
replies disabled

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