Group Abstract Group Abstract

Message Boards Message Boards

5
|
11.5K Views
|
3 Replies
|
9 Total Likes
View groups...
Share
Share this post:

In defense of simplicity (or why I disagree with Stephen Wolfram)

Posted 8 years ago
POSTED BY: b3m2a1 ​ 
3 Replies

I just thought I would through in my hat into the ring here.

When new releases come out I always check and see how fast they NSum and NIntegrate for the sake of computing digits of the MRB and MKB constants, respectively. Sometimes the speed slows down a little, due to what I think is the cost of Mathematica having more overhead to deal with (bloatware if you please), Nonetheless, over a long period of many releases, the speed does increase.

I can see that Mathematica does take a balanced approach to adding new functions: they consider what speed the new functions cost.

Personally I do not mind a huge symbols base. As long as the core is clearly outlined and well documented.

Which is not the case because there is no clear border between "the base" functions and all syntactic sugar or utilities that are around. Or rather, the clear base subset is there but it can't be filtered from user perspective. Experience taught me to not touch those utilities/sugar when developing code for others. And in this context an ability to extract the core functionality and learn 'what is going on' is very important.

I deliberately steer clear of giving specific examples to not put anyone from developers on spot just because I recently use certain functionalities rather than others.

Summing up, I agree with your point but not with the suggested solution as it would require too many changes.

What I think would help are semi official developers' notes about core frameworks. While documentation should be clear, user friendly and readable for newbies, developers need clear details in technical language.

I'm not sure about format/distribution for such notes but I know they would help. Especially in case of core features that have no documentation at all. PacletManager is a distinctive example, why something that fundamental to Mathematica needs to be learned by reading the code?

POSTED BY: Kuba Podkalicki
Posted 8 years ago

Neither approach is better than the other.

People are cognitively different from each other. Each person's mind works differently from each other person's. Some people's minds will work better with many large named pieces of functionality. Some people's minds work better with a smaller number of more granular functions as part of a tighter core language.

To be specific: People with a high inductive reasoning aptitude, an ability to match functions with needs, who are very practical and/or who find learning new functions easy will probably do better with a language having many named larger pieces of functionality. People who are more creative, have a high deductive reasoning aptitude and/or strong linguistic, cause-effect reasoning or visual skills might find a tighter core language easier to use.

I think the poster and myself belong more the second group and Stephan Wolfram belongs more to the first group. That is fine. The world needs all types. A language that supports both types of thinking would probably be most ideal as long as the two natures of the language are well integrated. It comes down to cognitive differences among humans as to which approach is better for which person.

POSTED BY: Jon Grover
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard