Premium
PySy: a Python package for enhanced concurrent programming
Author(s) -
Williamson Todd,
Olsson Ronald A.
Publication year - 2014
Publication title -
concurrency and computation: practice and experience
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.309
H-Index - 67
eISSN - 1532-0634
pISSN - 1532-0626
DOI - 10.1002/cpe.2981
Subject(s) - python (programming language) , computer science , programming language , scripting language , java , rapid prototyping , software engineering , mechanical engineering , engineering
SUMMARY Over the last decade, the popularity of Python has increased considerably. Python is widely used and has been demonstrated to be effective over many problem domains including scripting, prototyping, and simulation. Python's easy to use and concise syntax is highly expressive and allows a developer to create considerably shorter and easier to understand programs than semantically equivalent programs written in languages like C, C++, or Java. An important aspect of any language's flexibility is a highly parallelizable environment that allows its users to write concurrent programs. However, Python is still lacking a high‐level, expressive concurrent and distributed programming environment. This paper presents our experience creating PySy, a Python package (on the basis of the SR and JR concurrent programming languages), which provides an easy to use and expressive concurrent environment and allows for the distributed sharing of resources. This paper discusses our design decisions, describes our implementation, and shows qualitative and quantitative analyses of well‐known concurrent programs written in PySy. Overall, PySy is reasonable to use for expressing the more common programming scenarios, while it provides acceptable performance. Copyright © 2012 John Wiley & Sons, Ltd.