From: Shark8 <onewingedshark@gmail.com>
Subject: Re: Practicalities of Ada for app development
Date: Sun, 10 Jun 2012 08:49:40 -0700 (PDT)
Date: 2012-06-10T08:49:40-07:00 [thread overview]
Message-ID: <98ef69fe-f5af-485b-89b2-9358059f4582@googlegroups.com> (raw)
In-Reply-To: <a09a80a241191ef62e72aa46e2c449bc@dizum.com>
On Saturday, June 9, 2012 4:25:05 AM UTC-5, Nomen Nescio wrote:
>
> Ada is (by design) a safe language. But the side effect is that
> strings are arrays of characters and the developer is forced to be
> mindful of boundaries.. bogged down with detail.
And yet, if we were not mindful of [array] bounds, we would be screaming at all the times using strings caused a buffer-overflow.
There are ways to "work around" the problem, like the reading long/variable-length strings piece-at-a-time and constructing the result inside a function. (Using recursion: http://www.adapower.com/index.php?Command=Class&ClassID=Basics&CID=202 )
That said, there are languages that are made for text processing, SNOBOL [IIRC] is one such language. (Also, I think there's an Ada port of the SPITBOL macros as part of the GNAT-specific packages.) Ironically, most of them aren't used in the mainstream of software development which tends to fall back on C's string manipulation [style of] functions or Regex (which is horrible if you look at Regex from a maintenance perspective.).
next prev parent reply other threads:[~2012-06-10 15:51 UTC|newest]
Thread overview: 112+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-08 20:48 Practicalities of Ada for app development wrp
2012-06-08 21:35 ` Jeffrey Carter
2012-06-09 0:40 ` Adam Beneschan
2012-06-09 6:38 ` Jeffrey Carter
2012-06-21 17:14 ` Randy Brukardt
2012-06-21 18:16 ` Adam Beneschan
2012-06-21 19:18 ` J-P. Rosen
2012-06-21 20:30 ` Adam Beneschan
2012-06-21 21:09 ` Randy Brukardt
2012-06-22 4:59 ` Simon Wright
2012-06-22 5:32 ` Tero Koskinen
2012-06-22 19:51 ` Randy Brukardt
2012-06-21 21:15 ` J-P. Rosen
2012-06-22 10:43 ` Tero Koskinen
2012-06-21 21:00 ` Randy Brukardt
2012-06-21 21:18 ` J-P. Rosen
2012-06-22 19:55 ` Randy Brukardt
2012-06-23 6:43 ` J-P. Rosen
2012-06-09 4:30 ` BrianG
2012-06-09 7:11 ` Georg Bauhaus
2012-06-13 10:20 ` quiet_lad
2012-06-09 6:55 ` gautier_niouzes
2012-06-09 7:04 ` Georg Bauhaus
2012-06-09 9:25 ` Nomen Nescio
2012-06-09 9:36 ` Dmitry A. Kazakov
2012-06-10 3:46 ` Yannick Duchêne (Hibou57)
2012-06-12 20:10 ` i3text
2012-06-13 7:55 ` Dmitry A. Kazakov
2012-06-21 17:21 ` Randy Brukardt
2012-06-13 10:28 ` quiet_lad
2012-06-13 13:07 ` Dmitry A. Kazakov
2012-06-09 16:09 ` tmoran
2012-06-13 10:29 ` quiet_lad
2012-06-09 23:18 ` darkestkhan
2012-06-10 3:56 ` Yannick Duchêne (Hibou57)
2012-06-10 14:04 ` Dmitry A. Kazakov
2012-06-10 16:51 ` Yannick Duchêne (Hibou57)
2012-06-10 17:00 ` Dmitry A. Kazakov
2012-06-10 17:18 ` Yannick Duchêne (Hibou57)
2012-06-10 19:33 ` Dmitry A. Kazakov
2012-06-10 21:36 ` Nomen Nescio
2012-06-11 8:22 ` Dmitry A. Kazakov
2012-06-11 14:27 ` Georg Bauhaus
2012-06-11 14:43 ` Dmitry A. Kazakov
2012-06-11 16:19 ` Jacob Sparre Andersen
2012-06-11 18:38 ` Dmitry A. Kazakov
2012-06-11 17:14 ` Georg Bauhaus
2012-06-11 18:38 ` Dmitry A. Kazakov
2012-06-11 20:50 ` Georg Bauhaus
2012-06-11 21:43 ` Yannick Duchêne (Hibou57)
2012-06-12 7:55 ` Dmitry A. Kazakov
2012-06-12 9:48 ` Georg Bauhaus
2012-06-12 11:44 ` Dmitry A. Kazakov
2012-06-12 12:17 ` Georg Bauhaus
2012-06-12 12:18 ` Dmitry A. Kazakov
2012-06-11 18:29 ` Adam Beneschan
2012-06-11 19:16 ` Jeffrey Carter
2012-06-11 21:47 ` Yannick Duchêne (Hibou57)
2012-06-21 17:39 ` Randy Brukardt
2012-06-21 17:34 ` Randy Brukardt
2012-06-10 18:15 ` darkestkhan
2012-06-10 19:25 ` Dmitry A. Kazakov
2012-06-11 6:34 ` Jacob Sparre Andersen
2012-06-21 17:41 ` Randy Brukardt
2012-06-10 15:49 ` Shark8 [this message]
2012-06-10 17:04 ` Yannick Duchêne (Hibou57)
2012-06-10 19:47 ` Dmitry A. Kazakov
2012-06-11 0:37 ` Nasser M. Abbasi
2012-06-11 8:37 ` Dmitry A. Kazakov
2012-06-12 6:24 ` Yannick Duchêne (Hibou57)
2012-06-12 7:59 ` Dmitry A. Kazakov
2012-06-13 10:35 ` quiet_lad
2012-06-13 13:09 ` Dmitry A. Kazakov
2012-06-14 3:21 ` quiet_lad
2012-06-14 7:58 ` Dmitry A. Kazakov
2012-06-14 8:39 ` Yannick Duchêne (Hibou57)
2012-06-14 9:26 ` Dmitry A. Kazakov
2012-06-21 17:51 ` Randy Brukardt
2012-06-11 0:00 ` Nasser M. Abbasi
2012-06-11 3:23 ` Jeffrey Carter
2012-06-11 21:10 ` Nomen Nescio
2012-06-11 21:55 ` Adam Beneschan
2012-06-12 8:07 ` Nomen Nescio
2012-06-12 15:28 ` Fritz Wuehler
2012-06-12 21:34 ` Nomen Nescio
2012-06-14 11:12 ` Nomen Nescio
2012-06-21 18:01 ` Randy Brukardt
2012-06-12 21:12 ` Nomen Nescio
2012-06-13 0:04 ` Adam Beneschan
2012-06-13 3:04 ` Shark8
2012-06-13 8:21 ` Dmitry A. Kazakov
2012-06-13 18:21 ` Shark8
2012-06-13 19:11 ` Dmitry A. Kazakov
2012-06-13 22:01 ` Yannick Duchêne (Hibou57)
2012-06-14 8:02 ` Dmitry A. Kazakov
2012-06-14 9:10 ` Yannick Duchêne (Hibou57)
2012-06-14 9:33 ` Dmitry A. Kazakov
2012-06-21 18:10 ` Randy Brukardt
2012-06-13 8:35 ` Yannick Duchêne (Hibou57)
2012-06-13 8:37 ` Georg Bauhaus
2012-06-13 10:14 ` Georg Bauhaus
2012-06-11 22:49 ` Jeffrey Carter
2012-06-13 10:31 ` quiet_lad
2012-06-13 12:57 ` Maciej Sobczak
2012-06-14 4:18 ` quiet_lad
2012-06-14 7:35 ` Ludovic Brenta
2012-06-14 10:02 ` Georg Bauhaus
2012-06-12 19:17 ` i3text
2012-06-12 19:52 ` Vadim Godunko
2012-06-27 18:39 ` Eryndlia Mavourneen
2012-06-27 18:46 ` Eryndlia Mavourneen
2012-06-28 13:23 ` Simon Wright
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox