[Bug 1795079] New: Review Request: golang-github-anacrolix-stm - Software Transactional Memory in Go

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



https://bugzilla.redhat.com/show_bug.cgi?id=1795079

            Bug ID: 1795079
           Summary: Review Request: golang-github-anacrolix-stm - Software
                    Transactional Memory in Go
           Product: Fedora
           Version: rawhide
            Status: NEW
         Component: Package Review
          Assignee: nobody@xxxxxxxxxxxxxxxxx
          Reporter: zebob.m@xxxxxxxxx
        QA Contact: extras-qa@xxxxxxxxxxxxxxxxx
                CC: package-review@xxxxxxxxxxxxxxxxxxxxxxx
  Target Milestone: ---
    Classification: Fedora



Spec URL:
https://eclipseo.fedorapeople.org/for-review/golang-github-anacrolix-stm.spec
SRPM URL:
https://eclipseo.fedorapeople.org/for-review/golang-github-anacrolix-stm-0.2.0-1.fc32.src.rpm

Description:
 Package stm provides Software Transactional Memory operations for Go. This is
an alternative to the standard way of writing concurrent code (channels and
mutexes). STM makes it easy to perform arbitrarily complex operations in an
atomic fashion. One of its primary advantages over traditional locking is that
STM transactions are composable, whereas locking functions are not -- the
composition will either deadlock or release the lock between functions (making
it non-atomic).  The stm API tries to mimic that of Haskell's
Control.Concurrent.STM, but this is not entirely possible due to Go's type
system; we are forced to use interface{} and type assertions. Furthermore,
Haskell can enforce at compile time that STM variables are not modified outside
the STM monad. This is not possible in Go, so be especially careful when using
pointers in your STM code. Another significant departure is that stm.Atomically
does not return a value. This shortens transaction code a bit, but I'm not 100%
it's the right decision. (The alternative would be for every transaction
function to return an interface{}.)

Fedora Account System Username: eclipseo

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are always notified about changes to this product and component
_______________________________________________
package-review mailing list -- package-review@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to package-review-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/package-review@xxxxxxxxxxxxxxxxxxxxxxx




[Index of Archives]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite Conditions]     [KDE Users]

  Powered by Linux