Pensieve header: Class of March 7: Packaging.

ParametricPlot[{Sin[t],Sin[2t]}, {t,0,2π}]

ParametricPlot3D[
r={Cos[2t], Sin[2t], 0}; n={0,0,1};
3r+(Cos[t]r-Sin[t]n)Sin[2s]+(Sin[t]r+Cos[t]n)Sin[s],
{t,0,7Pi/8}, {s,0,2Pi},
 PlotStyle->Opacity[.7], Axes -> None, Boxed -> False, Background -> White,
ViewPoint->{4.68705,-1.12888,0.870159},ViewVertical->{-0.194434,0.141663,3.30223}
]

From http://www.math.toronto.edu/drorbn/classes/16-1750-ShamelessMathematica/About.html: Possible Topics (in no particular order). Whatever you may suggest, and the Fibonacci numbers; the Jones polynomial; a more efficient Jones algorithm; a riddle on spheres; Khovanov homology; Γ-calculus; the Hopf fibration; Hilbert’s 13th problem; non-commutative Gaussian elimination; free Lie algebras; the Baker-Campbell-Hausdorff formula; wacky numbers; an order 4 torus; the Schwarz Lantern; knot colourings; the Temperley-Lieb pairing; the dodecahedral link; sound experiments; barycentric subdivisions; a Peano curve; braid closures and Vogel’s algorithm; the insolubility of the quintic, phase portraits.

Package for use by others

1. Make into a “package”.
2. Save as a package (.m) file.
3. Do not enforce variable names.
4. Document.
5. Allow “mod p”.
6. Allow “verbose”.
7. Print error messages, as needed.

?$Context

?$ContextPath

?BeginPackage

?EndPackage

?Begin

?End

BeginPackage["SqSq`"];
SqSq;
Begin["`privet`"];
SqSq[z_] := (sq=(z^2); (sq^2));
End[];
EndPackage[];

?::

?Modulus

?Options

?Message

?Off

?On

?Abort

?Return