Ignore:
Timestamp:
May 17, 2023, 1:35:09 AM (3 years ago)
Author:
JiadaL <j82liang@…>
Branches:
ADT, master
Children:
f11010e
Parents:
6e4c44d (diff), 8db4708 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc

File:
1 edited

Legend:

Unmodified
Added
Removed
  • doc/theses/colby_parsons_MMAth/text/frontpgs.tex

    r6e4c44d r3982384  
    8080Concurrent programs are notoriously hard to program and even harder to debug. Furthermore concurrent programs must be performant, as the introduction of concurrency into a program is often done to achieve some form of speedup.
    8181
    82 This thesis presents a suite of high-level concurrent-language features in the new programming language \CFA, all of which are implemented with the aim of improving the performance, productivity, and safety of concurrent programs. \CFA is a non object-oriented programming language that extends C. The foundation for concurrency in \CFA was laid by Thierry Delisle~\cite{Delisle18}, who implemented coroutines, user-level threads, and monitors. This thesis builds upon that work and introduces a suite of new concurrent features as its main contribution. The features include Go-like channels, mutex statements (similar to \CC scoped locks or Java synchronized statement), an actor system, and a Go-like select statement. The root ideas behind these features are not new, but the \CFA implementations extends the original ideas in performance, productivity, and safety.
     82This thesis presents a suite of high-level concurrent-language features in the new programming-language \CFA, all of which are implemented with the aim of improving the performance, productivity, and safety of concurrent programs.
     83\CFA is a non-object-oriented programming language that extends C.
     84The foundation for concurrency in \CFA was laid by Thierry Delisle~\cite{Delisle18}, who implemented coroutines, user-level threads, and monitors.
     85This thesis builds upon that work and introduces a suite of new concurrent features as its main contribution.
     86The features include a @mutex@ statement (similar to a \CC scoped lock or Java \lstinline[language=Java]{synchronized} statement), Go-like channels and \lstinline[language=Go]{select} statement, and an actor system.
     87The root ideas behind these features are not new, but the \CFA implementations extends the original ideas in performance, productivity, and safety.
    8388
    8489\cleardoublepage
Note: See TracChangeset for help on using the changeset viewer.