comp.lang.ada
 help / color / mirror / Atom feed
From: Jere <jhb.chat@gmail.com>
Subject: Re: Beginning Ada Programming, by Andrew T. Shvets (2020)
Date: Sat, 18 Apr 2020 15:37:39 -0700 (PDT)
Date: 2020-04-18T15:37:39-07:00	[thread overview]
Message-ID: <df098e7d-48d1-4277-a51b-2b2994815e80@googlegroups.com> (raw)
In-Reply-To: <9ecb00e7-e677-4cec-80f7-3484116c871a@googlegroups.com>

On Saturday, April 18, 2020 at 5:54:49 PM UTC-4, cantani...@gmail.com wrote:
> On Saturday, April 18, 2020 at 12:59:38 PM UTC-5, Jere wrote:
> > Actually it does work on low level arrays in C++.  It doesn't work 
> > on pointers to array elements however, which people often confuse
> > with arrays (that's how people most often pass them to functions, 
> > but there are other methods).
> 
> I didn't realize C++ had progressed to tracking how long a low-level array is, but in retrospect it's come along so much in terms of what you can do at compile-time that I should have tested before commenting. Thank you.
> 
> regards
> john perry

C++ has always been able to track array size at compile time (the
sizeof() operator worked correctly even back int he day as long
as you used it on the array and not a pointer).  Somewhere since
c++11 (or maybe more recent) they added the auto looping and included
low level arrays with it.  The big problem remains however, is you 
cannot technically pass an array to a function as a bare parameter.
If you pass it to a function as a pointer, it loses the length, 
which then kills the auto looping mechanism.  There are ways around
this, but generally C++ prefers that you use containers rather than
raw arrays or pointers (similar to how Ada prefers containers over
access types).  So low level arrays still do have severe limitations
even with the auto looping available.  Hope that helps!

  parent reply	other threads:[~2020-04-18 22:37 UTC|newest]

Thread overview: 82+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-03  4:05 Beginning Ada Programming, by Andrew T. Shvets (2020) Paul Rubin
2019-12-03 12:11 ` AdaMagica
2019-12-03 12:33   ` Lucretia
2019-12-03 13:21     ` J-P. Rosen
2019-12-03 13:57       ` Lucretia
2019-12-03 14:04         ` AdaMagica
2019-12-03 14:15           ` AdaMagica
2019-12-03 14:39             ` Simon Wright
2019-12-03 14:45               ` Shark8
2019-12-03 17:38               ` J-P. Rosen
2019-12-03 15:04           ` Lucretia
2019-12-03 15:29             ` Optikos
2019-12-03 16:06               ` Lucretia
2019-12-03 16:26                 ` Optikos
2019-12-03 16:50                   ` Lucretia
2019-12-03 17:02                     ` Shark8
2019-12-03 17:29                       ` AdaMagica
2019-12-05 16:35                       ` Dirk Heinrichs
2019-12-05 17:12                         ` AdaMagica
2019-12-09 19:08                           ` Dirk Heinrichs
2019-12-06 18:34                         ` Shark8
2019-12-06 20:29                           ` Jeffrey R. Carter
2019-12-06 21:05                             ` Shark8
2019-12-07  0:47                               ` Randy Brukardt
2019-12-14  4:21                           ` Keith Thompson
2019-12-14 11:34                             ` AdaMagica
2019-12-03 17:39                     ` Optikos
2019-12-03 19:12                       ` Paul Rubin
2019-12-14  4:34                       ` Paul Rubin
2020-04-17  5:14                       ` Andrew Shvets
2020-04-17  6:17                         ` Teaching Ada types J-P. Rosen
2020-04-29 13:07                           ` Mehdi Saada
2020-04-29 21:25                             ` Paul Rubin
2020-04-17  4:27                   ` Beginning Ada Programming, by Andrew T. Shvets (2020) Andrew Shvets
2020-04-17 12:44                     ` Ludovic Brenta
2020-04-17 13:07                       ` Jere
2020-04-17 14:31                       ` Optikos
2019-12-03 20:40               ` Björn Lundin
2020-04-17  4:16               ` Andrew Shvets
2020-04-17  4:11             ` Andrew Shvets
2020-04-17 15:32               ` Luke A. Guest
2020-04-17  4:10           ` Andrew Shvets
2020-04-17  5:02             ` Andrew Shvets
2020-04-17  4:08         ` Andrew Shvets
2019-12-03 19:14       ` Paul Rubin
2019-12-04  6:47         ` J-P. Rosen
2019-12-04  6:49         ` J-P. Rosen
2019-12-04  9:46           ` Paul Rubin
2020-04-17  4:07       ` Andrew Shvets
2020-04-17  5:49         ` J-P. Rosen
2020-04-17 17:59         ` AdaMagica
2020-04-17 19:28           ` Optikos
2020-04-18 15:29             ` AdaMagica
2020-04-18 16:34               ` cantanima.perry
2020-04-18 17:59                 ` Jere
2020-04-18 21:54                   ` cantanima.perry
2020-04-18 22:18                     ` Luke A. Guest
2020-04-18 22:33                       ` Jere
2020-04-19  0:52                         ` Jere
2020-04-19  2:23                       ` Keith Thompson
2020-04-18 22:37                     ` Jere [this message]
2020-04-19  0:42                     ` Paul Rubin
2020-05-02 19:13                 ` dave_thompson_2
2020-04-23 18:43             ` Andrew Shvets
2020-04-23 21:07               ` Paul Rubin
2020-04-23 21:33                 ` Optikos
2020-04-23 21:42                   ` Paul Rubin
2020-04-24 14:42                     ` Optikos
2020-04-24 15:35                       ` Dennis Lee Bieber
2020-04-30  8:01                       ` Paul Rubin
2020-04-23 18:45             ` Andrew Shvets
2020-11-02 21:14       ` Norman Worth
2020-04-17  4:04   ` Andrew Shvets
2019-12-10  5:17 ` Jerry
2020-04-17  3:58 ` Andrew Shvets
2020-05-09 12:39   ` Chris Collings
2020-10-03  4:23     ` andrew...@gmail.com
2020-10-28 19:21       ` sany...@gmail.com
2020-11-11  1:41 ` Azathoth Hastur
2020-11-12 21:24   ` Shark8
2020-11-12 22:31     ` Chris Townley
2020-11-17 20:48     ` azathot...@gmail.com
replies disabled

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