Skip to content

List ​

Generated from the engine's own definition: compute-engine's symbol, which we neither extend nor document by hand.

An ordered collection of elements (a list).

✓ checked against that system · ! checked, with disagreements (hover a chip)FungrimListWolfram LanguageList!JuliaAny[$*,]Rustlist(vec![$*,])
List(any*) -> listas compute-engine declares it
Typed signatures
TypePackageApplies
(any*) -> listcompute-enginealways

Domain: Compute engine

Examples

Scope #

A scalar multiplies every element

live ↗
In2[1,2,3]2\bigl\lbrack1, 2, 3\bigr\rbrackOut[2,4,6]\bigl\lbrack2, 4, 6\bigr\rbrack

A scalar threads through nested lists

live ↗
Ina[[1,2],[3,4]]a\bigl\lbrack\bigl\lbrack1, 2\bigr\rbrack, \bigl\lbrack3, 4\bigr\rbrack\bigr\rbrackOut[[a,2a],[3a,4a]]\bigl\lbrack\bigl\lbrack a, 2a\bigr\rbrack, \bigl\lbrack3a, 4a\bigr\rbrack\bigr\rbrack

Outer builds every pairing of the two lists' elements

live ↗
InOuter(f,[1,2],[a,b,c])\mathrm{Outer}(f, \bigl\lbrack1, 2\bigr\rbrack, \bigl\lbrack a, b, c\bigr\rbrack)Out[[f(1,a),f(1,b),f(1,c)],[f(2,a),f(2,b),f(2,c)]]\bigl\lbrack\bigl\lbrack f(1, a), f(1, b), f(1, c)\bigr\rbrack, \bigl\lbrack f(2, a), f(2, b), f(2, c)\bigr\rbrack\bigr\rbrack

Prepend with a list adds it as one element, not spliced

live ↗
InPrepend([1,2,3],[a,b,c])\mathrm{Prepend}(\bigl\lbrack1, 2, 3\bigr\rbrack, \bigl\lbrack a, b, c\bigr\rbrack)Out[[a,b,c],1,2,3]\bigl\lbrack\bigl\lbrack a, b, c\bigr\rbrack, 1, 2, 3\bigr\rbrack

Flatten removes the nesting and joins the rows

live ↗
InFlatten([[1,2],[a,b,c]])\mathrm{Flatten}(\bigl\lbrack\bigl\lbrack1, 2\bigr\rbrack, \bigl\lbrack a, b, c\bigr\rbrack\bigr\rbrack)Out[1,2,a,b,c]\bigl\lbrack1, 2, a, b, c\bigr\rbrack

Map applies a symbolic head to each element

live ↗
InMap(f,[1,2,3,4])\mathrm{Map}(f, \bigl\lbrack1, 2, 3, 4\bigr\rbrack)Out[f(1),f(2),f(3),f(4)]\bigl\lbrack f(1), f(2), f(3), f(4)\bigr\rbrack
live ↗
In[a,b,c]+[1,2,3]\bigl\lbrack a, b, c\bigr\rbrack+\bigl\lbrack1, 2, 3\bigr\rbrackOut[a+1,b+2,c+3]\bigl\lbrack a+1, b+2, c+3\bigr\rbrack
live ↗
InSubsets([1,2,3])\mathrm{Subsets}(\bigl\lbrack1, 2, 3\bigr\rbrack)Out[[],[1],[2],[3],[1,2],[1,3],[2,3],[1,2,3]]\bigl\lbrack\bigl\lbrack\bigr\rbrack, \bigl\lbrack1\bigr\rbrack, \bigl\lbrack2\bigr\rbrack, \bigl\lbrack3\bigr\rbrack, \bigl\lbrack1, 2\bigr\rbrack, \bigl\lbrack1, 3\bigr\rbrack, \bigl\lbrack2, 3\bigr\rbrack, \bigl\lbrack1, 2, 3\bigr\rbrack\bigr\rbrack
live ↗
InSolve({x−y=1x+y=0,x,y)\mathrm{Solve}(\begin{cases}x-y=1\\x+y=0\end{cases}, x, y)Out[(12,−12)]\bigl\lbrack(\frac{1}{2},-\frac{1}{2})\bigr\rbrack
live ↗
InMap(f,[[1,2],[3,4],[5,6]],[2])\mathrm{Map}(f, \bigl\lbrack\bigl\lbrack1, 2\bigr\rbrack, \bigl\lbrack3, 4\bigr\rbrack, \bigl\lbrack5, 6\bigr\rbrack\bigr\rbrack, \bigl\lbrack2\bigr\rbrack)Out[f([1,2],2)]\bigl\lbrack f(\bigl\lbrack1, 2\bigr\rbrack, 2)\bigr\rbrack
live ↗
InSolve({x+y+z=0x+y=1y+z=2,x,y,z)\mathrm{Solve}(\begin{cases}x+y+z=0\\x+y=1\\y+z=2\end{cases}, x, y, z)Out[(−2,3,−1)]\bigl\lbrack(-2,3,-1)\bigr\rbrack
live ↗
Ine[[1,2,3],[4,5,6]]e^{\bigl\lbrack\bigl\lbrack1, 2, 3\bigr\rbrack, \bigl\lbrack4, 5, 6\bigr\rbrack\bigr\rbrack}Out[[e,e2,e3],[e4,e5,e6]]\bigl\lbrack\bigl\lbrack e, e^2, e^3\bigr\rbrack, \bigl\lbrack e^4, e^5, e^6\bigr\rbrack\bigr\rbrack
live ↗
InInsert([1,2,3],2,[a,b,c])\mathrm{Insert}(\bigl\lbrack1, 2, 3\bigr\rbrack, 2, \bigl\lbrack a, b, c\bigr\rbrack)Out[1,[a,b,c],2,3]\bigl\lbrack1, \bigl\lbrack a, b, c\bigr\rbrack, 2, 3\bigr\rbrack
About
Examples13
Checked againstWolfram Language 12 agree1 differSageMath 4 agreeSymPy 4 agreeJulia 2 agreeRust 2 errorCombinatorica 1 agreempmath 1 agree
CrosswalkFungrimWolfram LanguageJuliaRust

Implementation

mappedsympypackages/oracle/src/mappings.ts
mappedmpmathpackages/oracle/src/mappings.ts
mappedsagepackages/oracle/src/mappings.ts
mappedoscarpackages/oracle/src/mappings.ts
mappedjuliapackages/oracle/src/mappings.ts
mappedmathlib4packages/oracle/src/mappings.ts
mappedrustpackages/oracle/src/mappings.ts