Questions tagged [language-design]

for questions about the design of the Mathematica language itself

20 questions with no upvoted or accepted answers
Filter by
Sorted by
Tagged with
43 votes
0 answers
1k views

Performance problems in new Sequence functions

The new-in-10.1 Sequence* family of functions should provide newly optimized methods for handling sequence problems. Happily in some cases they do! For example ...
Mr.Wizard's user avatar
  • 269k
17 votes
0 answers
209 views

Why are delayed definitions in scoping functions NOT documented?

As outlined here, := may be used in scoping constructs like With to give delayed definitions, but this is undocumented. This ...
Mr.Wizard's user avatar
  • 269k
14 votes
0 answers
128 views

Why does MapAt unpack individual elements?

(In case this is version specific I am using Mathematica 10.1 under Windows.) While responding to Partition array without unpacking I noticed something about MapAt ...
Mr.Wizard's user avatar
  • 269k
13 votes
0 answers
554 views

Is there research about the Mathematica programming paradigm?

There seem to be lots of papers discussing the functional programming paradigm terminology for Haskell, such as monad, category theory, lambda calculus, *morphism, etc. People study concepts and ...
Eric's user avatar
  • 1,181
9 votes
0 answers
65 views

Does ArgumentsOptions do anything we couldn't do without it?

ArgumentsOptions was new in version 12.2. I looked at the application on that page, and it makes code very difficult to understand. What if anything does ArgumentsOptions do for us that we couldn't do ...
Ted Ersek's user avatar
  • 6,954
9 votes
0 answers
126 views

List assigment ({...}={...}) and UpValues

Let's say I want to track any assignment attempt for a variable a: a /: Set[a, x_] := Print@{a, x} This works as intended: <...
Lukas Lang's user avatar
  • 33.3k
8 votes
0 answers
105 views

What is the philosophy behind \[Rule] (a.k.a. `->`) for assigning options?

Today I was banging my head against my desk when I realized that the problem I was experiencing was due to having typed ImageSize[Large] instead of ...
Kai's user avatar
  • 2,079
8 votes
0 answers
145 views

Relation between the syntactic and evaluated Association

This question is inspired by this answer and related to unsolved post "Association's Attributes change between 10.3.1 & 10.4"...
luyuwuli's user avatar
  • 2,764
7 votes
0 answers
194 views

Why patterns names aren't scoped by default?

In a recent question [1] OP asked how to make Module scope working inside Set, so how to get: ...
Kuba's user avatar
  • 136k
5 votes
0 answers
64 views

Why ReadList ignores NullRecords for Number?

When thinking on this recent question the immediately obvious solution which came to my mind was to use ReadList with options ...
Alexey Popkov's user avatar
4 votes
0 answers
73 views

Why does `MakeBoxes` have the HoldAllComplete attribute and ignore it rather than HoldAll?

MakeBoxes has the attribute HoldAllComplete. For a normal function, it would imply that Upvalues should not be taken into account when the expression is evaluated: <...
Juan Mauricio Matera's user avatar
4 votes
0 answers
99 views

Obtain complete list of built-in graphical objects, and split them into groups?

I would like to obtain the complete listing of built-in graphical objects (which can be used in Graphics or Graphics3D) ...
Alexey Popkov's user avatar
4 votes
0 answers
96 views

Why is SparseArray atomic?

This answer tells us that functions like ReplaceAll do not straightforwardly work for the entries of sparse arrays because a ...
Jules Lamers's user avatar
  • 1,054
3 votes
0 answers
145 views

Why is MeshRegion atomic?

I wanted to make some changes inside a MeshRegion today and found that unlike Graphics objects, it can't be done directly ...
vapor's user avatar
  • 7,851
3 votes
0 answers
434 views

Mixing Wolfram Language & WolframAlpha Queries - How robust is it?

The advent of Mathematica in the cloud and linguistic input potentially transforms expectations of the Wolfram Language's programming model and its inherent robustness. An example of this comes form ...
Ronald Monson's user avatar
2 votes
0 answers
90 views

Why does Plot function have HoldAll attribute?

I had an odd issue where my plot wasn't drawn correctly when I called it via Plot[Join[fs,gs], (*..*)]. However, these two versions worked: ...
Niklas Vest's user avatar
2 votes
0 answers
64 views

Should SubsetMap be called CombineAt?

I'm a big fan of the functionality introduced by SubsetMap but am puzzled as to why it was not called "CombineAt". There are ...
Ronald Monson's user avatar
1 vote
0 answers
100 views

Why is the dot operator not just matrix multiplication?

It seems to me Mathematica does not have an inbuilt matrix multiplication operator. The dot operator fails as such, as is even noted under "Possible Issues" in its documentation it ...
cbartondock's user avatar
1 vote
0 answers
55 views

"Compile-time" patterns

If I define a function like f[x : {_, _Integer}] := (* function body *) then, as I understand it, every time f[expr] is ...
thorimur's user avatar
  • 8,930
1 vote
0 answers
118 views

Intervals v.s. Domains: when to use which and why?

or: How to use Interval correctly? Mathematica provides these constructs for various symbolic deductions tasks. Among those constructs are symbolic number sets ...
Gravifer's user avatar
  • 812