classifySymbol[sym_Symbol] :=
Module[
{usage = sym::usage,
name = SymbolName[sym]},
If[! StringQ[usage], "Undefined or no usage",
If[StringStartsQ[usage, name <> " is an option"], "Option",
If[StringContainsQ[usage, name <> "["], "Function",
"Other"]]]
]
(* HHHH------------------------------ *)Table::usage
"DisplayForm[
RowBox[{Table, [, RowBox[{StyleBox[expr, TI], ,, StyleBox[n, TI]}], ]}]] generates a list of DisplayForm[StyleBox[n, TI]] copies of DisplayForm[StyleBox[expr, TI]].
DisplayForm[RowBox[{Table, [, RowBox[{StyleBox[expr, TI], ,, RowBox[{{, RowBox[{StyleBox[i, TI], ,, SubscriptBox[StyleBox[i, TI], StyleBox[max, TI]]}], }}]}], ]}]] generates a list of the values of DisplayForm[StyleBox[expr, TI]] when DisplayForm[StyleBox[i, TI]] runs from 1 to DisplayForm[SubscriptBox[StyleBox[i, TI], StyleBox[max, TI]]].
DisplayForm[RowBox[{Table, [, RowBox[{StyleBox[expr, TI], ,, RowBox[{{, RowBox[{StyleBox[i, TI], ,, SubscriptBox[StyleBox[i, TI], StyleBox[min, TI]], ,, SubscriptBox[StyleBox[i, TI], StyleBox[max, TI]]}], }}]}], ]}]] starts with DisplayForm[RowBox[{StyleBox[i, TI], =, SubscriptBox[StyleBox[i, TI], StyleBox[min, TI]]}]].
DisplayForm[RowBox[{Table, [, RowBox[{StyleBox[expr, TI], ,, RowBox[{{, RowBox[{StyleBox[i, TI], ,, SubscriptBox[StyleBox[i, TI], StyleBox[min, TI]], ,, SubscriptBox[StyleBox[i, TI], StyleBox[max, TI]], ,, StyleBox[di, TI]}], }}]}], ]}]] uses steps DisplayForm[StyleBox[di, TI]].
DisplayForm[RowBox[{Table, [, RowBox[{StyleBox[expr, TI], ,, RowBox[{{, RowBox[{StyleBox[i, TI], ,, RowBox[{{, RowBox[{SubscriptBox[StyleBox[i, TI], StyleBox[1, TR]], ,, SubscriptBox[StyleBox[i, TI], StyleBox[2, TR]], ,, StyleBox[..., TR]}], }}]}], }}]}], ]}]] uses the successive values DisplayForm[SubscriptBox[StyleBox[i, TI], StyleBox[1, TR]]], DisplayForm[SubscriptBox[StyleBox[i, TI], StyleBox[2, TR]]], ....
DisplayForm[RowBox[{Table, [, RowBox[{StyleBox[expr, TI], ,, RowBox[{{, RowBox[{StyleBox[i, TI], ,, SubscriptBox[StyleBox[i, TI], StyleBox[min, TI]], ,, SubscriptBox[StyleBox[i, TI], StyleBox[max, TI]]}], }}], ,, RowBox[{{, RowBox[{StyleBox[j, TI], ,, SubscriptBox[StyleBox[j, TI], StyleBox[min, TI]], ,, SubscriptBox[StyleBox[j, TI], StyleBox[max, TI]]}], }}], ,, StyleBox[..., TR]}], ]}]] gives a nested list. The list associated with DisplayForm[StyleBox[i, TI]] is outermost."(* HHHH------------------------------ *)StringQ[Table::usage]
(* True *)(* HHHH------------------------------ *)TextForm[Information[ "Table" ]] // StringQStringForm[Information[ "Table" ]] // StringQ(* False *)ToString[Information[ "Table" ]] // StringQTrueToString[Information[ "Table" ]]
Table[expr, n] generates a list of n copies of expr. Table[expr, {i, i }] generates a list of the values of expr when i runs from 1 to i . Table[expr, {i, i , i }] starts with i = i . Table[expr, {i, i , i , di}] uses steps di. Table[expr, {i, {i , i , ...}}] uses the successive values i , i , ....Table[expr, {i, i , i }, {j, j , j }, ...] gives a nested list. The list associated with i is outermost.
max max min max min min max 1 2 1 2 min max min max
Attributes[Table]={HoldAll, Protected}
Table[expr, n] generates a list of n copies of expr. Table[expr, {i, i }] generates a list of the values of expr when i runs from 1 to i . Table[expr, {i, i , i }] starts with i = i . Table[expr, {i, i , i , di}] uses steps di. Table[expr, {i, {i , i , ...}}] uses the successive values i , i , ....Table[expr, {i, i , i }, {j, j , j }, ...] gives a nested list. The list associated with i is outermost.
max max min max min min max 1 2 1 2 min max min max
Attributes[Table]={HoldAll, Protected}
(* HHHH------------------------------ *)