* Design/Development questions
@ 1990-06-05 18:56 Dennis Gibbs
1990-06-06 17:12 ` James THIELE
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Dennis Gibbs @ 1990-06-05 18:56 UTC (permalink / raw)
<>
I have a couple of hypothetical questions regarding C and Ada:
1) If you have a software design, all things being equal, if you implement
the design in both Ada and C, which implementation will have the highest
number of lines of code, the C implementation or the Ada implementation?
How much percentage-wise(more or less) on average, would the difference
be?
2) I remember seeing various studies that show the length of time spent
developing software systems from the earliest design stages to final
delivery. Again, in a perfect world, would it take more or less time
to design and develop in Ada vs. C? I am excluding the maintenance/
enhancement phase in this question. If I recall I believe I have seen
studies somewhere that show that it takes the same amount of time
overall to design and develop in Ada vs. other languages, but that more
time is spent in design and less spent in coding for Ada. Can someone
direct me to any studies that investigate this issue?
I do not wish to start more C vs. Ada flame wars again, my purpose is to
start an informative, educational discussion on this subject....
Dennis Gibbs
...uunet!tfsg!dennis
(703) 802-1961
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Design/Development questions
1990-06-05 18:56 Design/Development questions Dennis Gibbs
@ 1990-06-06 17:12 ` James THIELE
1990-06-07 10:34 ` RCAPENER
1990-06-09 8:26 ` Kim Shearer
2 siblings, 0 replies; 6+ messages in thread
From: James THIELE @ 1990-06-06 17:12 UTC (permalink / raw)
In article <677@tfsg.UUCP> dennis@tfsg.UUCP (Dennis Gibbs) writes:
>I have a couple of hypothetical questions regarding C and Ada:
[High-level questions asking for value judgements on C and Ada deleted]
>I do not wish to start more C vs. Ada flame wars again, my purpose is to
>start an informative, educational discussion on this subject....
Given the recent history of this group, expect flame wars...
>Dennis Gibbs
>...uunet!tfsg!dennis
>(703) 802-1961
James Thiele -- microsoft!jamesth
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Design/Development questions
1990-06-05 18:56 Design/Development questions Dennis Gibbs
1990-06-06 17:12 ` James THIELE
@ 1990-06-07 10:34 ` RCAPENER
1990-06-08 18:33 ` David Kassover
1990-06-08 20:22 ` Brian Hanafee
1990-06-09 8:26 ` Kim Shearer
2 siblings, 2 replies; 6+ messages in thread
From: RCAPENER @ 1990-06-07 10:34 UTC (permalink / raw)
In article <677@tfsg.UUCP>, dennis@tfsg.UUCP (Dennis Gibbs) writes:
> <>
>
> I have a couple of hypothetical questions regarding C and Ada:
>
> 1) If you have a software design, all things being equal, if you implement
> the design in both Ada and C, which implementation will have the highest
> number of lines of code, the C implementation or the Ada implementation?
> How much percentage-wise(more or less) on average, would the difference
> be?
Well, you said it, all things probably are equal, including the lines
of code. Some C programmers put the '{' at the end of the line, and
the others put it underneath the 'if', 'else', 'switch', et al. It
SEEMS like they are about equal to me.
> 2) I remember seeing various studies that show the length of time spent
> developing software systems from the earliest design stages to final
> delivery. Again, in a perfect world, would it take more or less time
> to design and develop in Ada vs. C? I am excluding the maintenance/
> enhancement phase in this question. If I recall I believe I have seen
> studies somewhere that show that it takes the same amount of time
> overall to design and develop in Ada vs. other languages, but that more
> time is spent in design and less spent in coding for Ada. Can someone
> direct me to any studies that investigate this issue?
>
This is a real thorny question, since Ada can provide far more protection
to the programmer than C does. But on the other hand, many programmers
who code in C don't want to code in Ada, and vice-versa. There are some
absolutely brilliant programmers coding in C because they prefer more
freedom to create (or hang themselves). It seems the time spent is in
direct proportion to how modular (or better, object oriented) a language
is. The more modular it is, the more reusable the code is, and the less
you have to totally rewrite anything.
> I do not wish to start more C vs. Ada flame wars again, my purpose is to
> start an informative, educational discussion on this subject....
>
Awww, why not? Do you really want a dry, dull, drab world?
Now that I have added my two bits on the above, all of which is totally
and purely subjective, I have a question to ask people on the net.
In VAX-Ada, the GET and the GET_LINE procedures have the very
disconcerting behavior that when you get a string, you must enter
the EXACT number of characters the string is declared for. Is this
behavior part of the LRM? Does anyone in NetLand have the equivalent
of C's fgets for strings in Ada? Any input (pun intended) on solving
this problem will be appreciated.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Design/Development questions
1990-06-07 10:34 ` RCAPENER
@ 1990-06-08 18:33 ` David Kassover
1990-06-08 20:22 ` Brian Hanafee
1 sibling, 0 replies; 6+ messages in thread
From: David Kassover @ 1990-06-08 18:33 UTC (permalink / raw)
In article <67999@cc.utah.edu> RCAPENER@cc.utah.edu writes:
...
>Now that I have added my two bits on the above, all of which is totally
>and purely subjective, I have a question to ask people on the net.
>In VAX-Ada, the GET and the GET_LINE procedures have the very
>disconcerting behavior that when you get a string, you must enter
>the EXACT number of characters the string is declared for. Is this
>behavior part of the LRM? Does anyone in NetLand have the equivalent
>of C's fgets for strings in Ada? Any input (pun intended) on solving
>this problem will be appreciated.
We use, generally, the following interface to get_line, from
package text_io, as shown in
sys$sysroot:[syslib.adalib]text_io_.adc
procedure GET_LINE(FILE : in FILE_TYPE; ITEM : out STRING;
LAST : out NATURAL);
LAST tells me how long the string actually is, We use this to load
the string into the composite data structures we have built to
actually manipulate strings
Item must, of course, be long enough to handle any anticipated
string, otherwise, presumably, we'd get a CONSTRAINT_ERROR or
some such at run time. (Which means something has corrupted our
files, or we really do need to make our strings bigger)
This is probably not iron_clad. We have not yet had to deal with
string lengths outside the range 0..256
I'm not near the manuals, so I can't tell if DEC considers this
standard or an allowable interpretation.
As far as dealing with C strings, we have routines that convert a
C string to our Vstring, and vice versa. These routines are
applied to the appropriate strings at the point where we call the
C routines.
--
David Kassover "Proper technique helps protect you against
kassover@ra.crd.ge.com sharp weapons and dull judges."
kassover@crd.ge.com F. Collins
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Design/Development questions
1990-06-07 10:34 ` RCAPENER
1990-06-08 18:33 ` David Kassover
@ 1990-06-08 20:22 ` Brian Hanafee
1 sibling, 0 replies; 6+ messages in thread
From: Brian Hanafee @ 1990-06-08 20:22 UTC (permalink / raw)
In article <67999@cc.utah.edu> RCAPENER@cc.utah.edu writes:
[stuff on a different topic deleted]
>In VAX-Ada, the GET and the GET_LINE procedures have the very
>disconcerting behavior that when you get a string, you must enter
>the EXACT number of characters the string is declared for. Is this
>behavior part of the LRM? Does anyone in NetLand have the equivalent
>of C's fgets for strings in Ada? Any input (pun intended) on solving
>this problem will be appreciated.
As I (not a lawyer) interpret this, the behavior is correct for Get,
but incorrect for Get_Line. The sections of the LRM I'm looking at
are 14.3.6/9 and 14.3.6/13. (If you're talking about some other
version of Get, then ignore this; this is the version to Get strings
from files).
14.3.6/9 states (for Get):
"Determines the length of the given string and attempts that
number of GET operations for successive characters of the
string (in particular, no operation is performed if the string
is null)."
14.3.6/13 states (for Get_Line):
"...Reading stops if the end of the line is met...reading also
stops if the end of the string is met. Characters not
replaced are left undefined."
Brian
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Design/Development questions
1990-06-05 18:56 Design/Development questions Dennis Gibbs
1990-06-06 17:12 ` James THIELE
1990-06-07 10:34 ` RCAPENER
@ 1990-06-09 8:26 ` Kim Shearer
2 siblings, 0 replies; 6+ messages in thread
From: Kim Shearer @ 1990-06-09 8:26 UTC (permalink / raw)
In <677@tfsg.UUCP> dennis@tfsg.UUCP (Dennis Gibbs) writes:
><>
>I have a couple of hypothetical questions regarding C and Ada:
>1) If you have a software design, all things being equal, if you implement
> the design in both Ada and C, which implementation will have the highest
> number of lines of code, the C implementation or the Ada implementation?
> How much percentage-wise(more or less) on average, would the difference
> be?
>2) I remember seeing various studies that show the length of time spent
> developing software systems from the earliest design stages to final
> delivery. Again, in a perfect world, would it take more or less time
> to design and develop in Ada vs. C? I am excluding the maintenance/
> enhancement phase in this question. If I recall I believe I have seen
> studies somewhere that show that it takes the same amount of time
> overall to design and develop in Ada vs. other languages, but that more
> time is spent in design and less spent in coding for Ada. Can someone
> direct me to any studies that investigate this issue?
>I do not wish to start more C vs. Ada flame wars again, my purpose is to
>start an informative, educational discussion on this subject....
>Dennis Gibbs
>...uunet!tfsg!dennis
>(703) 802-1961
Question 1 is a little bit curly. If you are trying to do something
low level or involving pointer manipulation .. then C will produce
shorter code for sure. C will generally have less lines of code
anyway. However there are times when Ada will produce less lines
of code. The main point to note here is that Ada is generally
easier to read. Here I am talking about large ongoing projects
where the same person does not always work on the same code.
Question 2 is a godd one. Personally I work in C, as the code I
write is for my consumption at a University. If I was doing
a large scale commercial projects I would use Ada. I believe that
Ada gives you solid code, that will stand the test of time and
generally waste less time on silly or obscure bugs. Ada is
simple to read and write and provides a level of abstraction
suited to most applications in the real world.
+--------------------------------+--------------------------------------------+
Kim Shearer | ARPA: kim%wacsvax.uwa.oz@uunet.uu.net
Dept. of Computer Science | UUCP: ..!uunet!munnari!wacsvax!kim
University of Western Australia | ACSnet: kim@wacsvax.uwa.oz
CRAWLEY, Australia 6009 | PHONE: +61 9 380 3452
+--------------------------------+--------------------------------------------+
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~1990-06-09 8:26 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1990-06-05 18:56 Design/Development questions Dennis Gibbs
1990-06-06 17:12 ` James THIELE
1990-06-07 10:34 ` RCAPENER
1990-06-08 18:33 ` David Kassover
1990-06-08 20:22 ` Brian Hanafee
1990-06-09 8:26 ` Kim Shearer
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox