Source code of the resource-time analysis compiler
Display more detailsDisplay less details
Key wordssource code; iTasks; resource analysis
Source code accompanying the paper: Klinik, M., Jansen, J.M. & Plasmeijer, R. (2017). The Sky is the Limit: Analysing Resource Consumption Over Time Using Skylines. In N. Wu (Ed.), IFL 2017: Proceedings of the 29th Symposium on the Implementation and Application of Functional Programming Languages, Bristol, United Kingdom — August 30 - September 01, 2017 (pp. 8-1-8-12). New York: ACM CONTENTS - *.dcl/.icl: the Clean modules of the analyzer - *Spec.icl/.dcl: test cases for the corresponding Clean module - *.prj.default: original project files for the main program and the test cases. Must be renamed to .prj to compile. This is because the clean compiler modifies those files, but we don't want the modification under version control. - bash_completion.d: source this file in your .bashrc to get simple command-line completion for the mtasks command. - test: source code of the TestFramework, needed to run the unit tests - boxes: some brainstorming how skylines are appended and stacked - programs: example programs to demonstrate the analyzer - More information on how to compile and run this program can be found in README.txt - We ran into some problems when trying to organize the source code in subdirectories, because compile errors of the Clean compiler does not reflect module structure well enough for integration with external tools. That is why all source code is in one directory. SHORT SUMMARY In this paper we present a static analysis for costs of higher-order workflows, where costs are maps from resource types to simple functions over time. We present a type and effect system together with an algorithm that yields safe approximations for the cost functions of programs.