Search type Search syntax
Tags [tag]
Exact "words here"
Author user:1234
user:me (yours)
Score score:3 (3+)
score:0 (none)
Answers answers:3 (3+)
answers:0 (none)
isaccepted:yes
hasaccepted:no
inquestion:1234
Views views:250
Sections title:apples
body:"apples oranges"
URL url:"*.example.com"
Favorites infavorites:mine
infavorites:1234
Status closed:yes
duplicate:no
migrated:no
wiki:no
Types is:question
is:answer
Exclude -[tag]
-apples
For more details on advanced search visit our help page
Results tagged with Search options user 12

Mathematica symbols are the ultimate atoms of symbolic data. Every symbol has a unique name, exists in a certain Mathematica context or namespace, and can have a variety of types of values and attributes.

4
votes
Use Text in Graphics. This page, and the ones linked under Tutorial (top right corner) explain how to type math. Here's one way, keystroke by keystroke: ", a, ", ←, shift+←, control+shift+T, ←, con …
answered Jun 2 '16 by Szabolcs
21
votes
Unique will do precisely this. Try for example Unique[x], which returns a symbol with a name similar to x$123. Here I should mention the Temporary attribute as well, which, when associated with a sy …
answered Jan 18 '12 by Szabolcs
6
votes
["Foo`*"]; (* list all symbols meant for export, including any symbols used as options only *) Begin["`Private`"]; (* package code *) With[{syms = Names["Foo`*"]}, SetAttributes[syms …
answered Nov 9 '17 by Szabolcs
9
votes
Indeed confusing, but can be explained. Please read here first on how Mathematica searches contexts for symbols. In short, $Context tells it where to create symbols. It's for creation, not for … lookup. $ContextPath tells it where to look for symbols but doesn't affect symbol creation. If the symbol is not found in any of the $ContextPath contexts, Mathematica proceeds to create it in …
answered Jul 14 '15 by Szabolcs
5
votes
recorded in the list of distributed symbols. This list is used to prevent distributing the same symbol every single time it's used even if its value hasn't changed. It is an optimization measure. In … [3]:= Parallel`Developer`$DistributedDefinitions Out[3]= {Hold[a]} Setting a as shared removes it from the list of distributed symbols to prevent bad interactions between the sharing and …
answered Feb 4 '16 by Szabolcs
5
votes
case if there's a conflict with System` symbols, as that context is still active and visible to package B during load time. I'm assuming that the packages follow the standard structure and don't make …
answered Mar 19 '15 by Szabolcs
12
votes
I agree that this is a bug. However, I want to point out that this usage of Except does not seem to be allowed in older versions. In version 9.0: We don't get the expected True answer. An error m …
answered Sep 1 '16 by Szabolcs
32
votes
We can use the Ramer-Douglas-Peucker algorithm to reduce the number of points. This algorithm was originally devised for processing map data. reg = BoundaryDiscretizeGraphics[ Text[Style["S", Font …
answered Feb 16 '17 by Szabolcs
2
votes
code block doesn't trigger the warning is that it doesn't create any new symbols. Both A`n and B`n have already been created. If you quit the kernel and evaluate the second block first, you'll get … the warning again (as it creates a new symbol that causes ambiguity). If you are writing a package, you should only place those symbols into the package context which are meant to be directly used …
answered Jan 21 '18 by Szabolcs
7
votes
You can use SymbolName. foo`bar (* foo`bar *) ToString[foo`bar] (* "foo`bar" *) SymbolName[foo`bar] (* "bar" *) Warning: Converting between symbols and strings requires great care, especially … when different contexts are involved. Make sure you really need to do this and that you really do not want the fully qualified name. Robust code will not normally convert between strings and symbols. …
answered Oct 25 '17 by Szabolcs
7
votes
Like Leonid, I also prefer capitalized public package symbols. He gave the argument that this is the conventional way to do it and discussed conflicts with builtins (unavoidable) vs conflicts with … other packages (avoided through the use of contexts). I would like to add some additional arguments in favour of capitalized package symbols: The reason why it is recommended to use lower-case …
answered Dec 17 '15 by Szabolcs
35
votes
use a hash table instead of symbols: Instead of creating symbols from the strings "a", "b", "c", ..., and assigning to them, you could assign to myTable["a"], myTable["b"], ... This will make … programmatic access to this data trivial. You won't need to bother with evaluation control nearly as much. And more importantly, you can avoid accidental name collisions with existing symbols. Here's an example: (myTable[#] = 1) & /@ {"a", "b", "c"} …
answered Jan 26 '12 by Szabolcs
10
votes
Perhaps what you want is symbolic tensors: http://reference.wolfram.com/language/tutorial/SymbolicTensors.html $Assumptions = M ∈ Arrays[{3, 3}] && a ∈ Complexes; TensorContract[a*M, {{1, 2}}] (* a …
answered Jun 16 by Szabolcs
2
votes
The typical way to search the documentation is the keyboard shortcut Mr Wizard mentioned. In general, you can find the shortcut key for a command by looking in the menu ... If you are looking for …
answered Feb 5 '14 by Szabolcs
24
votes
I usually use ToExpression["symbol", InputForm, ValueQ] ToExpression will wrap the result in its 3rd argument before evaluating it. Generally, all functions that extract parts (Extract, Level, …
answered Jan 18 '12 by Szabolcs

15 30 50 per page