tweag / sparkle

Haskell on Apache Spark.
BSD 3-Clause "New" or "Revised" License
447 stars 30 forks source link

Examples to illustrate the dangers of the "unsafe" sparkle interface #156

Closed buonuomo closed 3 years ago

buonuomo commented 3 years ago

I've added two examples in apps/memerr and apps/use-after-free showing how we can induce JVM GC errors and use-after-free errors for JVM references, respectively. These examples are meant to serve as motivation for a "safe interface" to Sparkle using linear types in order to make such erroneous programs more difficult to write.

facundominguez commented 3 years ago

I just rebased master to eliminate the first commit which was already in master (although with a different hash).

buonuomo commented 3 years ago

I've added some more documentation, and some of your suggestions @facundominguez. It should hopefully be more clear now what each of these programs are supposed to do. I'll also get started on another similar program to memerr that uses fewer references and a larger RDD (or I may modify memerr to be able to do this).