rafaeldff + concurrency   82

Parallel and Concurrent Programming in Haskell
Parallel and Concurrent Programming in Haskell paper by Simon Marlow (who is writing a book on this very subject).
paper  haskell  functional  programming  FP  concurrency  concurrent  parallel  parallelism  SimonMarlow 
may 2012 by rafaeldff
Bell Labs and CSP Threads
This page is a slice of the history of concurrent programming, focusing on one particular lineage of Hoare's language of communicating sequential processes (CSP) [1] [1a]. Concurrent programming in this style is interesting for reasons not of efficiency but of clarity. That is, it is a widespread mistake to think only of concurrent programming as a means to increase performance, e.g., to overlap disk I/O requests, to reduce latency by prefetching results to expected queries, or to take advantage of multiple processors. Such advantages are important but not relevant to this discussion. After all, they can be realized in other styles, such as asynchronous event-driven programming. Instead, we are interested in concurrent programming because it provides a natural abstraction that can make some programs much simpler.
CSP  Hoare  C.A.R.Hoare  PiCalculus  concurrency  concurrent  programming  thread  theading  threads  Inferno  Plan9  Aleph  Squeak  Newsqueak  DougMcIlroy  Pan  Promela  Alef  Limbo  Libthread  Go  GoogleGo  language  languages  systems  SystemsProgramming  RobPike  history  BellLabs 
april 2012 by rafaeldff
Task Dispatch and Nonblocking IO in Scala : Havoc's Blog
Modern application development platforms are addressing the related issues of globally-coordinated task dispatch and nonblocking IO.
IO  thread  threading  concurrency  nonblocking  java  scala  server  servers  C10K  actor  actors  task  dispatch  dispatcher  TaskDispatch  Havoc  Pennington  Akka 
april 2012 by rafaeldff
Capriccio Home
The group behind the "Why Events are a Bad Idea (for high-concurrency servers)" work.
group  research  academia  Events  Event  Eventing  concurrency  thread  threads  threading  capriccio  server  network  programming 
december 2011 by rafaeldff
Operating Systems: Four Easy Pieces
Free online OS book from Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau.

"The book is centered around four conceptual pieces: virtualization, concurrency, persistence, and distribution. In understanding the conceptual, you will also learn the practical, including how an operating system does things like schedule the CPU, manage memory, store files persistently, and even work in a distributed environment where there are many computers and not just one. Lots of fun stuff!"
book  online  free  OperatingSystem  OS  concurrency  virtualization  distribution  persistence  RemziArpaci-Dusseau  AndreaArpaci-Dusseau  RemziHArpaci-Dusseau  AndreaCArpaci-Dusseau 
october 2011 by rafaeldff
Scatter-Gather with Akka Dataflow « Vasil Remeniuk's Blog
A Hohpe pattern (from pEAI) implemented in Akka using the new dataflow constructs.
akka  scala  dataflow  promise  promises  future  futures  actor  actors  concurrency  programming  sample  blog  post  VasilRemeniuk 
may 2011 by rafaeldff
Wide Finder 2 - 1024cores
Write-up of the winning entry. Wide Finder is Tim Bray's parallel data munging benchmark
WideFinder  Benchmark  parallelism  parallel  programming  concurrency  IO 
february 2011 by rafaeldff
Klangism - All #Actors in #Scala - compared
Feature matrix with Scala Actor implementations: scala lib, scalaz, lift and akka
scala  actor  actors  concurrency  comparison  FeatureMatrix 
december 2010 by rafaeldff
InfoQ: Erik Meijer on LINQ
"Great interview. Topics are all over the map, but it's great fun."
programming  language  interview  ErikMeijer  Microsoft  syntax  semantics  LINQ  Haskell  C#  OO  concurrency  monad  monads 
march 2009 by rafaeldff
The Cornerstone language provides an aggressively statically typed language with a Groovy/Ruby style scripting syntax.
""The Cornerstone language provides an aggressively statically typed language with a Groovy/Ruby style scripting syntax." by Robert Fisher. Notably, it is aggressively concurrent (method calls are microthreads), and is implemented in Scala."
programming  language  project  cornerstone  scripting  concurrent  scala  interpretor  concurrency  RobertFisher 
march 2009 by rafaeldff
Erik Engbrecht's Blog: What does I/O bound really mean?
More WideFinder commentary: I/O from the programmer's perspective is, or at least should be [] “everything that happens between when my program requests some data and when it receives it.”
blog  post  ErikEngbrecht  IO  programming  systems  I/O  String  Strings  text  Unicode  LeakyAbstractions  regex  WideFinder  Scala  Java  LeakyAbstraction  peformance  concurrency  processing 
june 2008 by rafaeldff
Functional Programming in the ACM CS Curriculum | Lambda the Ultimate
Peter Van Roy concisely explains the value of Dataflow Variables as a foundational concept. In a way, this forum comment is a 13-line summary of CTM's 800 lines.
post  forum  thread  comment  LtU  PeterVanRoy  Oz  Dataflow  DataflowVariable  DataflowConcurrency  FP  programming  language  semantics  concurrency  PvR 
june 2008 by rafaeldff
Polling Efficiently on Stock Hardware
Paper outlining an implementation of preemptive multithreading using polling (as opposed to cpu interrupts) with efficiency analysis.
paper  MarcFeeley  language  runtime  concurrent  implementation  concurrency  threading  multithreadding  threads  polling  yields  yield  Gambit  scheme  BalancedPolling  GreenThreads  via:LtU 
june 2008 by rafaeldff
Joe Armstrong, Erlang, and RPC :: Steve Vinoski’s Blog
Joe Armstrong commenting on a blog post by Steve Vinoski highlighting a blog post on Joe Armstrong's blog expanding on the RPC vs Message Passing topic brought about by Steve Vinoski replying to the Erlang mailing list. (href breadcrumbs)
blog  post  comment  JoeArmstrong  SteveVinoski  Erlang  distributed  systems  distributedsystems  reliability  concurrency  history  programming  language  RPC  messaging  MessagePassing  OTP  actors 
may 2008 by rafaeldff
Yariv’s Blog » Blog Archive » Erlang vs. Scala
Actually insightful comparison. Dave Pollack chimes in in the comments.
blog  post  article  Scala  Erlang  actors  concurrency  comparison  YarivSadan  DavidPollack 
may 2008 by rafaeldff
Thinking in Language, But Not Clearly :: Steve Vinoski’s Blog
Steve Vinoski's continues a productive discussion with Ted Neward regarding the need for language-specific runtimes, with Erlang as the case in point.
blog  post  discussion  debate  SteveVinoski  TedNeward  language  VM  runtime  concurrency  monitoring  JVM  Erlang 
may 2008 by rafaeldff
Advanced Topics in Programming Languages: Transactional Memory at Sun
Sun's Scalable Synchronization Research Group lead, Dr Mark Moir, describes recent advances in Hybrid (and phased) transactional memory approaches. The goal is to utilize best-effort hardware with software mechanisms as a fall back.
MarkMoir  google  video  presentation  Sun  TM  STM  HTM  HyTM  PhTM  transaction  memory  transactional  language  research  concurrency  SSRG 
september 2007 by rafaeldff
Improved Means for Achieving Deteriorated Ends / The State of State
Tim Sweeney (Unreal architect and occasional LtU participant) talks about how STM is more appropriate for large mutable-state-heavy apps and Erlang-like message passing is better for distributed computation where latency is a big deal.
blog  post  email  message  TimSweeney  BritButler  concurrency  STM  messaging  MessagePassing  Erlang  Haskell  functional  programming  state  stateful  computation  distributed  computing  systems 
august 2007 by rafaeldff
Sun slots transactional memory into Rock | The Register
"Sun has embraced a so-called hybrid transactional memory model where it cap tap into both hardware-based and software-based TM tools. (...)Sun's own Solaris operating system and Java virtual machine are already set to use TM."
article  news  TheRegister  Sun  Rock  microprocessor  CPU  chip  hardware  memory  transaction  transactional  TM  TransactionalMemory  concurrency  Solaris  Java  JVM 
august 2007 by rafaeldff
Ralph Johnson: Erlang, the next Java | Lambda the Ultimate
Great comment on LtU, by user michaelw, on the subtle (cache hit-rate) and not so subtle (Amdahl's Law) effects that physical architectures impose on parallel software development.
comment  post  thread  LtU  michaelw  concurrency  parallel  parallelism  hardware  architecture  Amdahl'sLaw  Amdahl  cache  caching  efficiency  performance 
august 2007 by rafaeldff
Yellow Submarine : Weblog
Nice summary of the problems with threads as an abstraction for concurrent programming.
blog  post  RomanShaposhnik  thread  threads  concurrency  programming  Sun  bashing  critique 
august 2007 by rafaeldff
The Goedel Programming Language
"Gödel is a declarative, general-purpose programming language in the family of logic programming languages. It is a strongly typed language (...) Considerable emphasis is placed on Gödel's meta- logical facilities"
language  project  opensource  logic  programming  metaprogramming  Goedel  Gödel  prolog  concurrency  transformation  parallelism  parallel  typed  typing  type  system  research  academia  Bristol  KULeuven 
july 2007 by rafaeldff
InfoQ: New Concurrency Features for Java SE 7
"Although the contents of Java SE 7 are still in flux, early candidates for inclusion are are already taking shape in jsr166y: a fork/join framework and a transfer queue. InfoQ spoke with Doug Lea about these features and concurrency in Java SE 7."
news  article  Java  7  Java7  library  concurrency  DougLea  infoq  interview  JSR-166  JSR-166x  JSR-166y  jsr166y  ForkJoin  framework  JRE  JDK 
july 2007 by rafaeldff
Earthly Powers : Weblog
Paul Sandoz (one of the spec leads for the JSR-311 aka "the REST JSR") is also impressed by Scala.
PaulSandoz  scala  lift  Twitter  actors  actor  concurrency 
june 2007 by rafaeldff
Making it stick.: Scala
Cool, Scala is increasingly being noticed. I think we should all thank David Pollak for this.
scala  blog  post  PatrickLogan  actors  library  concurrency  actor  model 
june 2007 by rafaeldff
Scala Actors -- A Short Tutorial
More details on the "Actors that Unify Threads and Events" paper.
tutorial  article  introduction  Scala  Actors  Actor  library  concurrency  JVM  OO  PhilippHaller 
june 2007 by rafaeldff
raganwald: Hard-Core Concurrency Considerations
Insightful considerations about purely functional data structures on a concurrent setting (memory consistency requiring synchronization and IO devices that are optimal for large sequencial transfers are two points of note).
blog  post  functional  programming  FP  KevinGreer  datastructures  concurrency  datastructure  DS  haskell  raganwald  ReginaldBraithwaite  RegBraithwaite 
may 2007 by rafaeldff
Revisiting Coroutines (ResearchIndex)
From the Lua team. "[this] paper defends the revival of coroutines as a general control abstraction. After proposing a new classification of coroutines, we introduce the concept of full asymmetric coroutines and provide a precise definition for it through
paper  Lua  language  Coroutines  Coroutine  control  abstraction  concurrency  continuation  continuations  AnaLuciaDeMoura  RobertoIerusalimschy  AnaLuciaMoura  AnaMoura 
may 2007 by rafaeldff
lambda.oasis: Observations from DATE 2007
More of the "concurrency is urgent, STM is not a panacea, we need new ideas!" speech. This time, interestingly, coming from the embedded community. Other important points are addressed as well, such as a trend toward less reliable chips.
blog  post  ChristopheVincenz  Christophe  embedded  hardware  EDA  DATE  2007  concurrency  parallelism  parallel  computing  microprocessor  chip  CPU  STM  transactions  via:raganwald 
april 2007 by rafaeldff
David Dice's Weblog : Weblog
Call to arms accompanied by a nice overview of the parallel programming landscape as of mid-2000s.
blog  post  DavidDice  Sun  concurrency  parallel  parallelism  java  programming  language  Scala  Fortress  STM  MessagePassing  MPI  X10 
april 2007 by rafaeldff
Beautiful concurrency
Simon Peyton Jones' chapter on STM for the upcoming "Beautiful code" book.
chapter  SimonPeytonJones  book  pdf  online  concurrency  STM  software  transaction  transactional  memory  haskell 
april 2007 by rafaeldff
Ten Questions with Joe Armstrong about Parallel Programming and Erlang | Thinking Parallel
Michael Suess interview Joe "Erlang" Armstrong. Joe has an interesting response to the "what would you have done differently" question.
interview  Erlang  JoeArmstrong  MichaelSuess  parallel  concurrent  programming  language  concurrency 
march 2007 by rafaeldff
Antiobjects - Wikipedia, the free encyclopedia
"The notion of antiobjects is a computational metaphor useful to conceptualize and solve hard problems by swapping computational foreground and background."
article  OO  wikipedia  algorithm  Antiobject  modeling  design  oop  ood  parallel  concurrency  AlanTuring  ReactionDiffusionEquation  ReactionDiffusion  Equation  cellular  automata 
february 2007 by rafaeldff
Improve Application Performance With SwingWorker in Java SE 6
Pretty comprehensive tutorial on using SwingWorker to create more responsive GUIs.
article  tutorial  Java  Swing  GUI  threading  concurrency  Java6  mustang 
february 2007 by rafaeldff
Concurrency-and-Erlang-LCA2007-andrep.pdf (application/pdf Object)
Erlang presentation, light on detail but with nice real-world quotes on the problems of shared state concurrency.
presentation  pdf  slides  Erlang  AndréPang  AndrePang  language  concurrency  advocacy 
january 2007 by rafaeldff
Sun puts 16 cores on its 'Rock' chip | CNET News.com
More cores, higher performance/thread, more speculative optmizations (including intriguing "scout threads").
news  cnet  sun  processor  chip  Tock  SPARC  MultiCore  performance  concurrency  threading  thread  threads 
december 2006 by rafaeldff
Erlang vs C++ for Robust Telecom Software | Lambda the Ultimate
"... As the Erlang DCC is less than a quarter of the size of a similar C++/CORBA implementation, the product development in Erlang should be fast, and the code maintainable. We conclude that Erlang and associated libraries are suitable for the rapid devel
paper  erlang  language  functional  programming  c++  comparison  telecom  software  reliability  concurrency 
december 2006 by rafaeldff
Why Threads Are A Bad Idea (for most purposes)
1996 presentation from John Ousterhout, a Sun labs researcher at the time, stating that: 1 - threads are hard; 2 - Event driven programming is a much easier alternative and 3 - threads are hard.
presentation  pdf  JohnOusterhout  Sun  concurrency  thread  threading  threads  programming  event  events  EDP  software  design  architecture 
october 2006 by rafaeldff
kumpera.net » Continuations, Java e NIO - fórmula explosiva
Post do Rodrigo Kumpera sobre uma implementaçao de um servidor de rede não bloqueante escrito com continuações. Não contém muitos detalhes, infelizmente.
post  blog  RodrigoKumpera  Louds  java  IO  concurrency  continuation  continuations 
october 2006 by rafaeldff
Re: Erlang Scheduler: what does it do?
Clear explanation of how Erlang's thread scheduler works on the language mailing list.
message  thread  post  email  mailing  list  erlang  language  scheduler  scheduling  threads  concurrency  interpreter  green  GreenThreads  realtime  algorithm 
september 2006 by rafaeldff
The Little Book of Semaphores
A free (GPL doc license) textbook on concurrency primitves with sample code in Python, by Allen B. Downey.
AllenDowney  concurrency  book  online  free  GPL  semaphore  semaphores  mutex  python 
september 2006 by rafaeldff
JOT: Journal of Object Technology - The JAC System: Minimizing the Differences between Concurrent and Sequential Java Code, Klaus-Peter Löhr, Max Haustein
A precompiler introducing parallelization annotations more sophisticated than 'synchronized' for Java. It guarantees that properly annotated objects can run sequentially or concurrently with consistent semantics.
Klaus-PeterLöhr  MaxHaustein  KlausLöhr  article  paper  JOT  OO  java  concurrency  annotation  annotations  parallel  parallelization 
september 2006 by rafaeldff
/dev/null - FastCGI: Not So Fast
Multiprocess vs multithread for web server archictecture... Cameron argues against Jon Tiersen's exaltation of FastCGI (multi process) arch.
CameronPurdy  blog  post  CGI  FastCGI  process  Thread  concurrency  concurrent  server  performance  scalability  I/O  software  architecture 
august 2006 by rafaeldff
Making reliable distributed systems in the presence of software errors
Joe Armstrong's - one of Erlang's creators - thesis on fault-tolerant highly concurrent distributed software develpment. The text also apparently gives a good overview of Erlang' and it's main development model.
thesis  paper  JoeArmstrong  Erlang  language  distributed  system  systems  computing  distributedsystems  concurrency  messaging  resiliency  fault-tolerance  fault-tolerant  reliability  durability  ilities  overview  tutorial  server  middleware  pdf 
august 2006 by rafaeldff
defmacro - Erlang Style Concurrency
CoffeeMug's new article, this time advocating Erlang style concurrency. Not a tutorial, unfortunatly...
article  defmacro  coffeemug  erlang  concurrency  advocacy 
august 2006 by rafaeldff
asyncWeb - Home
"AsyncWeb is a high-throughput, non blocking Java HTTP engine - designed throughout to support asynchronous request processing. AsyncWeb (built on top of the excellent Mina network framework) employs non-blocking selector driven IO at the transport level,
project  opensource  java  http  web  server  asynchronous  asynchronicity  synchronicity  non-blocking  asyncWeb  IO  I/O  nio  webserver  concurrency  scalability  codehaus  safehaus 
august 2006 by rafaeldff
Speculative Threading: Creating New Methods of Thread-Level Parallelization
Intel research on making unsafe optimizations possible with speculative thread spawning (needs compiler and hardware support).
article  compiler  CPU  processor  hardware  assembly  assembler  lowlevel  intel  research  concurrency  Thread  threading  threads  optimization 
july 2006 by rafaeldff
kumpera.net » Otimizando programas paralelos
"vou apresentar uma série de técnicas que visam fazer as várias threads de um sistema serem mais legais umas com as outras. Vou dividir em três categorias essas técnicas: sincronização, estruturas de dados e contenção externa."
optimization  Concurrency  parallel  software  development  contention  lock  locks  atomicity  parallelism  blog  post  louds  RodrigoKumpera  article  advice  tips  performance  pt-br  pt 
june 2006 by rafaeldff
Narrative JavaScript
Narrative JavaScript is a small extension to the JavaScript language that enables blocking capabilities for asynchronous operations. This makes writing asynchronous code sequences easier and increases code readability.
js  javascript  compiler  language  extension  continuation  continuations  CPS  concurrent  Concurrency  asynchronous  asynchronicity  synchronicity  ajax  web  webdev  project  opensource  PL 
may 2006 by rafaeldff
« earlier      
per page:    204080120160

related tags

abstraction  academia  academic  ACM  actor  actors  advice  advocacy  ajax  akka  AlanTuring  Alef  Aleph  algorithm  Ali-RezaAdl-Tabatabai  AllenDowney  Amdahl  Amdahl'sLaw  AnaLuciaDeMoura  AnaLuciaMoura  AnaMoura  AndreaArpaci-Dusseau  AndreaCArpaci-Dusseau  AndrePang  AndréPang  annotation  annotations  Antiobject  APP  architecture  article  assembler  assembly  assync  assynchronicity  assynchronous  assyncronicity  async  asynchronicity  asynchronous  asynchronously  asyncWeb  atom  atomicity  Atompub  automata  availability  BalancedPolling  Bartok  bashing  BellLabs  benchmark  benchmarking  Berkeley  blog  book  BrianGoetz  Bristol  BritButler  C#  c++  C.A.R.Hoare  C10K  cache  caching  CameronPurdy  capriccio  catalog  cellular  CGI  channel9  chapter  ChetHaase  chip  Christophe  ChristopherSmith  ChristopheVincenz  ChristosKozyrakis  clone  cnet  codehaus  coffeemug  comment  comparison  compiler  computation  computerarchitecture  ComputerOrganization  computing  concurrency  concurrent  ConcurrentProgramming  contention  ContextSwitching  continuation  continuations  control  cornerstone  Coroutine  Coroutines  course  CPS  cpu  critique  CSP  Darcy  Darkstar  database  dataflow  DataflowConcurrency  DataflowVariable  datastructure  datastructures  DATE  DavidChisnall  DavidDice  DavidPollack  db  debate  defmacro  design  developerworks  development  discussion  dispatch  dispatcher  distributed  distributedsystems  distribution  DougLea  DougMcIlroy  DS  durability  EDA  EDP  efficiency  email  embedded  Equation  ErikEngbrecht  ErikMeijer  erlang  ETags  event  Eventing  EventLoop  events  exec  execve  extension  FastCGI  fault-tolerance  fault-tolerant  FeatureMatrix  fiber  fibers  fork  ForkJoin  fortress  forum  fotrtess  FP  framework  free  functional  future  futures  Gambit  game  gaming  GHC  Go  Goedel  google  GoogleGo  GPL  green  GreenThread  GreenThreads  group  gui  guysteele  Gödel  Hansen  hardware  harvard  haskell  Havoc  HerbSutter  history  Hoare  HTM  http  hyperthreading  HyTM  I/O  ilities  IME  implementation  Inferno  infoq  InformIT  intel  interpreter  interpretor  interview  introduction  io  java  Java6  Java7  JavaPolis  javascript  JDK  Jeff  JeffDarcy  JimWaldo  JoeArmstrong  JohnOusterhout  JOT  JRE  js  JSR-166  JSR-166x  JSR-166y  jsr166y  JVM  KarlHaberi  kernel  KevinGreer  Klaus-PeterLöhr  KlausLöhr  KULeuven  language  languages  LarryOsterman  LeakyAbstraction  LeakyAbstractions  library  Libthread  lift  Limbo  link  links  LINQ  linux  list  lock  locking  locks  logic  louds  low-level  lowlevel  LtU  Lua  mailing  MarcFeeley  MarkMoir  MaxHaustein  memory  message  MessagePassing  messaging  metaprogramming  methodology  MichaelSuess  michaelw  microarchitecture  microbenchmark  microprocessor  microsoft  middleware  model  modeling  monad  monads  monitoring  movie  MPI  msdn  multi-threading  multicore  multithreadding  multithreading  mustang  mutex  NeelakantanKrishnaswami  neelk  network  networking  news  Newsqueak  nio  Node  NodeJS  non-blocking  nonblocking  online  oo  ood  oop  opensource  OperatingSystem  optimistic  OptimisticConcurrency  optimization  os  OTP  overview  Oz  Pan  paper  papers  paradigm  parallel  parallelism  parallelization  PatrickLogan  pattern  PatternLanguage  patterns  PaulSandoz  PBHansen  pdf  peformance  Pennington  PerBrinchHansen  performance  PerHansen  persistence  PeterVanRoy  PhilippHaller  PhTM  PiCalculus  PL  Plan9  polling  post  presentation  process  processes  processing  processor  programming  project  prolog  Promela  promise  promises  pt  pt-br  pthreads  PvR  python  queue  raganwald  RalphJohnson  ReactionDiffusion  ReactionDiffusionEquation  reading  readinglist  realtime  recommendations  recursive  RecursiveLock  reference  RegBraithwaite  regex  ReginaldBraithwaite  relational  reliability  RemziArpaci-Dusseau  RemziHArpaci-Dusseau  report  research  resiliency  review  RobertFisher  RobertoIerusalimschy  RobPike  Rock  RodrigoKumpera  RomanShaposhnik  RPC  runtime  RyanDahl  safehaus  sample  scala  scalability  scheduler  scheduling  scheme  science  scientific  scientificcomputing  scientificomputation  scripting  semantics  semaphore  semaphores  server  servers  service  SIGPLAN  SimonMarlow  SimonPeyton-Jones  SimonPeytonJones  singularity  slides  software  Solaris  SPARC  spec  specification  Squeak  SSRG  Stanford  state  stateful  SteveVinoski  STM  String  Strings  sun  supercomputing  swing  synchronicity  Synchronization  syntax  syscall  syscalls  system  systems  SystemsProgramming  talk  task  TaskDispatch  TedNeward  telecom  text  theading  theads  theory  TheRegister  thesis  thread  threading  threads  TimHarris  TimSweeney  tips  TM  tocheckout  Tock  toread  transaction  transactional  TransactionalMemory  transactions  transformation  tutorial  Twitter  type  typed  typing  ui  Unicode  unix  VasilRemeniuk  via:LtU  via:raganwald  video  virtualization  VM  web  webdev  webserver  WideFinder  wikipedia  Win32  windows  X10  xml  YarivSadan  yield  yields 

Copy this bookmark: