Вы находитесь на странице: 1из 5

Scilab 6.0.

0 alpha 1 - Release Notes


30 July 2015

32/64-bit Linux, Mac OS X, 32/64-bit Windows

This document details new features, changes, bug fixes and improvements found in Scilab 6.0.0 alpha 1 release.
Scilab 6.0.0 alpha 1 is available for download at: http://www.scilab.org/download

Contents
Whats new2
Main Limitations2
New Features3
Installation3
Compilation 3
Packaging & Supported Operating Systems3
Signal Processing3
Input/Output File3
Data Structures 3
Removed Functions3
Modified Functions4
Syntax Modifications4
Deprecated Behaviors 4
Known Issues4
Scilab Bug Fixes5

Scilab 6.0.0 alpha 1 Release Notes | 1

Scilab 6.0.0 is a major new release of Scilab, the open source platform for numerical computation.
This 6.0.0-alpha-1 release, is a preview for developers, partners and community evaluation.
As an alpha, this release is not yet ready for production usage. If you are new to Scilab, or if you are simply a user of Scilab, you should
probably continue using the 5.5.2 release, and wait for a beta version before trying the 6 family.
However, if you have already developed code on Scilab, or if you are an experienced user, then you should start looking at this
release. Please try the work you have done on earlier releases of Scilab with this version: checking for compatibility may save you
time later. If you find bugs or incompatibilities, please report them on our Bug Tracker: this will help get a better product, faster,
which ultimately will be benefit you too.

What's new in Scilab 6.0.0-alpha-1?

This release includes a major rewrite of Scilab's internal core.


The changes to the visible aspects of the software are limited.
The first big internal change, is a complete new language
parser and interpreter, with the following changes:
w The language is much more coherent and predictable,
w The grammar is stricter, but more consistent,
w Error handling has been improved (but may still be limited in
the alpha: please report issues you find),
w The language has slightly better compatibility with Matlab's
language (for example control instructions such as switch/
case statements).
The language changes are not all backward-compatible. You
will have to update your scripts/programs/modules, but it
will be very simple in pretty much all cases. In particular, the
following changes may require modifications to existing code:
- Literal strings cannot mix single-quote and double-quote
delimiters: they have to start and finish with either both
single-quotes, or both double-quotes,
- Usage of commas (to put multiple instructions on the
same line) has been clarified: it can not be used following
control instructions such as try,
- Three dots or more are not supported anymore.
w The second big internal change, is the ability to manipulate
bigger data sets, without exhausting system resources. This
includes in particular:
- A much better memory management. Memory usage
is now only limited by the machine's memory. This was a
much-needed, and much-requested feature.
- There is no need anymore for stacksize,
- Support for bigger data sizes, in particular with better
support for HDF5 files,
- Some new and improved data types: 64-bit integers;
ability to define user types in C++ modules. Also, matrices
with more than two dimensions are now implemented
natively.
- Native data structures (cell, struct), as well as
multidimensional matrices, which yield, in most cases,
better performance, both in memory usage, and execution
speed. There could be some performance degradation in
some cases: please feel free to report them.

These changes may not amount much to end-users, but they


were much needed, much worked-on, improvements to the
Scilab platform. These improvements will enable further
improvements in the future, in terms of code management,
development tools (debugger, analyzer...), as well as
improvements to other part of the platform (Xcos...) that would
not be possible without this release.

Main Limitations

Several important parts of the platform are not functional in


this alpha:
w Xcos is not functional yet; the editor is not working yet at in
this alpha 1 (it will in the final release, for sure). The simulator
has been ported but is still not usable,
w The debugging and profiling capabilities present in the 5.5.2
version are not ported to 6; most likely it will be replaced by
completly new features.
w ATOMS is functional, but since none of ATOMS modules
currently on http://atoms.scilab.org/ have been ported, it is not
of much use.

Scilab 6.0.0 alpha 1 Release Notes | 2

New Features

Input/Output File

scatter/scatter3 plot with different mark colors is


now available.

The use of I/O console is now allowed with the following


functions:

parulacolormap is now available.


name2rgb can now handle a single string and a matrix of
strings.

Installation
Under Windows, MKL packages are now included in Scilab
installer and no more downloaded while installing Scilab.

Compilation

mget, mgetl, mgetstr, mput, mputl and mputstr.

mclearerr now returns a flag indicating the file


identifier validity.
fileinfo can now take a row vector as input.
msprintf no more returns an error message when there
are too many input arguments (more values that format
needs).

Data Structures

A C++11 compliant compiler is now needed.

cells and structs are now native types, hence improving


performances.

Java minimal version switch to 1.8.

cells:

Ant minimal version switched to 1.9.0 (for Java 1.8


compatibility).

w insertion and extraction must be done via () or {}.


w .dims and .entries fields have been removed, please use
size and () instead.

ecj minimal version switched to 4.4.0 (for Java 1.8


compatibility).

struct:

--without-xcos now only disable Xcos compilation.


Xcos graphical interface is disabled using --withoutgui.

hypermatrix:

Packaging & Supported Operating Systems


Scilab embedded JVM has been upgraded to Java 1.8.

To run or compile Scilab 6.0.0-alpha-1 you need at least:


w Windows:
- Windows 8 (Desktop)
-Windows 7
-Windows Vista SP2
-Windows Server 2008 R2 SP1 (64-bit)
-Windows Server 2012 (64-bit)
w Mac OS X:
-Intel-based Mac running Mac OS X 10.8.3+, 10.9+
w Linux:
-Red Hat Enterprise Linux 5.5+, 6.x (32-bit), 6.x (64-bit), 7.x
(64-bit)
-Oracle Linux 5.5+, 6.x (32-bit), 6.x (64-bit), 7.x (64-bit)
-Ubuntu Linux 12.04 LTS, 13.x
-Suse Linux Enterprise Server 10 SP2+, 11.x
For more information, please consult:
http://java.com/en/download/help/sysreq.xml

w dims field has been removed, please use size instead.

w hypermatrices are natively managed (without mlist


overloading).
w typeof function now returns real type like constant, string,
... instead of hypermat
w type function returns real type like 1, 10, ... instead of 17
(mlist).
w .dims and .entries fields have been removed, please use
size and () instead.

Removed Functions
Removed Function

New Function

maxfiles
intersci

swig

numdiff

numderivative

derivative

numderivative

curblockc

curblock

extract_help_examples

Signal Processing
amell function

w now checks its parameters are real numbers,


w now throws an error if the second parameter is not a scalar.

Scilab 6.0.0 alpha 1 Release Notes | 3

Removed Function

New Function

Symbolic module functions


have been removed:
addf
block2exp
cmb_lin
ldivf
mulf
rdivf
solve
subf
trianfml
trisolve

Removed functions (based on


former Scilab stack):
comp
errcatch
iserror
fun2string
getvariablesonstack
gstacksize
macr2lst
stacksize
code2str
str2code
-mem option (used to set

stacksize at startup)

{"foo"} returns a cell not a string matrix.


Declaring non-homogenous strings ("string' or
'string") is no more allowed.
New shortcut operators have been introduced:
&& and ||.

Deprecated Behaviors
{} becomes different of [] and will be used on cells.
Syntax %i:10 is now deprecated (only real scalars can be
used).
Writing string or string matrix in a file does not add blanck
space before each value:
write("TMPDIR/test", ["test", "sample";
"sample", "test"])
"-" + mgetl("TMPDIR/test") + "-"

while/else control instruction is no more supported.


(a=b) executed like a == b is now deprecated and
returns an error.

Known issues

Modified Functions

Xcos does not work in this version.

exec

Debugging capabilities are not yet replugged.

exec of macro executes the body in the current scope but the

prototype must have zero input and output arguments.

error

An error number in input is deprecated.

Profiling capabilities are not yet replugged.


This version will start in English by default.

impl

Recall impl with the same parameters as in its previous stop is


now available.

ode

y0 is restricted to a column vector.

pppdiv

Return a scalar of type 'constant' when the rank is 0.

pdiv

Return a matrix of type 'constant' when all the rank are 0.

typeof

Add a 2nd argument "overload" of get overloaded name


(typeof(cell(), "overload") -> "ce")

Syntax Modifications
Declaration of a number on two lines is no longer
allowed:
1..
2

Scilab 6.0.0 alpha 1 Release Notes | 4

Scilab Bug Fixes


Bug

Description

#6064

scatter function did not exist in Scilab.

#8990

zoom_auto feature was missing on the plot toolbar.

#9621

A tlist with undefined fields can now be saved.

#12202

Mixing int8 and doubles with colon operator led to wrong results.

#13289

Using non-integer indexes for mlists made Scilab crash.

#13517

isdef crashed Scilab when called with a vector of strings as input in a function and after a declaration of variables.

#13807

Invalid margins were computed when figure was not visible.

#13829

mean and sum functions returned wrong results for hypermatrices.

#13834

Drawing a high number of strings in a figure generated a Java exception.

#13838

Sparse and complex substraction made Scilab crash.

#13854

Under some operating systems, SciNotes did not initialize a new document at startup.

#13866

There were some issues with FFTW3 library.

#13881

datatipRemoveAll did not work.

#13924

Rationals r1==r2 and r1~=r2 might sometimes be wrong.

#13925

SciNotes used the wrong paired bracket highlight style.

#13941

Internal timestamps of HDF5 files prevented having a fixed hash for a unvarying set of saved objects.

#13971

A space has been added between Scilab prompt and cursor.

#13972

Wildcard ('*') was not managed in printf expressions.

All bugs description and fix can be found online at http://www.bugzilla.scilab.org/bugnumber.

Scilab 6.0.0 alpha 1 Release Notes | 5