From: Shark8 <onewingedshark@gmail.com>
Subject: Re: some trivial questions?
Date: Wed, 1 Nov 2017 12:55:35 -0700 (PDT)
Date: 2017-11-01T12:55:35-07:00 [thread overview]
Message-ID: <119e3372-df09-4355-8036-e25f82115164@googlegroups.com> (raw)
In-Reply-To: <6a5368c5-f015-4dcb-9291-e77b40fa1bf1@googlegroups.com>
On Wednesday, November 1, 2017 at 12:44:20 PM UTC-6, tclwa...@gmail.com wrote:
> Why in ada, there is a separation between functions and procedures?
> Is there any real value in this?
Yes, there's a *LOT* of value here; the easiest way to illustrate this in conjunction with Private Types. Consider the following:
Package Example is
-- Handle is a monotonically increasing value, for the run of the program.
Type Handle is private;
Function Create Return Handle;
Function Value( Object : Handle ) Return Positive;
Private
Type Handle is new Positive;
End Example;
Everything that you really need to know about using the types and functions are given in the specification above. Below we have the actual implementation.
Package Body Example is
Count : Natural := 0;
Function Create Return Handle is
Begin
Count:= Natural'Succ( Count );
Return Handle( Count );
End Create;
Function Value( Object : Handle ) Return Positive is
( Positive(Object) );
End Example;
>
> Also why does is Use imply With?
Because they are really about two different things:
WITH is really about dependency.
USE is about [direct] visibility.
> For example why do i have to say:
>
> with Ada.Text_IO;
> use Ada.Text_IO;
Because "with Ada.Text_IO" is simply saying that you're depending on the "Text_IO" compilation-unit inside-or-subordinate-to the compilation-unit "Ada".
The "use Ada.Text_IO" is about importing the whole namespace "Ada.Text_IO" into the current visibility scope.
> Is there any case where the Use statement will be ambiguous, if i skip the with part?
You cannot skip the with part.
next prev parent reply other threads:[~2017-11-01 19:55 UTC|newest]
Thread overview: 101+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-11-01 18:44 some trivial questions? tclwarrior
2017-11-01 19:55 ` Shark8 [this message]
2017-11-01 20:03 ` Dmitry A. Kazakov
2017-11-01 21:30 ` Luke A. Guest
2017-11-06 22:43 ` Robert A Duff
2017-11-01 21:39 ` Jeffrey R. Carter
2017-11-02 1:19 ` tclwarrior
2017-11-02 3:04 ` Luke A. Guest
2017-11-02 4:19 ` gautier_niouzes
2017-11-06 22:52 ` Robert A Duff
2017-11-17 0:45 ` Randy Brukardt
2017-11-02 8:27 ` Dmitry A. Kazakov
2017-11-02 13:21 ` Simon Wright
2017-11-02 13:34 ` Dmitry A. Kazakov
2017-11-06 22:58 ` Robert A Duff
2017-11-07 11:50 ` Simon Wright
2017-11-17 0:51 ` Randy Brukardt
2017-11-17 8:32 ` Dmitry A. Kazakov
2017-11-18 1:14 ` Randy Brukardt
2017-11-18 9:19 ` Dmitry A. Kazakov
2017-11-20 5:40 ` J-P. Rosen
2017-11-20 8:22 ` Dmitry A. Kazakov
2017-11-20 22:03 ` Randy Brukardt
2017-11-21 10:26 ` Dmitry A. Kazakov
2017-11-22 0:56 ` Randy Brukardt
2017-11-22 1:14 ` Paul Rubin
2017-11-23 0:15 ` Randy Brukardt
2017-11-23 0:19 ` Victor Porton
2017-11-23 1:09 ` Paul Rubin
2017-11-28 0:24 ` Randy Brukardt
2017-11-22 8:42 ` Dmitry A. Kazakov
2017-11-23 0:19 ` Randy Brukardt
2017-11-23 1:11 ` Paul Rubin
2017-11-23 8:37 ` Dmitry A. Kazakov
2017-11-28 0:19 ` Randy Brukardt
2017-11-23 8:42 ` G. B.
2017-11-23 19:57 ` Blady
2017-11-23 21:30 ` J-P. Rosen
2017-11-23 23:24 ` Shark8
2017-11-23 22:13 ` Dennis Lee Bieber
2017-11-28 0:34 ` Randy Brukardt
2017-11-02 8:39 ` Stefan.Lucks
2017-11-02 10:29 ` Simon Wright
2017-11-02 10:37 ` Dmitry A. Kazakov
2017-11-02 16:54 ` Jeffrey R. Carter
2017-11-02 17:17 ` Simon Wright
2017-11-02 3:53 ` gautier_niouzes
2017-11-02 11:15 ` joakimds
2017-11-06 19:33 ` G. B.
2017-11-06 20:53 ` Pascal Obry
2017-11-06 21:07 ` Dmitry A. Kazakov
2017-11-06 21:14 ` Pascal Obry
2017-11-06 21:21 ` Dmitry A. Kazakov
2017-11-17 0:57 ` Randy Brukardt
2017-11-17 8:40 ` Dmitry A. Kazakov
2017-11-17 9:12 ` Simon Wright
2017-11-18 1:27 ` Randy Brukardt
2017-11-18 2:29 ` Dennis Lee Bieber
2017-11-18 9:32 ` Dmitry A. Kazakov
2017-11-06 21:16 ` Simon Wright
2017-11-06 21:43 ` Pascal Obry
2017-11-17 0:59 ` Randy Brukardt
2017-11-06 22:37 ` Robert A Duff
2017-11-07 2:25 ` Dennis Lee Bieber
2017-11-07 8:34 ` Dmitry A. Kazakov
2017-11-08 22:49 ` Robert A Duff
2017-11-09 8:49 ` Dmitry A. Kazakov
2017-11-09 15:36 ` AdaMagica
2017-11-09 16:58 ` Dmitry A. Kazakov
2017-11-09 18:10 ` AdaMagica
2017-11-09 20:05 ` Dmitry A. Kazakov
2017-11-09 21:11 ` AdaMagica
2017-11-09 21:38 ` Dmitry A. Kazakov
2017-11-09 22:52 ` AdaMagica
2017-11-10 8:18 ` Dmitry A. Kazakov
2017-11-10 18:21 ` J-P. Rosen
2017-11-10 19:34 ` Dmitry A. Kazakov
2017-11-11 11:32 ` AdaMagica
2017-11-11 12:17 ` Dmitry A. Kazakov
2017-11-11 15:38 ` AdaMagica
2017-11-11 21:36 ` Dmitry A. Kazakov
2017-11-12 5:21 ` J-P. Rosen
2017-11-14 16:49 ` Robert Eachus
2017-11-14 17:34 ` Jeffrey R. Carter
2017-11-17 1:11 ` Randy Brukardt
2017-11-17 8:42 ` Dmitry A. Kazakov
2017-11-10 20:30 ` G. B.
2017-11-17 1:08 ` Randy Brukardt
2017-11-09 22:43 ` Robert A Duff
2017-11-09 22:56 ` AdaMagica
2017-11-10 8:22 ` Dmitry A. Kazakov
2017-11-10 15:47 ` Robert A Duff
2017-11-10 15:54 ` Dmitry A. Kazakov
2017-11-14 15:58 ` Robert Eachus
2017-11-14 16:22 ` Dmitry A. Kazakov
2017-11-17 1:16 ` Randy Brukardt
2017-11-17 1:06 ` Randy Brukardt
2017-11-09 18:08 ` Simon Wright
2017-11-09 20:07 ` Dmitry A. Kazakov
2017-11-07 17:41 ` Jeffrey R. Carter
2017-11-08 10:20 ` Brian Drummond
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox