From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=BAYES_00,INVALID_DATE autolearn=no autolearn_force=no version=3.4.4 Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!tut.cis.ohio-state.edu!ucbvax!herbrand.Inference.Com!sdl From: sdl@herbrand.Inference.Com (Daniel Lee) Newsgroups: comp.lang.ada Subject: Re: Dave Emery's proposal for Ada preprocessor Message-ID: <8912122030.AA05794@Herbrand.Inference.Com> Date: 12 Dec 89 20:30:19 GMT Sender: daemon@ucbvax.BERKELEY.EDU Organization: The Internet List-Id: We are developing a commercial Ada-based tool (expert system tool in particular) which has to run on multiple platforms possibly on multiple compilers on the same hardware. We found that the lack of Ada tool similar to cpp makes it very hard to maintain portable Ada code across multiple platforms, and yet Ada is designed for portability. Currently, we are using cpp on a Sun to preprocess the master Ada source with cpp macros embedded (e.g. #if, #endif, etc.). Then, we preprocess it using cpp. First, we defined app as follows: /lib/cpp $1 $2 $3 $4 $5 $6 $7 $8 $9 | grep -v "^#" Then, we do the following: app -DVERDIX foo.a.master > foo.a or app -DVMS foo.a.master > foo.ada The problem with this is that foo.a.master is still not a compilable Ada file and has to be preprocessed manually while its C equivalent is a direct input to a C compiler. I agree with Dave that if such thing as cpp is added to Ada, it should be part of STANDARD Ada so that only a single source file has to be maintained. Danile Lee Inference Corporation sdl@inference.com