Add concurrency construct(s)
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 20/100
Direzione di ricerca
Iniziate confrontando gli approcci basati su futures, OpenMP-style annotations e Cilk-style spawn/sync descritti nell’issue con la struttura del linguaggio e del compilatore Less-Java. Prima dell’implementazione, definite il modello di concorrenza, le regole di sicurezza, la sintassi e la semantica interessate e i test di accettazione, poiché l’issue attualmente non indica file, punti di ingresso né comportamenti completati.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
It is becoming increasingly common in high-performance computing to hear assertions that CS education programs need to integrate concurrency and parallelism patterns throughout the curriculum, including even the intro courses.
There is perhaps some merit to these assertions; imagine how much easier parallel computing would be if students learned from the very beginning how to identify and express dependency-free computation. Some argue that this mode of programming is actually more intuitive ("perform action X on every element in this collection" is often inherently dependency-free) and that we lose something by forcing everyone to learn a procedural paradigm first, linearizing the computation unnecessarily.
However, it's unclear how best to integrate concurrency into a language like Less-Java without overly complicating the language or introducing major safety issues. Perhaps it could mean adding something similar to futures, which are already implemented in Java and thus could be relatively easy to add to Less-Java. Perhaps it could involve adding annotations that the compiler converts to threaded code, like OpenMP. Or maybe it's adding new language keywords like spawn / sync in Cilk. This is open future work.
- Lingua principale
- Java
- Stelle
- 6
- Fork
- 7
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di JMU-CS/less-java
-
cleanup help wanted
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
-
cleanup
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 45/100
-
cleanup enhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 10/100
-
cleanup
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
-
Add REPL Apertaenhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 15/100
Tutte le issue di JMU-CS/less-java
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
infinispan/infinispan#18150 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
-
untriaged
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
opensearch-project/k-NN#3597 ·
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100