\section{CELL Cell Array Definitions}

\subsection{Usage}

The cell array is a fairly powerful array type that is available
in FreeMat.  Generally speaking, a cell array is a heterogenous
array type, meaning that different elements in the array can 
contain variables of different type (including other cell arrays).
For those of you familiar with \verb|C|, it is the equivalent to the
\verb|void *| array.  The general syntax for their construction is
\begin{verbatim}
   A = {row_def1;row_def2;...;row_defN}
\end{verbatim}
where each row consists of one or more elements, seperated by
commas
\begin{verbatim}
  row_defi = element_i1,element_i2,...,element_iM
\end{verbatim}
Each element can be any type of FreeMat variable, including
matrices, arrays, cell-arrays, structures, strings, etc.  The
restriction on the definition is that each row must have the
same number of elements in it.
\subsection{Examples}

Here is an example of a cell-array that contains a number,
a string, and an array
\begin{verbatim}
--> A = {14,'hello',[1:10]}

A = 

 [14]   ['hello']   [[1 10] int32]   


\end{verbatim}
Note that in the output, the number and string are explicitly
printed, but the array is summarized.
We can create a 2-dimensional cell-array by adding another
row definition
\begin{verbatim}
--> B = {pi,i;e,-1}

B = 

 [3.14159]   [0+1i]   
 [2.71828]   [-1]   


\end{verbatim}
Finally, we create a new cell array by placing \verb|A| and \verb|B|
together
\begin{verbatim}
--> C = {A,B}

C = 

 {[1 3] cell }   {[2 2] cell }   


\end{verbatim}
