name=NESL nameURL=http%3A%2F%2Fwww.cs.cmu.edu%2F%7Escandal%2Fnesl%2F see= logo= type=P%20-%20Parallel%20or%20Multi-programming desc=NESL%20is%20a%20data-parallel%20functional%20%0D%0Aprogramming%20language%20intended%20to%20be%20highly%0D%0Aportable%20across%20different%20parallel%20%0D%0Acomputer%20architectures%2C%20easy%20to%20use%2C%20and%0D%0Aefficient%20to%20compile.%0D%0A%3Cbr%3E%0D%0AThe%20basic%20data%20types%20supported%20by%20NESL%0D%0Aare%3A%20integers%2C%20reals%2C%20strings%2C%20and%20sequences%20%28vectors%29.%0D%0AThe%20sequences%20are%20heavily%20used%20for%20%0D%0Adefining%20parallelism%2C%20NESL%20has%20special%0D%0Aoperators%20and%20syntax%20for%20operating%20on%0D%0Aall%20elements%20of%20a%20sequence%20and%20on%20each%0D%0Aelement%20of%20a%20vector.%0D%0AIn%20addition%20to%20its%20parallel%20computation%0D%0Aconstructs%2C%20NESL%20also%20supports%20conventional%0D%0Aselection%20%28if-then-else%29%20and%20iteration%0D%0A%28for%2C%20while%29%20control-flow%20constructs.%0D%0A%3Cbr%3E%0D%0AThe%20NESL%20function%20library%20provides%20a%0D%0Arich%20set%20of%20sequence%20operations%2C%20plus%0D%0Astring%20manipulation%2C%20I%2FO%2C%20system%0D%0Ainterface%2C%20and%20windowing%20functions.%0D%0ACurrently%2C%20NESL%20runs%20only%20on%20UNIX%20and%0D%0Arelated%20systems%20%28or%20parallel%20computers%0D%0Aattached%20to%20such%20systems%29%3B%20its%20windowing%0D%0Asupport%20is%20currently%20implemented%20only%0D%0Afor%20X11.%0D%0A%3Cbr%3E%0D%0ANESL%20is%20usually%20compiled%3B%20the%20compilation%0D%0Aprocess%20automatically%20generates%20a%20mapping%0D%0Afrom%20the%20computation%20defined%20by%20the%20NESL%0D%0Acode%20onto%20the%20processors%20of%20the%20target%0D%0Acomputer.%20%20Variables%20and%20functions%20in%0D%0ANESL%20are%20not%20strongly%20typed%2C%20but%20the%20compiler%0D%0Aseems%20to%20perform%20extensive%0D%0Atype%20inference%20at%20compile-time.%0D%0AReleases%203.1%20and%20later%20of%20NESL%20also%0D%0Ainclude%20a%20lightweight%20interpreter%20for%0D%0Ause%20in%20training%20and%20debugging.%20%20%20The%20NESL%20%0D%0Acompiler%20is%20written%20in%20C%2C%20and%20the%0D%0Ainterpreter%20is%20implemented%20in%20Common%0D%0ALisp.%0D%0A%3Cbr%3E%0D%0AImplementations%20of%20NESL%20are%20%0D%0Aavailable%20from%20CMU.%20%20The%20documentation%0D%0Aand%20a%20tutorial%20are%20also%20available%20on%0D%0Athe%20web. origin=Guy%20Blelloch%2C%20Carnegie-Mellon%2C%201992-93 seealso=ML%2C%20Lucid%2C%20Clean remark=NESL%20is%20a%20project%20of%20SCandAL%20group%20at%0D%0ACMU.%20%20They%20are%20working%20on%20porting%20the%20%0D%0Alanguage%20to%20a%20variety%20of%20parallel%0D%0Aarchitectures.%20%20They%20also%20have%20a%20%0D%0Asystem%20for%20translating%20NESL%20programs%0D%0Ainto%20multi-threaded%20Java%20programs.%0D%0A%3Cbr%3E%0D%0ANESL%20has%20special%20features%20for%20animating%0D%0Athe%20execution%20of%20parallel%20algorithms%2C%0D%0Aa%20helpful%20feature%20for%20presenting%20papers%0D%0Aat%20conferences%20and%20for%0D%0Acomputer%20science%20education.%20%20Some%20live%0D%0Aanimations%20can%20be%20seen%20at%20the%20NESL%0D%0Apages%20at%20CMU.%0D%0A%3Cbr%3E%0D%0ANESL%20has%20been%20the%20experimental%20vehicle%0D%0Afor%20research%20in%20provable%20performance%0D%0Abounds%20in%20parallel%20algorithms%2C%20as%20well%0D%0Aas%20parallel-processing%20compiler%20research. links1=Interactive%20Interface%20to%20NESL%3Dhttp%3A%2F%2Fwww.cs.cmu.edu%2F%7Escandal%2Fnesl%2Fnesl_form.html links2=NESL%20distribution%20download%20site%3Dftp%3A%2F%2Fnesl.scandal.cs.cmu.edu%2F links3= links4= links5= date=Last%20updated%2012%2F23%2F97 sample=%3Cpre%3E%0D%0A%25%20Fits%20a%20line%20to%20a%20set%20of%20of%20points%20%20%25%0D%0A%25%20using%20a%20simple%20regression%20algorithm%2C%20%25%0D%0A%25%20return%20line%20and%20goodness%20of%20fit.%20%20%20%25%0D%0A%25%20%28from%20code%20examples%20with%20NESL%203.1%29%20%25%0D%0Afunction%20line_fit%28x%2C%20y%29%20%3D%0D%0Alet%20%0D%0A%20%20n%20%20%20%20%3D%20float%28%23x%29%3B%0D%0A%20%20xa%20%20%20%3D%20sum%28x%29%2Fn%3B%0D%0A%20%20ya%20%20%20%3D%20sum%28y%29%2Fn%3B%0D%0A%20%20Stt%20%20%3D%20sum%28%7B%28x%20-%20xa%29%5E2%3A%20x%7D%29%3B%0D%0A%20%20b%20%20%20%20%3D%20sum%28%7B%28x%20-%20xa%29%2Ay%3A%20x%3B%20y%7D%29%2FStt%3B%0D%0A%20%20a%20%20%20%20%3D%20ya%20-%20xa%2Ab%3B%0D%0A%20%20chi2%20%3D%20sum%28%7B%28y-a-b%2Ax%29%5E2%3A%20x%3B%20y%7D%29%3B%0D%0A%20%20siga%20%3D%20sqrt%28%281.0%2Fn%20%2B%20xa%5E2%2FStt%29%2Achi2%2Fn%29%3B%0D%0A%20%20sigb%20%3D%20sqrt%28%281.0%2FStt%29%2Achi2%2Fn%29%0D%0Ain%20%0D%0A%20%20%28a%2C%20b%2C%20siga%2C%20sigb%29%20%24%0D%0A%3C%2Fpre%3E%0D%0A _store=1 _add=NESL _usertab=1 _usersearch=0 _format=full =