Login | Register
My pages Projects Community openCollabNet

Ephedra - Frequently Asked Questions

  • Q: How is Ephedra different from C2J++?
    A: C2J++ converts nice C++ classes. It is of little help as soon as pointers are involved. It does not provide a standard library replacement.
  • Q: How is Ephedra different from C2J?
    A: C2J generates Java code that is hard to read and difficult to integrate with mainstream Java code. It circumvents Java's type checking and storage management.
  • Q: Where are the sources?
    A: Ephedra is now part of the open source Ovid project. The sources can be downloaded there. Right now, they only compile with IBM VisualAge C++ V5.0 for AIX only (or IBM VisualAge C++ V4.0 on NT and IBM's confidential CodeStore API).
  • Q: Can I help?
    A: Yes:
    • You are welcome to try the tool and report problems. I am particularly interested in some performance data: How does the generated Java code compare to the original C/C++ code and possibly hand-optimized Java code?
    • You are welcome to implement parts of the C standard library. Take a look at the existing Ephedra library for examples.
  • Q: Where can I find more information on Ephedra?
    A: There are several ways:
    1. Read the papers mentioned above on the main Ephedra page.
    2. Subscribe to the Ovid mailing lists.
    3. Email me (jmartin _AT_ tigris _DOT_ org). Please do so only after making sure your question hasn't been answered on one of the mailing lists, and only if you think it is too stupid or too confidential to be posted on the mailing list (such as: I want to give you $1 million, where shall I send the cheque).
  • Q: I would like to port Ephedra to [insert your favourite OS].
    A: So would I (probably). The problem is that Ephedra depends on IBM VisualAge C++ V5.0. Rather than writing my own buggy C++ parser, I chose to use VisualAge's C++ parser. That saved me a couple of years of coding and debugging. If you want to port Ephedra to platform xy, you will also have to port VisualAge, which should be rather difficult (especially since you won't get the sources).
  • Q: So why don't you use GNU GCC to parse C++ instead?
    A: This is one of the things that will be done in the Ovid project.
  • Q: Is it possible to implement custom optimisations and transformations in Ephedra?
    A: Yes. At the moment, you will need the Ephedra sources to do that. Ovid should make this easier.
  • Q: Why do your email addresses look so strange?
    A: I hate junk mail. Replace the _AT_ by @ and the _DOT_ by . if you really want to email me.