Is it possible to translate ada program to C using GCC or othertools?

This is a discussion on Is it possible to translate ada program to C using GCC or othertools? within the ADA forums in Programming Languages category; Hi all, I would like to investigate on how ada's protected object and tasking features are implemented with C/pthread. Is it possible to use gcc(or other tools) to do the translation? thanks. tony...

Go Back   Application Development Forum > Programming Languages > ADA

Object Mix

Register FAQ Calendar Search Today's Posts Mark Forums Read
  #1  
Old 07-22-2008, 04:48 PM
climber.cui@gmail.com
Guest
 
Default Is it possible to translate ada program to C using GCC or othertools?

Hi all,
I would like to investigate on how ada's protected object and
tasking features are implemented with C/pthread. Is it possible to use
gcc(or other tools) to do the translation?

thanks.

tony
Reply With Quote
  #2  
Old 07-22-2008, 08:15 PM
Jeffrey R. Carter
Guest
 
Default Re: Is it possible to translate ada program to C using GCC or othertools?

climber.cui@gmail.com wrote:
>
> I would like to investigate on how ada's protected object and
> tasking features are implemented with C/pthread. Is it possible to use
> gcc(or other tools) to do the translation?


What makes you think these features are implemented in C?

gcc will not translate Ada to C.

SofCheck has a compiler that uses ANSI C as its intermediate language, but I
suspect what you're interested in is part of their runtime code, not the code
produced by the compiler.

--
Jeff Carter
"It's symbolic of his struggle against reality."
Monty Python's Life of Brian
78
Reply With Quote
  #3  
Old 07-22-2008, 08:45 PM
anon
Guest
 
Default Re: Is it possible to translate ada program to C using GCC or other

No!

In GNAT the compiler generates assembly code. With one exception that is
"GNATBIND" program. Using the "-C" option, GNATBIND with produce its
binder program in C. But that does very little for what most people want.

A thesis, back in 1991 by Jeffrey Skinner, was in titled "Ada2C: An
ADA-To-C Program Translator" but it seams that today, most "Ada2C"
programs have more to do with homework assignments than actual working
programs.


In <334c1c0a-0c49-49d3-b03b-867c2288159c@25g2000hsx.googlegroups.com>, climber.cui@gmail.com writes:
>Hi all,
> I would like to investigate on how ada's protected object and
>tasking features are implemented with C/pthread. Is it possible to use
>gcc(or other tools) to do the translation?
>
> thanks.
>
>tony


Reply With Quote
  #4  
Old 07-22-2008, 08:59 PM
climber.cui@gmail.com
Guest
 
Default Re: Is it possible to translate ada program to C using GCC or othertools?

On Jul 22, 8:15 pm, "Jeffrey R. Carter"
<spam.jrcarter....@spam.acm.org> wrote:
> climber....@gmail.com wrote:
>
> > I would like to investigate on how ada's protected object and
> > tasking features are implemented with C/pthread. Is it possible to use
> > gcc(or other tools) to do the translation?

>
> What makes you think these features are implemented in C?
>
> gcc will not translate Ada to C.
>
> SofCheck has a compiler that uses ANSI C as its intermediate language, but I
> suspect what you're interested in is part of their runtime code, not the code
> produced by the compiler.
>
> --
> Jeff Carter
> "It's symbolic of his struggle against reality."
> Monty Python's Life of Brian
> 78


yes, you are right. It is the Gnat runtime code that implements the
concurrent features. But I first want to see what runtime calls is
made for certain ADA constructs. When i try to read gcc source code, i
got lost at the beginning.
Reply With Quote
  #5  
Old 07-22-2008, 09:05 PM
climber.cui@gmail.com
Guest
 
Default Re: Is it possible to translate ada program to C using GCC or other

On Jul 22, 8:45 pm, a...@anon.org (anon) wrote:
> No!
>
> In GNAT the compiler generates assembly code. With one exception that is
> "GNATBIND" program. Using the "-C" option, GNATBIND with produce its
> binder program in C. But that does very little for what most people want.
>
> A thesis, back in 1991 by Jeffrey Skinner, was in titled "Ada2C: An
> ADA-To-C Program Translator" but it seams that today, most "Ada2C"
> programs have more to do with homework assignments than actual working
> programs.
>

Any chance to get ADA to be translated to something readable, like ADA
code plus run-time calls to its runtime system and pthread library?
By the way, how to use GNAT to compile ada program into assembly code?
I use gcc with -S option, but did not get anything but an assembly
program with no body.

tony

Reply With Quote
  #6  
Old 07-22-2008, 09:44 PM
Robert A Duff
Guest
 
Default Re: Is it possible to translate ada program to C using GCC or other tools?

climber.cui@gmail.com writes:

> Hi all,
> I would like to investigate on how ada's protected object and
> tasking features are implemented with C/pthread. Is it possible to use
> gcc(or other tools) to do the translation?


You might be interested in the -gnatD or -gnatG switches.
See the docs for details.

Or just look at the sources for the runtime libs.

- Bob
Reply With Quote
  #7  
Old 07-22-2008, 10:23 PM
Steve
Guest
 
Default Re: Is it possible to translate ada program to C using GCC or other tools?

<climber.cui@gmail.com> wrote in message
news:334c1c0a-0c49-49d3-b03b-867c2288159c@25g2000hsx.googlegroups.com...
> Hi all,
> I would like to investigate on how ada's protected object and
> tasking features are implemented with C/pthread. Is it possible to use
> gcc(or other tools) to do the translation?
>


Hi,

pthread isn't C. pthread is machine code. The source code may have been
in C (or any other programming language for that matter) but you don't
execute C. Back in the olden days they used to document OS interface calls
in a programming language independent manner, that made it a little clearer.

At any rate, while the following information is somewhat outdated, you may
find it useful:

http://www.iuma.ulpgc.es/users/jmiranda/

Regards,
Steve

> thanks.
>
> tony



Reply With Quote
  #8  
Old 07-23-2008, 02:46 AM
Peter Schildmann
Guest
 
Default Re: Is it possible to translate ada program to C using GCC or othertools?

Steve schrieb:
> At any rate, while the following information is somewhat outdated, you may
> find it useful:
>
> http://www.iuma.ulpgc.es/users/jmiranda/


There is an improved version:

https://www2.adacore.com/gap-static/...html/index.htm
Reply With Quote
  #9  
Old 07-23-2008, 03:01 AM
anon
Guest
 
Default Re: Is it possible to translate ada program to C using GCC or other

First to clarify, the compiling process. Normally to compile a program

step 1. gnat compile <filename>.adb

step 2. gnat bind <filename>.ali or gnatbind <filename>.ali
this program creates two files:
1. b~<filename>.adb
2. b~<filename>.ads

step 3. gnat link <filename>.ali or gnatlink <filename>.ali
this program compiles the package
b~<filename>.adb
and then finishes the linking process.
Note: After linking the b~<filename>.* files are deleted.


but in step two and three you can use

step 2. gnat bind -C <filename>.ali or gnatbind -C <filename>.ali
this creates one file:
1. b_<filename>.c
this file is equivalence to the package file:
b~<filename>.adb

step 3. gnat link -C <filename>.ali or gnatlink -C <filename>.ali
this program compiles the C binder file
b_<filename>.c
and then finishes the linking process.
Note: After linking the b_<filename>.* files are deleted.


As for the thesis, I am not sure, you might be able to find it. There is
a "Jeffrey Skinner" that is into web designing. Maybe he is the same
guy, so I would suggest, that you email and ask him. The only problem I
see will be that the Ada translator and source code will be based on Ada
83 specs.


www.jeffreyskinner.com
Jeffrey Skinner. email: jeff [at] jeffreyskinner
aka
jeff@jeffreyskinner


In <822c5e24-bd20-458d-8346-ba22994aa850@d45g2000hsc.googlegroups.com>, climber.cui@gmail.com writes:
>On Jul 22, 8:45 pm, a...@anon.org (anon) wrote:
>> No!
>>
>> In GNAT the compiler generates assembly code. With one exception that is
>> "GNATBIND" program. Using the "-C" option, GNATBIND with produce its
>> binder program in C. But that does very little for what most people want.
>>
>> A thesis, back in 1991 by Jeffrey Skinner, was in titled "Ada2C: An
>> ADA-To-C Program Translator" but it seams that today, most "Ada2C"
>> programs have more to do with homework assignments than actual working
>> programs.
>>

>Any chance to get ADA to be translated to something readable, like ADA
>code plus run-time calls to its runtime system and pthread library?
>By the way, how to use GNAT to compile ada program into assembly code?
>I use gcc with -S option, but did not get anything but an assembly
>program with no body.
>
>tony
>


Reply With Quote
  #10  
Old 07-23-2008, 03:54 AM
Georg Bauhaus
Guest
 
Default Re: Is it possible to translate ada program to C using GCC or othertools?

climber.cui@gmail.com wrote:
> Hi all,
> I would like to investigate on how ada's protected object and
> tasking features are implemented with C/pthread. Is it possible to use
> gcc(or other tools) to do the translation?


You'd need an Ada compiler that will translate Ada to C and
use C and pthreads for protected objects. I think Sofcheck
has such a compiler.

Reply With Quote
Reply


Thread Tools
Display Modes


All times are GMT -5. The time now is 02:18 PM.


Powered by vBulletin® Version 3.7.2
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
vB Ad Management by =RedTyger=

In an effort to better serve ads to our visitors, cookies are used on objectmix.com. For more information, check out our Privacy Policy.