• 学术搜索
  • 科研智能体
    • Research Labs
    • AI 阅读
    • AI 文库
    • 深度研究
    • 学者亮点
  • 学术资源
    • AI2000
    • 期刊/会议
    • 学者库
    • 学术API
      MCP&Skill
    • 溯源树
    • 数据集
  • 知识沉淀
    • 学术空间
订阅小程序
旧版功能
aminer vip
开通会员低至0.73元/天
一次搞定AI科研
立即登录
  • English
  • 联系方式
    Programming based on Actors, Agents, and Decentralized Control

    Programming based on Actors, Agents, and Decentralized Control

    Conference

    年发文量

    研究主题

    论文(127)

    排序
    1Contract-based Return-Value Commutativity: Safely Exploiting Contract-Based Commutativity for Faster Serializable Transactions
    Tim Soethout,Tijs van der Storm,Jurgen J. Vinju

    A key challenge of designing distributed software systems is maintaining data consistency. We can define data consistency and data isolation guarantees --e.g. serializability-- in terms of schedules of atomic reads and writes, but this excludes schedules that would be semantically consistent. Others use manually provided information on "non-conflicting operations" to define guarantees that work for more applications allowing more parallel schedules. To be safe, an engineer might avoid marking operations as non-conflicting, with detrimental effects to efficiency. To be fast, they might mark more non-conflicting operations than is strictly safe. Our goal is to help engineers by automatically deriving commutative operations (using their respective contracts) such that more parallel schedules with global consistency are possible. We define a new general consistency and isolation guarantee named "Return-Value Serializability" to check consistency claims automatically, and we present distributed event processing algorithms that make use of the same "Contract-based Commutativity" information. We validated both the definitions and the algorithms using model-checking with TLA+. Previous work provided evidence that local coordination avoidance such as applied here has a significant positive effect on the performance of distributed transaction systems. Client-centric return-value commutativity promises to hit a sweet spot in design trade-offs for business applications, such as payment systems, that must scale-out while their operations are not embarrassingly parallel and consistency guarantees are of the highest priority. It can also provide design feedback, indicating that some operations will simply not scale together even before a line of code has been written.

    2021引用:1
    引用
    AI阅读
    加入学术空间
    2Session Types in Elixir
    Gerard Tabone,Adrian Francalanza

    This paper proposes an adaptation of session types to provide behavioural information about public functions in Elixir modules. We formalise typechecking rules for the main constructs of the language. This allows us to statically determine whether a function implementation observes its session endpoint specification. Based on this type system, we then construct a tool that automates typechecking for Elixir modules.

    2021引用:6
    引用
    AI阅读
    加入学术空间
    3What’s the Problem? Interrogating Actors to Identify the Root Cause of Concurrency Bugs
    Carmen Torres Lopez,Louise Van Verre,Elisa Gonzalez Boix

    Programs written using Communicating Event-Loops (CEL) concurrency model do not suffer from low-level data races by design but are not exempt from other concurrency bugs, such as behavioral deadlocks and message order violations. When programmers need to find the root cause of a bug, they typically ask questions about the application's behavior. However, current debugging tools are mostly operational, offering features at the source code level like breakpoints and watchpoints. Consequently, understanding the program behavior when debugging can take a lot of time for developers since questions on behaviors need to be mapped into operations in the debugger. Inspired by interrogative debugging, this paper proposes an interactive debugging approach for actor-based programs that enable developers to reason about the program output by selecting questions from a set of predefined questions about the code and the program's execution. We present the design of the questions and answers, and we describe a prototype implementation in Apgar, an online debugger for actor-based programs written in SOMns. We define questions based on key concepts of the actor model: actors, turns, messages, and promises. The debugger then computes the answers by analyzing a recorded trace of events about the program execution.

    2021
    引用
    AI阅读
    加入学术空间
    4High-throughput Stream Processing with Actors
    Luca Rinaldi,Massimo Torquati,Gabriele Mencagli,Marco Danelutto

    The steady growth of data volume produced as continuous streams makes paramount the development of software capable of providing timely results to the users. The Actor Model (AM) offers a high-level of abstraction suited for developing scalable message-passing applications. It allows the application developer to focus on the application logic moving the burden of implementing fast and reliable inter-Actors message-exchange to the implementation framework. In this paper, we focus on evaluating the model in high data rate streaming applications targeting scale-up servers. Our approach leverages Parallel Patterns (PP) abstractions to model streaming computations and introduces optimizations that otherwise could be challenging to implement without violating the Actor Model's semantics. The experimental analysis demonstrates that the new implementation skeletons we propose for our PPs can bring significant performance boosts (more than 2X) in high data rate streaming applications implemented in CAF.

    2020引用:1
    引用
    AI阅读
    加入学术空间
    5Run, Agent, Run! Architecture and Benchmarking of Actor-Based Agents
    Mostafa Mohajeri Parizi,Giovanni Sileno,Tom van Engers,Sander Klous

    The paper introduces an Agent-Oriented Programming (AOP) framework based on the Belief-Desire-Intention (BDI) model of agency. The novelty of this framework is in relying on the Actor model, instantiating each intentional agent as an autonomous micro-system run by actors. The working hypothesis behind this choice is that defining the agents via actors results in a more fine-grained modular architecture and that the execution of agent-oriented programs is enhanced (in scalability as well as in performance) by relying on robust implementations of Actor models such as Akka. The framework is benchmarked and analyzed quantitatively and qualitatively against three other AOP frameworks: Jason, ASTRA and Sarl.

    2020引用:8
    引用
    AI阅读
    加入学术空间
    立即登录,查看全部 127 篇论文

    高被引作者

    作者引用发文
    Sophia Drossopoulou1313
    Sebastian Blessing1313
    Sylvan Clebsch1222
    Andy McNeil1121
    Axel Hummel1041
    Stefan Kühne1041
    Heiko Kern1041
    Shams Mahmood Imam952
    Joeri De Koster885
    Tom Van Cutsem864

    高产作者

    作者引用发文
    Alessandro Ricci579
    Andrea Santi606
    Wolfgang De Meuter766
    Thomas C. Schmidt806
    Stefan Marr476
    Dominik Charousset806
    Ehsan Khamespanah625
    Joeri De Koster885
    Marjan Sirjani625
    Raphael Hiesgen495

    相关期刊

    Dagstuhl Artifacts Series
    Abstract State Machines, Alloy, B, TLA, VDM, and Z
    European Conference on Object-Oriented Programming
    ACM-SIGACT Symposium on Principles of Programming Languages
    Verified Software: Theories, Tools, Experiments
    International Federated Conference on Distributed Computing Techniques
    Erlang Workshop
    Formal Aspects of Component Software
    Implementation and Application of Functional Languages
    International Symposium on Haskell