Good Saturday
New builtins
ArcTanh
ByteArray
CreateFile
CreateTemporary
FileNames
NIntegrate
PartitionsP
$Notebooks
Enhancements
- The Mathics version is checked for builtin modules at load time. A message is given when a builtin doesn't load.
- Automatic detection for the best strategy to numeric evaluation of constants.
FileNameJoin
now implementsOperatingSystem
option- Mathics functions are accepted by
Compile[]
. The return value or type will beCompile[] and CompiledFunction[]
. Every Mathics Expression can have a compiled form, which may be implemented as a Python function. Equal[]
now compares complex against other numbers properly.- Improvements in handling products with infinite factors:
0 Infinity
->Indeterminate
, andexpr Infinity
->DirectedInfinite[expr]
$Path
is nowUnprotected
by defaultRead[]
handles expressions better.StringSplit[]
now accepts a list in the first argument.SetDelayed[]
now accepts several conditions imposed both at LHS as well as RHS.- Axes for 2D Plots are now rendered for SVGs
InsertBox
accepts an opaque parameter
=========
TeXForm[]
for integrals are now properly formatted.
Pymathics Modules
- Pymathics modules now can run initialization code when are loaded.
- The
builtins
list is not hardliked to the library anymore. This simplifies the loading and reloading of pymathics modules. - Decoupling of BoxConstructors from the library. Now are defined at the level of the definition objects. This is useful for customizing the Graphics output if it is available.
Miscellanea
- A pass was made to improve Microsoft Windows compatability and testing Windows under MSYS.
- Include numpy version in version string. Show in CLI
- Small CLI tweaks
--colors=None
added to match mathicsscript. - In the
BaseExpression
and derivated classes, the methodboxes_to_xml
now are calledboxes_to_mathml
. - In the
format
method of the classEvaluation
, the builtinToString
is called instead ofboxes_to_text
- In order to control the final form of boxes from the user space in specific symbols and contexts.
GraphicsBox
now has two methods:to_svg
andto_mathml
. The first produces SVG plain text while the second produces<mglyph ...>
tags with base64 encoded SVGs.
What's to expect in a Future Release
- Improved
Equal
See PR #1209 - Better Unicode support, especially for Mathics operators
- Improved
D[]
andDerivative[]
See PR #1220. - Improved performance
Collect[]
See Issue #1194.Series[]
See Issue #1193.