11.07.2015 Views

Encyclopedia of Computer Science and Technology

Encyclopedia of Computer Science and Technology

Encyclopedia of Computer Science and Technology

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

functional languages 203Page, Clive. “Clive Page’s List <strong>of</strong> Fortran Resources.” Availableonline. URL: http://www.star.le.ac.uk/~cgp/fortran.html.Accessed August 4, 2007.Reid, John. “The Future <strong>of</strong> Fortran.” Available online. URL: http://www.ieeexplore.ieee.org/iel5/5992/27213/01208645.pdf.Accessed August 4, 2007.fractals in computingFractals <strong>and</strong> the related idea <strong>of</strong> chaos have pr<strong>of</strong>oundlychanged the way scientists think about <strong>and</strong> model theworld. Around 1960, Benoit M<strong>and</strong>elbrot noticed that supposedlyr<strong>and</strong>om economic fluctuations were not distributedevenly but tended to form “clumps.” As he investigated othersources <strong>of</strong> data, he found that many other things exhibitedthis odd behavior. He also discovered that the patterns <strong>of</strong>distribution were “self-similar”—that is, if you magnified aportion <strong>of</strong> the pattern it looked like a miniature copy <strong>of</strong> thewhole. M<strong>and</strong>elbrot coined the term fractal (meaning fractured,or broken up) to describe such patterns. Eventually,a number <strong>of</strong> simple mathematical functions were found toexhibit such behavior in generating values.Fractals <strong>of</strong>fered a way to model many phenomena innature that could not be h<strong>and</strong>led by more conventionalgeometry. For example, a coastline that might be measuredas 1,600 miles on a map might be many thous<strong>and</strong>s <strong>of</strong> mileswhen measured on local maps, as the tiny inlets at everybay <strong>and</strong> beach are measured. Fractal functions could replicatethis sort <strong>of</strong> endless generation <strong>of</strong> detail in nature.Fractals showed that seemingly r<strong>and</strong>om or chaotic datacould form a web <strong>of</strong> patterns. At the same time, M<strong>and</strong>elbrot<strong>and</strong> others had discovered that the pattern radicallydepended on the precise starting conditions: A very slightdifference at the start could generate completely differentpatterns. This “sensitive dependence on initial conditions”helped explain why many phenomena such as weather (asopposed to overall climate) resisted predictability.Computing ApplicationsMany computer users are familiar with the colorful fractalpatterns generated by some screen savers. There are hundreds<strong>of</strong> “families” <strong>of</strong> fractals (beginning with the famousM<strong>and</strong>elbrot set) that can be color-coded <strong>and</strong> displayed inendless detail. But there are a number <strong>of</strong> more significantapplications. Because <strong>of</strong> their ability to generate realistictextures at every level <strong>of</strong> detail, many computer games <strong>and</strong>simulations use fractals to generate terrain interactively.Fractals can also be used to compress large digital imagesinto a much smaller equivalent by creating a mathematicaltransformation that preserves (<strong>and</strong> can be used to recreate)the essential characteristics <strong>of</strong> the image. Militaryexperts can use fractal analysis either to distinguish artificialobjects from surrounding terrain or camouflage, or togenerate more realistic camouflage. Fractals <strong>and</strong> chaos theoryare likely to produce many surprising discoveries in thefuture, in areas ranging from signal analysis <strong>and</strong> encryptionto economic forecasting.Further ReadingFractal Resources & Links. Available online. URL: http://home.att.net/~Novak.S/resources.htm. Accessed August 4, 2007.Gleick, J. Chaos: The Making <strong>of</strong> a New <strong>Science</strong>. New York: Viking,1987.M<strong>and</strong>elbrot, Benoit. The Fractal Geometry <strong>of</strong> Nature. New York:W.H. Freeman, 1982.Peitgen, Heinz-Otto, Hartmunt Jüurgens, <strong>and</strong> Dietmar Saupe.Chaos <strong>and</strong> Fractals. 2nd ed. New York: Springer, 2004.A M<strong>and</strong>elbrot fractal generated using Adobe PhotoShop <strong>and</strong> theKPT (Kai’s Power Tools) Fraxplorer filter. (Lisa Yount)functional languagesMost commonly used computer languages such as C++<strong>and</strong> FORTRAN are imperative languages. This means thata statement is like a “sentence” in which the value <strong>of</strong> anexpression or the result <strong>of</strong> a function is used in some way,such as assigning it to another variable or printing it. Forexample:A = cube(3)passes the parameter 3 to the cube function, which returnsthe value 27, which is then assigned to the variable A.In a functional language, the values <strong>of</strong> functions are notassigned to variables (or stored in intermediate locations asfunctions are evaluated). Instead, the functions are manipulateddirectly, together with data items (atoms) arrangedin lists. The earliest (<strong>and</strong> still best-known) functional languageis LISP (see lisp). Programming is accomplished by

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!