Filters








334 Hits in 1.3 sec

Lightweight Session Programming in Scala (Artifact) [article]

Alceste Scalas, Nobuko Yoshida, Tijs Van, Matthew Flatt
2016 Dagstuhl Artifacts Series (DARTS)  
In the paper "Lightweight Session Programming in Scala", we introduce a "lightweight" integration of session types in the Scala programming language, based on (1) a formal type-level encoding, and (2)  ...  a library implementation of linear I/O channels, called lchannels, providing a convenient API for session-based programming, and supporting both local and distributed communication.  ...  building lchannels, running the examples and benchmarks, and navigate their source code; 3. a VirtualBox disk image containing a lightweight GNU/Linux distribution fully configured for testing our artifact  ... 
doi:10.4230/darts.2.1.11 dblp:journals/darts/ScalasY16 fatcat:awrnesfcgrefdmcvgz4cz2e7qi

Lightweight Session Programming in Scala *

Alceste Scalas, Nobuko Yoshida
unpublished
To address this problem, we propose lightweight session programming in Scala: we leverage the native features of the Scala type system and standard library, to introduce (1) a representation of session  ...  We illustrate how session programming can be carried over in Scala: how to formalise a communication protocol, and represent it using Scala classes and lchannels, letting the compiler help spotting protocol  ...  Lightweight Session Programming in Scala The CPSP classes extracted from the session types above are shown on the right.  ... 
fatcat:ess3padlkbekriss6ad2eiv32m

Type classes as objects and implicits

Bruno C.d.S. Oliveira, Adriaan Moors, Martin Odersky
2010 Proceedings of the ACM international conference on Object oriented programming systems languages and applications - OOPSLA '10  
Type classes have been shown to provide a type-safe solution to important challenges in software engineering and programming languages such as, for example, retroactive extension of programs.  ...  This paper presents a lightweight approach to type classes in object-oriented (OO) languages with generics using the CONCEPT pattern and implicits (a type-directed implicit parameter passing mechanism)  ...  Bruno Oliveira was supported by the Engineering Research Center of Excellence Program of Korea Ministry of Education, Science and Technology (MEST) / Korea Science and Engineering Foundation (KOSEF) grant  ... 
doi:10.1145/1869459.1869489 dblp:conf/oopsla/OliveiraMO10 fatcat:y6l4qmcj6fddleuqq6za5eytca

Type classes as objects and implicits

Bruno C.d.S. Oliveira, Adriaan Moors, Martin Odersky
2010 SIGPLAN notices  
Type classes have been shown to provide a type-safe solution to important challenges in software engineering and programming languages such as, for example, retroactive extension of programs.  ...  This paper presents a lightweight approach to type classes in object-oriented (OO) languages with generics using the CONCEPT pattern and implicits (a type-directed implicit parameter passing mechanism)  ...  Bruno Oliveira was supported by the Engineering Research Center of Excellence Program of Korea Ministry of Education, Science and Technology (MEST) / Korea Science and Engineering Foundation (KOSEF) grant  ... 
doi:10.1145/1932682.1869489 fatcat:xl2jguqnljfivo3pdou5rfv75i

Effpi

Alceste Scalas, Nobuko Yoshida, Elias Benussi
2019 Proceedings of the Tenth ACM SIGPLAN Symposium on Scala - Scala '19  
We present Effpi: an experimental toolkit for strongly-typed concurrent and distributed programming in Dotty, with verification capabilities based on type-level model checking.  ...  Effpi addresses a main challenge in creating and maintaining concurrent programs: errors like protocol violations, deadlocks, and livelocks are often spotted late, at run-time, when applications are tested  ...  Works [27] [28] [29] [30] implement session types in Scala. Effpi's types and session types are related, but have different design and capabilities (cf.  ... 
doi:10.1145/3337932.3338812 dblp:conf/scala/ScalasYB19 fatcat:cu75zdq7ufdcxksnxgawcoprke

Massively concurrent agent-based evolutionary computing

D. Krzywicki, W. Turek, A. Byrski, M. Kisiel-Dorohinicki
2015 Journal of Computational Science  
An efficient implementation of this algorithm was possible through the use of modern technologies based on functional languages (namely Erlang and Scala), which natively support lightweight processes and  ...  However, technological limitations prevented the use of fully asynchronous agents in previous EMAS implementations. In this paper we present a new algorithm for agent-based evolutionary computations.  ...  The research presented in the paper was conducted using PL-Grid Infrastructure (http://www.plgrid.pl/en).  ... 
doi:10.1016/j.jocs.2015.07.003 fatcat:4sz5qkyfnzbutgxjh6luy2nrwa

Comparative Studies of 10 Programming Languages within 10 Diverse Criteria -- a Team 7 COMP6411-S10 Term Report [article]

Sleiman Rabah, Jiang Li, Mingzhi Liu, Yuanwei Lai
2010 arXiv   pre-print
There are many programming languages in the world today.Each language has their advantage and disavantage.  ...  In this paper, we will discuss ten programming languages: C++, C#, Java, Groovy, JavaScript, PHP, Schalar, Scheme, Haskell and AspectJ.  ...  Yes, Snap have build-in session management.  ... 
arXiv:1009.0305v1 fatcat:lcelqyy3ybb6jakrekezv22ajm

Formal Techniques for Java-Like Programs (FTfJP) [chapter]

Alessandro Coglio, Marieke Huisman, Joseph R. Kiniry, Peter Müller, Erik Poll
2005 Lecture Notes in Computer Science  
This report gives an overview of the sixth Workshop on Formal Techniques for Java-like Programs at ECOOP 2004.  ...  work presented in the first session.  ...  This session on ownership type systems was effectively continued the next morning at the main ECOOP conference, where the papers presented in the first session after the invited talk were also about notions  ... 
doi:10.1007/978-3-540-30554-5_8 fatcat:6gvl2ijsdzg55o2ehousppesqu

Fluent Session Programming in C#

Shunsuke Kimura, Keigo Imai
2020 Electronic Proceedings in Theoretical Computer Science  
We propose SessionC#, a lightweight session typed library for safe concurrent/distributed programming.  ...  /await, which materialises session cancellation in a limited form, which we call session intervention.  ...  , resulting in a concise multiparty session programming environment.  ... 
doi:10.4204/eptcs.314.6 fatcat:hybulxzjmbahtlewtvh6fpydjy

Mo|E A Communication Service Between Modelica Compilers and Text Editors

Nicola Justus, Christopher Schölzel, Andreas Dominik, Thomas Letschert
2017 Proceedings of the 12th International Modelica Conference, Prague, Czech Republic, May 15-17, 2017  
In addition, Modelicaspecific checking of the number of equations in a model is supported.  ...  Based on the simple HTTP communication protocol, editor plugins for a software developer's favourite text editor can be developed easily, hence turning any editor into a lightweight Modelica development  ...  Technologies Scala and Akka Scala (EPFL, 2016) is a hybrid programming language that combines object orientation with functional programming.  ... 
doi:10.3384/ecp17132815 dblp:conf/modelica/JustusSDL17 fatcat:idqvfqmfvrar3lkdcu76wyyjae

A Scala library for testing student assignments on concurrent programming

Mikaël Mayer, Ravichandhran Madhavan
2016 Proceedings of the 2016 7th ACM SIGPLAN Symposium on Scala - SCALA 2016  
We present a lightweight library for testing concurrent Scala programs by systematically exploring multiple interleavings between user-specified operations on shared objects.  ...  Our library is targeted at beginners of concurrent programming in Scala, runs on a standard JVM, and supports conventional synchronization primitives such as wait, notify, and synchronized.  ...  This work is partly supported by the Swiss National Science Foundation grant: Constraint Solving Infrastructure for Program Analysis.  ... 
doi:10.1145/2998392.2998395 dblp:conf/scala/MayerM16 fatcat:y3ahwc6gsnhltm4whph74s73sm

Mashup of metalanguages and its implementation in the Kermeta language workbench

Jean-Marc Jézéquel, Benoit Combemale, Olivier Barais, Martin Monperrus, François Fouquet
2013 Journal of Software and Systems Modeling  
With the growing use of domain-specific languages (DSL) in industry, DSL design and implementation goes far beyond an activity for a few experts only and becomes a challenging task for thousands of software  ...  In particular, the composition are described both formally and with respect to language operators of the Scala programming language.  ...  Figure 1 . 1 Activity of the members of our team during our work sessions.  ... 
doi:10.1007/s10270-013-0354-4 fatcat:73jjhfz4nbfebjltzmynxo75z4

Front Matter, Table of Contents, Preface, Conference Organization

Robert Hirschfeld, Tobias Pape
2020 European Conference on Object-Oriented Programming  
Other conferences and several of ECOOP's satellite events like the Scala Symposium followed, such that SPLASH this year is a true multi-conference on programming and related communities.  ...  This year's ECOOP features a doctoral symposium and a poster session, which are jointly organized with SPLASH, as well as tutorials.  ... 
doi:10.4230/lipics.ecoop.2020.0 dblp:conf/ecoop/X19a fatcat:amf4qxktj5bwla224edl24to7a

A stratified view of programming language parallelism for undergraduate CS education

Richard A. Brown, Joel C. Adams, David P. Bunde, Jens Mache, Elizabeth Shoop
2012 Proceedings of the 43rd ACM technical symposium on Computer Science Education - SIGCSE '12  
It is no longer news that undergraduates in computer science need to learn more about parallelism.  ...  Many are created by extending a base language with mechanisms for lightweight task creation; Charm++ and Cilk extend C++, Habanero Java extends Java, and Scala is a Java-like but functionally-flavored  ...  Statement: One way to introduce concurrency is through "lowlevel" multi-threaded programming (in C/C++, Java, or Python).  ... 
doi:10.1145/2157136.2157162 dblp:conf/sigcse/BrownABMS12 fatcat:4ufurnvpp5dyxg7m4cfcc57wwm

Multi-Tier Functional Reactive Programming for the Web

Bob Reynders, Dominique Devriese, Frank Piessens
2014 Proceedings of the 2014 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming & Software - Onward! '14  
To make our approach more concrete and provide evidence of its potential, this paper presents a concrete design and implementation of a multi-tier FRP API for the web in the programming language Scala,  ...  In multi-tier FRP, the developer programs server and client together as an FRP application composed of behaviors (signals) and events.  ...  For modeling JavaScript parts of the application, our Scala API and implementation make use of the JS-Scala library by Kossakowski et al. (2012) , based on the Scala Lightweight Modular Staging (LMS)  ... 
doi:10.1145/2661136.2661140 dblp:conf/oopsla/ReyndersDP14 fatcat:qeolwqnkvzhajbua7ujys66rsa
« Previous Showing results 1 — 15 out of 334 results