[comp.lang.c] Query: DeSmet C syntax -- converting to standard C

gwr@linus.UUCP (Gordon W. Ross) (06/08/87)

I have a program which was written in DeSmet C but need to compile it
with a standard C compiler.  DeSmet C seems to have a Dollar sign in
place of every left curly bracket, and no obvious character in place
of right curly brackets, among other oddities.  Can anyone point me to
or provide a description of the DeSmet C syntax which would allow me
to translate the program into a standard C syntax?
-- 
    Gordon W. Ross              Phone: (617) 271-3205
    The MITRE Corporation       ARPA: linus!gwr@MITRE-BEDFORD
    Bedford, MA  01730		UUCP: decvax!, but i, b

phco@ecsvax.UUCP (John Miller) (06/09/87)

In article <6540@linus.UUCP> gwr@linus.UUCP (Gordon W. Ross) writes:
>I have a program which was written in DeSmet C but need to compile it
>with a standard C compiler.  DeSmet C seems to have a Dollar sign in
>place of every left curly bracket, and no obvious character in place
>of right curly brackets, among other oddities.  Can anyone point me to
>or provide a description of the DeSmet C syntax which would allow me
>to translate the program into a standard C syntax?

This article seems very similar to one that appeared a few months ago,
when someone was trying to convert a mangled DeSmet C file.

DeSmet C syntax ** IS ** standard C syntax.  It sounds like your source
file was corrupted by some peculiar transfer process.  You might search
for an uncorrupted version, or you might be able to use some #define's
and let the C pre-processor clean it up for you.

-- 
                        John Miller  (ecsvax!phco)
                        Dept. of Pharmacology, Univ. of N.C.-Chapel Hill
                        Chapel Hill, NC 27514       (919) 966-4343

gae@osupyr.UUCP (Gerald Edgar) (06/09/87)

>>                                     seems to have a Dollar sign in
>>place of every left curly bracket, and no obvious character in place
>>of right curly brackets, among other oddities.

Sounds like it was converted to EBCDIC and back. ?? Did you get it on an
IBM mainframe?




-- 

  Gerald A. Edgar                               TS1871@OHSTVMA.bitnet
  Department of Mathematics                     edgar@osupyr.UUCP
  The Ohio State University
  Columbus, OH 43210                            70715,1324  CompuServe
                    ...{akgua,gatech,ihnp4,ulysses}!cbosgd!osu-eddie!osupyr!gae

leder@ihlpm.ATT.COM (Leder) (06/11/87)

In article <3362@ecsvax.UUCP>, phco@ecsvax.UUCP (John Miller) writes:
> In article <6540@linus.UUCP> gwr@linus.UUCP (Gordon W. Ross) writes:
> >I have a program which was written in DeSmet C but need to compile it
> >with a standard C compiler.  DeSmet C seems to have a Dollar sign in
> >place of every left curly bracket, ....
>
> This article seems very similar to one that appeared a few months ago,
> when someone was trying to convert a mangled DeSmet C file.
>

I agree with this much except ....

> DeSmet C syntax ** IS ** standard C syntax.

there are some subtle differences in the dialect of DeSmet C and what
is normally referred to as "standard C".  The specific example that 
usually plagues me is that the buffered i/o routines, fopen, etc. use
an integer for FILE instead of a FILE * to designate the file number.
Actually, you can use FILE * because it is guaranteed to be large enough
to hold the pointer and is in fact the same size (16 bits) in the original
version of the compiler.  This is either because Mark DeSmet followed the
method used by Leor Zolman (author of BDS C) or maybe read the same
document that Leor says prompted him to use integers instead of pointers
for buffered file handles.

Bob Leder - I couldn't resist saying something

smvorkoetter@watmum.UUCP (06/11/87)

In article <1174@ihlpm.ATT.COM| leder@ihlpm.ATT.COM (Leder) writes:
|In article <3362@ecsvax.UUCP|, phco@ecsvax.UUCP (John Miller) writes:
|| In article <6540@linus.UUCP| gwr@linus.UUCP (Gordon W. Ross) writes:
|| |I have a program which was written in DeSmet C but need to compile it
|| |with a standard C compiler.  DeSmet C seems to have a Dollar sign in
|| |place of every left curly bracket, ....
||
|| This article seems very similar to one that appeared a few months ago,
|| when someone was trying to convert a mangled DeSmet C file.
||
|
|I agree with this much except ....
|
|| DeSmet C syntax ** IS ** standard C syntax.

            ^^^^^^

|
|there are some subtle differences in the dialect of DeSmet C and what
|is normally referred to as "standard C".  The specific example that 
|usually plagues me is that the buffered i/o routines, fopen, etc. use
|an integer for FILE instead of a FILE * to designate the file number.
|Actually, you can use FILE * because it is guaranteed to be large enough
|to hold the pointer and is in fact the same size (16 bits) in the original
|version of the compiler.  This is either because Mark DeSmet followed the
|method used by Leor Zolman (author of BDS C) or maybe read the same
|document that Leor says prompted him to use integers instead of pointers
|for buffered file handles.

The above has nothing to do with SYNTAX.  The syntax of DeSmet C is
probably quite standard.

robert@.UUCP (Robert Allison) (06/18/87)

> |                                  The specific example that 
> |usually plagues me is that the buffered i/o routines, fopen, etc. use
> |an integer for FILE instead of a FILE * to designate the file number.
> 
> The above has nothing to do with SYNTAX.  The syntax of DeSmet C is
> probably quite standard.
  ^^^^^^^^
   . . . IS quite standard. I've just received version 3.0, and FILE * is
   now used instead of FILE typedef'ed to int. I haven't run 3.0 yet, but
   I've been using DeSmet for some years now and quite like it. 2.5 is
   the just-previous release and is fine.