Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
research:software:effscript [2015/06/08 23:18] – mtoro | research:software:effscript [2015/08/04 21:33] – etanter | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== EffScript: Practical Effects for Scala ====== | ====== EffScript: Practical Effects for Scala ====== | ||
+ | |||
+ | {{bib> | ||
EffScript is a small domain-specific language for writing tailored effect disciplines for Scala. In addition to being customizable, | EffScript is a small domain-specific language for writing tailored effect disciplines for Scala. In addition to being customizable, | ||
Line 56: | Line 58: | ||
bottom: @simpleNoIO | bottom: @simpleNoIO | ||
- | pointcuts: | + | effspecs: |
def views.html.dummy.apply() prod @simpleNoIO | def views.html.dummy.apply() prod @simpleNoIO | ||
def views.html.foo.apply[T]() prod @simpleNoIO | def views.html.foo.apply[T]() prod @simpleNoIO | ||
Line 185: | Line 187: | ||
====== Step by Step Instructions ====== | ====== Step by Step Instructions ====== | ||
===== Architectural Constraints in Play ===== | ===== Architectural Constraints in Play ===== | ||
- | The effscript | + | The effscript |
To modify the discipline, just edit the '' | To modify the discipline, just edit the '' | ||
Line 369: | Line 371: | ||
sbt "run 2" | sbt "run 2" | ||
</ | </ | ||
+ | |||
+ | ===== Plotting the results ===== | ||
+ | To plot the benchmark results we have provided a zip file with the required files [[http:// | ||
+ | |||
+ | |||
+ | You will need the following python libraries (I recommend install them using " | ||
+ | - numpy | ||
+ | - matplotlib | ||
+ | |||
+ | Place the content of the zip file inside the benchmark folder. Then, edit '' | ||
+ | |||
+ | <code bash> | ||
+ | #!/bin/bash | ||
+ | n=1 | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | |||
+ | Before running the benchmarks we recommend re packaging the CollsSimple project: | ||
+ | <code bash> | ||
+ | cd CollsSimple | ||
+ | sbt package | ||
+ | </ | ||
+ | |||
+ | To run the benchmarks, at the root of the benchmarks folder run: | ||
+ | <code bash> | ||
+ | ./ | ||
+ | </ | ||
+ | |||
+ | The execution will output the results in '' | ||
+ | |||
+ | To plot the results just run: | ||
+ | <code bash> | ||
+ | python buildGraph.py | ||
+ | </ | ||
+ | It will generate a '' | ||
+ | |||
+ |