<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
  <title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Joseph, you're right, I've spoken too hastily, the problem comes from
luaotfload.sty (which loads ifluatex), not from ifluatex. However, the
questions remains.<br>
As mentionned by Chris and Robin, anybody is free to do whatever s/he
wants, but there seems to me there isn't any kind of invitation
anywhere to follow some rules. Actually my question was just the tip of
a personal iceberg about the desirability of a format-independent API
(and thus my question perhaps didn't make much sense in itself); this
answers Philipp's point that "everyone should use packages like
etoolbox," a good suggestion... except we have no format-independent
etoolbox (fortunately we still have \newif and friends, which probably
satisfy everyone, barring \outer-worshippers).<br>
Paul<br>
<br>
<br>
Robin Fairbairns a &eacute;crit&nbsp;:
<blockquote cite="mid:19659.1271285530@cl.cam.ac.uk" type="cite">
  <pre wrap="">Philipp Stephani <a class="moz-txt-link-rfc2396E" href="mailto:st_philipp@yahoo.de">&lt;st_philipp@yahoo.de&gt;</a> wrote:

  </pre>
  <blockquote type="cite">
    <pre wrap="">Am 14.04.2010 um 13:33 schrieb Paul Isambert:

    </pre>
    <blockquote type="cite">
      <pre wrap="">Shouldn't we try to all use the same construction to test for the existence of commands?
      </pre>
    </blockquote>
    <pre wrap="">You should normally treat \relax as undefined, but nevertheless take
care not to define control sequences with \csname. Everyone should use
packages like etoolbox for these tests because they are not trivial. 
    </pre>
  </blockquote>
  <pre wrap=""><!---->
as chris rowley said earlier, what's good and what's obeyed are
necessarily different things.

  </pre>
  <blockquote type="cite">
    <blockquote type="cite">
      <pre wrap="">If we took e-TeX for granted, then \ifcsname would solve the problem.
      </pre>
    </blockquote>
    <pre wrap="">Even without e-TeX, you can check for the existence of control
sequences without visible side effects: 

\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname ...\endcsname\relax ...
    </pre>
  </blockquote>
  <pre wrap=""><!---->
yup.  trips off the toungue like a chunk of finnegan's wake.

(i wrote that one down, long ago, with a thought of sticking it in the
faq.  i've still not done that, due to my lack of conviction.)
  </pre>
</blockquote>
</body>
</html>