{{Short description|Family of programming languages}} '''Actor-Based Concurrent Language''' ('''ABCL''') is a family of [[programming language]]s, developed in [[Japan]] in the 1980s and 1990s.

==ABCL/1== ''ABCL/1'' (Actor-Based Concurrent Language) is a [[prototype-based programming|prototype-based]] [[concurrent programming language]] for the '''ABCL MIMD''' system, created in 1986 by [[Akinori Yonezawa]], of the ''Department of Information Science'' at the [[University of Tokyo]].

ABCL/1 uses asynchronous [[message passing]] among [[object (programming)|objects]] to achieve concurrency. It requires [[Common Lisp]]. Implementations in [[Kyoto Common Lisp]] (KCL) and [[Symbolics]] Lisp are available from the author.

===ABCL/c+=== An implementation of ABCL/c+ is available from the ACM.<ref>[https://dl.acm.org/doi/10.5555/646148.679055 An Implementation of an Operating System Kernel Using Concurrent Object-Oriented Language ABCL/c+]</ref>

===ABCL/R=== ''ABCL/R'' is an [[Object-oriented programming|object-oriented]] [[reflection (computer science)|reflective]] subset of ABCL/1, written by Professor Akinori Yonezawa of [[Tokyo Institute of Technology]] in 1988.

====ABCL/R2==== ''ABCL/R2'' is a second generation version of ABCL/R, designed for the Hybrid Group Architecture. It was produced at the Tokyo Institute of Technology in 1992, and has almost all the functionality of ABCL/1. It is written in [[Common Lisp]]. As a reflective language, its programs can dynamically control their behavior, including scheduling policy, from within a user-process context.

==Further reading== *''ABCL: An Object-Oriented Concurrent System'', A. Yonezawa ed, MIT Press 1990 *''Reflection in an Object-Oriented Concurrent Language'', T. Watanabe et al., SIGPLAN Notices 23(11):306-315 (Nov 1988) *''An Implementation of An Operating System Kernel using Concurrent Object Oriented Language ABCL/c+'', N. Doi et al. in ECOOP '88, S. Gjessing et al. eds, LNCS 322, Springer 1988

==References== {{reflist}}

==External links== * {{official website|http://web.yl.is.s.u-tokyo.ac.jp/pl/abcl.html}}

[[Category:Prototype-based programming languages]] [[Category:Concurrent programming languages]] [[Category:Common Lisp (programming language) software]]