* Converting Ada Tasks To VxWorks Tasks? @ 2000-04-13 0:00 Michael Hartsough 2000-04-13 0:00 ` Ted Dennison 2000-04-14 0:00 ` Jeff Carter 0 siblings, 2 replies; 18+ messages in thread From: Michael Hartsough @ 2000-04-13 0:00 UTC (permalink / raw) We have a large multi-tasking system in Ada (83) that my employer wants to convert to C++ running on VxWorks. Since I designed all of the tasks in the system I've been tasked with the task of writing a white paper on how one would go about converting Ada tasks into VxWorks tasks (apologies for the pitiful attempt at humor). Things were going halfway decent until I realized that my approach wasn't going to handle selects with guards, or conditional and timed entry calls. I'm sure I've read that there are implementations of Ada running on VxWorks, so a mapping must exist. Is anyone aware of any existing works that I could "borrow" from? Thanks! Michael ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: Converting Ada Tasks To VxWorks Tasks? 2000-04-13 0:00 Converting Ada Tasks To VxWorks Tasks? Michael Hartsough @ 2000-04-13 0:00 ` Ted Dennison 2000-04-14 0:00 ` dale 2000-04-14 0:00 ` Robert A Duff 2000-04-14 0:00 ` Jeff Carter 1 sibling, 2 replies; 18+ messages in thread From: Ted Dennison @ 2000-04-13 0:00 UTC (permalink / raw) In article <1crJ4.142$d21.18564@elnws01>, "Michael Hartsough" <Michael-Hartsough@mediaone.net> wrote: > We have a large multi-tasking system in Ada (83) that my employer > wants to convert to C++ running on VxWorks. > > Things were going halfway decent until I realized that my approach > wasn't going to handle selects with guards, or conditional and timed > entry calls. > > I'm sure I've read that there are implementations of Ada running on > VxWorks, so a mapping must exist. Two or three. I believe Gnat, Green Hills AdaMulti, and ObjectAda all exist for vxWorks. Why don't you also include a cost comparison of converting to C++ on vxWorks vs. converting to Ada95 on vxWorks? I suspect your manager will be quite impressed at the difference. You can always write new code in his pet language-o-the-day and link it in. I can tell you from looking at the Windview logs that it looks like the Green Hills compiler handles task synchronization by using vxWorks semaphore objects. Perhaps that will help you look in the right direction. If you want to exactly clone all of Ada's tasking semantics, you'll have a big job ahead of you. For instance, I believe if you have a selective accept with multiple open and waiting accept alternatives, you have to *randomly* pick one to service. -- T.E.D. http://www.telepath.com/~dennison/Ted/TED.html Sent via Deja.com http://www.deja.com/ Before you buy. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: Converting Ada Tasks To VxWorks Tasks? 2000-04-13 0:00 ` Ted Dennison @ 2000-04-14 0:00 ` dale 2000-04-15 0:00 ` Robert Dewar 2000-04-14 0:00 ` Robert A Duff 1 sibling, 1 reply; 18+ messages in thread From: dale @ 2000-04-14 0:00 UTC (permalink / raw) Ted Dennison wrote: > For instance, I believe if you have > a selective accept with multiple open and waiting accept alternatives, > you have to *randomly* pick one to service. The accept that is chosen is non deterministic as far as the RM is concerned. This may translate into a deterministic choice by the underlying scheduler. Dale ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: Converting Ada Tasks To VxWorks Tasks? 2000-04-14 0:00 ` dale @ 2000-04-15 0:00 ` Robert Dewar 0 siblings, 0 replies; 18+ messages in thread From: Robert Dewar @ 2000-04-15 0:00 UTC (permalink / raw) In article <dale-582DE5.10532114042000@news.rmit.edu.au>, dale <dale@cs.rmit.edu.au> wrote: > Ted Dennison wrote: > > > For instance, I believe if you have > > a selective accept with multiple open and waiting accept alternatives, > > you have to *randomly* pick one to service. > > The accept that is chosen is non deterministic as far as the RM is > concerned. This may translate into a deterministic choice by the > underlying scheduler. > > Dale In the core semantics of Ada 95, the choice of alternatives is non-deterministic (which is totally different from random, if you do not know the difference, put it down on the list of useful things to learn, it is too much of a diversion to this thread to discuss this difference here). In the real-time annex semantics, provision is made for removing ALL such non-determinism from the scheduling. So the above reply by Dale is a little misleading Sent via Deja.com http://www.deja.com/ Before you buy. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: Converting Ada Tasks To VxWorks Tasks? 2000-04-13 0:00 ` Ted Dennison 2000-04-14 0:00 ` dale @ 2000-04-14 0:00 ` Robert A Duff 2000-04-14 0:00 ` Michael Hartsough 1 sibling, 1 reply; 18+ messages in thread From: Robert A Duff @ 2000-04-14 0:00 UTC (permalink / raw) Ted Dennison <dennison@telepath.com> writes: >...If you want to exactly clone all of Ada's tasking semantics, > you'll have a big job ahead of you. Probably tens of thousands of lines of code. >... For instance, I believe if you have > a selective accept with multiple open and waiting accept alternatives, > you have to *randomly* pick one to service. No, that's not quite right. The choice is "arbitrary" by default, which means that the Ada run-time system can always pick the first one. It is not (necessarily) random. If you select the Priority_Queuing policy, then it's more deterministic: it always picks the first one (see D.4(14)). - Bob ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: Converting Ada Tasks To VxWorks Tasks? 2000-04-14 0:00 ` Robert A Duff @ 2000-04-14 0:00 ` Michael Hartsough 2000-04-14 0:00 ` Tucker Taft 0 siblings, 1 reply; 18+ messages in thread From: Michael Hartsough @ 2000-04-14 0:00 UTC (permalink / raw) "Robert A Duff" <bobduff@world.std.com> wrote in message news:wccaeiwblzf.fsf@world.std.com... > > No, that's not quite right. The choice is "arbitrary" by default, which > means that the Ada run-time system can always pick the first one. It is > not (necessarily) random. If you select the Priority_Queuing policy, > then it's more deterministic: it always picks the first one (see > D.4(14)). The major problem I've got is that although there are several features which get me nearly there, there's no feature that solves everything, and I don't see a way of combining features to find a collective solution. There's a Select statement, but you can only use it with Pipes. Pipes would be okay, but they run on top of VxWork message queues and the messages aren't queued in priority order (okay, you Do get a choice of two priorities. Normal and High, but I see that as so restricted as to be useless). VxWorks implements POSIX queues which have 32 priority levels, which would be sufficient for my needs, but Pipes don't use them. So you can't use the Select statement. Semaphores have priority queues, but I haven't figured out a way to implement a Select statement that'll use semaphores and be able to handle a guarded accept without performing some sort of polling. Anyways, if anyone can provide me with some references to work that's already been accomplished in this area I'd be mighty grateful. Thanks, MJH ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: Converting Ada Tasks To VxWorks Tasks? 2000-04-14 0:00 ` Michael Hartsough @ 2000-04-14 0:00 ` Tucker Taft 2000-04-15 0:00 ` Michael Hartsough 0 siblings, 1 reply; 18+ messages in thread From: Tucker Taft @ 2000-04-14 0:00 UTC (permalink / raw) Michael Hartsough wrote: > ... > > Semaphores have priority queues, but I haven't figured out a way > to implement a Select statement that'll use semaphores and be > able to handle a guarded accept without performing some sort > of polling. > > Anyways, if anyone can provide me with some references to work that's > already been accomplished in this area I'd be mighty grateful. Most Ada run-times are built on just a few low-level primitives of the underlying system, in part because the required high-level Ada semantics rarely match exactly the high-level primitives provided by a given RTOS. As far as select statements, these require some relatively complex data structures built up by the Ada run-time system, plus some fairly low level signaling primitives (e.g. binary semaphores, event flags, etc.) provided by the underlying RTOS. Since the GNAT run-time is open source, you could conceivably just go and read the implementation for select statements, etc. and figure out what you need to do. It is straightforward, but far from trivial... I might put in a plug for our Ada 95 compiler that uses optimized ANSI C as its intermediate language. This would allow you to reuse the existing Ada code, and easily interface with C/C++ code, and give your boss some readable C code to study when he is curious what you are doing... > > Thanks, > MJH -- -Tucker Taft stt@averstar.com http://www.averstar.com/~stt/ Technical Director, Distributed IT Solutions (www.averstar.com/tools) AverStar (formerly Intermetrics, Inc.) Burlington, MA USA ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: Converting Ada Tasks To VxWorks Tasks? 2000-04-14 0:00 ` Tucker Taft @ 2000-04-15 0:00 ` Michael Hartsough 0 siblings, 0 replies; 18+ messages in thread From: Michael Hartsough @ 2000-04-15 0:00 UTC (permalink / raw) "Tucker Taft" <stt@averstar.com> wrote in message news:38F79478.5218D61@averstar.com... > > Most Ada run-times are built on just a few low-level primitives of the > underlying system, in part because the required high-level Ada semantics > rarely match exactly the high-level primitives provided by a given > RTOS. I knew it had to be possible since several compiler vendors provide Ada compilers for VxWorks. > As far as select statements, these require some relatively complex > data structures built up by the Ada run-time system, plus some > fairly low level signaling primitives (e.g. binary semaphores, > event flags, etc.) provided by the underlying RTOS. I was hoping it would be much simpler than this. I started freaking out when my approach started looking like a semaphore tango, but maybe it wasn't that bad after all! "The client task first executes a Give of the Service_Request semaphore, on which the server task has executed a Take. When no clients are requesting service the server task will be blocked. The client task will then execute a Take of the Service_Granted semaphore. All client tasks will be blocked on this semaphore until the server task unblocks on the Service_Request semaphore and executes a Give on the Service_Granted semaphore. This Give will unblock the highest-priority client task which will then place the entry parameters into a static global structure.....". > Since the GNAT run-time is open source, you could conceivably > just go and read the implementation for select statements, etc. > and figure out what you need to do. It is straightforward, > but far from trivial... Great idea! I'll go look for it! > I might put in a plug for our Ada 95 compiler that uses optimized ANSI C > as its intermediate language. This would allow you to > reuse the existing Ada code, and easily interface with > C/C++ code, and give your boss some readable C code to study > when he is curious what you are doing... I've already forwarded your message to my "work address" so I can pass it around on Monday. But, as I've already mentioned, "Ada" has become an evil word where I work. A couple weeks ago I submitted a library purchase request for an SEI paper on Ada (I think it was the "comparison of Ada to C" paper) to my manager for her signature. She refused to sign it because she has been forbidden from approving purchase of anything with the word "Ada" in the title. And these things cost only about $7!! So they won't be thrilled at the prospect of having to purchase an Ada 95 compiler. ;^( Thanks for the help! Michael ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: Converting Ada Tasks To VxWorks Tasks? 2000-04-13 0:00 Converting Ada Tasks To VxWorks Tasks? Michael Hartsough 2000-04-13 0:00 ` Ted Dennison @ 2000-04-14 0:00 ` Jeff Carter 2000-04-14 0:00 ` Michael Hartsough 1 sibling, 1 reply; 18+ messages in thread From: Jeff Carter @ 2000-04-14 0:00 UTC (permalink / raw) I am a certifiable Ada expert (just ask my psychiatrist), and you may tell your manager that I said that what he wants you to do is impossible. Or at least it will take a Long Time and cost a Lot of Money. You may also tell him that I could convert the code from Ada 83 to Ada in 1.5 days, since it is unlikely to require much more than a recompilation, for only half of what the C++ conversion will actually cost. He can keep a quarter of the difference for himself, lay off all the C++ people, and get a big bonus for saving money. -- Jeff Carter "I waggle my private parts at your aunties." Monty Python & the Holy Grail ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: Converting Ada Tasks To VxWorks Tasks? 2000-04-14 0:00 ` Jeff Carter @ 2000-04-14 0:00 ` Michael Hartsough 2000-04-14 0:00 ` Ted Dennison ` (2 more replies) 0 siblings, 3 replies; 18+ messages in thread From: Michael Hartsough @ 2000-04-14 0:00 UTC (permalink / raw) "Jeff Carter" <jrcarter@acm.org> wrote in message news:38F6623B.C365A224@acm.org... > I am a certifiable Ada expert (just ask my psychiatrist), and you may > tell your manager that I said that what he wants you to do is > impossible. Or at least it will take a Long Time and cost a Lot of > Money. You may also tell him that I could convert the code from Ada 83 > to Ada in 1.5 days, since it is unlikely to require much more than a > recompilation, for only half of what the C++ conversion will actually > cost. He can keep a quarter of the difference for himself, lay off all > the C++ people, and get a big bonus for saving money. Yeah, well..... The moment the "mandate" was lifted, my Director Of Software Engineering, who knows only the C programming language, announced that "we" were a C shop. He's tired of trying to hire Ada-knowledgeable developers, and tired of talking with those of us who know Ada. If you know something he doesn't you're a threat to him. I've been vilified by the powers-that-be for making this particular program multi-tasking. In "our shop" the only way to implement a real-time system is by employing a cyclic-executive. Anyways, he has mandated that all Ada code shall be converted to either C or C++. Ada compilers are too expensive. Ada developers are too expensive to find and retain. Forgive me for blowing off some steam. I spent 12 years being a student of Ada, and now I'm being "retrained" to be a good little C++ developer. My career, as I knew it, has been destroyed by this guy. Later, MJH ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: Converting Ada Tasks To VxWorks Tasks? 2000-04-14 0:00 ` Michael Hartsough @ 2000-04-14 0:00 ` Ted Dennison 2000-04-14 0:00 ` Marin D. Condic 2000-04-14 0:00 ` Stanley R. Allen 2000-04-15 0:00 ` Jeff Carter 2 siblings, 1 reply; 18+ messages in thread From: Ted Dennison @ 2000-04-14 0:00 UTC (permalink / raw) In article <r9CJ4.203$d21.25012@elnws01>, "Michael Hartsough" <Michael-Hartsough@mediaone.net> wrote: > I've been vilified by the powers-that-be for making this particular > program multi-tasking. In "our shop" the only way to implement a > real-time system is by employing a cyclic-executive. I've found a lot of places that do real-time work are conservative in the extreme about this kind of thing. I think a large part of the reason is that the job tends to require a lot of domain-specific knowledge that has nothing to do with software engineering (eg: Engines, Avionics). People who have that knowledge aren't nessecarily good s/w engnieers (some are). But if they have one way of scheduling that's always worked in the past and they know how to deal with, their goal in life is to plunk down systems as close to that as possible from now on. I discovered this myself the hard way when I tried creating a new scheduler for a simulator. My first cut with everyone doing "delay until" and no central scheduler, no-one would accept. The problem was it did not rigidly constrain the order that tasks at the same priority ran. I thought of that as an advantage, because you could plunk in extra processors transparently to boost performance. But the domain engineers always wrote their code assuming that model X ran to completion just in front of them, and model Y will run to completion just after them. They don't have to worry about synchornization with higher priority tasks because they copy all the data they need from them into locals up front, theoreticly before that higher-priority task has a chance to start another iteration. They don't know any other way to write it, and talking about other ways just scares them. > Forgive me for blowing off some steam. I spent 12 years being a > student of Ada, and now I'm being "retrained" to be a good little > C++ developer. My career, as I knew it, has been destroyed by this I myself spent 11 years at GE/Martin Marietta/Lockheed Martin. Believe me, 11 years is a long time at a single company these days. C++ isn't nessecarily a bad skill to learn at your company's expense. But if some idiot over your head decides to take you up as their pet punching bag, that's a really bad scene, and you can't do a damn thing about it (I've been there too). They'll eventually reap what they sow, but that will only be a small satisfaction to everyone else working there. As you touched on before, Ada developers are in demand. Sometimes its time to fish, and sometimes its time to cut bait... -- T.E.D. http://www.telepath.com/~dennison/Ted/TED.html Sent via Deja.com http://www.deja.com/ Before you buy. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: Converting Ada Tasks To VxWorks Tasks? 2000-04-14 0:00 ` Ted Dennison @ 2000-04-14 0:00 ` Marin D. Condic 0 siblings, 0 replies; 18+ messages in thread From: Marin D. Condic @ 2000-04-14 0:00 UTC (permalink / raw) Ted Dennison wrote: > I've found a lot of places that do real-time work are conservative in > the extreme about this kind of thing. I think a large part of the reason While I agree with your points, I'd observe that probably the biggest reason for sticking to something like that is risk mitigation. These types of projects tend to be so expensive, time consuming and risky enough for other reasons that nobody wants to get to just in front of the production delivery and discover that the scheduler isn't going to handle the job & all the code needs to be redone. (Especially if your scheduler is non-deterministic, you can discover major fundamental flaws as you bring in the very last pieces and it starts to fall apart.) I succeeded in using a tasking scheduler on a rocket project and it did present a change in mentality for the engine experts, but it did end up working very well. Still, it was a *hard* sell because of the risk. MDC -- ====================================================================== Marin David Condic - Quadrus Corporation - http://www.quadruscorp.com/ Send Replies To: m c o n d i c @ q u a d r u s c o r p . c o m Visit my web site at: http://www.mcondic.com/ "I'd trade it all for just a little more" -- Charles Montgomery Burns, [4F10] ====================================================================== ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: Converting Ada Tasks To VxWorks Tasks? 2000-04-14 0:00 ` Michael Hartsough 2000-04-14 0:00 ` Ted Dennison @ 2000-04-14 0:00 ` Stanley R. Allen 2000-04-15 0:00 ` Michael Hartsough 2000-04-15 0:00 ` Jeff Carter 2 siblings, 1 reply; 18+ messages in thread From: Stanley R. Allen @ 2000-04-14 0:00 UTC (permalink / raw) Michael Hartsough wrote: > > The moment the "mandate" was lifted, my Director Of Software > Engineering, who knows only the C programming language, announced > that "we" were a C shop. > > Anyways, he has mandated that all Ada code shall be converted to > either C or C++. Ada compilers are too expensive. Ada developers > are too expensive to find and retain. I recommend making yourself hard to retain. Ada developers are in demand all over. If they want to convert Ada to C, they need people like you. Tell them to forget it -- that you'll go elsewhere. > > Forgive me for blowing off some steam. I spent 12 years being a > student of Ada, and now I'm being "retrained" to be a good little > C++ developer. My career, as I knew it, has been destroyed by this guy. > Sad. -- Stanley Allen mailto:Stanley_R_Allen-NR@raytheon.com ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: Converting Ada Tasks To VxWorks Tasks? 2000-04-14 0:00 ` Stanley R. Allen @ 2000-04-15 0:00 ` Michael Hartsough 2000-04-16 0:00 ` Robert Dewar 0 siblings, 1 reply; 18+ messages in thread From: Michael Hartsough @ 2000-04-15 0:00 UTC (permalink / raw) "Stanley R. Allen" <Stanley_R_Allen-NR@raytheon.com> wrote in message news:38F79EA3.84D28C46@raytheon.com... > Michael Hartsough wrote: > > I recommend making yourself hard to retain. Ada developers are > in demand all over. Unfortunately, to continue to work in Ada I would have to relocate. Which is fine with me. But whenever I suggest to the "Mrs". that I could get a better job in San Diego, or Seattle, or Rhode Island, or Wherever, her response is always the same. "Good-Bye". So basically, I'm stuck here. > If they want to convert Ada to C, they need > people like you. Tell them to forget it -- that you'll go elsewhere. Won't work. Official policy is that nobody's indispensible. Especially an Ada & Multitasking Advocate. ;^) Later, Michael ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: Converting Ada Tasks To VxWorks Tasks? 2000-04-15 0:00 ` Michael Hartsough @ 2000-04-16 0:00 ` Robert Dewar 2000-04-16 0:00 ` Jeff Carter 2000-04-16 0:00 ` Michael Hartsough 0 siblings, 2 replies; 18+ messages in thread From: Robert Dewar @ 2000-04-16 0:00 UTC (permalink / raw) In article <xEZJ4.334$d21.35336@elnws01>, "Michael Hartsough" <Michael-Hartsough@mediaone.net> wrote: h > Won't work. Official policy is that nobody's indispensible. > especially an Ada & Multitasking Advocate. ;^) A bit off topic, but I really feel like making a comment on this point. I agree that any company should have an official policy that no one is indispensable, and should orient the structure of development according to this point. After all if an indispensable person is in a fatal accident, the company can be very seriously impacted. This is one of the reasons at Ada Core Technologies that I have very strongly insisted on avoiding a situation where only one person knows some code, and no one else can touch it. There are two approaches that help: 1. Avoid the use of author's names on units, or anything else that encourages the notion of ownership. Some formal configuration management procedures actually encourage or even insist on the idea that only one person can control changes to a unit, but I think that's a very bad idea. 2. Insist on a highly uniform coding style, so that anyone feels comfortable with anyone else's code. You know you are beginning to succeed here when A writes some chunk of code, or perhaps a whole unit, and B fixes a bug in it, and A's reaction is "great, that's one bug I don't have to fix", instead of "Hey! What's B doing mucking in *my* code?" I have been in far too many situations at other companies where the second reaction is typical, and where individuals have idiosyncratic coding styles that tend to discourage the situation in the first place. That being said, I find it extraordinary, and extremely misguided that for many large companies, the policy of avoiding indispensibility gets transmogrified to a viewpoint that everyone is interchangable, and that, for example, if you want to cut your work force, it doesn't matter who goes. The fact remains that productivities vary hugely in our field, and management failing to note this fact when they decide who to retain is a very serious problem in companies that make this fundamental mistake. Robert Dewar Ada Core Technologies Sent via Deja.com http://www.deja.com/ Before you buy. ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: Converting Ada Tasks To VxWorks Tasks? 2000-04-16 0:00 ` Robert Dewar @ 2000-04-16 0:00 ` Jeff Carter 2000-04-16 0:00 ` Michael Hartsough 1 sibling, 0 replies; 18+ messages in thread From: Jeff Carter @ 2000-04-16 0:00 UTC (permalink / raw) Robert Dewar wrote: [Large discussion of excellent ACT management policies deleted] > > The fact remains that productivities vary hugely in our field, > and management failing to note this fact when they decide who > to retain is a very serious problem in companies that make > this fundamental mistake. Everything that Dewar has posted here over time about ACT policies certainly make ACT seem an attractive place for a S/W engineer to work. Too bad I have neither compiler-development experience nor a desire to live in NYC :) -- Jeff Carter "Perfidious English mouse-dropping hoarders." Monty Python & the Holy Grail ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: Converting Ada Tasks To VxWorks Tasks? 2000-04-16 0:00 ` Robert Dewar 2000-04-16 0:00 ` Jeff Carter @ 2000-04-16 0:00 ` Michael Hartsough 1 sibling, 0 replies; 18+ messages in thread From: Michael Hartsough @ 2000-04-16 0:00 UTC (permalink / raw) "Robert Dewar" <dewar@gnat.com> wrote in message news:8dc9t9$lij$1@nnrp1.deja.com... > In article <xEZJ4.334$d21.35336@elnws01>, > "Michael Hartsough" <Michael-Hartsough@mediaone.net> wrote: > h > > Won't work. Official policy is that nobody's indispensible. > > especially an Ada & Multitasking Advocate. ;^) > > A bit off topic, but I really feel like making a comment on > this point. I agree that any company should have an official > policy that no one is indispensable, and should orient the > structure of development according to this point. After all > if an indispensable person is in a fatal accident, the company > can be very seriously impacted. To digress even further.... I believe that the reason my employer has this policy is to prevent people from "extorting" them with job offers from other places in attempts to get a counter offer to retain them. They fear that if they try to retain someone by making a counter offer it'll start an avalanche of people coming in with job offers. We have a large number of people who are single-points of critical knowledge whose loss would be extremely costly. But our management has such an intense focus on the near-term bottom line that they would never add people to a project for the sole purpose of spreading the knowledge. This is also the reason for dropping Ada altogether and switching to C. "Ada compilers are too expensive" (etc., we've heard it all before). ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: Converting Ada Tasks To VxWorks Tasks? 2000-04-14 0:00 ` Michael Hartsough 2000-04-14 0:00 ` Ted Dennison 2000-04-14 0:00 ` Stanley R. Allen @ 2000-04-15 0:00 ` Jeff Carter 2 siblings, 0 replies; 18+ messages in thread From: Jeff Carter @ 2000-04-15 0:00 UTC (permalink / raw) Michael Hartsough wrote: > that "we" were a C shop. He's tired of trying to hire Ada-knowledgeable > developers, and tired of talking with those of us who know Ada. If you > know something he doesn't you're a threat to him. > > I've been vilified by the powers-that-be for making this particular > program multi-tasking. In "our shop" the only way to implement > a real-time system is by employing a cyclic-executive. > > Anyways, he has mandated that all Ada code shall be converted to > either C or C++. Ada compilers are too expensive. Ada developers > are too expensive to find and retain. So we have a manager making indefensible technical decisions, refusing to listen to his technical people, and abusing his power because his technical people managed to get something done well despite him. I suggest you hit him back where it counts: Take an Ada job elsewhere. He won't have anyone to translate his working Ada into non-working C++, and no one to maintain it if he decides to keep it. Sooner or later the consequences will affect his career; if not, you certainly shouldn't want to be working there. > > Forgive me for blowing off some steam. No problem. -- Jeff Carter "English bed-wetting types." Monty Python & the Holy Grail ^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2000-04-16 0:00 UTC | newest] Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2000-04-13 0:00 Converting Ada Tasks To VxWorks Tasks? Michael Hartsough 2000-04-13 0:00 ` Ted Dennison 2000-04-14 0:00 ` dale 2000-04-15 0:00 ` Robert Dewar 2000-04-14 0:00 ` Robert A Duff 2000-04-14 0:00 ` Michael Hartsough 2000-04-14 0:00 ` Tucker Taft 2000-04-15 0:00 ` Michael Hartsough 2000-04-14 0:00 ` Jeff Carter 2000-04-14 0:00 ` Michael Hartsough 2000-04-14 0:00 ` Ted Dennison 2000-04-14 0:00 ` Marin D. Condic 2000-04-14 0:00 ` Stanley R. Allen 2000-04-15 0:00 ` Michael Hartsough 2000-04-16 0:00 ` Robert Dewar 2000-04-16 0:00 ` Jeff Carter 2000-04-16 0:00 ` Michael Hartsough 2000-04-15 0:00 ` Jeff Carter
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox