Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

This login session: $13.99


devel / comp.lang.ada / Ada versus Pascal

SubjectAuthor
* Ada versus Pascal711 Spooky Mart
+* Re: Ada versus Pascalldries46
|`* Re: Ada versus Pascal711 Spooky Mart
| `* Re: Ada versus PascalNiklas Holsti
|  +- Re: Ada versus PascalDmitry A. Kazakov
|  +- Re: Ada versus Pascalldries46
|  `- Re: Ada versus PascalSimon Wright
+- Re: Ada versus PascalPaul Rubin
+- Re: Ada versus PascalNiklas Holsti
+- Re: Ada versus PascalJeffrey R.Carter
+* Re: Ada versus PascalDennis Lee Bieber
|`* Re: Ada versus PascalPaul Rubin
| +- Re: Ada versus PascalRandy Brukardt
| `* Re: Ada versus PascalDennis Lee Bieber
|  `- Re: Ada versus PascalJ-P. Rosen
+- Re: Ada versus PascalGautier write-only address
`* Re: Ada versus PascalJerry
 +- Re: Ada versus Pascalldries46
 `* Re: Ada versus PascalGautier write-only address
  `* Re: Ada versus Pascal711 Spooky Mart
   `* Re: Ada versus PascalNiklas Holsti
    `* Re: Ada versus PascalLuke A. Guest
     `- Re: Ada versus PascalLuke A. Guest

1
Ada versus Pascal

<sktb3o$dn1$1@gioia.aioe.org>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6221&group=comp.lang.ada#6221

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!aioe.org!Dpeu2/K9RL5PATEL5RyUCA.user.46.165.242.75.POSTED!not-for-mail
From: 711...@spooky.mart (711 Spooky Mart)
Newsgroups: comp.lang.ada
Subject: Ada versus Pascal
Date: Thu, 21 Oct 2021 22:29:15 -0500
Organization: Aioe.org NNTP Server
Message-ID: <sktb3o$dn1$1@gioia.aioe.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Injection-Info: gioia.aioe.org; logging-data="14049"; posting-host="Dpeu2/K9RL5PATEL5RyUCA.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Secret Agent Man
X-Mozilla-News-Host: snews://news.neodome.net:563
Content-Language: en-US
X-Notice: Filtered by postfilter v. 0.9.2
 by: 711 Spooky Mart - Fri, 22 Oct 2021 03:29 UTC

The little snippets of Ada code I've seen look _alot_ like Pascal.

What degree of learning curve is there to learn Ada, coming from a
Pascal background? What kind of rough timeframes to get comfortable with
programming without always looking to the manuals?

Where is the best starting point for a Pascal programmer to get up and
running with Ada?

--
┏━━━━┓──┏━━┓───┏━━┓── ┌────────────────────────┐ ┌────────┐
┗━━┓─┃──┗┓─┃───┗┓─┃── │ Spooky Mart [chan] 711 │ │ always │
───┃─┃──┏┛─┗┓──┏┛─┗┓─ │ https://bitmessage.org │ │ open │
───┗━┛──┗━━━┛──┗━━━┛─ └────────────────────────┘ └────────┘

Re: Ada versus Pascal

<nnd$7ef24ce4$14b6c3ad@172701a218b8ba4a>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6222&group=comp.lang.ada#6222

  copy link   Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Newsgroups: comp.lang.ada
References: <sktb3o$dn1$1@gioia.aioe.org>
From: bertus.d...@planet.nl (ldries46)
Date: Fri, 22 Oct 2021 08:18:07 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
Thunderbird/78.14.0
MIME-Version: 1.0
In-Reply-To: <sktb3o$dn1$1@gioia.aioe.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Content-Language: en-GB
Message-ID: <nnd$7ef24ce4$14b6c3ad@172701a218b8ba4a>
Organization: KPN B.V.
Path: i2pn2.org!i2pn.org!news.swapon.de!news.mixmin.net!feed.abavia.com!abe002.abavia.com!abp002.abavia.com!news.kpn.nl!not-for-mail
Lines: 21
Injection-Date: Fri, 22 Oct 2021 08:18:08 +0200
Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com"
 by: ldries46 - Fri, 22 Oct 2021 06:18 UTC

Op 22-10-2021 om 5:29 schreef 711 Spooky Mart:
> The little snippets of Ada code I've seen look _alot_ like Pascal.
>
> What degree of learning curve is there to learn Ada, coming from a
> Pascal background? What kind of rough timeframes to get comfortable with
> programming without always looking to the manuals?
>
> Where is the best starting point for a Pascal programmer to get up and
> running with Ada?
>
I have learned programming in 1966/1967 in Algol 60. As seen i the Algol
report that can be found on internet Algol 60 is mostly a language for
defining algorithms. It does not defines Input and Output procedures.
Pascal is one of the languages that have Algol 60 as a predecessor as is
Ada. I did learn Pascal  from some course and later on I did learn Ada,
the latter by just reading the book "Software Engineering with Ada" by
Grady Booch. That was Ada 85. The first version of Ada. Ada is stricter
than other languages and is meant to have NO Operating system dependant
items, so if you cannot go around something there must be a package on
each operating system having the same interface everywhere.

Re: Ada versus Pascal

<87mtn1d0jw.fsf@nightsong.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6223&group=comp.lang.ada#6223

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: no.em...@nospam.invalid (Paul Rubin)
Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Date: Thu, 21 Oct 2021 23:40:51 -0700
Organization: A noiseless patient Spider
Lines: 18
Message-ID: <87mtn1d0jw.fsf@nightsong.com>
References: <sktb3o$dn1$1@gioia.aioe.org>
Mime-Version: 1.0
Content-Type: text/plain
Injection-Info: reader02.eternal-september.org; posting-host="16e96be9099e041bbfb4b24bd54dd383";
logging-data="15632"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19Z6YhiZhSD7QwBqlSI7D8b"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)
Cancel-Lock: sha1:VM2HboOPH5EPS7U9M8xWI9PJcYs=
sha1:klLCklxZ09XfLT0+LwpITEoLg10=
 by: Paul Rubin - Fri, 22 Oct 2021 06:40 UTC

711 Spooky Mart <711@spooky.mart> writes:
> What degree of learning curve is there to learn Ada, coming from a
> Pascal background? What kind of rough timeframes to get comfortable with
> programming without always looking to the manuals?

Ada is not that hard to get started with, but it has orders of magnitude
more stuff in it than Pascal does, and getting familiar with all the
intricacies is a big task. I've fooled with Ada a little, I consider
myself a language geek, I've been following this newsgroup on and off
for years, but I can't understand that many of the discussions I see
here.

If I wanted to do something serious with Ada, I'd start by working
through an in-depth textbook rather than just an intro or tutorial.

For just getting started, I used "Ada Distilled" (easy to find online).
It is pretty good, but there is an enormous amount of material that it
doesn't cover.

Re: Ada versus Pascal

<itfcneFalfnU1@mid.individual.net>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6224&group=comp.lang.ada#6224

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: niklas.h...@tidorum.invalid (Niklas Holsti)
Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Date: Fri, 22 Oct 2021 11:57:17 +0300
Organization: Tidorum Ltd
Lines: 68
Message-ID: <itfcneFalfnU1@mid.individual.net>
References: <sktb3o$dn1$1@gioia.aioe.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: individual.net eOhFlIekAy2C9D3AasdA5Qp1SJJwp7ULzeBEC+4ugtu8VX3+Df
Cancel-Lock: sha1:+jCT4LUGxPXG1Ws3RNaBKI6DXvw=
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:78.0)
Gecko/20100101 Thunderbird/78.13.0
In-Reply-To: <sktb3o$dn1$1@gioia.aioe.org>
Content-Language: en-US
 by: Niklas Holsti - Fri, 22 Oct 2021 08:57 UTC

On 2021-10-22 6:29, 711 Spooky Mart wrote:
> The little snippets of Ada code I've seen look _alot_ like Pascal.

Yes. Pascal syntax had a lot of influence on Ada syntax. But, as others
have said, (current) Ada has a lot more features than (original) Pascal.

Very roughly speaking, and off the cuff, Ada has evolved as follows,
which also gives you a list of the main things to learn, in addition to
the Pascal base:

- Ada 83: Pascal + much improved type system + modules (packages) +
exception handling + generic programming + concurrency (tasks)

- Ada 95: added modular (unsigned) integer types, object-oriented
programming (classes = tagged types), package hierarchies (child
packages), and asynchronous inter-task communication (protected objects)

- Ada 2005: added Java-like interface types (limited multiple
inheritance), a standard container library, and further standard libraries

- Ada 2012: added support for program proof and logical run-time checks
(preconditions, postconditions, type predicates), more forms of
expressions (if expressions, case expressions, quantified expressions),
and more standard libraries.

- Ada 2022 (upcoming): adds fine-grained parallel execution, extends the
ability to do static (compile-time) computations, adds library packages
for arbitrary-precision and arbitrary-range integer and real arithmetic
("bignums"), and makes lots of sundry improvements.

> What degree of learning curve is there to learn Ada, coming from a
> Pascal background? What kind of rough timeframes to get comfortable with
> programming without always looking to the manuals?

As you can see from the list above, there is quite a lot to learn before
you know _all_ of Ada. A Pascal-like subset should not be hard to learn,
and if you learn the rest of the features in more or less the same order
as they were added to Ada, you will pass from one consistent, working
language subset to a larger such subset at each step.

The only point where I suggest to learn features in a different order is
in inter-task communication: asynchronous communication via protected
objects is much easier than was the original, synchronous rendez-vous
method in Ada 83 (but which is of course still supported).

> Where is the best starting point for a Pascal programmer to get up and
> running with Ada?

I think this depends a lot on how you like to learn - by reading
technical text (manuals) or by experimentation. I'm a "read the manual"
type (I learned Ada from the Ada 83 Reference Manual) so perhaps I would
start with the Ada Wikibook at
https://en.m.wikibooks.org/wiki/Ada_Programming, which extends up to the
2012 Ada standard (or so it claims, I haven't really read it, but I've
heard good reports of it).

Perhaps you could take one of your smaller Pascal programs and translate
it to Ada as a first step? As the next step, you could divide that
program into packages, then add exception handling. And then take a new
problem and write an Ada program from scratch.

Ask for help here, or in some other Ada forum, whenever in doubt about
something.

Re: Ada versus Pascal

<sku1v7$41p$1@gioia.aioe.org>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6225&group=comp.lang.ada#6225

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!aioe.org!Ey80XmuuMgmf3K5pHbZCsg.user.46.165.242.75.POSTED!not-for-mail
From: 711...@spooky.mart (711 Spooky Mart)
Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Date: Fri, 22 Oct 2021 04:59:25 -0500
Organization: Aioe.org NNTP Server
Message-ID: <sku1v7$41p$1@gioia.aioe.org>
References: <sktb3o$dn1$1@gioia.aioe.org>
<nnd$7ef24ce4$14b6c3ad@172701a218b8ba4a>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="4153"; posting-host="Ey80XmuuMgmf3K5pHbZCsg.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Secret Agent Man
Content-Language: en-US
X-Notice: Filtered by postfilter v. 0.9.2
 by: 711 Spooky Mart - Fri, 22 Oct 2021 09:59 UTC

On 10/22/21 1:18 AM, ldries46 wrote:

[...]

> Ada is stricter
> than other languages and is meant to have NO Operating system dependant
> items, so if you cannot go around something there must be a package on
> each operating system having the same interface everywhere.

By this do you mean the same syntax and libs will run on all target
systems without fiddling with {IFDEF} and architecture compiler switch
woo foo for USES and repetitive cross-arch boilerplate?

One thing I can't stand about Pascal is the totally different functions
and logic from several operating systems that MUST be re-written several
times in the same code base to do the same job. This drives me mad. In
fact it irks me so much I was thinking of writing some libraries for
things I do that would handle this all automatically across arches.
There would go a couple months of Sundays.

Think IPC with Pascal. Get a good IPC routine going for Linux in your
app, then you have to re-write it for MAC and Windows, and even some
other flavors of *nix.

So am I to understand that the Ada compiler has somehow eliminated this
problem, by ensuring every target OS has a syntactically conformant
package to execute its methods using the same statements?

If I'm understanding you rightly, even though Ada sounds like a much
more complex language than Pascal, it also sounds like it would have
less surprises across arches.

Please elaborate if I'm misunderstanding. And thanks to everyone else
who has responded.

711

Re: Ada versus Pascal

<sku8fp$5vk$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6227&group=comp.lang.ada#6227

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: spam.jrc...@spam.acm.org.not (Jeffrey R.Carter)
Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Date: Fri, 22 Oct 2021 13:49:11 +0200
Organization: A noiseless patient Spider
Lines: 34
Message-ID: <sku8fp$5vk$1@dont-email.me>
References: <sktb3o$dn1$1@gioia.aioe.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Fri, 22 Oct 2021 11:49:13 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="1bce0c3576becf91431a005f3c3f71fe";
logging-data="6132"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18p9mdtp2w/9WdMyG6i+/Wcu2scrkcvYu0="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
Thunderbird/91.1.2
Cancel-Lock: sha1:HO4nspOanyxQnVyIQIrIwn1CTWg=
In-Reply-To: <sktb3o$dn1$1@gioia.aioe.org>
Content-Language: en-US
 by: Jeffrey R.Carter - Fri, 22 Oct 2021 11:49 UTC

On 10/22/21 05:29, 711 Spooky Mart wrote:
>
> What degree of learning curve is there to learn Ada, coming from a
> Pascal background? What kind of rough timeframes to get comfortable with
> programming without always looking to the manuals?

Pascal was the starting point for the Green language, which became Ada
in 1980 (and also for the Blue, Red, and Yellow languages, which did
not). Ada is firmly in the ALGOL family of languages.

There is a sequential subset of Ada that Pascal users can learn very
quickly: the sequential language + packages (packages [modules] are
fundamental to Ada, and you can't do anything useful without them). One
should then quickly learn generics, as much of the standard library is
generic. Ada's features are mostly orthogonal, so one can use this
subset without surprises from the other aspects of the language.

One can then learn programming by type extension (tagged types and
interfaces) and concurrent programming (tasks and their friends) to
complete your understanding of the language.

I generally recommend /Ada Distilled/
(https://www.adaic.org/wp-content/uploads/2010/05/Ada-Distilled-24-January-2011-Ada-2005-Version.pdf)
to those familiar with another imperative language. It's ISO/IEC
8652:2007 Ada, but you can easily pick up the new Ada-12 features when
you've finished. (There's also now an Ada-12 version available on Amazon.)

--
Jeff Carter
"Make it right before you make it faster."
"Keep it right when you make it faster."
"Make it clear before you make it faster."
Elements of Programming Style
197

Re: Ada versus Pascal

<itg2niFeqbnU1@mid.individual.net>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6228&group=comp.lang.ada#6228

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: niklas.h...@tidorum.invalid (Niklas Holsti)
Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Date: Fri, 22 Oct 2021 18:12:49 +0300
Organization: Tidorum Ltd
Lines: 78
Message-ID: <itg2niFeqbnU1@mid.individual.net>
References: <sktb3o$dn1$1@gioia.aioe.org>
<nnd$7ef24ce4$14b6c3ad@172701a218b8ba4a> <sku1v7$41p$1@gioia.aioe.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: individual.net NasbOFm88RuCpsjBUme+oABdvBArXR03csN8HCK8whZ6158i0b
Cancel-Lock: sha1:tJH4w5FZ+Cm0ujVBe/lmZTQfTLI=
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:78.0)
Gecko/20100101 Thunderbird/78.14.0
In-Reply-To: <sku1v7$41p$1@gioia.aioe.org>
Content-Language: en-US
 by: Niklas Holsti - Fri, 22 Oct 2021 15:12 UTC

On 2021-10-22 12:59, 711 Spooky Mart wrote:
> On 10/22/21 1:18 AM, ldries46 wrote:
>
> [...]
>
>> Ada is stricter
>> than other languages and is meant to have NO Operating system dependant
>> items, so if you cannot go around something there must be a package on
>> each operating system having the same interface everywhere.
>
> By this do you mean the same syntax and libs will run on all target
> systems without fiddling with {IFDEF} and architecture compiler switch
> woo foo for USES and repetitive cross-arch boilerplate?

I'm not ldries46, but here is an answer: Ada standardizes _some_
functions for which some other languages use "OS" services, principally
threading, which in Ada is the "tasking" feature. Indeed Ada tasking
works in the same way whichever OS is used, and also in the "bare
board", no-OS situation. This is very useful for developing
multi-threaded embedded SW, because the Ada tasking code can be tested
on desk-top workstations and then executed on the target system
unchanged. (and no "ifdefs").

But real operating systems (as opposed to simpler real-time kernels)
provide many services that are not standardized in Ada, for example
inter-process communication.

> One thing I can't stand about Pascal is the totally different functions
> and logic from several operating systems that MUST be re-written several
> times in the same code base to do the same job. This drives me mad. In
> fact it irks me so much I was thinking of writing some libraries for
> things I do that would handle this all automatically across arches.
> There would go a couple months of Sundays.
>
> Think IPC with Pascal. Get a good IPC routine going for Linux in your
> app, then you have to re-write it for MAC and Windows, and even some
> other flavors of *nix.

Indeed.

> So am I to understand that the Ada compiler has somehow eliminated this
> problem, by ensuring every target OS has a syntactically conformant
> package to execute its methods using the same statements?

Sadly no.

However, there are some rudiments:

- There is a standardized Ada interface (binding) to POSIX services.
This is implemented in an Ada library called Florist. If you find or
make a Florist implementation for the OSes you use, your Ada program can
use the same OS service interfaces on all those OSes.

- The gcc-based Ada compiler GNAT comes with a GNAT-specific library
that provides some OS services with the same Ada API on any OS that GNAT
supports. This includes some IPC, but I don't know exactly how far that
goes, and the library may of course change from one GNAT version to the
next.

- There is an Ada library called Win32Ada that provides an extensive set
of Microsoft Windows services, but it is a "thin binding" meaning that
even the API is Windows-specific.

The Ada applications I have created and worked with have needed only a
few OS services, basically some IPC: text in and out via pipes to and
from a child process. We implemented our own binding to the required OS
services (pipe and process creation and destruction). The interface
consisted of a package declaration (.ads file) that was basically the
same for all the supported OSes (Windows, Linux, Mac OS X) but had
different OS-specific package body files (implementations, .adb files).
In practice I think the Linux and Mac OS X implementations were the same
and used direct binding to fork() and pipe() etc. The Windows
implementation used Win32Ada.

Re: Ada versus Pascal

<skumfd$13l7$1@gioia.aioe.org>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6229&group=comp.lang.ada#6229

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!aioe.org!x6YkKUCkj2qHLwbKnVEeag.user.46.165.242.91.POSTED!not-for-mail
From: mail...@dmitry-kazakov.de (Dmitry A. Kazakov)
Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Date: Fri, 22 Oct 2021 17:47:59 +0200
Organization: Aioe.org NNTP Server
Message-ID: <skumfd$13l7$1@gioia.aioe.org>
References: <sktb3o$dn1$1@gioia.aioe.org>
<nnd$7ef24ce4$14b6c3ad@172701a218b8ba4a> <sku1v7$41p$1@gioia.aioe.org>
<itg2niFeqbnU1@mid.individual.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="36519"; posting-host="x6YkKUCkj2qHLwbKnVEeag.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.2.0
X-Notice: Filtered by postfilter v. 0.9.2
Content-Language: en-US
 by: Dmitry A. Kazakov - Fri, 22 Oct 2021 15:47 UTC

On 2021-10-22 17:12, Niklas Holsti wrote:

> I'm not ldries46, but here is an answer: Ada standardizes _some_
> functions for which some other languages use "OS" services, principally
> threading, which in Ada is the "tasking" feature. Indeed Ada tasking
> works in the same way whichever OS is used, and also in the "bare
> board", no-OS situation. This is very useful for developing
> multi-threaded embedded SW, because the Ada tasking code can be tested
> on desk-top workstations and then executed on the target system
> unchanged. (and no "ifdefs").
>
> But real operating systems (as opposed to simpler real-time kernels)
> provide many services that are not standardized in Ada, for example
> inter-process communication.

Ada 83 predates threads. Initially a task meant to be either scheduled
internally or mapped onto system processes. It is not late now. One
could allow the pragma Import for tasks (and protected objects) in order
to communicate to an external process using rendezvous and protected
actions.

> However, there are some rudiments:
>
> - There is a standardized Ada interface (binding) to POSIX services.
> This is implemented in an Ada library called Florist. If you find or
> make a Florist implementation for the OSes you use, your Ada program can
> use the same OS service interfaces on all those OSes.
>
> - The gcc-based Ada compiler GNAT comes with a GNAT-specific library
> that provides some OS services with the same Ada API on any OS that GNAT
> supports. This includes some IPC, but I don't know exactly how far that
> goes, and the library may of course change from one GNAT version to the
> next.

It provides sockets and serial I/O, one or both are vital for many
applications.

> - There is an Ada library called Win32Ada that provides an extensive set
> of Microsoft Windows services, but it is a "thin binding" meaning that
> even the API is Windows-specific.

- There is the annex E providing RPC and shared objects. Unfortunately
it is very vague and underdocumented. I failed to provide an
implementation of for a GNAT compiler.

- The simple components library provides inter-process communication
primitives: mutexes, events, streams, pools, RPCs etc.

--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de

Re: Ada versus Pascal

<6pq5ngtioomfo2depk1ickvbdmleuqq16i@4ax.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6230&group=comp.lang.ada#6230

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!buffer2.nntp.dca1.giganews.com!buffer1.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Fri, 22 Oct 2021 12:05:01 -0500
From: wlfr...@ix.netcom.com (Dennis Lee Bieber)
Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Date: Fri, 22 Oct 2021 13:05:01 -0400
Organization: IISS Elusive Unicorn
Message-ID: <6pq5ngtioomfo2depk1ickvbdmleuqq16i@4ax.com>
References: <sktb3o$dn1$1@gioia.aioe.org>
User-Agent: ForteAgent/8.00.32.1272
X-No-Archive: yes
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Lines: 48
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-QFwJUyQkK0YHafZhe6ZhUrmfe4ktsr9Zce7J32Oq0Cc6Cc4V2e2IgJjHQvDt+HD+900b7g/ZPdY1/0/!kIJ6OcTmHAufJDKjh8ViEXptqk+9oHUNh7BgzXYAwqwGlejUgPVhmRKZmnpWzPOGsKJEZIxh
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 3308
 by: Dennis Lee Bieber - Fri, 22 Oct 2021 17:05 UTC

On Thu, 21 Oct 2021 22:29:15 -0500, 711 Spooky Mart <711@spooky.mart>
declaimed the following:

>The little snippets of Ada code I've seen look _alot_ like Pascal.
>
No surprise. The teams that took part in the DoD competition to design
a language to replace the mish-mash of languages being used in the 70s
tended to choose Pascal as the starting point (Modula-2 hadn't escaped
ETH-Zurich yet <G>).

The main difference is that Ada incorporated block closing syntax at
the base, finding Pascal (and C) [begin/end, {/} respectively] usage
error-prone (dangling else, etc.) along with using ; as a terminator
instead of separator. Oh, and using (/) for both function arguments and
array indexing (back then, most US keypunches didn't support [/] or {/} ).

Declarations do not have a defined sequence (type, constant, variable).

Also, Pascal of the era typically did not support separate compilation
and/or include files -- programs were all single monolithic files, any
change required recompiling the entire program.

Pascal also had a relatively limited I/O system -- with the bad quirk
that it did "pre-reads" of files. Made interactive/console programs
difficult (or required special handling by the run-time startup) --
starting a program would result in stdin reading at the least one
character, if not one line, into the file buffer variable... But the
program may not want the data until after lots of initialization and
prompts.

>What degree of learning curve is there to learn Ada, coming from a
>Pascal background? What kind of rough timeframes to get comfortable with
>programming without always looking to the manuals?
>
If all one is writing is "Pascal" type applications, without using
complex data types (ie; defining specific types for each "concept") -- it
shouldn't take too long.

Tasking, rendezvous, protected objects (not to be confused with private
objects), and generics, may take longer to get comfortable with.

The appendices of the LRM will tend to get lots of usage; there are
many subtleties to the standard libraries.

--
Wulfraed Dennis Lee Bieber AF6VN
wlfraed@ix.netcom.com http://wlfraed.microdiversity.freeddns.org/

Re: Ada versus Pascal

<d469fd05-1bce-48cd-97a7-e75eb6a33033n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6231&group=comp.lang.ada#6231

  copy link   Newsgroups: comp.lang.ada
X-Received: by 2002:ac8:5e08:: with SMTP id h8mr2218201qtx.66.1634932846409;
Fri, 22 Oct 2021 13:00:46 -0700 (PDT)
X-Received: by 2002:a05:6902:50c:: with SMTP id x12mr2095637ybs.139.1634932846212;
Fri, 22 Oct 2021 13:00:46 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.ada
Date: Fri, 22 Oct 2021 13:00:45 -0700 (PDT)
In-Reply-To: <sktb3o$dn1$1@gioia.aioe.org>
Injection-Info: google-groups.googlegroups.com; posting-host=2a02:1206:4596:5040:b493:883d:379d:662e;
posting-account=gRqrnQkAAAAC_02ynnhqGk1VRQlve6ZG
NNTP-Posting-Host: 2a02:1206:4596:5040:b493:883d:379d:662e
References: <sktb3o$dn1$1@gioia.aioe.org>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <d469fd05-1bce-48cd-97a7-e75eb6a33033n@googlegroups.com>
Subject: Re: Ada versus Pascal
From: gautier_...@hotmail.com (Gautier write-only address)
Injection-Date: Fri, 22 Oct 2021 20:00:46 +0000
Content-Type: text/plain; charset="UTF-8"
Lines: 9
 by: Gautier write-only a - Fri, 22 Oct 2021 20:00 UTC

> What degree of learning curve is there to learn Ada, coming from a
> Pascal background? What kind of rough timeframes to get comfortable with
> programming without always looking to the manuals?

You don't need to read more manuals than you were used for Pascal (so, it can be a wide range, depending on your way of learning).
The most outstanding difference between both languages is the degree of unification.

Here a couple of links, with a Pascal-then-Ada perspective, that could be useful:
http://p2ada.sourceforge.net/pascada.htm" rel="nofollow" target="_blank">http://p2ada.sourceforge.net/pascada.htm
http://p2ada.sourceforge.net/

Re: Ada versus Pascal

<87ilxod1nd.fsf@nightsong.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6232&group=comp.lang.ada#6232

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: no.em...@nospam.invalid (Paul Rubin)
Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Date: Fri, 22 Oct 2021 17:29:26 -0700
Organization: A noiseless patient Spider
Lines: 8
Message-ID: <87ilxod1nd.fsf@nightsong.com>
References: <sktb3o$dn1$1@gioia.aioe.org>
<6pq5ngtioomfo2depk1ickvbdmleuqq16i@4ax.com>
Mime-Version: 1.0
Content-Type: text/plain
Injection-Info: reader02.eternal-september.org; posting-host="dfefd91eefa44a4427e4ba3ae4b7dfc5";
logging-data="16385"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+PPepvrk1e8vPVsXDcIFkh"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)
Cancel-Lock: sha1:0rw+FJse/68tD+vhWcvmQzozeaM=
sha1:U9Dm97Nv+lDa8GTHGLgFE4P5vnc=
 by: Paul Rubin - Sat, 23 Oct 2021 00:29 UTC

Dennis Lee Bieber <wlfraed@ix.netcom.com> writes:
> Also, Pascal of the era typically did not support separate
> compilation and/or include files -- programs were all single
> monolithic files, any change required recompiling the entire program.

I thought Ada was originally like that too. The program could be split
into multiple files, but they were expected to all be compiled together.

Re: Ada versus Pascal

<skvnqf$3m7$1@franka.jacob-sparre.dk>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6233&group=comp.lang.ada#6233

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!newsfeed.xs3.de!callisto.xs3.de!news.jacob-sparre.dk!franka.jacob-sparre.dk!pnx.dk!.POSTED.rrsoftware.com!not-for-mail
From: ran...@rrsoftware.com (Randy Brukardt)
Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Date: Fri, 22 Oct 2021 20:17:02 -0500
Organization: JSA Research & Innovation
Lines: 22
Message-ID: <skvnqf$3m7$1@franka.jacob-sparre.dk>
References: <sktb3o$dn1$1@gioia.aioe.org><6pq5ngtioomfo2depk1ickvbdmleuqq16i@4ax.com> <87ilxod1nd.fsf@nightsong.com>
Injection-Date: Sat, 23 Oct 2021 01:17:04 -0000 (UTC)
Injection-Info: franka.jacob-sparre.dk; posting-host="rrsoftware.com:24.196.82.226";
logging-data="3783"; mail-complaints-to="news@jacob-sparre.dk"
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.5931
X-RFC2646: Format=Flowed; Original
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.7246
 by: Randy Brukardt - Sat, 23 Oct 2021 01:17 UTC

"Paul Rubin" <no.email@nospam.invalid> wrote in message
news:87ilxod1nd.fsf@nightsong.com...
> Dennis Lee Bieber <wlfraed@ix.netcom.com> writes:
>> Also, Pascal of the era typically did not support separate
>> compilation and/or include files -- programs were all single
>> monolithic files, any change required recompiling the entire program.
>
> I thought Ada was originally like that too. The program could be split
> into multiple files, but they were expected to all be compiled together.

No. Some implementations were like that, but most supported fully separate
compilations from the beginning. Janus/Ada certainly did (once we got
packages implemented, and Ada without packages really isn't Ada at all). You
might have been thinking about the original permission to require generic
bodies to be available when compiling an instantiation, but that only
applied to generic units, never "regular" units. And some compilers (like
Janus/Ada) never used that permission.

Randy.

Re: Ada versus Pascal

<nnd$1daff1e2$1c873db0@599bac74cca8d5c1>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6234&group=comp.lang.ada#6234

  copy link   Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Newsgroups: comp.lang.ada
References: <sktb3o$dn1$1@gioia.aioe.org>
<nnd$7ef24ce4$14b6c3ad@172701a218b8ba4a> <sku1v7$41p$1@gioia.aioe.org>
<itg2niFeqbnU1@mid.individual.net>
From: bertus.d...@planet.nl (ldries46)
Date: Sat, 23 Oct 2021 09:13:37 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
Thunderbird/78.14.0
MIME-Version: 1.0
In-Reply-To: <itg2niFeqbnU1@mid.individual.net>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Content-Language: en-GB
Message-ID: <nnd$1daff1e2$1c873db0@599bac74cca8d5c1>
Organization: KPN B.V.
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!news.mixmin.net!feed.abavia.com!abe001.abavia.com!abp002.abavia.com!news.kpn.nl!not-for-mail
Lines: 35
Injection-Date: Sat, 23 Oct 2021 09:13:39 +0200
Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com"
 by: ldries46 - Sat, 23 Oct 2021 07:13 UTC

Op 22-10-2021 om 17:12 schreef Niklas Holsti:
> On 2021-10-22 12:59, 711 Spooky Mart wrote:
>> On 10/22/21 1:18 AM, ldries46 wrote:
>>
>> [...]
>>
>>> Ada is stricter
>>> than other languages and is meant to have NO Operating system dependant
>>> items, so if you cannot go around something there must be a package on
>>> each operating system having the same interface everywhere.
>>
>> By this do you mean the same syntax and libs will run on all target
>> systems without fiddling with {IFDEF} and architecture compiler switch
>> woo foo for USES and repetitive cross-arch boilerplate?
>
>
> I'm not ldries46, but here is an answer: Ada standardizes _some_
> functions for which some other languages use "OS" services,
> principally threading, which in Ada is the "tasking" feature. Indeed
> Ada tasking works in the same way whichever OS is used, and also in
> the "bare board", no-OS situation. This is very useful for developing
> multi-threaded embedded SW, because the Ada tasking code can be tested
> on desk-top workstations and then executed on the target system
> unchanged. (and no "ifdefs").
>
> But real operating systems (as opposed to simpler real-time kernels)
> provide many services that are not standardized in Ada, for example
> inter-process communication.
>
Of course there are system functions that are in OS that are not
implemented in standard Ada. That type users must implement themselves.
In fact some users are doing that and are present these solutions to the
world. For these packages the latter line of my earlier comment is
applicable.

Re: Ada versus Pascal

<ly5ytnbzqe.fsf@pushface.org>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6238&group=comp.lang.ada#6238

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!aioe.org!8nKyDL3nVTTIdBB8axZhRA.user.46.165.242.75.POSTED!not-for-mail
From: sim...@pushface.org (Simon Wright)
Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Date: Sat, 23 Oct 2021 15:08:25 +0100
Organization: Aioe.org NNTP Server
Message-ID: <ly5ytnbzqe.fsf@pushface.org>
References: <sktb3o$dn1$1@gioia.aioe.org>
<nnd$7ef24ce4$14b6c3ad@172701a218b8ba4a> <sku1v7$41p$1@gioia.aioe.org>
<itg2niFeqbnU1@mid.individual.net>
Mime-Version: 1.0
Content-Type: text/plain
Injection-Info: gioia.aioe.org; logging-data="30857"; posting-host="8nKyDL3nVTTIdBB8axZhRA.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (darwin)
X-Notice: Filtered by postfilter v. 0.9.2
Cancel-Lock: sha1:Dlufk1GRLHGOZnFoag2iOEP46Ek=
 by: Simon Wright - Sat, 23 Oct 2021 14:08 UTC

Niklas Holsti <niklas.holsti@tidorum.invalid> writes:

> Indeed Ada tasking works in the same way whichever OS is used, and
> also in the "bare board", no-OS situation.

Most bare-board runtimes use a subset (the Ravenscar profile) of full
Ada's tasking facilities. That said, code intended for the bare-board
can be developed on the desktop.

Re: Ada versus Pascal

<79f8nghgdr1p9707tg924i18t4tmkqdnvr@4ax.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6240&group=comp.lang.ada#6240

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!aioe.org!feeder1.feed.usenet.farm!feed.usenet.farm!tr3.eu1.usenetexpress.com!feeder.usenetexpress.com!tr3.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!buffer1.nntp.dca1.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Sat, 23 Oct 2021 12:24:18 -0500
From: wlfr...@ix.netcom.com (Dennis Lee Bieber)
Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Date: Sat, 23 Oct 2021 13:24:19 -0400
Organization: IISS Elusive Unicorn
Message-ID: <79f8nghgdr1p9707tg924i18t4tmkqdnvr@4ax.com>
References: <sktb3o$dn1$1@gioia.aioe.org> <6pq5ngtioomfo2depk1ickvbdmleuqq16i@4ax.com> <87ilxod1nd.fsf@nightsong.com>
User-Agent: ForteAgent/8.00.32.1272
X-No-Archive: yes
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Lines: 42
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-CdJNApbJlx9zeH9phYZfSlSuL0mikKajap4NehNKjqOmks8TnLXC84h4uTP06/c7KN+lCpI93puSkb/!KsDnpzRfVFHN8mtz5h4AVpROWDIggnqyTR2L0kPti/tYOL2WF63SfZ5QLIqwkqM/OG5U/ecm
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Original-Bytes: 3223
 by: Dennis Lee Bieber - Sat, 23 Oct 2021 17:24 UTC

On Fri, 22 Oct 2021 17:29:26 -0700, Paul Rubin <no.email@nospam.invalid>
declaimed the following:

>Dennis Lee Bieber <wlfraed@ix.netcom.com> writes:
>> Also, Pascal of the era typically did not support separate
>> compilation and/or include files -- programs were all single
>> monolithic files, any change required recompiling the entire program.
>
>I thought Ada was originally like that too. The program could be split
>into multiple files, but they were expected to all be compiled together.

No... Pretty much every build system for Ada focused on only rebuilding
the parts affected by a changed file -- by following WITH statements to
find required units (see the LRM for what a "unit" comprises) /and/
determining if that unit requires compilation. Timestamps or intermediate
files may be used in that determination. Changes in implementation (body)
require the body to be recompiled, but if the specification did not change,
then units WITHing the specification don't need to be compiled -- they just
need relinking with the updated body.

GNAT's build system -- using the host OS filesystem as the "database"
-- required that separate files are generated for each unit. (cf: GNATCHOP)
All-in-One was the optional source file format accepted by some compilers
-- but other than the early language reference manuals, I haven't
encountered any text books that use that means of presenting code examples
(unless it is discussing the use of GNATCHOP itself <G>).

https://www.adahome.com/History/Stoneman/stoneman.htm
is the requirements document that DoD used to define the desired
environment around Ada development.
"""
4.E APSE TOOLSET REQUIREMENTS
4.E.1 The tools in an APSE shall support the development of programs in
the Ada language as defined by the Ada reference manual. In particular an
APSE shall support the separate compilation features of the language.
"""
NOTE the last sentence

--
Wulfraed Dennis Lee Bieber AF6VN
wlfraed@ix.netcom.com http://wlfraed.microdiversity.freeddns.org/

Re: Ada versus Pascal

<744e718c-0872-49c7-a3ad-2640ae262e4cn@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6241&group=comp.lang.ada#6241

  copy link   Newsgroups: comp.lang.ada
X-Received: by 2002:a37:44c8:: with SMTP id r191mr7854184qka.507.1635049994774;
Sat, 23 Oct 2021 21:33:14 -0700 (PDT)
X-Received: by 2002:a25:bb4d:: with SMTP id b13mr470842ybk.139.1635049994586;
Sat, 23 Oct 2021 21:33:14 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.ada
Date: Sat, 23 Oct 2021 21:33:14 -0700 (PDT)
In-Reply-To: <sktb3o$dn1$1@gioia.aioe.org>
Injection-Info: google-groups.googlegroups.com; posting-host=184.101.113.17; posting-account=x5rpZwoAAABMN2XPwcebPWPkebpwQNJG
NNTP-Posting-Host: 184.101.113.17
References: <sktb3o$dn1$1@gioia.aioe.org>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <744e718c-0872-49c7-a3ad-2640ae262e4cn@googlegroups.com>
Subject: Re: Ada versus Pascal
From: list_em...@icloud.com (Jerry)
Injection-Date: Sun, 24 Oct 2021 04:33:14 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Jerry - Sun, 24 Oct 2021 04:33 UTC

This thread began as a comparison of Ada and original Pascal. So how does Ada compare to Free Pascal Compiler and Delphi which have gone far past original Pascal?

Re: Ada versus Pascal

<nnd$323e951c$47f61db4@866608e17e79f4da>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6242&group=comp.lang.ada#6242

  copy link   Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Newsgroups: comp.lang.ada
References: <sktb3o$dn1$1@gioia.aioe.org>
<744e718c-0872-49c7-a3ad-2640ae262e4cn@googlegroups.com>
From: bertus.d...@planet.nl (ldries46)
Date: Sun, 24 Oct 2021 08:32:01 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
Thunderbird/78.14.0
MIME-Version: 1.0
In-Reply-To: <744e718c-0872-49c7-a3ad-2640ae262e4cn@googlegroups.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Content-Language: en-GB
Message-ID: <nnd$323e951c$47f61db4@866608e17e79f4da>
Organization: KPN B.V.
Path: i2pn2.org!i2pn.org!news.niel.me!nntp.terraraq.uk!news.dns-netz.com!news.freedyn.net!newsfeed.xs4all.nl!newsfeed9.news.xs4all.nl!2.eu.feeder.erje.net!feeder.erje.net!feed.abavia.com!abe002.abavia.com!abp002.abavia.com!news.kpn.nl!not-for-mail
Lines: 5
Injection-Date: Sun, 24 Oct 2021 08:32:03 +0200
Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com"
 by: ldries46 - Sun, 24 Oct 2021 06:32 UTC

Op 24-10-2021 om 6:33 schreef Jerry:
> This thread began as a comparison of Ada and original Pascal. So how does Ada compare to Free Pascal Compiler and Delphi which have gone far past original Pascal?
You can also ask can you compile a Free Pascal program in Delphi or in
the other direction. Ada was intended to do so and to keep it that way

Re: Ada versus Pascal

<sl30hq$vmm$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6244&group=comp.lang.ada#6244

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: ros...@adalog.fr (J-P. Rosen)
Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Date: Sun, 24 Oct 2021 09:04:29 +0200
Organization: Adalog
Lines: 17
Message-ID: <sl30hq$vmm$1@dont-email.me>
References: <sktb3o$dn1$1@gioia.aioe.org>
<6pq5ngtioomfo2depk1ickvbdmleuqq16i@4ax.com> <87ilxod1nd.fsf@nightsong.com>
<79f8nghgdr1p9707tg924i18t4tmkqdnvr@4ax.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Sun, 24 Oct 2021 07:04:26 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="72f300d732b5b28c170baeb80b9d0c7a";
logging-data="32470"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+CcbT12mU+I4CCknHIO/kE"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
Thunderbird/78.14.0
Cancel-Lock: sha1:EMSW9VEUECrmWZ5wJptqk89oOMg=
In-Reply-To: <79f8nghgdr1p9707tg924i18t4tmkqdnvr@4ax.com>
Content-Language: fr
 by: J-P. Rosen - Sun, 24 Oct 2021 07:04 UTC

Le 23/10/2021 à 19:24, Dennis Lee Bieber a écrit :
> https://www.adahome.com/History/Stoneman/stoneman.htm
> is the requirements document that DoD used to define the desired
> environment around Ada development.

Please don't provide links to adahome, this site is frozen since 1998,
and there are copyrigh issues with the owner.

Stoneman can be obtained from:
https://en.wikisource.org/wiki/Stoneman_requirements

--
J-P. Rosen
Adalog
2 rue du Docteur Lombard, 92441 Issy-les-Moulineaux CEDEX
Tel: +33 1 45 29 21 52
https://www.adalog.fr

Re: Ada versus Pascal

<42fde091-838b-4359-868a-0e7e4662e439n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6250&group=comp.lang.ada#6250

  copy link   Newsgroups: comp.lang.ada
X-Received: by 2002:a05:622a:4cf:: with SMTP id q15mr12615572qtx.265.1635094287429;
Sun, 24 Oct 2021 09:51:27 -0700 (PDT)
X-Received: by 2002:a25:8712:: with SMTP id a18mr11636481ybl.531.1635094287189;
Sun, 24 Oct 2021 09:51:27 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.ada
Date: Sun, 24 Oct 2021 09:51:26 -0700 (PDT)
In-Reply-To: <744e718c-0872-49c7-a3ad-2640ae262e4cn@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2a02:1206:4596:5040:e8b1:91ee:52d4:b395;
posting-account=gRqrnQkAAAAC_02ynnhqGk1VRQlve6ZG
NNTP-Posting-Host: 2a02:1206:4596:5040:e8b1:91ee:52d4:b395
References: <sktb3o$dn1$1@gioia.aioe.org> <744e718c-0872-49c7-a3ad-2640ae262e4cn@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <42fde091-838b-4359-868a-0e7e4662e439n@googlegroups.com>
Subject: Re: Ada versus Pascal
From: gautier_...@hotmail.com (Gautier write-only address)
Injection-Date: Sun, 24 Oct 2021 16:51:27 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Lines: 16
 by: Gautier write-only a - Sun, 24 Oct 2021 16:51 UTC

Le dimanche 24 octobre 2021 à 06:33:15 UTC+2, Jerry a écrit :
> This thread began as a comparison of Ada and original Pascal. So how does Ada compare to Free Pascal Compiler and Delphi which have gone far past original Pascal?

You find a very partial answer in the comparison here:
http://p2ada.sourceforge.net/pascada.htm#tables
Made around year 2000, so ~30 after original Pascal but ~20 years ago.

Note that both FPC and Delphi descend from Turbo Pascal, which is itself completely different from other extensions like ISO Extended Pascal.
In a nutshell, Pascal is an extreme example of fragmentation of a language into dialects.
Ada is on the other extremity: you can build the same source sets (I mean exactly the same sources, without preprocessing gimmicks) on completely different compilers & OSes.

Re: Ada versus Pascal

<sl4psf$s0k$1@gioia.aioe.org>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6253&group=comp.lang.ada#6253

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!aioe.org!lYb45GyKYHhbNrJypubP7A.user.46.165.242.75.POSTED!not-for-mail
From: 711...@spooky.mart (711 Spooky Mart)
Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Date: Sun, 24 Oct 2021 18:24:21 -0500
Organization: Aioe.org NNTP Server
Message-ID: <sl4psf$s0k$1@gioia.aioe.org>
References: <sktb3o$dn1$1@gioia.aioe.org>
<744e718c-0872-49c7-a3ad-2640ae262e4cn@googlegroups.com>
<42fde091-838b-4359-868a-0e7e4662e439n@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Injection-Info: gioia.aioe.org; logging-data="28692"; posting-host="lYb45GyKYHhbNrJypubP7A.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Secret Agent Man
X-Notice: Filtered by postfilter v. 0.9.2
Content-Language: en-US
 by: 711 Spooky Mart - Sun, 24 Oct 2021 23:24 UTC

On 10/24/21 11:51 AM, Gautier write-only address wrote:
> Le dimanche 24 octobre 2021 à 06:33:15 UTC+2, Jerry a écrit :
>> This thread began as a comparison of Ada and original Pascal. So how does Ada compare to Free Pascal Compiler and Delphi which have gone far past original Pascal?
>
> You find a very partial answer in the comparison here:
> http://p2ada.sourceforge.net/pascada.htm#tables
> Made around year 2000, so ~30 after original Pascal but ~20 years ago.
>
> Note that both FPC and Delphi descend from Turbo Pascal, which is itself completely different from other extensions like ISO Extended Pascal.
> In a nutshell, Pascal is an extreme example of fragmentation of a language into dialects.
> Ada is on the other extremity: you can build the same source sets (I mean exactly the same sources, without preprocessing gimmicks) on completely different compilers & OSes.

I think that answers the important original query.

Does modern Ada have facility for writing boot loaders, inline Assembly,
kernels, etc.?

--
──┏━━━━┓──┏━━┓───┏━━┓── ┌────────────────────────┐ ┌────────┐
──┗━━┓─┃──┗┓─┃───┗┓─┃── │ Spooky Mart [chan] 711 │ │ always │
─────┃─┃──┏┛─┗┓──┏┛─┗┓─ │ https://bitmessage.org │ │ open │
─────┗━┛──┗━━━┛──┗━━━┛─ └────────────────────────┘ └────────┘

Re: Ada versus Pascal

<itn7slFptmsU1@mid.individual.net>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6254&group=comp.lang.ada#6254

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: niklas.h...@tidorum.invalid (Niklas Holsti)
Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Date: Mon, 25 Oct 2021 11:23:49 +0300
Organization: Tidorum Ltd
Lines: 21
Message-ID: <itn7slFptmsU1@mid.individual.net>
References: <sktb3o$dn1$1@gioia.aioe.org>
<744e718c-0872-49c7-a3ad-2640ae262e4cn@googlegroups.com>
<42fde091-838b-4359-868a-0e7e4662e439n@googlegroups.com>
<sl4psf$s0k$1@gioia.aioe.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: individual.net gITMdMau6Wiy8/txWFCx+QYUpTcQD51RbQrRtwf3cV+lB54Psx
Cancel-Lock: sha1:2wpKKjralKd7hYWgvnycHy6g/S0=
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:78.0)
Gecko/20100101 Thunderbird/78.14.0
In-Reply-To: <sl4psf$s0k$1@gioia.aioe.org>
Content-Language: en-US
 by: Niklas Holsti - Mon, 25 Oct 2021 08:23 UTC

On 2021-10-25 2:24, 711 Spooky Mart wrote:

> Does modern Ada have facility for writing boot loaders, inline Assembly,
> kernels, etc.?

In-line assembly is supported by most of the Ada compilers I have used,
but the syntax may differ across compilers.

The run-time systems (real-time kernels) associated with Ada compilers
for bare-board embedded systems are typically written in Ada, with minor
amounts of assembly language inserted for the very HW-specific parts
such as HW context saving and restoring.

I'm not very familiar with boot loaders, but I see no reason why a boot
loader could not be written in Ada. However, usually (and as for other
languages) there will be a small start-up routine in assembly language
to initialize the processor, set up a stack, and so forth. The "Ada Bare
Bones" project is doing something like this, I believe:
https://wiki.osdev.org/Ada_Bare_bones.

Re: Ada versus Pascal

<sl5qks$onu$1@gioia.aioe.org>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6255&group=comp.lang.ada#6255

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!aioe.org!Lx7EM+81f32E0bqku+QpCA.user.46.165.242.75.POSTED!not-for-mail
From: lagu...@archeia.com (Luke A. Guest)
Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Date: Mon, 25 Oct 2021 09:40:38 +0100
Organization: Aioe.org NNTP Server
Message-ID: <sl5qks$onu$1@gioia.aioe.org>
References: <sktb3o$dn1$1@gioia.aioe.org>
<744e718c-0872-49c7-a3ad-2640ae262e4cn@googlegroups.com>
<42fde091-838b-4359-868a-0e7e4662e439n@googlegroups.com>
<sl4psf$s0k$1@gioia.aioe.org> <itn7slFptmsU1@mid.individual.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="25342"; posting-host="Lx7EM+81f32E0bqku+QpCA.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
Thunderbird/78.14.0
Content-Language: en-GB
X-Notice: Filtered by postfilter v. 0.9.2
 by: Luke A. Guest - Mon, 25 Oct 2021 08:40 UTC

On 25/10/2021 09:23, Niklas Holsti wrote:
> On 2021-10-25 2:24, 711 Spooky Mart wrote:
>
>
>> Does modern Ada have facility for writing boot loaders, inline Assembly,
>> kernels, etc.?
>

Boot loaders and kernels are just another application area any general
purpose language can target, even Ada.

> I'm not very familiar with boot loaders, but I see no reason why a boot
> loader could not be written in Ada. However, usually (and as for other

If you're talking x86 on PC's, then you'll need to read up on the x86
boot process in which x86 starts up in 16-bit (real) mode, then has to
be taken into protected and then long modes. You would need a GCC that
can target all those modes.

> languages) there will be a small start-up routine in assembly language
> to initialize the processor, set up a stack, and so forth. The "Ada Bare
> Bones" project is doing something like this, I believe:
> https://wiki.osdev.org/Ada_Bare_bones.

Thanks for pointing out my project :) It's out of date and doesn't build
as is any more, but others have written Ada pages on that site since.

Re: Ada versus Pascal

<sl6bru$1l1a$1@gioia.aioe.org>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=6257&group=comp.lang.ada#6257

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!aioe.org!Lx7EM+81f32E0bqku+QpCA.user.46.165.242.75.POSTED!not-for-mail
From: lagu...@archeia.com (Luke A. Guest)
Newsgroups: comp.lang.ada
Subject: Re: Ada versus Pascal
Date: Mon, 25 Oct 2021 14:34:33 +0100
Organization: Aioe.org NNTP Server
Message-ID: <sl6bru$1l1a$1@gioia.aioe.org>
References: <sktb3o$dn1$1@gioia.aioe.org>
<744e718c-0872-49c7-a3ad-2640ae262e4cn@googlegroups.com>
<42fde091-838b-4359-868a-0e7e4662e439n@googlegroups.com>
<sl4psf$s0k$1@gioia.aioe.org> <itn7slFptmsU1@mid.individual.net>
<sl5qks$onu$1@gioia.aioe.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="54314"; posting-host="Lx7EM+81f32E0bqku+QpCA.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
Thunderbird/78.14.0
X-Notice: Filtered by postfilter v. 0.9.2
Content-Language: en-GB
 by: Luke A. Guest - Mon, 25 Oct 2021 13:34 UTC

On 25/10/2021 09:40, Luke A. Guest wrote:

> Thanks for pointing out my project :) It's out of date and doesn't build
> as is any more, but others have written Ada pages on that site since.

IIRC, the changes that need to happen is that gprbuild
--target=arm-<whatever> be used instead of arm-<whatever>-gprbuild.

1
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor