Mojca Miklavec wrote:
On 8/21/06, nico wrote:
On Mon, 21 Aug 2006 17:23:48 +0200, Mojca Miklavec wrote:
Hello,
I tried to print out primes (well, I tried to do something else, but I needed a more illustrative example), but it seems that my approach was too naive:
\def\arePrime[#1]{% \bgroup \getparameters[Prime][p=,#1] \def\printPrime##1{##1 is prime.\crlf} \processcommalist[\Primep]\printPrime \egroup}
\starttext \arePrime[p={2,3,5}] \stoptext
My 2 cents contribution:
\def\printPrime#1{#1 is prime.\crlf}
%% Why using parameter for this?
I was sure that someone would ask that. I want to provide optional parameters for both numbers and scaling: \useGNUPLOTgraphic[name] or \useGNUPLOTgraphic[name][width=.9\textwidth] or \useGNUPLOTgraphic[name][n={1,3}] or \useGNUPLOTgraphic[name][n={1,3},width=.9\textwidth]
but after some thinking I realized that it would indeed be a better idea (less to type?) to have \useGNUPLOTgraphic[name][1,3] and \useGNUPLOTgraphic[name][1,3][width=.9\textwidth] instead.
along these lines: \def\useGNUPLOTgraphic {\dotripleempty\douseGNUPLOTgraphic} \def\douseGNUPLOTgraphic[#1][#2][#3]% {\itthirdargument \dodouseGNUPLOTgraphic[#1][#2][#3]% \else\ifsecondargument \def\docommand##1{\dodouseGNUPLOTgraphic[#1][##1][#3]}% \processcommalist[#2]\docommand \fi} \def\dodouseGNUPLOTgraphic[#1][#2][#3]% {\getparameters[#1:#2][#3]} etc etc you can also check for \doifsssignmentelse{#2}{...}{...}
At the beginning the main reason against it Hans
-- ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------