comp.lang.ada
 help / color / mirror / Atom feed
From: "jimmaureenrogers@worldnet.att.net" <jimmaureenrogers@worldnet.att.net>
Subject: Re: Ada95 skills test - Beta version(FREE)
Date: 21 Feb 2006 19:23:31 -0800
Date: 2006-02-21T19:23:31-08:00	[thread overview]
Message-ID: <1140578611.155506.80290@o13g2000cwo.googlegroups.com> (raw)
In-Reply-To: <1140536659.668454.34800@z14g2000cwz.googlegroups.com>


SaraL wrote:
> We appreciate your effort to help us make our Ada95 certification test
> the best it can possibly be!

This test looks like an Ada translation of a test for some other
language.

Many of the questions reveal a distinctly non-Ada approach to
programming.

For instance, the question about how to make a global variable.
Globals provide an amazing opportunity for coupling and side effects,
both of which are contrary to the spirit of Ada.

The indentation style of the code examples is difficult to read.
The variable names for the examples are normally single character.

Terminology used in the test is odd.

There is a heavy emphasis on examples with discriminant types.

The headings for questions are not well matched with the content
of the questions. This is unnecessarily misleading.

Many negative questions, such as "which answer is not true" are
asked. Negative logic is always less direct than positive logic.

The questions cover very little of the Ada language, while
concentrating
on areas including discriminants and nesting.

The questions about visibility do not adequately cover the Ada concepts
of scope and visibility. They also demonstrate coding styles that would
fail any decent code review.

The questions about pass by value or pass by reference are only
truly appropriate for compiler developers. Ada programmers do not
spend time fretting over the passing mechanism of procedure
parameters.

While there was one question dealing with protected types and tasks
it dealt only with priority issues. Protected types deserve a much more
in-depth treatment, including entries, procedures, functions, and
re-queuing.

There was no question about the select command, Ada rendezvous, or
asynchronous transfer of control.

There were no questions about the use of floating point numbers.
One question implied that fixed point numbers are superiour to
floating point numbers. That is clearly false. Each has its own proper
use.

There were no questions concerning subtypes.

One example of types was clearly syntactically wrong, which
invalidated the entire question. It has language similar to the
following:

type T is private;

type B is T;

Ada syntax requires the declaration of B to be either:

subtype B is T;

or

type B is new T;

One question dealt with interfacing a C function to Ada.
It requires knowledge of C and Ada, which is not appropriate
for an Ada test. Furthermore, none of the multiple choice
answers is correct. The C function requires an array of char.
Most likely that is a C string, which is null terminated, while
corresponding Ada strings are not. The example makes no
use of Interfaces.C.Strings.

I suggest that you hire an experienced Ada programmer to
develop the test. The person who developed the test does not
understand Ada well enough. The test should not be some
clone of a C++ or Java test.

Jim Rogers




  parent reply	other threads:[~2006-02-22  3:23 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-02-21 15:44 Ada95 skills test - Beta version(FREE) SaraL
2006-02-22  1:10 ` Anonymous Coward
2006-02-22 17:02   ` SaraL
2006-02-23  2:33     ` Stephen Leake
2006-02-22  3:23 ` jimmaureenrogers [this message]
2006-02-23  1:43   ` Randy Brukardt
2006-02-23  2:40   ` Stephen Leake
2006-02-24  2:25     ` Robert Love
2006-02-24  3:51       ` Larry Kilgallen
2006-02-25  0:03         ` Robert Love
replies disabled

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