f

#### replacement for '{' and '}' ?

I am still playing around with what kind of syntax I would like to
mark up my documents.

Are there equivalent long substitutes for { and } when they are not
used to describe arguments to functions?  Something like \begin{group}
and \end{group}.

In other words, if I could force myself to write, say, \begin{group}
\it ... \end{group} instead of {\it ... }, then I believe I could
identify from the markup context what is an argument that belongs to a
just invoked macro and what is text.  {Of course, in this context,
\textit{...} would be better.}  No more ambiguity whether a in
\myfunction{a} is an argument or just text.

Is there a way to make latex barf when it sees an ordinary '{' in
text, rather than \begin{group}, but not barf when I want it (to
denote macro arguments)?

Regards,

/iaw

 0
ivowel (414)
8/16/2008 5:01:11 PM
comp.text.tex 39029 articles. 3 followers.

13 Replies
2087 Views

Similar Articles

[PageSpeed] 41

On Aug 16, 6:01=A0pm, "ivo...@gmail.com" <ivo...@gmail.com> wrote:
> Is there a way to make latex barf when it sees an ordinary '{' in
> text, rather than \begin{group}, but not barf when I want it (to
> denote macro arguments)?

What do you mean exactly? I don't understand. Do you have in mind your-
to-be-new-syntax or just regular latex?

Cheers,

Tomek

 0
t.m.trzeciak (227)
8/16/2008 5:18:49 PM
ivowel@gmail.com wrote:
> I am still playing around with what kind of syntax I would like to
> mark up my documents.
>
> Are there equivalent long substitutes for { and } when they are not
> used to describe arguments to functions?  Something like \begin{group}
> and \end{group}.
>
> In other words, if I could force myself to write, say, \begin{group}
> \it ... \end{group} instead of {\it ... }, then I believe I could
> identify from the markup context what is an argument that belongs to a
> just invoked macro and what is text.  {Of course, in this context,
> \textit{...} would be better.}  No more ambiguity whether a in
> \myfunction{a} is an argument or just text.
>
> Is there a way to make latex barf when it sees an ordinary '{' in
> text, rather than \begin{group}, but not barf when I want it (to
> denote macro arguments)?
>
> Regards,
>
> /iaw

Not sure what you are up to, but \bgroup and \egroup?
--
Joseph Wright

 0
joseph.wright (1875)
8/16/2008 6:02:12 PM
ivowel@gmail.com wrote:

> Are there equivalent long substitutes for { and } when they are not
> used to describe arguments to functions?

"function" - what does that mean in TeX?

{_1 and }_2 are scope-delimiters for several kinds of scope in TeX.
The scope in question can be the scope of a token's argument.
It can also be a new group wherein (local) definitions etc take
place.

> In other words, if I could force myself to write, say, \begin{group}
> \it ... \end{group}

The \begin-macro opens up a new environment/scope/group.
The \end-macro checks by means of its argument whether
the appropriate environment/scope/group is about to be closed
and - if so - closes it.

You could write \newenvironment{Group}{}{} and then use
the Group-environment \begin{Group}..\end{Group} for
denoting a non-argument-scope.

You could also use \begingroup .. \endgroup - primitives
as long as they are not removed by some macro which uses
them as argument-delimiters ;->

> instead of {\it ... }, then I believe I could
> identify from the markup context what is an argument that belongs to a
> just invoked macro and what is text.
[...]
> No more ambiguity whether a in
> \myfunction{a} is an argument or just text.

What about:   \myfunction a  ?

You don't need braces for single-token-arguments. So there
would probably still be some ambiguity left. Also you
probably don't need braces with delimited-argument-macros'
arguments.

If you could make LaTeX "barf" in case braces are used as
scope-delimiters not denoting the scope of an argument,
functionality of forking between argument-scope and
non-argument-scope would be broken:

\newif\ifPutIntoGroup

\newcommand\@ifPutIntoGroup{%
\ifPutIntoGroup\else\expandafter\@firstofone\fi
}%

% Now "Stuff" is not put into a group
\PutIntoGroupfalse
\@ifPutIntoGroup{Stuff}

% Now "Stuff" is put into a group
\PutIntoGrouptrue
\@ifPutIntoGroup{Stuff}

Ulrich

 0
eu_angelion1 (617)
8/16/2008 6:30:01 PM
\bgroup and \egroup are exactly what I was looking for.  Thanks,
Joseph.

Ulrich: thanks for your post.  I do not understand the last part of
your post, which is what I would love to learn more about.  Say, I
would now use \bgroup and \egroup if I am not delimiting argument
scopes.  (Sorry, I often write incorrectly "function" when I mean
"macro" --- habit.)

Is there a way to get the following functionality:

\newcommand{\m}[1]{ok: #1}
\m{fine}  % no error
\m{fine}{barf}  % latex stops with an error that there is a text group
\m{fine}\bgroup barf \egroup  % this is what I need to replace it with
\m1   % latex stops with an error that says "\m required arguments,
but none were provided

I know its a lot to ask for, but neither arcane incapability for
simple tasks nor capability for very complex tasks in TeX no longer
surprise me...

/iaw

 0
ivowel (414)
8/16/2008 8:12:58 PM
ivowel@gmail.com wrote:

> Ulrich: thanks for your post.  I do not understand the last part of

The gist is: By conditional execution of \@firstofone,
you can remove a surrounding brace-group.
If \@firstofone is not executed, the braces remain
in place and can as well serve as non-argument-scope delimiters.

> Is there a way to get the following functionality:
>
> \newcommand{\m}[1]{ok: #1}
> \m{fine}  % no error
> \m{fine}{barf}  % latex stops with an error that there is a text group
> \m{fine}\bgroup barf \egroup  % this is what I need to replace it with
> \m1   % latex stops with an error that says "\m required arguments,
> but none were provided
>
> I know its a lot to ask for, but neither arcane incapability for
> simple tasks nor capability for very complex tasks in TeX no longer
> surprise me...

This is a very special case for which it seems possible.

First issue:

Such an \m-macro would need to "look ahead" token-wise,
not argument-wise. \(futute)let-assignments look ahead
tokenwise.

Second issue:

\meaning{         yields:  begin-group character {
\meaning\bgroup   yields:  begin-group character {
\meaning}         yields:  end-group character }
\meaning\egroup   yields:  end-group character }

Distinguishing \bgroup from { is needed while
\bgroup is defined as \let\bgroup={
\egroup is defined as \let\egroup=} .

Approach:

\m could be a left-brace-delimited macro which does not take
any argument and calls another macro which does fetch an
argument, temporarily give \bgroup another meaning as usual
and then check via \futurelet whether the next token equals {.

This of course requires that no other token's meaning is let
equal to the begin-group-character { .

Also \m is not expandable as \futurelet-assignments take place.

This is not a general approach as \m is about only one argument.
With more than one argument, you cannot easily raise errors in
case any of those arguments is not nested into braces as you
cannot easily use the #{-left-brace-delimiter-syntax then.
You could probably use some recursion but that is cumbersome
and ineffective.

Ulrich

\documentclass{article}

\makeatletter
\newcommand\m{}\def\m#{\innerm}%
\newcommand\innerm[1]{%
\begingroup
\def\bgroup{another meaning}%
\def\tempa{#1}%
\futurelet\tempb\innerinnerm
}
\newcommand*\innerinnerm{%
\ifx{\tempb
\iffalse}\fi% brace-balancing in macro-definition
\expandafter\@firstoftwo
\else
\expandafter\@secondoftwo
\fi
{\expandafter\endgroup\tempa\@gobble{} - ERROR}%
{\expandafter\endgroup\tempa\@gobble{} - OK}%
}
\makeatother
\begin{document}
\m{fine}  % OK

\m{fine}{barf}  % ERROR

\m{fine}\bgroup barf \egroup  % OK

\m1 % Error about \m not matching its definition.
\end{document}

 0
eu_angelion1 (617)
8/16/2008 9:45:59 PM
ivowel@gmail.com wrote:
> Is there a way to get the following functionality:
>
> \newcommand{\m}[1]{ok: #1}
> \m{fine}  % no error
> \m{fine}{barf}  % latex stops with an error that there is a text group
> \m{fine}\bgroup barf \egroup  % this is what I need to replace it with
> \m1   % latex stops with an error that says "\m required arguments,
> but none were provided

It would be asking for trouble, but I suppose you could have \m take no
arguments, set the category codes of "{" and "}" to 1 and 2 respectively
(their default values), and invoke a helper macro that takes one argument
and, after processing it, sets the category codes of "{" and "}" to 15
(invalid).  You'd of course have to play similar tricks with _all_ of the
macros you intend to invoke, including \begin and \end if you want to use
any LaTeX environments.

TeX provides a way to make "\m1" fail:  \def\m#{ok}

-- Scott

 0
ctt (1173)
8/16/2008 9:47:43 PM
On Aug 16, 10:01 am, "ivo...@gmail.com" <ivo...@gmail.com> wrote:
> In other words, if I could force myself to write, say, \begin{group}
> \it ... \end{group} instead of {\it ... },

In this case you are best advised to use \begin{it}...\end{it}.

Donald Arseneau                                  asnd@triumf.ca


 0
asnd (4601)
8/16/2008 9:56:15 PM
Scott Pakin wrote:

> It would be asking for trouble, but I suppose you could have \m take no
> arguments, set the category codes of "{" and "}" to 1 and 2 respectively
> (their default values), and invoke a helper macro that takes one argument
> and, after processing it, sets the category codes of "{" and "}" to 15
> (invalid).  You'd of course have to play similar tricks with _all_ of the
> macros you intend to invoke, including \begin and \end if you want to use
> any LaTeX environments.

One trouble might be dealing with nested braces within an
argument while the outer braces delimit the argument-scope
and some inner braces delimit a non-argument-scope. The inner
braces already got tokenized with catcode 1 and 2 respectively
although they should be of catcode 15. You might need to
switch catcodes within the macro and use \scantokens...

Another trouble might be primitives etc that take arguments.
A primitive cannot change catcodes. You could not use such
primitives directly any more.

Yet another trouble is about expandability. \catcode-assignments
are not expandable.

Ulrich

 0
eu_angelion1 (617)
8/16/2008 9:57:00 PM
On Aug 16, 5:47=A0pm, Scott Pakin <scott+...@pakin.org> wrote:
> ivo...@gmail.com wrote:
> > Is there a way to get the following functionality:
>
> > \newcommand{\m}[1]{ok: #1}
> > \m{fine} =A0% no error
> > \m{fine}{barf} =A0% latex stops with an error that there is a text grou=
p
> > \m{fine}\bgroup barf \egroup =A0% this is what I need to replace it wit=
h
> > \m1 =A0 % latex stops with an error that says "\m required arguments,
> > but none were provided
>
> It would be asking for trouble, but I suppose you could have \m take no
> arguments, set the category codes of "{" and "}" to 1 and 2 respectively
> (their default values), and invoke a helper macro that takes one argument
> and, after processing it, sets the category codes of "{" and "}" to 15
> (invalid). =A0You'd of course have to play similar tricks with _all_ of t=
he
> macros you intend to invoke, including \begin and \end if you want to use
> any LaTeX environments.
>
> TeX provides a way to make "\m1" fail: =A0\def\m#{ok}

Indeed, I heartily agree that this is asking for trouble, and so I
will disclaim the following ramblings as being thoroughly Evil.  But
as long as { and } are catcoded to 1 and 2, TeX will never have a
problem with using them for delimiting groups.  On the other hand, I
could imagine the following setup:
{ and } are active, and \def'd to give an error (I would catcode to
invalid, but we may want \{ and \}).
\ is active and used to call macros.
\macro(arg1,arg2) would turn into \macro{arg1}{arg2}.
We need a way to deal with optional arguments, so we can give an
optional argument telling how to treat each of the arguments
(optional, required, delimited, single-token, etc...)
\section[*or](short,long) would turn into \section*[short]{long}.

This would fail miserably with AMS and verbatim environments.  Also,
now NOTHING is expandable, so a heck of a lot else would break too...
If you don't want to strictly enforce the \m1 error, then you could
leave \ as an escape character and instead use * or something to call
macros.  Then, some macros would still be expandable, but not many,
since you can't pass multi-token parameters...

This seems like it would be mildly interesting to write, but would
take a few hours and is a bit too morally expensive for me to actually
carry out...  This way leads to the Dark Side.

Cheers,
steve

 0
stephenhicks (127)
8/16/2008 10:03:37 PM
Steve Hicks <stephenhicks@gmail.com> writes:

> Indeed, I heartily agree that this is asking for trouble, and so I
> will disclaim the following ramblings as being thoroughly Evil.  But
> as long as { and } are catcoded to 1 and 2, TeX will never have a
> problem with using them for delimiting groups.

\def\barfm#1#2{#1\csname barf#2\endcsname#1}
\def\barfc#1{}
\def\forbidgroups{\expandafter\barfm\expandafter\bgroup\romannumeral
253100 }
\def\allowgroups{\expandafter\barfm\expandafter\egroup\romannumeral
253100 }
\def\m#1{\message{#1}}

\forbidgroups
\m{aha}
\allowgroups
{ehe}
\forbidgroups
\m{oho}
{uhu}
\allowgroups
\end

This drops out at {uhu} with a typical TeX engine.

--
David Kastrup, Kriemhildstr. 15, 44793 Bochum
UKTUG FAQ: <URL:http://www.tex.ac.uk/cgi-bin/texfaq2html>

 0
dak (3569)
8/16/2008 10:37:28 PM
amazing!  thanks.

/ivo

On Aug 16, 6:37 pm, David Kastrup <d...@gnu.org> wrote:

> \def\barfm#1#2{#1\csname barf#2\endcsname#1}
> \def\barfc#1{}
> \def\forbidgroups{\expandafter\barfm\expandafter\bgroup\romannumeral
>   253100 }
> \def\allowgroups{\expandafter\barfm\expandafter\egroup\romannumeral
>   253100 }
> \def\m#1{\message{#1}}
>
> \forbidgroups
> \m{aha}
> \allowgroups
> {ehe}
> \forbidgroups
> \m{oho}
> {uhu}
> \allowgroups
> \end
>
> This drops out at {uhu} with a typical TeX engine.
>
> --
> David Kastrup, Kriemhildstr. 15, 44793 Bochum
> UKTUG FAQ: <URL:http://www.tex.ac.uk/cgi-bin/texfaq2html>

 0
ivowel (414)
8/17/2008 12:10:11 AM
On Aug 16, 8:10=A0pm, "ivo...@gmail.com" <ivo...@gmail.com> wrote:
> On Aug 16, 6:37 pm, David Kastrup <d...@gnu.org> wrote:
>
> > \def\barfm#1#2{#1\csname barf#2\endcsname#1}
> > \def\barfc#1{}
> > \def\forbidgroups{\expandafter\barfm\expandafter\bgroup\romannumeral
> > =A0 253100 }
> > \def\allowgroups{\expandafter\barfm\expandafter\egroup\romannumeral
> > =A0 253100 }
> > \def\m#1{\message{#1}}
>
> > \forbidgroups
> > \m{aha}
> > \allowgroups
> > {ehe}
> > \forbidgroups
> > \m{oho}
> > {uhu}
> > \allowgroups
> > \end
>
> > This drops out at {uhu} with a typical TeX engine.
>
> amazing!  thanks.

(I've rearranged the message to top-quoting so that the conversation
flow makes any sense at all - please top-quote).  I hope you
understand that this solution is not particularly serious, since (you
may quickly discover) it doesn't work so well in practice.  It's a
very clever trick, though... TeX typically only allows 255 levels of
grouping, so \forbidgroups basically expands to (what looks like) 253
\bgroup's (not sure where the other 2 come from), and then
\allowgroups closes them all...  So environments will also cause
errors, among other things.

But I am certainly impressed...

Cheers,
steve

 0
stephenhicks (127)
8/17/2008 5:00:26 AM
Steve Hicks <stephenhicks@gmail.com> writes:

> On Aug 16, 8:10�pm, "ivo...@gmail.com" <ivo...@gmail.com> wrote:
>> On Aug 16, 6:37 pm, David Kastrup <d...@gnu.org> wrote:
>>
>> > \def\barfm#1#2{#1\csname barf#2\endcsname#1}
>> > \def\barfc#1{}
>> > \def\forbidgroups{\expandafter\barfm\expandafter\bgroup\romannumeral
>> > � 253100 }
>> > \def\allowgroups{\expandafter\barfm\expandafter\egroup\romannumeral
>> > � 253100 }
>> > \def\m#1{\message{#1}}
>>
>> > \forbidgroups
>> > \m{aha}
>> > \allowgroups
>> > {ehe}
>> > \forbidgroups
>> > \m{oho}
>> > {uhu}
>> > \allowgroups
>> > \end
>>
>> > This drops out at {uhu} with a typical TeX engine.
>>
>> amazing!  thanks.
>
> (I've rearranged the message to top-quoting so that the conversation
> flow makes any sense at all - please top-quote).  I hope you
> understand that this solution is not particularly serious, since (you
> may quickly discover) it doesn't work so well in practice.  It's a
> very clever trick, though... TeX typically only allows 255 levels of
> grouping, so \forbidgroups basically expands to (what looks like) 253
> \bgroup's (not sure where the other 2 come from), and then
> \allowgroups closes them all...  So environments will also cause
> errors, among other things.

One would have to change \begin and \end accordingly, and one would make
\forbidgroups insert a variable amount of \bgroup (depending on eTeX's
\currentgrouplevel) and have \allowgroups compensate accordingly.  And
of course, a lot of other groups inside of TeX commands would just bomb
out.  It is not feasible in practice.

Somewhat more feasible would be to record \currentgrouplevel, and insert
checkpointing code at strategic places that would make sure that no
surprising changes have occured.  Of course, then the error would occur
somewhat asynchronously.

So I don't think there is much of a possibility to do this usefully.
I've not checked LuaTeX's hooks in that respect: it may have some hook
for entering groups.  If it does, then one should be able to check
whether one is right now reading from the input file (rather than a
macro) and complain in that case.

--
David Kastrup, Kriemhildstr. 15, 44793 Bochum
UKTUG FAQ: <URL:http://www.tex.ac.uk/cgi-bin/texfaq2html>

 0
dak (3569)
8/17/2008 8:14:42 AM

Similar Artilces:

'^=' and '~='?
Hello, What is the difference between '^=' and '~='? Thanks, Duckhye ...

Replacing ',' with '.'
Hello, I have a huge amount of numbers in a .txt file. The numbers are in the form 2,43252e+1. I need to replace the , with . How should I do this? I'd prefer some import method that does this during the import procedure. -Janne Hi, I guess you import the data as text and convert it then to numbers. Try 'strrep' before you convert the text to numbers. Tobias Jake the Snake schrieb: > Hello, > > I have a huge amount of numbers in a .txt file. The numbers are in the form 2,43252e+1. I need to replace the , with . How should I do this? I'd prefer some import method...

'''''''''''''The Running Update/Append Queries Using VBA code Ordeal''''''''''''''
Hello fellow programmers, I am trying to run an append/update query from code, a command button on a form initiates the queries. the format i am using is; _____________________________________________________ SELECT "criteria" FROM "criteria" WHERE "criteria" UPDATE/APPEND "field selections" RecordSource "qryExample" = above text strings" _______________________________________________________________________ When i am running a SELECT query in this manner it works fine with no problems, and accepts the values of specified linked for...

'''''''''''''The Running Update/Append Queries Using VBA code Ordeal'''''''''''''' #2

if str_mo not in ('','.') and str_da not in ('','.') and str_yy not in ('','.') Any shorter ?
Hi, there. =20 I'm just curious if it ever dawned on anybody how to abbreviate this line : if str_mo not in ('','.') and str_da not in ('','.') and str_yy not in ('','.')=20 =20 Igor Kurbeko Clinical Programmer Analyst 678 336 4328 ikurbeko@atherogenics.com =20 no brain no pain =20 how about: if not (str_mo in ('','.') or str_da in ('','.') or str_yy in ('','.')) OR if not (missing(str_mo) or missing(str_da) or missing(str_yy)) Eric On 22 Oct 03 21:13:37 GMT, ikurbeko@ATHER...

A function with 'and' , 'not' , 'null' , 'car' and 'cdr'
What's this ? (defun enigma (x) (and (not (null x)) (or (null (car x)) (enigma (cdr x))))) "I suppose I should learn Lisp, but it seems so foreign." - Paul Graham, Nov 1983 On Wed, Oct 07 2015, CAI GENGYANG wrote: > What's this ? > > > (defun enigma (x) > (and (not (null x)) > (or (null (car x)) > (enigma (cdr x))))) Bad taste? It returns T if the list X contains nil as an element. It would be clearer to write (some #'null x). Helmut CAI GENGYANG ...

error: expected '=', ',', ';', 'asm' or '__attrib
Hi I'm trying to compile an ADC Driver & come acrosss the following error. I've no experience writing drivers before, and hence have no clue how to fix it. Hope someone out there has encountered the problem & suggesst a fix for the same. The Error is I get is : qadc.c: At top level: qadc.c:97: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'qadc_read' make: *** [qadc.o] Error 1 [root@localhost qadc]# ########################################################################### ADC Driver Code ########################################################################### #define MODULE #define __KERNEL__ #include <linux/config.h> #include <linux/module.h> #include <linux/kernel.h> /* printk */ #include <linux/fs.h> / #include <linux/errno.h> /* error codes */ #include <linux/types.h> /* size_t */ #include <linux/proc_fs.h> /* proc file system */ #include <linux/fcntl.h> #include <asm/system.h> /* cli, flags */ #include <asm/uaccess.h> /* copy from/to user */ /*Registers to get qadc access*/ volatile unsigned short * qadcmcr = (unsigned short *)0x40190000; volatile unsigned short * qacr0 = (unsigned short *)0x4019000a; volatile unsigned short * qacr1 = (unsigned short *)0x4019000c; volatile unsigned short * qacr2 = (unsigned short *)0x4019000e; volatile unsigned short * qasr0 = (unsigned short *)0x40190010; volatile unsigned short * qasr1...

error: expected '=', ',', ';', 'asm' or '__attrib
Hi I'm trying to compile an ADC Driver & come acrosss the following error. I've no experience writing drivers before, and hence have no clue how to fix it. Hope someone out there has encountered the problem & suggesst a fix for the same. The Error is I get is : qadc.c: At top level: qadc.c:97: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'qadc_read' make: *** [qadc.o] Error 1 [root@localhost qadc]# ########################################################################### ADC Driver Code ##...

Re: '^=' and '~='?
Duckhye, According to the doc ( http://xrl.us/befwjx ) they, and one other set of characters, and the mnemonic 'NE' all represent 'NOT EQUAL'. Art ------- On Wed, 11 Feb 2009 16:52:40 -0600, Duck-Hye Yang <dyang@CHAPINHALL.ORG> wrote: >Hello, >What is the difference between '^=' and '~='? > >Thanks, >Duckhye ...

Meaning of ':' and '{}'
Hi, Please, can anyone tell me what is meaning of predicates ':' and '{}' ? ---------------- yours Advait Advait wrote: > Hi, > Please, can anyone tell me what is meaning of predicates ':' and '{}' > ? It depends on the context. : is used for module qualification of predicates. Like lists:member(X,L) The curly brackets are used in Definite Clauses Grammars: find the section on DCGs in the manual or google for it and you will find out easily. There are uses of {} as a functor in datastructures also. Cheers Bart Demoen Hello everyone,...

'[OFF]' as in 'offensive'???
Hi, given that 'off-topicness' is indicated as '[OT]' and taking a look at those postings that started the threads indicated as '[OFF]' (which may both be seen as being somewhat offensive) may lead to the conclusion that '[OFF]' stands for offensiveness. I don't think that this is the intended meaning so what actually *does* '[OFF]' mean? I never came across that abbreviation before (although I have been around on the USENET for quite some time) but maybe it is worth knowing? Josef 'Jupp' Schugt NOTE: mails >100 KiB ...

Override 'and' and 'or'
Is it possible to override 'and' and/or 'or'? I cannot find a special method for it... __and__ and __rand__ and __or__ and __ror__ are for binary manipulation... any proposals? Have marvelous sunday, Marco Dekker <m.aschwanden@gmail.com> wrote: > Is it possible to override 'and' and/or 'or'? I cannot find a special > method for it... __and__ and __rand__ and __or__ and __ror__ are for > binary manipulation... any proposals? If you want to customize the truth value testing you have to implement __nonzero__ " __nonzero__( self) Call...

difference between ',' and 'a,'
Small question. In gforth is there a difference between the words ',' and 'a,'? I'm thinking not, so perhaps another question, why have both ',' and 'a,'? Thanks Should be the same, in gforth: see , : , here cell allot ! ; ok see a, : , here cell allot ! ; ok On Friday, January 9, 2015 at 5:46:04 AM UTC-8, beeflo wrote: > Small question. In gforth is there a difference between the words ',' and 'a,'? > > I'm thinking not, so perhaps another question, why have both ',' and 'a,'...

'!' vs. '.'
Is there an advantage to using the '!' notation to represent form/ control relationships? (eg. Me!text1 vs Me.text1) I am currently using the '.' notation exclusively (for code completion in the VB Editor), but much of the high-quality code that I've seen (in Duane Hookom's Query-by-Form db, for example) uses the other. Here's one opinion for you: http://doc.advisor.com/doc/05352 robert.waters wrote: >Is there an advantage to using the '!' notation to represent form/ >control relationships? (eg. Me!text1 vs Me.text1) > >I am currently using the '.' notation exclusively (for code completion >in the VB Editor), but much of the high-quality code that I've seen >(in Duane Hookom's Query-by-Form db, for example) uses the other. -- HTH - RuralGuy (RG for short) acXP WinXP Pro Please post back to this forum so all may benefit. Message posted via AccessMonster.com http://www.accessmonster.com/Uwe/Forums.aspx/databases-ms-access/200704/1 Here's my $0.02 worth on this. I tend to copy the notation style and naming conventions that I see being used in the Help files. That would be Me![text1] for a control on a form. I am of the belief that this notation explicitly refers to a control itself rather than a field in the form's recordset. Here's an example: I have a parts inventory app that uses a "Line" code, which is usually a 3-character abbreviation for a brand name, and is the na... logical to 'on' / 'off' Hi, is there a function implemented doing this conversion? my Problem is, that I want to use the following code: set(handles.edit_curr_trq_sl,'Enable',get(hObject,'Value')) where get(hObject,'Value') gives the state of a checkbox thank you! function [str]=tf2oo(logic) switch logic case 0 str='off'; case 1 str='on'; end%switch end%function tf2oo() while i do not know a built in function, I use my own:) meisterbartsch wrote: > > > function [str]=tf2oo(logic) > switch logic > case 0 > str='off'; &g... Difference between 'is' and '==' Hey guys, this maybe a stupid question, but I can't seem to find the result anywhere online. When is the right time to use 'is' and when should we use '=='? Thanks alot~ mwql: >Hey guys, this maybe a stupid question, but I can't seem to find the >result anywhere online. When is the right time to use 'is' and when >should we use '=='? http://docs.python.org/ref/comparisons.html -- Ren� Pijlman mwql wrote: > Hey guys, this maybe a stupid question, but I can't seem to find the > result anywhere online. When is the right time to ... Does '!=' equivelent to 'is not' I'm a bit confusing about whether "is not" equivelent to "!=" if a != b: ... if a is not b: ... What's the difference between "is not" and "!=" or they are the same thing? pirata wrote: > I'm a bit confusing about whether "is not" equivelent to "!=" > > if a != b: > ... > > if a is not b: > ... > > > What's the difference between "is not" and "!=" or they are the same thing? No, they are not the same thing. == and != test to see if the *value* of two variables are the same. Like so: >>> a = 'hello world' >>> b = 'hello world' >>> a == b True a and b both have the value of 'hello world', so they are equal is and is not, however, do not test for value equivalence, they test for object identity. In other words, they test to see if the object the two variables reference are the same object in memory, like so: >>> a is b False a and b are assigned to two different objects that happen to have the same value, but nevertheless there are two separate 'hello world' objects in memory, and therefore you cannot say that a *is* b Now look at this: >>> c = d = 'hello world' >>> c == d True >>> c is d True In this case, they are again the same value, but now the is test also shows that they are the same *object* as well, because... Diff between '{..}' and {'..'} Hi, Could anyone tell me the difference between ......| awk '{.......}' AND ......| awk {'......'} And also when(in what situation) these are used? Thanks in advance, Anil. 2005-01-12, 22:37(-08), Anil: > Hi, > > Could anyone tell me the difference between > > .....| awk '{.......}' > > AND > > .....| awk {'......'} > > > And also when(in what situation) these are used? > Thanks in advance, [...] The second one should never be used. The difference is at the shell level, not at the awk level. '...' are stro... 'a'..'z' Is it possible to achieve something like this? switch (mystring.charAt(0)) { case 'a'..'z': // do something break; } "cruster" <cruster@gmail.com> wrote in message news:1151319731.988814.326200@m73g2000cwd.googlegroups.com... > Is it possible to achieve something like this? > > switch (mystring.charAt(0)) { > case 'a'..'z': > // do something > break; > } > There are times when an if statement may be more appropriate ;) Sorry - java is not VB :) -- LTP :) cruster schreef: > Is it possible to achieve somethi... We Are Selling The Nextel I930 For Just$130usd'''''''''''
Dear Customer We have all brands of Mobile Phones,Ipods,Sidekicks,Nextel phone,Laptops for sell at cheap an affordable prices, they ranges from Nokia/Samsung/LG/Son Ericsson/Motorola/Alcatel/panasonic With Bluetooth, al Brands and Models of Nextel Phones, we want you to get bac to us with your quote so that we can begin a good busines relationship. Note they are all Brand New T2 Euro specs unlocked, no operator logo, come in thei original sealed box, With 1 year international warrant from the manufacturer, English & Spanish manual, Finlan made We want to assure you that you will never r...

Re: if str_mo not in ('','.') and str_da not in ('','.') and str_yy not in ('','.') Any shorter ? #2
Igor, There are many ways to make it more concise, however the parsimony is likely to be achieved at the expense of clarity. For instance, the expressions length ( input (mm||dd||yy, $10.) ) > 2 length ( compress(mm||dd||yy, ' .') ) > 2 and like might be somewhat shorter than the original, but they will execute slower, and their intent is far less eminent. Since it appears that you are trying to validate the components of a date, maybe it is not a worthless idea to try the date informat conforming to the mask you are testing. Say if all the pieces are 2-digit, the expression input (mm||dd||yy, ?? mmddyy6.) will return a missing value for the case you are testing and also if any irregularities in the input value that prevent it from being interpreted as a valid date should be found. And if you want a note in the log to alert you about it, leave one of the question marks off. Kind regards, ================= Paul M. Dorfman Jacksonville, FL ================= >From: Igor Kurbeko <ikurbeko@ATHEROGENICS.COM> >Reply-To: Igor Kurbeko <ikurbeko@ATHEROGENICS.COM> >To: SAS-L@LISTSERV.UGA.EDU >Subject: if str_mo not in ('','.') and str_da not in ('','.') and str_yy > not in ('','.') Any shorter ? >Date: Wed, 22 Oct 2003 17:13:37 -0400 > >Hi, there. > > > >I'm just curious if it ever dawned on anybody how to abbreviate this >line : > >if ... remove from a txt everything between '[' and '] ' (included '[' and '] ') from: [FOOooOoOOO] this is ok1 [FOOooOOO] this is ok2 to: this is ok1 this is ok2 tnx! :) On Apr 3, 8:00 pm, slystoner <slysto...@gmail.com> wrote: > from: > [FOOooOoOOO] this is ok1 > [FOOooOOO] this is ok2 > > to: > this is ok1 > this is ok2 > > tnx! :) echo '[FOOooOoOOO]' | sed 's/$[^]]\+$//' Jeenu ha scritto: > On Apr 3, 8:00 pm, slystoner <slysto...@gmail.com> wrote: >> from: >> [FOOooOoOOO] this is ok1 >> [FOOooOOO] this is ok2 >> >> to: >> this is ok1 >> this is ok2 >> >... Like '' & '' & '' Having this description column in a table "Cookies, peanut butter sandwich, regular" When using this WHERE clause: WHERE (((Food_Data.Description) Like "*Butter*" & "*Peanut*")); I dont get any results, however when using it this way round WHERE (((Food_Data.Description) Like "*Peanut*" & "*Butter*")); I get the row as expected. I assume that the query looks for them in order. Is there a way i can get around this and make the query search for both keywords no matter which order i ype them in. Thanks Dave [posted and mail... 'mkswap' and 'swapon' 'swapoff' hi folks; Can someone or all help me setup a swapfile correctly please? I already destroyed my Debian (Sarge) install once after reading the man pages for 'mkswap' and 'swapon' (which says "The partition or path must be prepared with mkswap", before activating it with swapon). I just now see there are a *couple* of man pages for swapon; # /usr/share/man/man2/swapon.2.gz # /usr/share/man/man8/swapon.8.gz I was hasty to say the least (since I know what a swapfile is and does)....and after seeing this in the man mkswap pages, I issued; To setup a swap file, it is /n... Web resources about - replacement for '{' and '}' ? - comp.text.tex The Replacements (band) - Wikipedia, the free encyclopedia pioneers of alternative rock . The band was composed of the guitarist and vocalist Paul Westerberg , guitarist Bob Stinson , bass guitarist Tommy ... Facebook’s Carolyn Everson To Spend Six Months In London, Hire Replacement For Joanna Shields ... Vice President of Global Marketing Solutions Carolyn Everson will relocate from New York to London for six months in an effort to find a replacement ... Facebook Home: Replacement Home Screen for Android Nicely-designed phone interface that I would personally never want to use. (They’re embedding Helvetica rather than using Google’s crummy Roboto. ... The Replacements (@TheReplacements) on Twitter Website has been fixed. Stay tuned to see what other shenanigans we may or may not have up our sleeves... theReplacementsOfficial. App Store - The Complete Hair Replacement Guide Get The Complete Hair Replacement Guide on the App Store. See screenshots and ratings, and read customer reviews. The Replacements - Sixteen Blue (REMASTERED) - YouTube Artist : The Replacements Album : Let it Be (REMASTERED) Year : 1984 Track : 10 Duration : 4:24 Songwritter : Paul Westerberg Sixteen Blue Hut..yeah..c'mon ... Tevita Pangai thankful Canberra Raiders have found replacement in Joe Tapine Former Canberra Raider Tevita Pangai says he left the club to join Brisbane "on great terms". Brilliant new smart water pitcher orders replacement filters by itself ... blown. The Brita Infinity Smart Water Pitcher is a$45 smart pitcher that connects to your home Wi-Fi network and automatically orders replacement ...

Obstructing Scalia's Replacement, Gitmo's Closure and Survival of Humanity: 'BradCast' 2/23/2016
First up on today's BradCast , Republicans vow to continue their unprecedented obstructionism of Obama's Constitutional duty to nominate and ...

Senator Demands Abbott Labs Reconsider 180 Layoffs, Foreign Replacements
Senator Demands Abbott Labs Reconsider 180 Layoffs, Foreign Replacements

Resources last updated: 3/11/2016 6:26:29 AM