Long viewed as an important theoretical idea, functional programming finally became truly convenient and practical with the introduction of Mathematica
's symbolic language. Treating expressions like
as both symbolic data and the application of a function
provides a uniquely powerful way to integrate structure and function—and an efficient, elegant representation of many common computations.
) — specify a pure function (e.g.
, ## —
slots for variables in a pure function
map with index information:
, FoldList —
fold in a list of values:
, FixedPointList —
repeatedly nest until a fixed point
select from a list according to a function
create an array from a function
, Split —
sort, split according to a function