Software transactional memories for Scala

Saved in:
Bibliographic Details
Title: Software transactional memories for Scala
Authors: Goodman, Daniel Daniel.Goodman@cs.man.ac.uk, Khan, Behram, Khan, Salman, Luján, Mikel, Watson, Ian
Source: Journal of Parallel & Distributed Computing. Feb2013, Vol. 73 Issue 2, p150-163. 14p.
Subjects: Scala (Computer program language), Computer software, Computer storage devices, Surveys, University of Manchester, Coding theory
Abstract: Abstract: Transactional memory is an alternative to locks for handling concurrency in multi-threaded environments. Instead of providing critical regions that only one thread can enter at a time, transactional memory records sufficient information to detect and correct for conflicts if they occur. This paper surveys the range of options for implementing software transactional memory in Scala. Where possible, we provide references to implementations that instantiate each technique. As part of this survey, we document for the first time several techniques developed in the implementation of Manchester University Transactions for Scala. We order the implementation techniques on a scale moving from the least to the most invasive in terms of modifications to the compilation and runtime environment. This shows that, while the less invasive options are easier to implement and more common, they are more verbose and invasive in the codes using them, often requiring changes to the syntax and program structure throughout the code. [Copyright &y& Elsevier]
Copyright of Journal of Parallel & Distributed Computing is the property of Academic Press Inc. and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
Database: Engineering Source
FullText Text:
  Availability: 0
Header DbId: egs
DbLabel: Engineering Source
An: 84361953
AccessLevel: 6
PubType: Academic Journal
PubTypeId: academicJournal
PreciseRelevancyScore: 0
IllustrationInfo
Items – Name: Title
  Label: Title
  Group: Ti
  Data: Software transactional memories for Scala
– Name: Author
  Label: Authors
  Group: Au
  Data: <searchLink fieldCode="AR" term="%22Goodman%2C+Daniel%22">Goodman, Daniel</searchLink><i> Daniel.Goodman@cs.man.ac.uk</i><br /><searchLink fieldCode="AR" term="%22Khan%2C+Behram%22">Khan, Behram</searchLink><br /><searchLink fieldCode="AR" term="%22Khan%2C+Salman%22">Khan, Salman</searchLink><br /><searchLink fieldCode="AR" term="%22Luján%2C+Mikel%22">Luján, Mikel</searchLink><br /><searchLink fieldCode="AR" term="%22Watson%2C+Ian%22">Watson, Ian</searchLink>
– Name: TitleSource
  Label: Source
  Group: Src
  Data: <searchLink fieldCode="JN" term="%22Journal+of+Parallel+%26+Distributed+Computing%22">Journal of Parallel & Distributed Computing</searchLink>. Feb2013, Vol. 73 Issue 2, p150-163. 14p.
– Name: Subject
  Label: Subjects
  Group: Su
  Data: <searchLink fieldCode="DE" term="%22Scala+%28Computer+program+language%29%22">Scala (Computer program language)</searchLink><br /><searchLink fieldCode="DE" term="%22Computer+software%22">Computer software</searchLink><br /><searchLink fieldCode="DE" term="%22Computer+storage+devices%22">Computer storage devices</searchLink><br /><searchLink fieldCode="DE" term="%22Surveys%22">Surveys</searchLink><br /><searchLink fieldCode="DE" term="%22University+of+Manchester%22">University of Manchester</searchLink><br /><searchLink fieldCode="DE" term="%22Coding+theory%22">Coding theory</searchLink>
– Name: Abstract
  Label: Abstract
  Group: Ab
  Data: Abstract: Transactional memory is an alternative to locks for handling concurrency in multi-threaded environments. Instead of providing critical regions that only one thread can enter at a time, transactional memory records sufficient information to detect and correct for conflicts if they occur. This paper surveys the range of options for implementing software transactional memory in Scala. Where possible, we provide references to implementations that instantiate each technique. As part of this survey, we document for the first time several techniques developed in the implementation of Manchester University Transactions for Scala. We order the implementation techniques on a scale moving from the least to the most invasive in terms of modifications to the compilation and runtime environment. This shows that, while the less invasive options are easier to implement and more common, they are more verbose and invasive in the codes using them, often requiring changes to the syntax and program structure throughout the code. [Copyright &y& Elsevier]
– Name: AbstractSuppliedCopyright
  Label:
  Group: Ab
  Data: <i>Copyright of Journal of Parallel & Distributed Computing is the property of Academic Press Inc. and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract.</i> (Copyright applies to all Abstracts.)
PLink https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=egs&AN=84361953
RecordInfo BibRecord:
  BibEntity:
    Identifiers:
      – Type: doi
        Value: 10.1016/j.jpdc.2012.09.015
    Languages:
      – Code: eng
        Text: English
    PhysicalDescription:
      Pagination:
        PageCount: 14
        StartPage: 150
    Subjects:
      – SubjectFull: Scala (Computer program language)
        Type: general
      – SubjectFull: Computer software
        Type: general
      – SubjectFull: Computer storage devices
        Type: general
      – SubjectFull: Surveys
        Type: general
      – SubjectFull: University of Manchester
        Type: general
      – SubjectFull: Coding theory
        Type: general
    Titles:
      – TitleFull: Software transactional memories for Scala
        Type: main
  BibRelationships:
    HasContributorRelationships:
      – PersonEntity:
          Name:
            NameFull: Goodman, Daniel
      – PersonEntity:
          Name:
            NameFull: Khan, Behram
      – PersonEntity:
          Name:
            NameFull: Khan, Salman
      – PersonEntity:
          Name:
            NameFull: Luján, Mikel
      – PersonEntity:
          Name:
            NameFull: Watson, Ian
    IsPartOfRelationships:
      – BibEntity:
          Dates:
            – D: 01
              M: 02
              Text: Feb2013
              Type: published
              Y: 2013
          Identifiers:
            – Type: issn-print
              Value: 07437315
          Numbering:
            – Type: volume
              Value: 73
            – Type: issue
              Value: 2
          Titles:
            – TitleFull: Journal of Parallel & Distributed Computing
              Type: main
ResultId 1