User Tools

Site Tools


lara:tutorial

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
lara:tutorial [2015/03/31 18:49]
tdrc [LARA]
lara:tutorial [2019/09/22 15:47] (current)
Line 1: Line 1:
 ====== Tutorials ====== ====== Tutorials ======
-In this page you can find a list of tutorials ​available ​about the LARA language and the available tools.+In this page you can find a list of tutorials about the LARA language and the available ​weaving ​tools.
  
-===== LARA =====+/* 
 +===== Conference Tutorials ​===== 
 +*/
  
-  * [[lara:tutorial:​languagespecification|The Language Specification]] - this tutorial serves to first explain the language specification,​ an important aspect for programming strategies in LARA. +===== CSW'16: LARA Tutorial =====
-  * [[lara:​tutorial:​basics|Basic 101]] - this tutorial shows the basics of the LARA language regarding its aspect-oriented programming approach. ​  +
-  * [[lara:​tutorial:​js|JavaScript in LARA]] - here we depict the use of javascript inside a LARA aspect. +
-  * [[lara:​tutorial:​advanced|Advanced LARA]] - in this tutorial we show more complex examples of aspects. +
-  * [[lara:​tutorial:​advanced|Advanced ​LARA]] - in this tutorial we show more complex examples of aspects.+
  
-===== MATISSE ===== +**A DSL-based Approach for Cross Layer Programming:​ Monitoring, Adaptivity and Tuning,​** ​ //in HiPEAC Spring Computing System Week (CSW’2016,​ https://​www.hipeac.net/​csw/​2016/​porto)//,​ April 20-22, 2016, Porto, Portugal, (Thematic Session). João M. P. Cardoso, João Bispo, Tiago Carvalho, Luís Reis, Pedro Pinto, Ricardo Nobre, Faculty of Engineering (FEUP), University of Porto, PT
-===== MANET =====+
  
 +
 +   - **Introduction to the LARA Language and its use in the context of Toolchains and Design Flows**, João M.P. Cardoso {{:​lara:​tutorial:​csw16:​intro2lara.pdf| }}
 +   - **LARA for Programming Code Characteristics and Metrics**, Pedro Pinto, Tiago Carvalho {{:​lara:​tutorial:​csw16:​manet_1-static_analysis.pdf| }}
 +   - **LARA for Programming Code Instrumentation Strategies**,​ Pedro Pinto, Tiago Carvalho {{:​lara:​tutorial:​csw16:​manet_2-dynamic_analysis.pdf| }}
 +   - **LARA for Programming Strategies for Code Transformations and Optimizations**,​ Pedro Pinto, Ricardo Nobre
 +       * **Code Transformation and Optimizations**,​ Pedro Pinto {{:​lara:​tutorial:​csw16:​manet_3-code_transformations.pdf| }}
 +       * **Design-Space Exploration in the Context of Phase-Ordering**,​ Ricardo Nobre {{:​lara:​tutorial:​csw16:​dse_3-compiler_optimizations.pdf| }}
 +   - **LARA in the context of a MATLAB/​Octave to C/OpenCL Compiler**, João Bispo, Luís Reis
 +       * **Weaving MATLAB**, João Bispo {{:​lara:​tutorial:​csw16:​matisse_4-weaving_matlab.pdf| }}
 +       * **MATLAB to C/OpenCL Compilation**,​ Luís Reis {{lara:​tutorial:​csw16:​matisse_5-compilation.pdf| }}
 +       * **[[http://​specs.fe.up.pt/​tools/​matisse|Online Tool (MATISSE)]]**
 +   - **LARA in the context of a Java to Java Compiler**, Tiago Carvalho, Pedro Pinto {{lara:​tutorial:​csw16:​kadabra_6-weaving_java.pdf| }}
 +   - **LARA for Programming Strategies for Runtime Adaptivity **, Tiago Carvalho, Pedro Pinto {{lara:​tutorial:​csw16:​kadabra_7-runtime_adaptability_with_lara.pdf| }}
 +   - **Plans for LARA in the context of the ANTAREX Project**, João Bispo, João M.P. Cardoso {{lara:​tutorial:​csw16:​8-laraandantarex-tutorial.pdf| }}
 +
 +===== May DEI'​18:​ LARA Tutorial for Java =====
 +
 +**Introduction to the LARA AOP Language,​** ​ Tiago Carvalho, Pedro Pinto, João Bispo, João M. P. Cardoso, ​ Faculty of Engineering (FEUP), University of Porto, PT
 +   - **[[https://​github.com/​specs-feup/​specs-lara/​tree/​master/​Tutorial-2018-DEI-Java|GitHub Repository]]**
 +   
 +===== The LARA Language ===== 
 +  * [[lara:​tutorial:​basics|Basic 101]] -basics of the LARA language regarding its aspect-oriented programming approach.
 +  /* [[lara:​tutorial:​js|JavaScript in LARA]] - the use of javascript inside a LARA aspect. */
 +/*  * [[lara:​tutorial:​advanced|Advanced LARA]] - more complex examples of LARA aspects. */
 +  * [[lara:​tutorial:​languagespecification|Target Language Specification]] - how to define the target language specification (before moving to the LARA compiler).
 +  /* [[lara:​tutorial:​larai|Basic larai]] - use of a LARA interpreter to interpret and execute simple lara aspects. */
 +/*  * [[lara:​tutorial:​weavergenerator|Weaver Generator]] - how to create weavers and interface them with larai. */
 +/*  * [[lara:​tutorial:​tools|Use external tools in larai]] - how larai can be used to execute external tools. */
 +
 +/*
 +===== Weaving Tools =====
 +
 +==== MATISSE ====
 +  * [[matisse:​tutorial:​basics|Basic 101]] -basics of the MATISSE platform ​
 +  * [[matisse:​tutorial:​basics|The MatlabWeaver]] - the LARA weaver implementation used in MATISSE ​
 +
 +==== MANET ====
 +  * [[manet:​tutorial:​basics|Basic 101]] - basics of the MANET weaver ​
 +  * [[manet:​tutorial:​basics|Advanced MANET]] - advanced usages of MANET 
 +
 +==== Kadabra ====
 +  * [[kadabra:​tutorial:​basics|Basic 101]] - basics of the Kadabra weaver ​
 +  * [[kadabra:​tutorial:​basics|Advanced Kadabra]] - advanced usages of kadabra
 +
 +==== ReflectC ====
 +  * [[reflectc:​tutorial:​basics|Basic 101]] - basics of the ReflectC weaver ​
 +  * [[reflectc:​tutorial:​basics|Advanced ReflectC]] - advanced usages of ReflectC
 +*/
lara/tutorial.1427820575.txt.gz · Last modified: 2019/09/22 15:46 (external edit)