comp.lang.ada
 help / color / mirror / Atom feed
* Re: ada and robots
@ 1997-06-05  0:00 Marin David Condic, 561.796.8997, M/S 731-93
  1997-06-06  0:00 ` Best for small embedded systems - was " Robert S. White
  0 siblings, 1 reply; 3+ messages in thread
From: Marin David Condic, 561.796.8997, M/S 731-93 @ 1997-06-05  0:00 UTC (permalink / raw)



Dale Stanbrough <dale@GOANNA.CS.RMIT.EDU.AU> writes:
>"small systems a student can afford"
>        The Meridian Ada compiler, which comes for free with a book, is rather
>        cheap, and targets any of the 8086 family (which are cheap, no?).
>        It is Ada83 however. So I think you agree with you.
>
    Before I start my tirade, let me preface by saying that I *like*
    Ada and prefer Ada to C. I 'reach', I'm 'of the body', Resistance
    was futile: I have been absorbed, I am part of The Borg, etc. But
    that doesn't mean there aren't some valid criticisms of Ada or
    times when C is more appropriate.

    I believe when the original poster was discussing this issue, it
    was about small, inexpensive microcontrollers for robotics. I've
    looked at a number of such computers (stuff that can be had for
    between $80 and $200, including development software {read: C
    compiler, loading & debugging tools}). An 8086 running some
    version of real-time MS-DOS (plus cobbling together your own
    cross-compilation environment) may be overkill, may not provide
    the analog & discrete I/O hardware support needed and would
    probably require non-trivial effort to get the Meridian Ada
    compiler, etc. set up to produce/load/debug code in the SBC.

    I imagine one could spend money/time retargeting GNAT to some SBC
    & get it up and running with the RTEMS real-time OS and cobble
    yourself together everything you need to load/debug images. Or you
    could buy the little microcontroller for $200 and get an
    integrated development environment using a C compiler. It doesn't
    take a rocket scientist to figure this one out. {But if it did, I
    just so happen to be one!}

    The embedded microcontroller market seems to have been conceeded
    to C for the time being and, especially for student projects,
    small development jobs and quick&dirty fixes, I'd recommend not
    spitting into the wind. (You certainly can't argue that life cycle
    costs are going to recoup me the $100k+ cost of building the
    port!) And this is *one* area where I'd desperately like to be
    proven wrong - if you want to show me a small (~3" x 5") SBC with
    analog & discrete connections, programmable from a serial port on
    a PC with an integrated development environment including an Ada95
    compiler for around $200, I'll gladly admit I'm wrong.

    As for the rest of the criticisms you addressed, I think you're
    right on target.

    MDC

Marin David Condic, Senior Computer Engineer    ATT:        561.796.8997
Pratt & Whitney, GESP                           Fax:        561.796.4669
West Palm Beach, FL                             Internet:   CONDICMA@PWFL.COM
===============================================================================
    "Having an open mind is nothing. The object of opening the mind, as
    of opening the mouth, is to shut it again on something solid."

        --  G.K. Chesterton
===============================================================================




^ permalink raw reply	[flat|nested] 3+ messages in thread
* Re: Best for small embedded systems - was RE:ada and robots
@ 1997-06-06  0:00 Marin David Condic, 561.796.8997, M/S 731-93
  0 siblings, 0 replies; 3+ messages in thread
From: Marin David Condic, 561.796.8997, M/S 731-93 @ 1997-06-06  0:00 UTC (permalink / raw)



SMTP%"WhiteR@no.spam.please.crpl.cedar-rapids.lib.ia.us" writes:
>  I tend to agree, with the exception that there are a lot of Forth
>users/usages for small, resource constrained, embedded applications.
>You can't beat the memory efficiency.  Difficult to get up to speed
>and be able to _think_ in Forth, but once you do a lone wolf
>programmer can be very very productive (with his personal Forth
>vocabulary of reuseable code).
>
    I think the key is that we're talking about very small
    microcontrollers which are programmed by a single individual (or
    maybe one programmer and one or more domain experts.) For the
    "lone wolf" programmer on a smallish sort of job, you want to go
    with a) inexpensive, readily available target processor, b) the
    least expensive, most readily available development environment
    and c) what the "lone wolf" is most familiar with.

    Ada is great and for me, satisfies item "C". The problem is item
    "B" for most of your microcontroller projects. The development
    cost *is* the lifecycle cost, so you can't afford to spend a lot
    of time or money trying to get a language targeted to the
    processor. If it isn't already on the shelf and available at
    nominal cost, it looses. Sorry that life isn't fair to computer
    languages.

>  But for those medium to large (with a lot of floating point)
>embedded applications which involve team programming Ada seems, IMHO,
>to work best.  Also it tends to be much easier to maintain when
>revisited by new personnel years later.
>
>
    I'll agree - although the "with a lot of floating point" part
    confuses me. Is this because Forth doesn't handle floating point
    particularly well? (I don't think Ada is head-and-shoulders above
    most other languages in its ability to do floating point.
    Certainly C has the ability to do floating point - albeit without
    the nice safety nets of strong typing, constraint checking, etc.)

    Our engine control projects tend to run on for *years* (The F119
    Advanced Tactical Fighter control was just ramping up when I got
    here some 8.5 years ago and we're just now going into production
    with it.) Granted, there comes a point where we consider the
    software to be "done" but you're almost forever going in and
    tweaking things because somebody got a performance improvement
    idea or some such. Ada's superior readability contributes a lot to
    being able to toss the software at a new guy and getting him up to
    speed.

    While I'm an Ada advocate, I still believe you have to look at the
    whole project and try to do the right thing by accounting for all
    the various factors. Tiny microcontrollers that already have C or
    Forth compilers, but not Ada compilers stacks the deck against Ada
    in my book.

    MDC

Marin David Condic, Senior Computer Engineer    ATT:        561.796.8997
Pratt & Whitney, GESP                           Fax:        561.796.4669
West Palm Beach, FL                             Internet:   CONDICMA@PWFL.COM
===============================================================================
    "Having an open mind is nothing. The object of opening the mind, as
    of opening the mouth, is to shut it again on something solid."

        --  G.K. Chesterton
===============================================================================




^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~1997-06-06  0:00 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1997-06-05  0:00 ada and robots Marin David Condic, 561.796.8997, M/S 731-93
1997-06-06  0:00 ` Best for small embedded systems - was " Robert S. White
  -- strict thread matches above, loose matches on Subject: below --
1997-06-06  0:00 Marin David Condic, 561.796.8997, M/S 731-93

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