## 1344 Reputation

17 years, 191 days

## dependencies...

Consider routine A in the library, which is called by routines B1, B2,..,BN.
Then, any change in A affects, potentially, the behavior of all of them. And
B1 is in turn called by C1,...,CM, which are also, potentially, affected, etc.
But there may be routines in no way, directly or indirectly dependent on A.

Is there a way to trace the sectors of the library dependent or independent of
a given routine?

## The actual architecture...

Maple

In the volume Advanced Programming Guide of the Maple manual, the "clasical" picture of the Maple system architecture is depicted:

A1: Internal Organization
Components

Maple consists of three main components: a kernel, a library, and a user interface. The kernel and library together are known as the math engine.
Kernel The kernel is written in the C language and is responsible for low-level operations such as arbitrary precision arithmetic, file I/O, execution of the Maple language, and the performance of simple mathematical operations such as differentiation of polynomials.
Library Most of the Maple mathematical functionality is in the Maple library, which is written in the Maple language. The library is stored in an archive, and pieces of it are loaded and interpreted by the kernel on demand.
User Interface The user interface is the part of Maple that the user sees, and is conceptually separate from the math engine. The same math engine can be used with different user interfaces.

However, the architecture of the system has been moving away from this picture for several years already. Eg:

A second parser has been implemented in the Standard GUI, instead of the kernel.

## simplify ceil and floor...

As some expressions involving 'floor' and 'ceil' did not simplify as I have expected, I have gone to basics. In ?trunc > Description it is stated:

ceil(x) = -floor(-x)

But 'simplify' does not seem to know about this equation as this expression should simplify to 0:

```simplify(ceil(x)+floor(-x));

floor(-x) + ceil(x)
```

In principle, this seems to be a weakness in 'simplify'. For comparison, in Mathematica 5:

## Multiple left single quotes...

Maple

For a single pair of left single quotes, ?name is clear:

Any valid Maple name formed without using left single quotes is precisely the same as the name formed by surrounding the name with left single quotes.

So this is fine:

````x`;
x
```

But what about multiple left single quotes? This help page also states:

## Standard vs Classic plots...

I find that for some plots the choice of location for tickmarks and axes labels in the Classic version is better than the Standard one. Eg. here:

```with(plots):
complexplot3d(sin(z), z=-Pi-1.5*I..Pi+1.5*I,axes=boxed,
style=surfacecontour,tickmarks=[[-Pi=-Pi,0=0,Pi=Pi],
default,default],orientation=[72,49]);
```

Classic:

 1 2 3 4 5 6 7 Page 2 of 8
﻿