diff --git a/mathics/builtin/lists.py b/mathics/builtin/lists.py index 417910361..ed37c8869 100644 --- a/mathics/builtin/lists.py +++ b/mathics/builtin/lists.py @@ -5,7 +5,7 @@ Functions here will eventually get moved to more suitable subsections. """ -from mathics.builtin.base import Builtin, Predefined, Test +from mathics.builtin.base import Builtin, Test from mathics.builtin.box.layout import RowBox from mathics.core.attributes import A_LOCKED, A_PROTECTED from mathics.core.exceptions import InvalidLevelspecError @@ -14,21 +14,6 @@ from mathics.eval.parts import python_levelspec -class All(Predefined): - """ - - :WMA link: - https://reference.wolfram.com/language/ref/All.html - -
-
'All' -
is a possible option value for 'Span', 'Quiet', 'Part' and related functions. 'All' specifies all parts at a particular level. -
- """ - - summary_text = "all the parts in the level" - - class LevelQ(Test): """ @@ -99,20 +84,6 @@ def eval_makeboxes(self, items, f, evaluation): return RowBox(*list_boxes(items, f, evaluation, "{", "}")) -class None_(Predefined): - """ - :WMA link:https://reference.wolfram.com/language/ref/None.html - -
-
'None' -
is a possible value for 'Span' and 'Quiet'. -
- """ - - name = "None" - summary_text = "not any part" - - class NotListQ(Test): """ :WMA link:https://reference.wolfram.com/language/ref/NotListQ.html diff --git a/mathics/builtin/options.py b/mathics/builtin/options.py index 267323ba7..dd1e4f33b 100644 --- a/mathics/builtin/options.py +++ b/mathics/builtin/options.py @@ -11,7 +11,7 @@ https://reference.wolfram.com/language/guide/OptionsManagement.html
""" -from mathics.builtin.base import Builtin, Test, get_option +from mathics.builtin.base import Builtin, Predefined, Test, get_option from mathics.builtin.image.base import Image from mathics.core.atoms import String from mathics.core.evaluation import Evaluation @@ -22,6 +22,52 @@ from mathics.eval.patterns import Matcher +class All(Predefined): + """ + + :WMA link: + https://reference.wolfram.com/language/ref/All.html + +
+
'All' +
is an option value for a number of functions indicating to include everything. +
+ + + In list functions, it indicates all levels of the list. + + For example, in + :Part: + /doc/reference-of-built-in-symbols/list-functions/elements-of-lists/part, \ + 'All', extracts into a first column vector the first element of each of the list elements: + + >> {{1, 3}, {5, 7}}[[All, 1]] + = {1, 5} + + while in + :Take: + /doc/reference-of-built-in-symbols/list-functions/elements-of-lists/part, \ + 'All' extracts as a column matrix the first element as a list for each of the list elements: + + >> Take[{{1, 3}, {5, 7}}, All, {1}] + = {{1}, {5}} + + In + :Plot: + /doc/reference-of-built-in-symbols/graphics-and-drawing/plotting-data/plot \ + , setting the + :Mesh: + /doc/reference-of-built-in-symbols/drawing-options-and-option-values/mesh \ + option to 'All' will show the specific plot points: + + >> Plot[x^2, {x, -1, 1}, MaxRecursion->5, Mesh->All] + = -Graphics- + + """ + + summary_text = "option value that specify using everything" + + class Default(Builtin): """ @@ -121,6 +167,29 @@ def matched(): return ListExpression(*list(matched())) +class None_(Predefined): + """ + :WMA link:https://reference.wolfram.com/language/ref/None.html + +
+
'None' +
is a setting value for many options. +
+ + Plot3D shows the mesh grid between computed points by default. This the + :Mesh: + /doc/reference-of-built-in-symbols/drawing-option-and-values/mesh option. + + However, you hide the mesh by setting thes 'Mesh' option value to 'None': + + >> Plot3D[{x^2 + y^2, -x^2 - y^2}, {x, -2, 2}, {y, -2, 2}, BoxRatios-> Automatic, Mesh->None] + = -Graphics3D- + """ + + name = "None" + summary_text = "option value that disables the option" + + # Has this been removed from WL? I cannot find a WMA link. class NotOptionQ(Test): """