2018
DOI: 10.1145/3276499
|View full text |Cite
|
Sign up to set email alerts
|

Distributed system development with ScalaLoci

Abstract: Distributed applications are traditionally developed as separate modules, often in different languages, which react to events, like user input, and in turn produce new events for the other modules. Separation into components requires time-consuming integration. Manual implementation of communication forces programmers to deal with low-level details. The combination of the two results in obscure distributed data flows scattered among multiple modules, hindering reasoning about the system as a whole. The ScalaLo… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
48
0

Year Published

2018
2018
2024
2024

Publication Types

Select...
5
3

Relationship

2
6

Authors

Journals

citations
Cited by 37 publications
(49 citation statements)
references
References 64 publications
(29 reference statements)
0
48
0
Order By: Relevance
“…Fault-tolerant Distributed RP introduces error propagation and crash recovery for reactives and executes updates glitch-free by mutual exclusion on each host, but supports distribution only through conflict-free replicated data types with eventual consistency and therefore supports some concurrency in the global propagation, but only with eventual consistency instead of glitch freedom. (F)RP has been also studied in combination with multitier programming for distributed applications in ScalaLoci [Weisenburger et al 2018] and tailored towards web applications [Reynders et al 2014]; these works allow reactives of arbitrary types to be sent to different hosts, but focus on the language design benefits and synergies of multitier and reactive programming instead of solving consistent distributed propagation, and therefore also only execute updates glitch-free by mutual exclusion per host, but do not provide glitch freedom across the whole application.…”
Section: Discussionmentioning
confidence: 99%
“…Fault-tolerant Distributed RP introduces error propagation and crash recovery for reactives and executes updates glitch-free by mutual exclusion on each host, but supports distribution only through conflict-free replicated data types with eventual consistency and therefore supports some concurrency in the global propagation, but only with eventual consistency instead of glitch freedom. (F)RP has been also studied in combination with multitier programming for distributed applications in ScalaLoci [Weisenburger et al 2018] and tailored towards web applications [Reynders et al 2014]; these works allow reactives of arbitrary types to be sent to different hosts, but focus on the language design benefits and synergies of multitier and reactive programming instead of solving consistent distributed propagation, and therefore also only execute updates glitch-free by mutual exclusion per host, but do not provide glitch freedom across the whole application.…”
Section: Discussionmentioning
confidence: 99%
“…In a web settings, for example if input validation is done on the server, then these semantics require that input from the client is transmitted to the server, validated and transmitted back, all in the same propagation, so that the client and server both block until everything is finished. To combat these issues, projects such as DREAM [16] and ScalaLoci [35] make these algorithms pluggable, but none have tiered glitch freedom as an option.…”
Section: Total Glitch Freedommentioning
confidence: 99%
“…Regarding multi-tier languages, we look at languages that are based on existing languages such as Eliom [23] (OCaml), ScalaLoci [35] (Scala), Hop [29,31] (Scheme), HopJS [30,33] (JavaScript) and Flask [15] (Haskell) as well as languages that are built from scratch such as Ur/Web [6,5] and AmbientTalk/R [4].…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…Having defined the components and their architectural relation using peer types, developers can place values on the different peers through placement types [60]. The 17:5 placement type T on P 2 represents a value of type T on a peer P. Placed values are initialized by placed { e } expressions.…”
Section: Scalaloci In Nucementioning
confidence: 99%