137,927 Hits in 3.0 sec

Resource-Passing Concurrent Programming [chapter]

Kazunori Ueda
2001 Lecture Notes in Computer Science  
In this paper, we put our resource-consciousness one step forward and consider a class of 'ecological' programs which recycle or return all the resources given to them while allowing concurrent reading  ...  The execution of a recyclic program proceeds so that every variable has zero-sum capability and the resources (i.e., constructors weighted by their capabilities) a process absorbs match the resources it  ...  Acknowledgments Discussions with the members of the programming language research group at Waseda helped the development of the ideas described here.  ... 
doi:10.1007/3-540-45500-0_5 fatcat:ezgy6vbbr5dfvk3xtseqwc7dzy

Concurrent programming [chapter]

R. E. Bryant, J. B. Dennis
1982 Lecture Notes in Computer Science  
With message-passIng processes a resource can be directly accessed by only a single process.  ...  A system consisting of a small number of sequential, messa ge-passing processes can achieve only a limited amount of concurrency, as was seen in the air line reservation example Since a resource can be  ... 
doi:10.1007/3-540-11604-4_65 fatcat:gkeapl2hlzgw5alggfpuscwqpa


Aaron W. Keen, Tingjian Ge, Justin T. Maris, Ronald A. Olsson
2004 ACM Transactions on Programming Languages and Systems  
The notions of virtual machines, resources, and operations are central to SR's concurrency model.  ...  . [2] The SR Concurrent Programming Language and its Concurrency Model The SR concurrent programming language [5, 4] provides a variety of mechanisms for writing parallel and distributed programs.  ...  The rest of this section describes the concurrent programming features provided by the JR programming language.  ... 
doi:10.1145/982158.982162 fatcat:skp3gzfeezbxblxvlodwzt7uhe

The VerCors Tool for Verification of Concurrent Programs [chapter]

Stefan Blom, Marieke Huisman
2014 Lecture Notes in Computer Science  
The VerCors tool implements thread-modular static verification of concurrent programs, annotated with functional properties and heap access permissions.  ...  The tool verifies programs by first encoding the specified program into a much simpler programming language and then applying the Chalice verifier to the simplified program.  ...  The process of encoding programs consists of many simple passes. Obviously, this impacts performance, but it is good for reusability and checkability of the passes.  ... 
doi:10.1007/978-3-319-06410-9_9 fatcat:ojkwokatm5gzbcnamuaam3dnkm

Verification of Fine-grain Concurrent Programs

Tony Hoare
2008 Electronical Notes in Theoretical Computer Science  
These ideas are applied in combination to the design of a structured calculus of correctness for fine-grain concurrent programs; it includes the main features of a structured concurrent programming language  ...  To reduce these risks, we propose a theory of correctness for fine-grain concurrent programs.  ...  In the design of concurrent programs, it is almost essential to keep account of the ownership of the resources of the computer by the threads.  ... 
doi:10.1016/j.entcs.2008.04.010 fatcat:eossyaofmbbazkewxwqbqvp6fi

Concurrent Object-Oriented Programming: The MP-Eiffel Approach

Miguel Oliveira e Silva
2004 Journal of Object Technology  
CONCURRENT OBJECT-ORIENTED PROGRAMMING: THE MP-EIFFEL APPROACH MP-Eiffel aims to be a safe concurrent language, where unsynchronized accesses to shared resources are statically prevented (unlike, for example  ...  CONCURRENT PROGRAMMING In this section we will make a synthesis of the most important characteristics of a concurrent programming system (programming language and libraries).  ...  If a concurrent program is seen as the aggregation of communicating sequential programs (one for each processor) using shared resources, then the simplest solution will be the shared memory model.  ... 
doi:10.5381/jot.2004.3.4.a6 fatcat:upk5hbpkqbblpcx52qy5a7ibba

Concepts and Notations for Concurrent Programming

Gregory R. Andrews, Fred B. Schneider
1983 ACM Computing Surveys  
writing concurrent programs.  ...  Much has been learned in the last decade about concurrent programming..This patmr identifies the major concepts of concurrent programming and describes some of the more importam language notations for  ...  Concepts and Notations for Coneurrent:'Programrning Programming Notations Based on Message Passing A large number of concurrent programming languages have been proposed that use message passing for communication  ... 
doi:10.1145/356901.356903 fatcat:u5mjeuve7jbyfivbbtkdnb5h44

Algebra, Logic, Locality, Concurrency [chapter]

Peter W. O'Hearn
2011 Lecture Notes in Computer Science  
others -on models and logics for concurrent processes [10, 6, 5] . The approach we are taking abstracts from syntax or particular models.  ...  So, one gets a generic program logic from the algebra, which holds for a range of concrete models.  ...  the semantics of programs that express locality of resource access (properties which incidentally are independent of the syntax of the logic) [12, 3] .  ... 
doi:10.1007/978-3-642-25379-9_2 fatcat:5t7wapdh6jhgzcskoplmzuc7me

FOSS-Based Grid Computing [article]

A. Mani
2015 arXiv   pre-print
with threads and message passing. ➢ Alice -extension to Standard ML (supports concurrency through futures).➢ ChucK -domain specific programming language for audio ➢ Cilk -a concurrent C developed by the  ...  Java -concurrent language based on the Java programming language ➢ Joule -data flow language that communicates by message passing ➢ Limbo -relative of Alef, used for systems programming in Inferno (OS  ... 
arXiv:cs/0608122v4 fatcat:3r2ahqfo7na5tiiysgxsw77hva

Extended Abstract: Productive Parallel Programming with Parsl [article]

Kyle Chard, Yadu Babuji, Anna Woodard, Ben Clifford, Zhuozhao Li, Mihael Hategan, Ian Foster, Mike Wilde, Daniel S. Katz
2022 arXiv   pre-print
Parsl's runtime system enables different compute resources to be used, from laptops to supercomputers, without modification to the Parsl program.  ...  Parsl relies on developers annotating Python functions-wrapping either Python or external applications-to indicate that these functions may be executed concurrently.  ...  When the program executes, Parsl manages the execution of function invocations on various computing resources, from laptops to supercomputers.  ... 
arXiv:2205.01527v1 fatcat:bli2ixefkrfabfpwzcmteyn3sa

Some resources for teaching concurrency

Ganesh Gopalakrishnan, Michael DeLisi, Simone Atzeni, Yu Yang, Sarvani Vakkalanka, Anh Vo, Sriram Aananthakrishnan, Grzegorz Szubzda, Geof Sawaya, Jason Williams, Subodh Sharma
2009 Proceedings of the 7th Workshop on Parallel and Distributed Systems Testing, Analysis, and Debugging - PADTAD '09  
We examine background papers, the teaching of low level concurrency, and the teaching of threading and message passing.  ...  Our observation is that the teaching of concurrency is greatly facilitated by the use of dynamic push-button formal verification tools that can handle non-trivial concurrent programs.  ...  When finished, this exercise may offer a unique teaching resource for message passing. Section 6 has our concluding remarks.  ... 
doi:10.1145/1639622.1639624 dblp:conf/issta/GopalakrishnanYVVASSWSDA09 fatcat:ajrmptwimze45errm5yyeap3dq

SACO: Static Analyzer for Concurrent Objects [chapter]

Elvira Albert, Puri Arenas, Antonio Flores-Montoya, Samir Genaim, Miguel Gómez-Zamalloa, Enrique Martin-Martin, German Puebla, Guillermo Román-Díez
2014 Lecture Notes in Computer Science  
Interestingly, SACO is able to infer both liveness (namely termination and resource boundedness) and safety properties (namely deadlock freedom) of programs based on concurrent objects.  ...  We present the main concepts, usage and implementation of SACO, a static analyzer for concurrent objects.  ...  Concurrent programs contain several processes that work together to perform a task and communicate with each other. Communication can be programmed using shared variables or message passing.  ... 
doi:10.1007/978-3-642-54862-8_46 fatcat:cnvgwwkkjrgs3ffqa7qwqnwcgy

An overview of the SR language and implementation

Gregory R. Andrews, Michael Coffin, Irving Elshoff, Kelvin Nilson, Gregg Townsend, Ronald A. Olsson, Titus Purdin
1988 ACM Transactions on Programming Languages and Systems  
SR is a language for programming distributed systems ranging from operating systems to application programs.  ...  Consequently, all of local and remote procedure call, rendezvous, dynamic process creation, asynchronous message passing, multicast, and semaphores are supported.  ...  By way of contrast, Ada [l] provides distinct mechanisms for sequential and concurrent programming.  ... 
doi:10.1145/42192.42324 fatcat:4l3melmfkfdo3pqkckgwqirkxe

Teaching How to Derive Correct Concurrent Programs from State-Based Specifications and Code Patterns [chapter]

Manuel Carro, Julio Mariño, Ángel Herranz, Juan José Moreno-Navarro
2004 Lecture Notes in Computer Science  
The fun of teaching and learning concurrent programming is sometimes darkened by the difficulty in getting concurrent programs to work right.  ...  In line with other programming subjects in our department, we advocate the use of formal specifications to state clearly how a concurrent program must behave, to reason about this behavior, and to be able  ...  Section 4 (resp. 5) deals with the derivation of correct concurrent programs for the shared-memory (resp. message-passing) setting, starting from a shared resource specification.  ... 
doi:10.1007/978-3-540-30472-2_6 fatcat:xtbvikpjtzchbdjvjcqr7mmhvi

Resources, Concurrency, and Local Reasoning [chapter]

Peter W. O'Hearn
2004 Lecture Notes in Computer Science  
There is thus a mismatch, between the intuitive basis of concurrent programming with resources, where separation remains a vital design idea, and formal techniques for reasoning about such programs, where  ...  The major problem with Hoare and Brinch Hansen's proposal is that its scope-based approach to resource separation is too restrictive for many realistic programs.  ...  There is thus a mismatch, between the intuitive basis of concurrent programming with resources, where separation remains a vital design idea, and formal techniques for reasoning about such programs, where  ... 
doi:10.1007/978-3-540-24725-8_1 fatcat:dxr6juaumvfkdbdrbluhkp7xgm
« Previous Showing results 1 — 15 out of 137,927 results