Scilab 2026.1.0 - Highlights & What's New

Scilab 2026.1.0 - Highlights & What’s New

Hi everyone! We’re excited to share a quick tour of the headline features landing in Scilab 2026.1.0. This release brings transparent broadcasting in arithmetic operators, native Excel and Parquet/Arrow I/O, inline documentation right in the console, and a batch of handy machine-learning and matrix utilities.

Automatic expansion in arithmetic operators

Arithmetic operators now perform automatic expansion with no memory overhead: any singleton dimension is automatically replicated to match the other operand. No more repmat() or Kronecker product (.*.) for the most common cases — your code stays compact, readable, and fast.

x = [1; 2; 3];        // column vector (3×1)
y = [10, 20, 30];     // row vector    (1×3)
M = x + y             // 3×3 result, no repmat() needed

See doc operator_expand for the full picture.

Inline documentation with help()

The new help() function prints a short summary of any documentation page directly in the console — quick reminders of syntax and arguments without leaving your workflow.

help pdist2

Statistics & machine learning

  • pdist() — pairwise distances between observations.
  • pdist2() — pairwise distances between two sets of observations.
  • squareform() — convert between a distance vector and a symmetric distance matrix.
  • summary() — describe table or timeseries variables (properties, basic statistics, …).
  • dbscan() now accepts custom metric distances and parameters.
  • kmeans() and meanshift() now rely on pdist2() with euclidian metric under the hood for better performance.

Classdef

Objects defined with classdef now support static properties and methods, rounding out the oriented object programming introduced in 2026.0.0.

Excel Files

A complete set of native XLSX functions is now available:

  • xlsxRead() — read data from an Excel file into a matrix or cell.
  • xlsxWrite() — write a matrix or cell to an Excel file.
  • xlsxInfo() — inspect a file (sheets, ranges, …).
  • xlsxSheet() — manage sheets (add, remove, rename).

Parquet & Arrow support

Two new functions bring Scilab into modern data-engineering workflows:

  • parquetRead() — read a Parquet or Arrow file as a table.
  • parquetWrite() — write a table to Parquet or Arrow.

Quality-of-life additions

  • format("eng") — exponential notation with exponents constrained to multiples of three.
  • ishermitian() / issymmetric() — quick matrix property checks.
  • gallery() gains the "minij" and "moler" symmetric positive definite test matrices.
  • csvTextScan() now supports the "substitute" option, just like csvRead().

Modernization of ATOMS & Demonstrations GUIs

Based on uicontrol browser introduced in Scilab 2025.1.0

Get involved

  • Try the new features and share your feedback, code snippets, and edge cases.
  • Report issues and suggest enhancements on GitLab.

Thanks to all contributors and testers who helped shape Scilab 2026.1.0!

2 Likes