מפגשים‏ > ‏שהתקיימו‏ > ‏

מפגש מס' 7 - השכל

נשלח 15 בספט׳ 2010, 4:36 על ידי Yardena Meymann   [ עודכן 28 באוק׳ 2010, 5:02 ]
ההרצאה על השכל מפי אאור שרף התקיימה ב-19 באוקטובר ב18:30 כרגיל, במשרדי סאן בהרצליה פיתוח, רח' המנופים 9, קומה 8 (בניין אקרשטיין). 

Computation as Mathematics with Haskell

Haskell is a programming language that takes three ideas to the edge: Functional programming, stong static typing wih type-inference and non-strictness.
This allows for some unique advantages:
  • Purity and a strong type system allow most programmer errors to be caught at compile time, given good programing practices. Complex invariants can be encoded in the type system. As was shown in the Clojure lecture, purity also means that bugs that do manifest are much easier to catch (I was motivated to learn Haskell in order to check that claim).
  • Generic Algorithms are easy to write concisely by use of Type Classes, a very powerful uncle of C++/Java's Templates/Generics. 
  • Algorithm Composition can be efficient. E.g. to find the k largest items in a list, we could write "take the first k items from sort(list)" and it would run in O(n + k*log(k)) as opposed to O(n*log(n)) in C or Python.
  • You don't have to pay as much lip-service to the type system as in C# or Java, because the compiler can infer what types things should have from how you use them.

We will go through a mental exercise of "designing" a language that would offer Haskell's unique advantages, and then demonstrate many of its features with a practical example.

video


שקפים


קישורים נוספים: 

תמונות




Comments