narray

What: Numeric Array extension to Tcl
Description: Provide support for large in-memory multi-dimensional numeric arrays. Also provides support for applying Tcl functions over each element of the array in a byte code compiled format. Version 0.81 created by Nick Maliszewsky (but is not archived in the Internet Archive). It supports Tcl/Tk 8.0 as well as 7.6.
Where: http://www.ncnr.nist.gov/staff/nickm/narray.html
Code: The code of version 0.8 is from 1998-08-21. As the original NeoSoft archive is no longer available, the software is only archived by the Internet Archive. Download version 0.8 here
Contact: mailto:[email protected] (Sam Shen)
mailto:[email protected] (Sam Shen)
mailto:[email protected] (Nick Maliszewsky)
Last update:2022-10-14

mailto:[email protected] Sam Shen's WWW page has some useful Tcl related items. For instance, a demo of the NArray (numeric array) extension can be seen by pointing a forms-capable WWW browser at http://www.csua.berkeley.edu/%7Esls/narray/ . One can also get Sam's SNTL Tcl support library at http://www.csua.berkeley.edu/%7Esls/woa/distrib/ .

To get an idea of what the package can do, here is the example from the web page at NIST:

% package require narray        ;# load narray package
0.81
% narray create cube 64 64 64   ;# cube is an 64x64x64 float array
cube
% cube status                   ;# 64x64x64 * sizeof(float) = 1MB
 1024.12KB used, debug 0
% cube aref 0 0 0               ;# return the element (0,0,0)
0
% cube aset 0 0 0 10            ;# set (0,0,0) to 10
10
% cube map { [] += 5; }         ;# add 5 to each element
% cube aref 0 0 0               ;# (0,0,0) is now 15
15
% cube vset sum 0               ;# set the variable sum to 0
0
% cube map { sum += $[]; }      ;# sum the elements
% cube vref sum                 ;# get the value of the variable sum
1.31073e+06                     ;# the sum of the elements is 1310730
% expr 64*64*64*5+10            ;# just checking...
1310730