Source code of the resource analysis compiler

Loading...
Thumbnail Image

Date

Authors

Klinik, M.A.A. Markus
Hage, J.
Jansen, J.M.
Plasmeijer, M.J. Rinus

Journal Title

Journal ISSN

Volume Title

Publisher

DANS EASY

Research Projects

Organizational Units

Journal Issue

Abstract

Source code accompanying the paper Markus Klinik, Jurriaan Hage, Jan Martin Jansen, and Rinus Plasmeijer. Predicting resource consumption of higher-order workflows. In Proceedings of PEPM 2017, Paris, France, January 18-20, 2017, pages 99–110. ACM, 2017a. ISBN 978-1-4503-4721-1. CONTENTS - *.dcl/.icl: the Clean modules of the analyzer - *.prj: project files for the main program and the test - test: test cases for the corresponding Clean module, includes source code for the TestFramework needed to run the tests - bash_completion.d: source this file in your .bashrc to get simple command-line completion for the mtasks command. - programs: example programs to demonstrate the analyzer - More information on how to compile and run this program can be found in README.txt SHORT SUMMARY We present a type and effect system for the static analysis of programs written in a simplified version of iTasks. iTasks is a workflow specification language embedded in Clean, a general-purpose functional programming language. Given costs for basic tasks, our analysis calculates an upper bound of the total cost of a workflow. The analysis has to deal with the domain-specific features of iTasks, in particular parallel and sequential composition of tasks, as well as the general-purpose features of Clean, in particular let-polymorphism, higher-order functions, recursion and lazy evaluation. Costs are vectors of natural numbers where every element represents some resource, either consumable or reusable.

Description

Citation

Endorsement

Review

Supplemented By

Referenced By