Mathematica 9 is now available
Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
1998
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 1998

[Date Index] [Thread Index] [Author Index]

Search the Archive

annoying Mathematica 3.0 behavior




I'm running Mathematica 3.0 under NT 4. 

1) To debug code, I insert Print[] statements within functions which I
comment out using (* ... *) when not needed (yes, I also comment out
the semicolons). However, the next time I open that notebook and such a
function is evaluated Mathematica flags it with syntax errors. When I
remove the (* ... *), the functions evaluate correctly, as they do
*even* after I reinsert the (* ... *). Clearly, I want to avoid doing
that everytime I open a notebook. Am I doing something wrong or is this
a known bug in 3.0?

2) Is there an elegant way for a default (or optional) argument to a
function to take a value which depends on another argument to the same
function if it's not explicitly passed? e.g. in "foo" I would like to
have "a" default to Length[lst].

  foo[lst_List, a_Integer : Length[lst_]] := lst[[a]]

but foo[{5,6,7,8}] returns "List", which implies that it's defaulting
"a" to 0. I've tried definding an optional argument with

  Options[foo] = {a -> Length[lst_]}

with no luck....Obviously, I can pass a : Infinity and set it
appropriately within the functions' body after a quick check, but it
doesn't seem like an elegant solution.

Thanks for the help.

 +---------------------------------+
 |          Alan Calvitti          |
 |       Control Engineering       |
 | Case Western Reserve University |
 +---------------------------------+



  • Prev by Date: optimize
  • Next by Date: help with Mathematica 3.0 'features' under NT
  • Prev by thread: Re: optimize
  • Next by thread: Re: annoying Mathematica 3.0 behavior