[Cmake] Strange
Miller, James V (Research)
millerjv at crd . ge . com
Fri, 9 Aug 2002 14:08:13 -0400
This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.
------_=_NextPart_001_01C23FCF.B9ECA466
Content-Type: text/plain;
charset="iso-8859-1"
The drawback to the current syntax is that people look at
ELSE (WIN32)
and think ELSEIF and not ELSE
So I think it would be clearer if the syntax could be
IF (FOO)
ELSE # FOO
ENDIF # FOO
'Course I would prefer the syntax to be
IF (FOO)
ELSE
ENDIF
Or maybe even
IF (FOO)
{
}
ELSE
{
}
Like all the other languages that are near and dear to my heart. 'Or you could adopt the python
indentation style....
-----Original Message-----
From: Ken Martin [mailto:ken . martin at kitware . com]
Sent: Friday, August 09, 2002 1:48 PM
To: Miller, James V (Research); CMake developers (E-mail)
Subject: RE: [Cmake] Strange
Yes I believe the arguments to ELSE and ENDIF could be made optional. Same for the ENDFOREACH
command. Making them required does force people to document their files. In C/C++ long if statements
are easier to read if they are written as:
if (win32)
{
}
else // win32
{
} // win32
The current syntax forces people to do this. I can relax this syntax and let people do
IF (WIN32)
GOOBER()
ELSE () # WIN32
GOOBER()
ENDIF () # WIN32
but then the comments can get out of sync with the actual IF. The current syntax makes sure they stay
consistent. I'm open to discussion although my leaning would be to leave them as required.
Thanks
Ken
Given the correction to the ELSE command, is there any chance that the arguments to ELSE
and ENDIF can be eliminated. It is confusing to people to see an IF and an ELSE with the
same condition (arguments).
Jim
------_=_NextPart_001_01C23FCF.B9ECA466
Content-Type: text/html;
charset="iso-8859-1"
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns:o = "urn:schemas-microsoft-com:office:office"><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2715.400" name=GENERATOR></HEAD>
<BODY>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff size=2>The drawback to
the current syntax is that people look at </FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff size=2>ELSE
(WIN32)</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff size=2>and think ELSEIF
and not ELSE</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff size=2>So I think it
would be clearer if the syntax could be</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff size=2>IF
(FOO)</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2>ELSE # FOO</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff size=2>ENDIF
# FOO</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff size=2>'Course I would
prefer the syntax to be</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff size=2>IF
(FOO)</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2>ELSE</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2>ENDIF</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff size=2>Or maybe
even</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff size=2>IF
(FOO)</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2>{</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff size=2>}
</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2>ELSE</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2>{</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2>}</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff size=2>Like all the
other languages that are near and dear to my heart. 'Or you could adopt
the python indentation style....</FONT></SPAN></DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=061140118-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px">
<DIV class=OutlookMessageHeader dir=ltr align=left><FONT face=Tahoma
size=2>-----Original Message-----<BR><B>From:</B> Ken Martin
[mailto:ken . martin at kitware . com]<BR><B>Sent:</B> Friday, August 09, 2002 1:48
PM<BR><B>To:</B> Miller, James V (Research); CMake developers
(E-mail)<BR><B>Subject:</B> RE: [Cmake] Strange<BR><BR></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=639034217-09082002>Yes I believe the
arguments to ELSE and ENDIF could be made optional. Same for the ENDFOREACH
command. Making them required does force people to document their files. In
C/C++ long if statements are easier to read if they are written
as:</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=639034217-09082002></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=639034217-09082002>if
(win32)</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=639034217-09082002>
{</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=639034217-09082002>
}</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=639034217-09082002>else //
win32</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=639034217-09082002>
{</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=639034217-09082002> } //
win32</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=639034217-09082002></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=639034217-09082002>The current syntax
forces people to do this. I can relax this syntax and let people
do</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=639034217-09082002></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=639034217-09082002>IF
(WIN32)</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=639034217-09082002>
GOOBER()</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=639034217-09082002>ELSE () #
WIN32</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=639034217-09082002>
GOOBER()</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=639034217-09082002>ENDIF () #
WIN32</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=639034217-09082002></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=639034217-09082002>but then the
comments can get out of sync with the actual IF. The current syntax makes
sure they stay consistent. I'm open to discussion although my leaning would be
to leave them as required.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=639034217-09082002></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN
class=639034217-09082002>Thanks</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=639034217-09082002>Ken</SPAN></FONT></DIV>
<BLOCKQUOTE dir=ltr
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
<DIV><SPAN class=937431217-09082002><FONT color=#0000ff size=2>Given the
correction to the ELSE command, is there any chance that the arguments to
ELSE</FONT></SPAN></DIV>
<DIV><SPAN class=937431217-09082002><FONT color=#0000ff size=2>and ENDIF can
be eliminated. It is confusing to people to see an IF and an ELSE
with the</FONT></SPAN></DIV>
<DIV><SPAN class=937431217-09082002><FONT color=#0000ff size=2>same
condition (arguments).</FONT></SPAN></DIV>
<DIV><SPAN class=937431217-09082002><FONT color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=937431217-09082002><FONT color=#0000ff><FONT
size=2>Jim<SPAN class=639034217-09082002><FONT face=Arial
color=#000000> </FONT></SPAN></FONT></FONT></SPAN><SPAN
class=937431217-09082002><FONT color=#0000ff><FONT size=2><SPAN
class=639034217-09082002> </SPAN></FONT></FONT></SPAN></DIV></BLOCKQUOTE></BLOCKQUOTE></BODY></HTML>
------_=_NextPart_001_01C23FCF.B9ECA466--