The talk will present a conceptual view of a new coordination language based on Kahn's Process Networks (KPN). KPN is a static graph whose edges are streams of messages and whose vertices are stream-processing (pure) functions. AstraKahn is a refinement of KPN, where the vertices are subdivided into two categories: stateless boxes, whose behaviour is defined in terms of response to a single input message, and synchronisers that are state machines that have the ability to combine different input messages and send them on to output streams.
AstraKahn offers a set of protocols that enable the vertices to cooperatively use a limited set of resources in such a way that individual vertices receive sufficient global information in order to regulate their own progress locally. The regulation includes both suspension under pressure and concurrent proliferation under high demand, and the information for regulatory decisions is gathered over the same streaming network that is used for communication. That is in sharp contrast with the idea of "tuning" found in most coordination/concurrent-computing solutions, where special annotations or design patterns are used to control concurrency.
AstraKahn has facilities for building regular infinite networks (always with a finite resource footprint), hence the word "astra" in the name. The language is a coordination language as it does not have facilities for box-writing, relying instead on boxes that are coded in a conventional programming language and which interact with AstraKahn via an API.
Prof. Alex Shafarenko, PhD (Novosibirsk, 1990), career 1991-2000 (University of Surrey, England), 2000-present time (U.Hertfordshire). His interests are concurrency, programming languages, computational physics, optical communications. 80+ publications. Leader of the Compiler Technology and Computer Architecture Group at UH. Senior Member of IEEE, member of IFIP 10.3.
This talk is organized by the Compilers and Languages Group at the Institute of Computer Languages.
Tea at the library of E185/1, Argentinierstr. 8, 4th floor (central) at 12:30.