Difference between revisions of "Blog articles/Comparisons"

From HaskellWiki
Jump to navigation Jump to search
(more comparisons)
(→‎Coq: Updated link to "Coq and simple group theory" (to Web Archive))
(16 intermediate revisions by 7 users not shown)
Line 1: Line 1:
 
[[Category:Tutorials]]
 
[[Category:Tutorials]]
   
Articles comparing Haskell to other languages.
+
Articles comparing Haskell to other languages, or describing the use of
  +
Haskell techniques in other languages.
   
 
= Functional programming =
 
= Functional programming =
Line 14: Line 15:
 
* [http://www.quanttec.com/fparsec/ FParsec - A Parser Combinator Library for F#]
 
* [http://www.quanttec.com/fparsec/ FParsec - A Parser Combinator Library for F#]
 
* [http://jyliao.blogspot.com/2007/11/learning-wpf-with-f-dock-and-grid.html zip in F# and Haskell]
 
* [http://jyliao.blogspot.com/2007/11/learning-wpf-with-f-dock-and-grid.html zip in F# and Haskell]
  +
* [http://www.brandonwerner.com/2008/01/13/the-rise-of-functional-programming-fscalahaskell-and-the-failing-of-lisp/ The Rise Of Functional Programming: F#/Scala/Haskell and the failing of Lisp]
  +
* [http://cs.hubfs.net/blogs/hell_is_other_languages/archive/2008/01/16/4565.aspx Software Transactional Memory for F#]
  +
* [http://fortysix-and-two.blogspot.com/2008/05/fscheck-random-testing-for-f.html QuickCheck for F#]
  +
* [http://lorgonblog.spaces.live.com/Blog/cns!701679AD17B6D310!256.entry Catamorphisms in F#]
   
 
== OCaml ==
 
== OCaml ==
   
* [http://enfranchisedmind.com/blog/archive/2007/08/06/307 A Monad Tutorial for Ocaml]
+
* [http://enfranchisedmind.com/blog/posts/a-monad-tutorial-for-ocaml/ A Monad Tutorial for Ocaml]
* [http://wagerlabs.com/archives/92.html Who let the dogs out]
+
* [http://alaska-kamtchatka.blogspot.com/2008/01/pointless-polymorphism.html Pointfree programming in OCaml]
   
 
== Erlang ==
 
== Erlang ==
 
* [http://www.acooke.org/cute/ErlangsSyn0.html Small comparison of Erlang's syntactic difficulties]
 
* [http://www.acooke.org/cute/ErlangsSyn0.html Small comparison of Erlang's syntactic difficulties]
* [http://blog.tornkvist.org/?id=1185571582964040 Compiling Haskell to Erlang]
 
 
* [http://chlorophil.blogspot.com/2007/11/pare-parallel-execution-in-erlang.html PARE - PARallel Execution in Erlang - a response to Haskell]
 
* [http://chlorophil.blogspot.com/2007/11/pare-parallel-execution-in-erlang.html PARE - PARallel Execution in Erlang - a response to Haskell]
   
Line 30: Line 34:
 
* [http://blog.superadditive.com/2007/11/09/list-comprehensions-in-common-lisp/ List comprehensions in Common Lisp]
 
* [http://blog.superadditive.com/2007/11/09/list-comprehensions-in-common-lisp/ List comprehensions in Common Lisp]
   
  +
== Oz ==
 
* [http://boriken.frayser.org/wordpress/2007/07/04/appreciating-chr-constraint-handling-rules-systems/ Appreciating Constraint Programming]
 
   
 
== Qi ==
 
== Qi ==
Line 41: Line 44:
 
== Prolog ==
 
== Prolog ==
   
* [http://www.cs.kuleuven.ac.be/~dtai/projects/ALP/newsletter/dec07/content/Articles/tom/content.htmlA Wake Up Call for the Logic Programming Community]
+
[http://www.cs.kuleuven.ac.be/~dtai/projects/ALP/newsletter/dec07/content/Articles/tom/content.html A Wake Up Call for the Logic Programming Community]
   
 
== Scheme ==
 
== Scheme ==
 
* [http://sami.samhuri.net/2007/6/25/floating-point-in-elschemo Floating point in ElSchemo (a scheme written in Haskell)]
 
* [http://sami.samhuri.net/2007/6/25/floating-point-in-elschemo Floating point in ElSchemo (a scheme written in Haskell)]
 
* [http://programming.reddit.com/goto?id=nq1k Haskell versus Scheme]
 
* [http://programming.reddit.com/goto?id=nq1k Haskell versus Scheme]
  +
* [http://shaurz.wordpress.com/2008/03/11/haskell-style-parser-combinators-in-scheme/ Haskell-style parser combinators in Scheme]
  +
* [http://blog.plt-scheme.org/2007/11/getting-rid-of-set-car-and-set-cdr.html Immutable lists for PLT Scheme]
   
 
== XSLT ==
 
== XSLT ==
 
* [http://porg.es/blog/computing-with-xslt Computing with XSLT]
 
* [http://porg.es/blog/computing-with-xslt Computing with XSLT]
  +
  +
== CAS Mathematica ==
  +
* [http://zufaellige-reflektion.blogspot.com/2011/01/haskell-eiger-for-mathematica.html Functional programming examples]
   
 
= Theorem provers =
 
= Theorem provers =
Line 65: Line 73:
 
== Coq ==
 
== Coq ==
   
* [http://blog.mikael.johanssons.org/archive/2007/08/coq-and-simple-group-theory/ Coq and simple group theory]
+
* [https://web.archive.org/web/20110225053451/http://blog.mikael.johanssons.org/archive/2007/08/coq-and-simple-group-theory/ Coq and simple group theory] (Web archive)
 
* [http://sequence.complete.org/node/358 Coq and The Monad Laws: Introduction]
 
* [http://sequence.complete.org/node/358 Coq and The Monad Laws: Introduction]
 
   
 
== Isabelle ==
 
== Isabelle ==
Line 99: Line 106:
 
* [http://www.developer.com/net/csharp/article.php/3598381 The New Lambda Expressions Feature in C# 3.0]
 
* [http://www.developer.com/net/csharp/article.php/3598381 The New Lambda Expressions Feature in C# 3.0]
 
* [http://blogs.msdn.com/wesdyer/archive/2007/03/01/immutability-purity-and-referential-transparency.aspx Immutability, Purity, and Referential Transparency in C#]
 
* [http://blogs.msdn.com/wesdyer/archive/2007/03/01/immutability-purity-and-referential-transparency.aspx Immutability, Purity, and Referential Transparency in C#]
  +
* [http://blogs.msdn.com/ericlippert/archive/2007/10/04/path-finding-using-a-in-c-3-0-part-two.aspx "Immutable data structures are the way of the future in C#"]
 
* [http://lukeplant.me.uk/blog.php?id=1107301659 Null pointers vs None vs Maybe]
 
* [http://lukeplant.me.uk/blog.php?id=1107301659 Null pointers vs None vs Maybe]
 
* [http://enfranchisedmind.com/blog/archive/2007/07/10/279 The "ole in the middle "pattern]
 
* [http://enfranchisedmind.com/blog/archive/2007/07/10/279 The "ole in the middle "pattern]
Line 107: Line 115:
 
* [http://gavinbierman.blogspot.com/2007/11/laziness-in-clinq.html Laziness in C#/LINQ]
 
* [http://gavinbierman.blogspot.com/2007/11/laziness-in-clinq.html Laziness in C#/LINQ]
 
* [http://diditwith.net/2007/11/14/ImproveYourCBorrowFromF.aspx Improve Your C#! Borrow from F#...]
 
* [http://diditwith.net/2007/11/14/ImproveYourCBorrowFromF.aspx Improve Your C#! Borrow from F#...]
  +
* [http://blogs.msdn.com/wesdyer/archive/2008/01/11/the-marvels-of-monads.aspx? The Marvels of Monads (in C#)]
  +
* [http://www.bluebytesoftware.com/blog/CommentView,guid,bae6ac13-2a95-4887-9ee3-3e64867c5650.aspx Immutable types can copy the world& safely!]
  +
* [http://blogs.msdn.com/ericlippert/archive/2007/12/19/immutability-in-c-part-seven-more-on-binary-trees.aspx Immutability in C# Part Seven: More on Binary Trees]
  +
* [http://blogs.msdn.com/lucabol/archive/2008/01/11/creating-an-immutable-value-object-in-c-part-v-using-a-library.aspx Creating an immutable value object in C# - Part V - Using a library]
   
 
== C++ ==
 
== C++ ==
Line 131: Line 143:
 
* [http://blog.tmorris.net/the-power-of-type-classes-with-scala-implicit-defs Type classes]
 
* [http://blog.tmorris.net/the-power-of-type-classes-with-scala-implicit-defs Type classes]
 
* [http://www.cs.kuleuven.be/~adriaan/?q=cft_intro Generics for type-safe persistence]
 
* [http://www.cs.kuleuven.be/~adriaan/?q=cft_intro Generics for type-safe persistence]
* [http://unenterprise.blogspot.com/2008/01/why-not-scala.html Why not Scala?]
+
* [http://www.drmaciver.com/2008/01/why-not-scala/ Why not Scala?]
  +
* [http://debasishg.blogspot.com/2008/03/monads-another-way-to-abstract.html Monads in Scala]
  +
* [http://patricklogan.blogspot.com/2008/01/scala-buzzzzings.html Scala Buzzzzings]
  +
* [http://scala-blogs.org/2008/01/roman-numerals-in-scala.html unfolds in scala]
   
 
= Imperative, dynamically typed =
 
= Imperative, dynamically typed =
Line 138: Line 153:
 
* [http://satta.org/2007/01/08/foldr-and-foldl-in-javascript/ foldr and foldl in JavaScript]
 
* [http://satta.org/2007/01/08/foldr-and-foldl-in-javascript/ foldr and foldl in JavaScript]
 
* [http://osteele.com/sources/javascript/functional/ Functional Javascript]
 
* [http://osteele.com/sources/javascript/functional/ Functional Javascript]
  +
* [http://w3future.com/weblog/stories/2008/06/16/adtinjs.xml Algebraic data types in JS]
  +
* [http://infrared-clearance.blogspot.com/2008/07/top-down-operator-precedence-in-haskell.html JavaScript translated and compared to Haskell]
  +
  +
== ActionScript ==
  +
  +
*[http://gasi.ch/blog/2008/03/29/functional-actionscript-part-1/ Haskell and ActionScript]
   
 
== Lua ==
 
== Lua ==
Line 152: Line 173:
 
* [http://lukeplant.me.uk/blog.php?id=1107301643 Understanding Monads Via Python List Comprehensions]
 
* [http://lukeplant.me.uk/blog.php?id=1107301643 Understanding Monads Via Python List Comprehensions]
 
* [http://the-little-haskeller.blogspot.com/2007/11/solve-ball-clock-puzzle-in-python-and.html Solve Ball Clock Puzzle in Python and Haskell]
 
* [http://the-little-haskeller.blogspot.com/2007/11/solve-ball-clock-puzzle-in-python-and.html Solve Ball Clock Puzzle in Python and Haskell]
  +
* [http://blog.moertel.com/articles/2008/03/19/property-checking-with-pythons-nose-testing-framework Property checking with Python's nose testing framework]
  +
* [http://www.valuedlessons.com/2008/03/why-are-my-monads-so-slow.html Why are my monads (in Python) so slow?]
  +
* [http://www.valuedlessons.com/2008/01/monads-in-python-with-nice-syntax.html Monads in Python (with nice syntax!)]
  +
* [http://www.valuedlessons.com/2008/01/recently-i-wrote-about-ways-to-add.html Haskell's do syntax for python and ruby]
  +
* [http://ndanger.org/blog/2008/01/16/error-handling-in-python-monads-are-too-much-for-me/ Error handling in Python: monads are too much for me]
  +
* [http://sigfpe.blogspot.com/2008/02/purely-functional-recursive-types-in.html Purely functional recursive types in Haskell and Python]
  +
* [http://www.valuedlessons.com/2008/02/pysec-monadic-combinatoric-parsing-in.html Pysec: Monadic Combinatoric Parsing in Python (aka Parsec in Python)]
  +
* [http://www.valuedlessons.com/2007/12/immutable-data-in-python-record-or.html Immutable Data in Python (Record or Named Tuple)]
   
 
== Ruby ==
 
== Ruby ==
Line 168: Line 197:
 
* [http://weblog.raganwald.com/2007/11/really-useful-anamorphisms-in-ruby.html Anamorphisms in Ruby]
 
* [http://weblog.raganwald.com/2007/11/really-useful-anamorphisms-in-ruby.html Anamorphisms in Ruby]
 
* [http://feedingthesnake.wordpress.com/2007/11/30/python-haskell-ruby-smackdown/ Python, Haskell, Ruby Smackdown]
 
* [http://feedingthesnake.wordpress.com/2007/11/30/python-haskell-ruby-smackdown/ Python, Haskell, Ruby Smackdown]
  +
* [http://codenoise.com/2008/03/prospering-with-ruby-vs-haskell Prospering with ruby vs. haskell]
  +
* [http://www.valuedlessons.com/2008/01/monads-in-ruby-with-nice-syntax.html Monads in Ruby (with nice syntax!)]

Revision as of 22:44, 20 November 2015


Articles comparing Haskell to other languages, or describing the use of Haskell techniques in other languages.

Functional programming

CAL

F#

OCaml

Erlang

Lisp


Qi

Prolog

A Wake Up Call for the Logic Programming Community

Scheme

XSLT

CAS Mathematica

Theorem provers

Epigram

Agda

Coq

Isabelle

Stack programming

Forth

Factor

Cat

Imperative, statically typed

Ada

C

C#

C++

Eiffel

Java

Scala

Imperative, dynamically typed

Javascript

ActionScript

Lua

Perl

Python

Ruby