BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Memento EPFL//
BEGIN:VEVENT
SUMMARY:EPFL - Novi Sad SCOPES Meeting
DTSTART:20160629T084500
DTEND:20160629T170000
DTSTAMP:20260925T075240Z
UID:ece824cdad60515f99d34b907c20577d24594d60a6cceece215238ab
CATEGORIES:Conferences - Seminars
DESCRIPTION:Program\n08:45 Welcome coffee and croissants served in front o
 f BC 420\n09:15 Viktor Kuncak: Introduction\n09:30 Nada Amin: LMS: Generat
 ive Programming in Scala\n10:30 Srdjan Škrbić: SCOPES project Research a
 nd Education Goals and Results\n11:00 Dragan Mašulović: Creating a bache
 lor CS course in English in Serbia\n11:30 Vladimir Crnojević: Presentatio
 n of the BioSense center\, Novi Sad\n12:00 Lunch (15 people)\n13:45 Heathe
 r Klug: Scala Center\n14:00 Sergi Mateo Bellido: Domain Specific Languages
  on HPC systems\n14:30 Denys Shabalin: Scala Native\n15:00 Marko Gaćeša 
 and Nikola Milinković: Drytools\n15:30 Coffee break\n16:00 Mikaël Mayer 
 and Thomas Dupriez: Modular synthesis of serializers from examples\n16:30 
 Ravichandhran Kandhadai Madhavan: Proving performance properties\n17:00 En
 d of the presentationsAbstracts of talksNada Amin: LMS: Generative Program
 ming in Scala\nLightweight Modular Staging (LMS) is a Scala library for ge
 nerative programming: the key idea is to write high-level generic programs
  that generate low-level specialized programs at runtime. The LMS framewor
 k provides a library of core components for building expressive embedded D
 SLs\, as well as high performance code generators and compilers. We will s
 ee several examples\, including a SQL to C compiler that performs advanced
  data layout optimizations and is written in less than 500 lines of code.\
 nAlong the way\, we will discuss concepts such as mixed-stage data structu
 res that contain both static and dynamic parts (e.g. static schema and dyn
 amic values for data records) and staged interpreters which can be mechani
 cally turned into compilers (e.g. for SQL queries or regular expressions).
  Finally\, we will touch upon ongoing work for verifying properties (e.g. 
 no memory nor overflow errors\, checked contracts) of the low-level genera
 ted code\, so that it is not only fast but also secure.Srdjan Skrbic: SCOP
 ES project Research and Education Goals and Results\nIn this talk I will g
 ive details about research activities foreseen within the SCOPES IZ74Z0_16
 0453 project\, as well as goals associated with building educational capac
 ities. Progress related to each activity will be presented and discussed.D
 ragan Mašulović : Creating a bachelor CS course in English in Serbia\nIn
  this talk we would like to discuss challenges of creating and implementin
 g an English CS course in a non-english speaking country such as Serbia. W
 e would appreciate feedback from our EPFL colleagues who have rich experie
 nce in implementing such courses on all levels of academic education.Vladi
 mir Crnojević : BioSense Institute - Data in Action\nResearch and Develop
 ment Institute for Information Technologies in Bio- systems\, also known a
 s the BioSense Institute\, has been founded to focus multidisciplinary\, g
 ame-changing and needs-driven research and disseminate it to a global ecos
 ystem of forward-looking stakeholders. Multidisciplinary research is perfo
 rmed in the fields of micro and nanoelectronics\, communications\, signal 
 processing\, remote sensing\, big data\, robotics and biosystems\, with a 
 common goal to cross-fertilize various bio-fields with ICT. BioSense promo
 tes data science in various traditional bio-systems by solving different p
 roblems\, difficult to comprehend with traditional knowledge – smart cho
 ice of seeds in agriculture\, clustering of gene sequences\, AIDS breakout
  modeling through mobile subscribers behavior etc. Putting the data in act
 ion to make the real benefit for biosystems- the real mission of BioSense 
 Institute.Sergi Mateo Bellido: Domain Specific Languages on HPC systems\nT
 he talk will present our experiences developing a framework to build Domai
 n Specific Languages for HPC platforms. This multi-layer framework is base
 d on LMS for embedding DSLs and OpenMP and MPI for running on parallel and
  distributed environments. Our framework has been successfully used to imp
 lement a DSL for solving problems that can be modeled as a set of Partial 
 Differential Equations (PDEs). This specific DSL will be used to describe 
 our software architecture and the different challenges and opportunities w
 e identified to effectively develop DSLs for HPC systems.Denys Shabalin: F
 rom Scala to native with Scala Native\nScala has historically been a JVM-c
 entric programming language. The situation has started to change with appe
 arance of the Scala.js that opened a door of front-end development to Scal
 a programmers. With Scala Native we're expanding the horizons of Scala app
 lications even further via ahead-of-time compilation to native code throug
 h LLVM. This talk is going to walk you through all the transformations tha
 t happen starting from the high-level Scala code and ending with the targe
 t machine code.Marko Gaćeša and Nikola Milinković: Application of DSLs 
 in modelling higher level abstractions of client/server systems\nProgrammi
 ng is still too slow and expensive\, mainly because a lot of code has to b
 e written\, integrated and tested even when the concepts and the solution 
 are clear. Applying domain specific modelling helps but the real challenge
  lies in finding an optimal balance of concepts that are common enough and
  high level enough to be specified in the DSL vs a GPL. We explore the pro
 blem on a concrete example of a DSL that describes cloud based client/serv
 er systems.Mikaël Mayer and Thomas Dupriez: Modular synthesis of serializ
 ers from examples\nPrinting\, or serializing a tree to an exportable strin
 g representation\, such as CSV\, XML\, HTML\, JSON\, is a task often invol
 ving several serialization functions calling each other\, possibly recursi
 vely. We present a novel way to interactively synthesize such printers thr
 ough input/output examples. To reduce the time the user takes to write exa
 mples\, after each example - and even before any example is entered - we p
 rovide the user coherent alternatives of rendering a new input if they exi
 st. The user may edit the output before choosing it. In addition\, we supp
 ort the synthesis of generic printers with abstract printers in their argu
 ments\, with the same interaction mode. It gives the freedom for the user 
 to synthesize printers bottom-up or top-down or in any other order. Our fr
 amework is totally integrated into the online vérifier and synthesizer Le
 on. The user has thus full control on the way examples are added and remov
 ed by editing them in the code.Ravichandhran Madhavan: Proving Performance
  Properties of Higher-order Functions with Memoization\nStatic estimation 
 of performance properties of programs is an important problem that has att
 racted great deal of research. However\, most existing tools automatically
  infer best-effort upper bounds\, and hope that they match users expectati
 ons. In this talk\, I will introduce a system “Orb” that supports veri
 fying symbolic user-specified bounds on resources such as evaluation steps
 \, and stack space\, akin to a verifier for correctness properties. Our ap
 proach is targeted at functional programs with first class functions that 
 may use lazy evaluation and/or memoization. In our approach\, users could 
 specify the desired resource bound as a template with numerical holes e.g.
  as  time <= ? ∗ size(l) + ? \, along with other functional properties 
 necessary for establishing the bounds. We developed an algorithm for verif
 ying the bounds by automatically inferring values for the holes\, while ac
 counting for the effects of memoization\, and lazy evaluation. In addition
 \, our approach can also disprove concrete bounds by finding counter-examp
 les. Using our tool Orb\, we verified asymptotically precise bounds of sev
 eral algorithms and data structures that rely on complex sharing of higher
 -order functions\, and memoization. The benchmarks include Okasaki’s rea
 l-time queues\, deques\, lazy data structures based on numerical represent
 ations such as lazy binomial heaps\, catenable queues\, cyclic streams\, a
 nd dynamic programming algorithms like weighted scheduling\, and packrat p
 arsing\, which have posed serious challenges to automatic as well as manua
 l reasoning.
LOCATION:BC 420 https://plan.epfl.ch/?room==BC%20420
STATUS:CONFIRMED
END:VEVENT
END:VCALENDAR
