aboutsummaryrefslogtreecommitdiff
path: root/_bibliography
diff options
context:
space:
mode:
authorHeather Miller <heather.miller@epfl.ch>2016-12-18 16:07:30 -0500
committerGitHub <noreply@github.com>2016-12-18 16:07:30 -0500
commitd6f1f8a66c026bde74f0ca1addcbf731e97005d1 (patch)
treeb5ca30f31d51f102daf190a07a060b819bd69e6d /_bibliography
parentde49a518d27f60bf560044aa051d3067b211000c (diff)
parent46dde2378a1d7c1b45134ef851a2558a40a52ec1 (diff)
Merge branch 'master' into zanin_dist-langszanin_dist-langs
Diffstat (limited to '_bibliography')
-rw-r--r--_bibliography/big-data.bib308
-rw-r--r--_bibliography/futures.bib387
-rw-r--r--_bibliography/langs-consistency.bib62
-rw-r--r--_bibliography/message-passing.bib326
-rw-r--r--_bibliography/rpc.bib478
-rw-r--r--_bibliography/streaming.bib165
6 files changed, 1609 insertions, 117 deletions
diff --git a/_bibliography/big-data.bib b/_bibliography/big-data.bib
index 416b697..297073a 100644
--- a/_bibliography/big-data.bib
+++ b/_bibliography/big-data.bib
@@ -1,26 +1,282 @@
-@inproceedings{Uniqueness,
- author = {Philipp Haller and
- Martin Odersky},
- title = {Capabilities for Uniqueness and Borrowing},
- booktitle = {ECOOP 2010, Maribor, Slovenia, June 21-25, 2010.},
- pages = {354--378},
- year = {2010},
-}
-
-@inproceedings{Elsman2005,
- author = {Martin Elsman},
- title = {Type-specialized serialization with sharing},
- booktitle = {Trends in Functional Programming},
- year = {2005},
- pages = {47-62},
-}
-
-@article{Kennedy2004,
- author = {Andrew Kennedy},
- title = {Pickler combinators},
- journal = {J. Funct. Program.},
- volume = {14},
- number = {6},
- year = {2004},
- pages = {727-739},
-} \ No newline at end of file
+@article{armbrust2015scaling,
+ title={Scaling spark in the real world: performance and usability},
+ author={Armbrust, Michael and Das, Tathagata and Davidson, Aaron and Ghodsi, Ali and Or, Andrew and Rosen, Josh and Stoica, Ion and Wendell, Patrick and Xin, Reynold and Zaharia, Matei},
+ journal={Proceedings of the VLDB Endowment},
+ volume={8},
+ number={12},
+ pages={1840--1843},
+ year={2015},
+ publisher={VLDB Endowment}
+}
+
+
+@inproceedings{armbrust2015spark,
+ title={Spark sql: Relational data processing in spark},
+ author={Armbrust, Michael and Xin, Reynold S and Lian, Cheng and Huai, Yin and Liu, Davies and Bradley, Joseph K and Meng, Xiangrui and Kaftan, Tomer and Franklin, Michael J and Ghodsi, Ali and others},
+ booktitle={Proceedings of the 2015 ACM SIGMOD International Conference on Management of Data},
+ pages={1383--1394},
+ year={2015},
+ organization={ACM}
+}
+
+@article{bu2010haloop,
+ title={HaLoop: efficient iterative data processing on large clusters},
+ author={Bu, Yingyi and Howe, Bill and Balazinska, Magdalena and Ernst, Michael D},
+ journal={Proceedings of the VLDB Endowment},
+ volume={3},
+ number={1-2},
+ pages={285--296},
+ year={2010},
+ publisher={VLDB Endowment}
+}
+
+@inproceedings{chambers2010flumejava,
+ title={FlumeJava: easy, efficient data-parallel pipelines},
+ author={Chambers, Craig and Raniwala, Ashish and Perry, Frances and Adams, Stephen and Henry, Robert R and Bradshaw, Robert and Weizenbaum, Nathan},
+ booktitle={ACM Sigplan Notices},
+ volume={45},
+ number={6},
+ pages={363--375},
+ year={2010},
+ organization={ACM}
+}
+
+
+@article{ching2015one,
+ title={One trillion edges: graph processing at Facebook-scale},
+ author={Ching, Avery and Edunov, Sergey and Kabiljo, Maja and Logothetis, Dionysios and Muthukrishnan, Sambavi},
+ journal={Proceedings of the VLDB Endowment},
+ volume={8},
+ number={12},
+ pages={1804--1815},
+ year={2015},
+ publisher={VLDB Endowment}
+}
+
+@article{dean2008mapreduce,
+ title={MapReduce: simplified data processing on large clusters},
+ author={Dean, Jeffrey and Ghemawat, Sanjay},
+ journal={Communications of the ACM},
+ volume={51},
+ number={1},
+ pages={107--113},
+ year={2008},
+ publisher={ACM}
+}
+
+
+@inproceedings{ekanayake2010twister,
+ title={Twister: a runtime for iterative mapreduce},
+ author={Ekanayake, Jaliya and Li, Hui and Zhang, Bingjing and Gunarathne, Thilina and Bae, Seung-Hee and Qiu, Judy and Fox, Geoffrey},
+ booktitle={Proceedings of the 19th ACM International Symposium on High Performance Distributed Computing},
+ pages={810--818},
+ year={2010},
+ organization={ACM}
+}
+
+
+@inproceedings{ghemawat2003google,
+ title={The Google file system},
+ author={Ghemawat, Sanjay and Gobioff, Howard and Leung, Shun-Tak},
+ booktitle={ACM SIGOPS operating systems review},
+ volume={37},
+ number={5},
+ pages={29--43},
+ year={2003},
+ organization={ACM}
+}
+
+@inproceedings{gonzalez2012powergraph,
+ title={Powergraph: Distributed graph-parallel computation on natural graphs},
+ author={Gonzalez, Joseph E and Low, Yucheng and Gu, Haijie and Bickson, Danny and Guestrin, Carlos},
+ booktitle={Presented as part of the 10th USENIX Symposium on Operating Systems Design and Implementation (OSDI 12)},
+ pages={17--30},
+ year={2012}
+}
+
+@inproceedings{hindman2011mesos,
+ title={Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center.},
+ author={Hindman, Benjamin and Konwinski, Andy and Zaharia, Matei and Ghodsi, Ali and Joseph, Anthony D and Katz, Randy H and Shenker, Scott and Stoica, Ion},
+ booktitle={NSDI},
+ volume={11},
+ pages={22--22},
+ year={2011}
+}
+
+@inproceedings{hunt2010zookeeper,
+ title={ZooKeeper: Wait-free Coordination for Internet-scale Systems.},
+ author={Hunt, Patrick and Konar, Mahadev and Junqueira, Flavio Paiva and Reed, Benjamin},
+ booktitle={USENIX Annual Technical Conference},
+ volume={8},
+ pages={9},
+ year={2010}
+}
+
+@inproceedings{isard2007dryad,
+ title={Dryad: distributed data-parallel programs from sequential building blocks},
+ author={Isard, Michael and Budiu, Mihai and Yu, Yuan and Birrell, Andrew and Fetterly, Dennis},
+ booktitle={ACM SIGOPS Operating Systems Review},
+ volume={41},
+ number={3},
+ pages={59--72},
+ year={2007},
+ organization={ACM}
+}
+
+
+@inproceedings{kreps2011kafka,
+ title={Kafka: A distributed messaging system for log processing},
+ author={Kreps, Jay and Narkhede, Neha and Rao, Jun and others},
+ booktitle={Proceedings of the NetDB},
+ pages={1--7},
+ year={2011}
+}
+
+@inproceedings{li2014tachyon,
+ title={Tachyon: Reliable, memory speed storage for cluster computing frameworks},
+ author={Li, Haoyuan and Ghodsi, Ali and Zaharia, Matei and Shenker, Scott and Stoica, Ion},
+ booktitle={Proceedings of the ACM Symposium on Cloud Computing},
+ pages={1--15},
+ year={2014},
+ organization={ACM}
+}
+
+
+@inproceedings{malewicz2010pregel,
+ title={Pregel: a system for large-scale graph processing},
+ author={Malewicz, Grzegorz and Austern, Matthew H and Bik, Aart JC and Dehnert, James C and Horn, Ilan and Leiser, Naty and Czajkowski, Grzegorz},
+ booktitle={Proceedings of the 2010 ACM SIGMOD International Conference on Management of data},
+ pages={135--146},
+ year={2010},
+ organization={ACM}
+}
+@inproceedings{okcan2011processing,
+ title={Processing theta-joins using MapReduce},
+ author={Okcan, Alper and Riedewald, Mirek},
+ booktitle={Proceedings of the 2011 ACM SIGMOD International Conference on Management of data},
+ pages={949--960},
+ year={2011},
+ organization={ACM}
+}
+
+@inproceedings{olston2008pig,
+ title={Pig latin: a not-so-foreign language for data processing},
+ author={Olston, Christopher and Reed, Benjamin and Srivastava, Utkarsh and Kumar, Ravi and Tomkins, Andrew},
+ booktitle={Proceedings of the 2008 ACM SIGMOD international conference on Management of data},
+ pages={1099--1110},
+ year={2008},
+ organization={ACM}
+}
+
+@article{pike2005interpreting,
+ title={Interpreting the data: Parallel analysis with Sawzall},
+ author={Pike, Rob and Dorward, Sean and Griesemer, Robert and Quinlan, Sean},
+ journal={Scientific Programming},
+ volume={13},
+ number={4},
+ pages={277--298},
+ year={2005},
+ publisher={Hindawi Publishing Corporation}
+}
+
+@inproceedings{shvachko2010hadoop,
+ title={The hadoop distributed file system},
+ author={Shvachko, Konstantin and Kuang, Hairong and Radia, Sanjay and Chansler, Robert},
+ booktitle={2010 IEEE 26th symposium on mass storage systems and technologies (MSST)},
+ pages={1--10},
+ year={2010},
+ organization={IEEE}
+}
+
+@online{WinNT,
+ author = {Tarau, Paul},
+ title = {Bulk synchronous model},
+ year = 2014,
+ url = {http://www.cse.unt.edu/~tarau/teaching/parpro/papers/Bulk%20synchronous%20parallel.pdf},
+ urldate = {2016-11-24}
+}
+
+@article{thusoo2009hive,
+ title={Hive: a warehousing solution over a map-reduce framework},
+ author={Thusoo, Ashish and Sarma, Joydeep Sen and Jain, Namit and Shao, Zheng and Chakka, Prasad and Anthony, Suresh and Liu, Hao and Wyckoff, Pete and Murthy, Raghotham},
+ journal={Proceedings of the VLDB Endowment},
+ volume={2},
+ number={2},
+ pages={1626--1629},
+ year={2009},
+ publisher={VLDB Endowment}
+}
+
+@inproceedings{thusoo2010hive,
+ title={Hive-a petabyte scale data warehouse using hadoop},
+ author={Thusoo, Ashish and Sarma, Joydeep Sen and Jain, Namit and Shao, Zheng and Chakka, Prasad and Zhang, Ning and Antony, Suresh and Liu, Hao and Murthy, Raghotham},
+ booktitle={2010 IEEE 26th International Conference on Data Engineering (ICDE 2010)},
+ pages={996--1005},
+ year={2010},
+ organization={IEEE}
+}
+
+@article{valiant1990bridging,
+ title={A bridging model for parallel computation},
+ author={Valiant, Leslie G},
+ journal={Communications of the ACM},
+ volume={33},
+ number={8},
+ pages={103--111},
+ year={1990},
+ publisher={ACM}
+}
+
+@inproceedings{vavilapalli2013apache,
+ title={Apache hadoop yarn: Yet another resource negotiator},
+ author={Vavilapalli, Vinod Kumar and Murthy, Arun C and Douglas, Chris and Agarwal, Sharad and Konar, Mahadev and Evans, Robert and Graves, Thomas and Lowe, Jason and Shah, Hitesh and Seth, Siddharth and others},
+ booktitle={Proceedings of the 4th annual Symposium on Cloud Computing},
+ pages={5},
+ year={2013},
+ organization={ACM}
+}
+
+@inproceedings{xin2013graphx,
+ title={Graphx: A resilient distributed graph system on spark},
+ author={Xin, Reynold S and Gonzalez, Joseph E and Franklin, Michael J and Stoica, Ion},
+ booktitle={First International Workshop on Graph Data Management Experiences and Systems},
+ pages={2},
+ year={2013},
+ organization={ACM}
+}
+
+@inproceedings{yu2008dryadlinq,
+ title={DryadLINQ: A System for General-Purpose Distributed Data-Parallel Computing Using a High-Level Language.},
+ author={Yu, Yuan and Isard, Michael and Fetterly, Dennis and Budiu, Mihai and Erlingsson, {\'U}lfar and Gunda, Pradeep Kumar and Currey, Jon},
+ booktitle={OSDI},
+ volume={8},
+ pages={1--14},
+ year={2008}
+}
+
+@article{zaharia2010spark,
+ title={Spark: cluster computing with working sets.},
+ author={Zaharia, Matei and Chowdhury, Mosharaf and Franklin, Michael J and Shenker, Scott and Stoica, Ion},
+ journal={HotCloud},
+ volume={10},
+ pages={10--10},
+ year={2010}
+}
+
+@inproceedings{zaharia2012discretized,
+ title={Discretized streams: an efficient and fault-tolerant model for stream processing on large clusters},
+ author={Zaharia, Matei and Das, Tathagata and Li, Haoyuan and Shenker, Scott and Stoica, Ion},
+ booktitle={Presented as part of the},
+ year={2012}
+}
+
+@article{zhang2012imapreduce,
+ title={imapreduce: A distributed computing framework for iterative computation},
+ author={Zhang, Yanfeng and Gao, Qixin and Gao, Lixin and Wang, Cuirong},
+ journal={Journal of Grid Computing},
+ volume={10},
+ number={1},
+ pages={47--68},
+ year={2012},
+ publisher={Springer}
+}
diff --git a/_bibliography/futures.bib b/_bibliography/futures.bib
index 416b697..13e2f19 100644
--- a/_bibliography/futures.bib
+++ b/_bibliography/futures.bib
@@ -23,4 +23,389 @@
number = {6},
year = {2004},
pages = {727-739},
-} \ No newline at end of file
+}
+
+@article{1,
+ author = {Halstead,Jr., Robert H.},
+ title = {MULTILISP: A Language for Concurrent Symbolic Computation},
+ journal = {ACM Trans. Program. Lang. Syst.},
+ issue_date = {Oct. 1985},
+ volume = {7},
+ number = {4},
+ month = oct,
+ year = {1985},
+ issn = {0164-0925},
+ pages = {501--538},
+ numpages = {38},
+ url = {http://doi.acm.org/10.1145/4472.4478},
+ doi = {10.1145/4472.4478},
+ acmid = {4478},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+}
+
+@inproceedings{2,
+ author = {Liskov, B. and Shrira, L.},
+ title = {Promises: Linguistic Support for Efficient Asynchronous Procedure Calls in Distributed Systems},
+ booktitle = {Proceedings of the ACM SIGPLAN 1988 Conference on Programming Language Design and Implementation},
+ series = {PLDI '88},
+ year = {1988},
+ isbn = {0-89791-269-1},
+ location = {Atlanta, Georgia, USA},
+ pages = {260--267},
+ numpages = {8},
+ url = {http://doi.acm.org/10.1145/53990.54016},
+ doi = {10.1145/53990.54016},
+ acmid = {54016},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+}
+
+@article{3,
+ author = {Liskov, B. and Shrira, L.},
+ title = {Promises: Linguistic Support for Efficient Asynchronous Procedure Calls in Distributed Systems},
+ journal = {SIGPLAN Not.},
+ issue_date = {July 1988},
+ volume = {23},
+ number = {7},
+ month = jun,
+ year = {1988},
+ issn = {0362-1340},
+ pages = {260--267},
+ numpages = {8},
+ url = {http://doi.acm.org/10.1145/960116.54016},
+ doi = {10.1145/960116.54016},
+ acmid = {54016},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+}
+
+@article{4,
+ author = {Eriksen, Marius},
+ title = {Your Server As a Function},
+ journal = {SIGOPS Oper. Syst. Rev.},
+ issue_date = {January 2014},
+ volume = {48},
+ number = {1},
+ month = may,
+ year = {2014},
+ issn = {0163-5980},
+ pages = {51--57},
+ numpages = {7},
+ url = {http://doi.acm.org/10.1145/2626401.2626413},
+ doi = {10.1145/2626401.2626413},
+ acmid = {2626413},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+}
+
+@misc{5,
+ title={What are the differences between JavaScript Promise and a Java Future?},
+ author={Google},
+ url = {https://www.quora.com/What-are-the-differences-between-JavaScript-Promise-and-a-Java-Future},
+ publisher = {Quora}
+}
+
+@misc{6,
+ title={The JavaScript Event Loop: Explained},
+ author={Erin Swenson-Healey},
+ url = {http://blog.carbonfive.com/2013/10/27/the-javascript-event-loop-explained/}
+}
+
+@misc{7,
+ title={jQuery.Deferred()},
+ url = {https://api.jquery.com/jquery.deferred/}
+}
+
+@misc{8,
+ title={Effective Scala},
+ author={Marius Eriksen},
+ url = {http://twitter.github.io/effectivescala}
+}
+
+@misc{8,
+ title={Concurrency model and Event Loop},
+ author={MDN},
+ url = {https://developer.mozilla.org/en-US/docs/Web/JavaScript/EventLoop}
+}
+
+@misc{9,
+ title={Task vs Future vs Promise},
+ author={Ned Stoyanov},
+ url = {http://www.nedstoyanov.com/promises-and-futures/}
+}
+
+@misc{10,
+ title={Futures and Promises - List of Implementations},
+ url = {http://www.liquisearch.com/futures_and_promises/list_of_implementations}
+}
+
+@misc{11,
+ title={Promises and Deferreds},
+ author={Trevor Burnham},
+ url = {https://www.safaribooksonline.com/library/view/async-javascript/9781941222782/f_0028.html}
+}
+
+@misc{12,
+ title={Futures and Promises},
+ url = {http://www.seastar-project.org/futures-promises/}
+}
+
+@misc{13,
+ title={Why do Promise libraries use event loops?},
+ url = {http://stackoverflow.com/questions/23447876/why-do-promise-libraries-use-event-loops}
+}
+
+@misc{14,
+ title={Why do Promise libraries use event loops?},
+ url = {http://stackoverflow.com/questions/23447876/why-do-promise-libraries-use-event-loops}
+}
+
+
+@misc{15,
+ title={Tasks, microtasks, queues and schedules},
+ author={Jake Archibald},
+ url = {https://jakearchibald.com/2015/tasks-microtasks-queues-and-schedules/}
+}
+
+@misc{16,
+ title={You're Missing the Point of Promises},
+ author={Domenic Denicola},
+ url = {https://blog.domenic.me/youre-missing-the-point-of-promises/}
+}
+
+@misc{17,
+ title={Dataflow Concurrency},
+ url = {http://doc.akka.io/docs/akka/2.3-M1/scala/dataflow.html}
+}
+
+@misc{18,
+ title={Promise & Deferred objects in JavaScript Pt.1: Theory and Semantics},
+ author={Chris Webb},
+ url = {http://blog.mediumequalsmessage.com/promise-deferred-objects-in-javascript-pt1-theory-and-semantics}
+}
+
+@misc{19,
+ title={Promise & Deferred objects in JavaScript Pt.1: Theory and Semantics},
+ author={Chris Webb},
+ url = {http://blog.mediumequalsmessage.com/promise-deferred-objects-in-javascript-pt1-theory-and-semantics}
+}
+
+@misc{20,
+ title={CompletableFuture},
+ author={Doug Lea},
+ url = {http://cs.oswego.edu/pipermail/concurrency-interest/2012-December/010423.html}
+}
+
+@misc{21,
+ title={CompletableFuture},
+ author={Doug Lea},
+ url = {http://cs.oswego.edu/pipermail/concurrency-interest/2012-December/010423.html}
+}
+
+@misc{22,
+ title={Difference between Future and Promise},
+ url = {http://stackoverflow.com/questions/14541975/difference-between-future-and-promise}
+}
+
+@misc{23,
+ title={Welcome to Thunk.org!},
+ url = {https://thunk.org/}
+}
+
+@misc{24,
+ title={CompletableFuture},
+ author={Doug Lea},
+ url = {http://cs.oswego.edu/pipermail/concurrency-interest/2012-December/010423.html}
+}
+
+@misc{25,
+ title={JVM Internals},
+ author={james d bloom},
+ url = {http://blog.jamesdbloom.com/JVMInternals.html}
+}
+
+@misc{26,
+ title={ExecutionContext},
+ url = {http://www.scala-lang.org/api/current/scala/concurrent/ExecutionContext.html}
+}
+
+@misc{27,
+ title={ForkJoinPool: the Other ExecutorService},
+ author={Jessica Kerr},
+ url = {http://blog.jessitron.com/2014/02/forkjoinpool-other-executorservice.html}
+}
+
+@misc{28,
+ title={Scala: the global ExecutionContext makes your life easier},
+ author={Jessica Kerr},
+ url = {http://blog.jessitron.com/2014/02/scala-global-executioncontext-makes.html}
+}
+
+@misc{29,
+ title={Learn implicits: Scala Futures},
+ author={Jorge Montero},
+ url = {http://engineering.monsanto.com/2015/06/15/implicits-futures/}
+}
+
+@misc{30,
+ title={Simple concurrency with Scala Futures (Futures tutorial)},
+ author={Alvin Alexander},
+ url = {http://alvinalexander.com/scala/concurrency-with-scala-futures-tutorials-examples}
+}
+
+@misc{31,
+ title={JavaScript Promises and Error Handling},
+ author={OdeToCode},
+ url = {http://odetocode.com/blogs/scott/archive/2015/10/01/javascript-promises-and-error-handling.aspx}
+}
+
+@inproceedings{32,
+ author = {Lea, Doug},
+ title = {A Java Fork/Join Framework},
+ booktitle = {Proceedings of the ACM 2000 Conference on Java Grande},
+ series = {JAVA '00},
+ year = {2000},
+ isbn = {1-58113-288-3},
+ location = {San Francisco, California, USA},
+ pages = {36--43},
+ numpages = {8},
+ url = {http://doi.acm.org/10.1145/337449.337465},
+ doi = {10.1145/337449.337465},
+ acmid = {337465},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+}
+
+@inproceedings{33,
+ author = {de Boer, Frank S. and Clarke, Dave and Johnsen, Einar Broch},
+ title = {A Complete Guide to the Future},
+ booktitle = {Proceedings of the 16th European Symposium on Programming},
+ series = {ESOP'07},
+ year = {2007},
+ isbn = {978-3-540-71314-2},
+ location = {Braga, Portugal},
+ pages = {316--330},
+ numpages = {15},
+ url = {http://dl.acm.org/citation.cfm?id=1762174.1762205},
+ acmid = {1762205},
+ publisher = {Springer-Verlag},
+ address = {Berlin, Heidelberg},
+}
+
+@inproceedings{34,
+ author = {de Boer, Frank S. and Clarke, Dave and Johnsen, Einar Broch},
+ title = {A Complete Guide to the Future},
+ booktitle = {Proceedings of the 16th European Symposium on Programming},
+ series = {ESOP'07},
+ year = {2007},
+ isbn = {978-3-540-71314-2},
+ location = {Braga, Portugal},
+ pages = {316--330},
+ numpages = {15},
+ url = {http://dl.acm.org/citation.cfm?id=1762174.1762205},
+ acmid = {1762205},
+ publisher = {Springer-Verlag},
+ address = {Berlin, Heidelberg},
+}
+
+@article{35,
+ author = {Friedman, D. P. and Wise, D. S.},
+ title = {Aspects of Applicative Programming for Parallel Processing},
+ journal = {IEEE Trans. Comput.},
+ issue_date = {April 1978},
+ volume = {27},
+ number = {4},
+ month = apr,
+ year = {1978},
+ issn = {0018-9340},
+ pages = {289--296},
+ numpages = {8},
+ url = {http://dx.doi.org/10.1109/TC.1978.1675100},
+ doi = {10.1109/TC.1978.1675100},
+ acmid = {1310419},
+ publisher = {IEEE Computer Society},
+ address = {Washington, DC, USA},
+ keywords = {Compiling, Lisp, functional combinations, multiprocessing, recursion, suspensions, suspensions, Compiling, functional combinations, Lisp, multiprocessing, recursion},
+}
+
+@techreport{36,
+ author = {Baker,Jr., Henry G. and Hewitt, Carl},
+ title = {The Incremental Garbage Collection of Processes},
+ year = {1977},
+ source = {http://www.ncstrl.org:8900/ncstrl/servlet/search?formname=detail\&id=oai%3Ancstrlh%3Amitai%3AMIT-AILab%2F%2FAIM-454},
+ publisher = {Massachusetts Institute of Technology},
+ address = {Cambridge, MA, USA},
+}
+
+@inproceedings{37,
+ author = {Miller, Mark S. and Tribble, E. Dean and Shapiro, Jonathan},
+ title = {Concurrency Among Strangers: Programming in E As Plan Coordination},
+ booktitle = {Proceedings of the 1st International Conference on Trustworthy Global Computing},
+ series = {TGC'05},
+ year = {2005},
+ isbn = {3-540-30007-4, 978-3-540-30007-6},
+ location = {Edinburgh, UK},
+ pages = {195--229},
+ numpages = {35},
+ url = {http://dl.acm.org/citation.cfm?id=1986262.1986274},
+ acmid = {1986274},
+ publisher = {Springer-Verlag},
+ address = {Berlin, Heidelberg},
+}
+
+@INPROCEEDINGS{38,
+ author = {Didier Le Botlan and Guido Tack and Andreas Rossberg and Andreas Rossberg and Didier Le and Botlan Guido Tack and Thorsten Brunklaus and Thorsten Brunklaus and Gert Smolka and Gert Smolka},
+ title = {Alice through the looking glass},
+ booktitle = {In Trends in Functional Programming},
+ year = {2006},
+ pages = {79--96},
+ publisher = {Intellect Books}
+}
+
+@misc{39,
+ title={Futures and Promises in Scala 2.10},
+ author={Heather Miller},
+ url = {https://speakerdeck.com/heathermiller/futures-and-promises-in-scala-2-dot-10}
+}
+
+@misc{40,
+ title={Futures and promises},
+ url = {https://en.wikipedia.org/wiki/Futures_and_promises}
+}
+
+@misc{41,
+ title={Lazy Futures or Promises?},
+ url = {https://groups.google.com/forum/#!topic/scala-language/dP2SyUCF724}
+}
+
+@misc{42,
+ title={Try},
+ url = {http://www.scala-lang.org/api/2.9.3/scala/util/Try.html}
+}
+
+
+@misc{43,
+ title={Finagle: A Protocol-Agnostic RPC System},
+ url = {https://blog.twitter.com/2011/finagle-a-protocol-agnostic-rpc-system}
+}
+
+@misc{44,
+ title={Promise.all()},
+ url = {https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/all}
+}
+
+@misc{45,
+ title={Promise Pipelining},
+ url = {https://www.revolvy.com/main/index.php?s=Promise%20pipelining}
+}
+
+@misc{46,
+ title={Promises},
+ url = {https://christophermeiklejohn.com/pl/2016/03/04/promises.html}
+}
+
+@misc{47,
+ title={futures},
+ url = {https://www.ps.uni-saarland.de/alice/manual/futures.html}
+}
diff --git a/_bibliography/langs-consistency.bib b/_bibliography/langs-consistency.bib
index 416b697..f944784 100644
--- a/_bibliography/langs-consistency.bib
+++ b/_bibliography/langs-consistency.bib
@@ -1,26 +1,44 @@
-@inproceedings{Uniqueness,
- author = {Philipp Haller and
- Martin Odersky},
- title = {Capabilities for Uniqueness and Borrowing},
- booktitle = {ECOOP 2010, Maribor, Slovenia, June 21-25, 2010.},
- pages = {354--378},
- year = {2010},
+@article{BloomL,
+ author = {Neil Conway, William Marczak, Peter Alvaro, Joseph M. Hellerstein, David Maier},
+ title = {Logic and Lattices for Distributed Programming},
+ journal = {UC Berkeley Technical Report No. UCB/EECS-2012-167},
+ volume = {167},
+ year = {2012},
+ url = {http://db.cs.berkeley.edu/papers/UCB-lattice-tr.pdf}
}
-@inproceedings{Elsman2005,
- author = {Martin Elsman},
- title = {Type-specialized serialization with sharing},
- booktitle = {Trends in Functional Programming},
- year = {2005},
- pages = {47-62},
+@inproceedings{Bloom,
+ author = {Peter Alvaro, Neil Conway, Joseph M. Hellerstein, William R. Marczak},
+ title = {Consistency Analysis in Bloom: a CALM and Collected Approach},
+ booktitle = {Conference on Innovative Data Systems Research},
+ series = {CIDR},
+ year = {2011},
+ url = {http://db.cs.berkeley.edu/papers/cidr11-bloom.pdf}
}
-@article{Kennedy2004,
- author = {Andrew Kennedy},
- title = {Pickler combinators},
- journal = {J. Funct. Program.},
- volume = {14},
- number = {6},
- year = {2004},
- pages = {727-739},
-} \ No newline at end of file
+@inproceedings{Lasp,
+ author = {Christopher Meiklejohn, Peter Van Roy},
+ title = {Lasp: A Language for Distributed, Coordination-Free Programming},
+ booktitle = {Proceedings of the 17th International Symposium on Principles and Practice of Declarative Programming},
+ series = {PPDP},
+ year = {2015},
+ url = {https://pdfs.semanticscholar.org/c0ad/b28526a29f0765669167d3201e2b3605895e.pdf}
+}
+
+@inproceedings{Dynamo,
+ author = {Giuseppe DeCandia, Deniz Hastorun, Madan Jampani, Gunavardhan Kakulapati, Avinash Lakshman, Alex Pilchin, Swaminathan Sivasubramanian, Peter Vosshall, Werner Vogels},
+ title = {Dynamo: Amazon’s Highly Available Key-value Store},
+ booktitle = {ACM Symposium on Operating Systems Principles},
+ series = {SOSP},
+ year = {2007},
+ url = {https://s3.amazonaws.com/AllThingsDistributed/sosp/amazon-dynamo-sosp2007.pdf},
+}
+
+@inproceedings{ConsistencyWithoutBorders,
+ author = {Peter Alvaro, Peter Bailis, Neil Conway, Joseph M. Hellerstein},
+ title = {Consistency Without Borders},
+ booktitle = {ACM Symposium on Cloud Computing},
+ series = {SOCC},
+ year = {2013},
+ url = {http://www.bailis.org/papers/consistency-socc2013.pdf},
+}
diff --git a/_bibliography/message-passing.bib b/_bibliography/message-passing.bib
index 416b697..7bb6962 100644
--- a/_bibliography/message-passing.bib
+++ b/_bibliography/message-passing.bib
@@ -1,26 +1,300 @@
-@inproceedings{Uniqueness,
- author = {Philipp Haller and
- Martin Odersky},
- title = {Capabilities for Uniqueness and Borrowing},
- booktitle = {ECOOP 2010, Maribor, Slovenia, June 21-25, 2010.},
- pages = {354--378},
- year = {2010},
-}
-
-@inproceedings{Elsman2005,
- author = {Martin Elsman},
- title = {Type-specialized serialization with sharing},
- booktitle = {Trends in Functional Programming},
- year = {2005},
- pages = {47-62},
-}
-
-@article{Kennedy2004,
- author = {Andrew Kennedy},
- title = {Pickler combinators},
- journal = {J. Funct. Program.},
- volume = {14},
- number = {6},
- year = {2004},
- pages = {727-739},
-} \ No newline at end of file
+@inproceedings{DeKoster:2016:YAT:3001886.3001890,
+ author = {De Koster, Joeri and Van Cutsem, Tom and De Meuter, Wolfgang},
+ title = {43 Years of Actors: A Taxonomy of Actor Models and Their Key Properties},
+ booktitle = {Proceedings of the 6th International Workshop on Programming Based on Actors, Agents, and Decentralized Control},
+ series = {AGERE 2016},
+ year = {2016},
+ isbn = {978-1-4503-4639-9},
+ location = {Amsterdam, Netherlands},
+ pages = {31--40},
+ numpages = {10},
+ url = {http://doi.acm.org/10.1145/3001886.3001890},
+ doi = {10.1145/3001886.3001890},
+ acmid = {3001890},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+ keywords = {Actor Model, Concurrency},
+}
+
+@article{Yonezawa:1986:OCP:960112.28722,
+ author = {Yonezawa, Akinori and Briot, Jean-Pierre and Shibayama, Etsuya},
+ title = {Object-oriented Concurrent Programming in ABCL/1},
+ journal = {SIGPLAN Not.},
+ issue_date = {Nov. 1986},
+ volume = {21},
+ number = {11},
+ month = jun,
+ year = {1986},
+ issn = {0362-1340},
+ pages = {258--268},
+ numpages = {11},
+ url = {http://doi.acm.org/10.1145/960112.28722},
+ doi = {10.1145/960112.28722},
+ acmid = {28722},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+}
+
+@inproceedings{Dedecker:2006:APA:2171327.2171349,
+ author = {Dedecker, Jessie and Van Cutsem, Tom and Mostinckx, Stijn and D\&\#39;Hondt, Theo and De Meuter, Wolfgang},
+ title = {Ambient-Oriented Programming in Ambienttalk},
+ booktitle = {Proceedings of the 20th European Conference on Object-Oriented Programming},
+ series = {ECOOP'06},
+ year = {2006},
+ isbn = {3-540-35726-2, 978-3-540-35726-1},
+ location = {Nantes, France},
+ pages = {230--254},
+ numpages = {25},
+ url = {http://dx.doi.org/10.1007/11785477_16},
+ doi = {10.1007/11785477_16},
+ acmid = {2171349},
+ publisher = {Springer-Verlag},
+ address = {Berlin, Heidelberg},
+}
+
+@inproceedings{Cutsem:2007:AOE:1338443.1338745,
+ author = {Cutsem, Tom Van and Mostinckx, Stijn and Boix, Elisa Gonzalez and Dedecker, Jessie and Meuter, Wolfgang De},
+ title = {AmbientTalk: Object-oriented Event-driven Programming in Mobile Ad Hoc Networks},
+ booktitle = {Proceedings of the XXVI International Conference of the Chilean Society of Computer Science},
+ series = {SCCC '07},
+ year = {2007},
+ isbn = {0-7695-3017-6},
+ pages = {3--12},
+ numpages = {10},
+ url = {http://dx.doi.org/10.1109/SCCC.2007.4},
+ doi = {10.1109/SCCC.2007.4},
+ acmid = {1338745},
+ publisher = {IEEE Computer Society},
+ address = {Washington, DC, USA},
+}
+
+@book{ReactiveSystems,
+ author = {Hugh McKee},
+ title = {Designing Reactive Systems: The Role of Actors in Distributed Architecture},
+ year = {2016},
+}
+
+@inproceedings{Miller:2005:CSP:1986262.1986274,
+ author = {Miller, Mark S. and Tribble, E. Dean and Shapiro, Jonathan},
+ title = {Concurrency Among Strangers: Programming in E As Plan Coordination},
+ booktitle = {Proceedings of the 1st International Conference on Trustworthy Global Computing},
+ series = {TGC'05},
+ year = {2005},
+ isbn = {3-540-30007-4, 978-3-540-30007-6},
+ location = {Edinburgh, UK},
+ pages = {195--229},
+ numpages = {35},
+ url = {http://dl.acm.org/citation.cfm?id=1986262.1986274},
+ acmid = {1986274},
+ publisher = {Springer-Verlag},
+ address = {Berlin, Heidelberg},
+}
+
+@article{Agha:1990:COP:83880.84528,
+ author = {Agha, Gul},
+ title = {Concurrent Object-oriented Programming},
+ journal = {Commun. ACM},
+ issue_date = {Sept. 1990},
+ volume = {33},
+ number = {9},
+ month = sep,
+ year = {1990},
+ issn = {0001-0782},
+ pages = {125--141},
+ numpages = {17},
+ url = {http://doi.acm.org/10.1145/83880.84528},
+ doi = {10.1145/83880.84528},
+ acmid = {84528},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+}
+
+@article{Armstrong:2010:ERL:1810891.1810910,
+ author = {Armstrong, Joe},
+ title = {Erlang},
+ journal = {Commun. ACM},
+ issue_date = {September 2010},
+ volume = {53},
+ number = {9},
+ month = sep,
+ year = {2010},
+ issn = {0001-0782},
+ pages = {68--75},
+ numpages = {8},
+ url = {http://doi.acm.org/10.1145/1810891.1810910},
+ doi = {10.1145/1810891.1810910},
+ acmid = {1810910},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+}
+
+@inproceedings{Haller:2012:IAM:2414639.2414641,
+ author = {Haller, Philipp},
+ title = {On the Integration of the Actor Model in Mainstream Technologies: The Scala Perspective},
+ booktitle = {Proceedings of the 2Nd Edition on Programming Systems, Languages and Applications Based on Actors, Agents, and Decentralized Control Abstractions},
+ series = {AGERE! 2012},
+ year = {2012},
+ isbn = {978-1-4503-1630-9},
+ location = {Tucson, Arizona, USA},
+ pages = {1--6},
+ numpages = {6},
+ url = {http://doi.acm.org/10.1145/2414639.2414641},
+ doi = {10.1145/2414639.2414641},
+ acmid = {2414641},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+ keywords = {actors, concurrent programming, distributed programming, scala, threads},
+}
+
+@inproceedings{Hewitt:1973:UMA:1624775.1624804,
+ author = {Hewitt, Carl and Bishop, Peter and Steiger, Richard},
+ title = {A Universal Modular ACTOR Formalism for Artificial Intelligence},
+ booktitle = {Proceedings of the 3rd International Joint Conference on Artificial Intelligence},
+ series = {IJCAI'73},
+ year = {1973},
+ location = {Stanford, USA},
+ pages = {235--245},
+ numpages = {11},
+ url = {http://dl.acm.org/citation.cfm?id=1624775.1624804},
+ acmid = {1624804},
+ publisher = {Morgan Kaufmann Publishers Inc.},
+ address = {San Francisco, CA, USA},
+}
+
+@article {vantcutsem14ambienttalk,
+ title = {AmbientTalk: programming responsive mobile peer-to-peer applications with actors},
+ journal = {Computer Languages, Systems and Structures, SCI Impact factor in 2013: 0.296, 5 year impact factor 0.329 (to appear)},
+ year = {2014},
+ publisher = {Elsevier},
+ issn = {1477-8424},
+ author = {Tom Van Cutsem and Elisa Gonzalez Boix and Christophe Scholliers and Andoni Lombide Carreton and Dries Harnie and Kevin Pinte and Wolfgang De Meuter},
+ editor = {Nick Benton}
+}
+
+@inproceedings{Bykov:2011:OCC:2038916.2038932,
+ author = {Bykov, Sergey and Geller, Alan and Kliot, Gabriel and Larus, James R. and Pandya, Ravi and Thelin, Jorgen},
+ title = {Orleans: Cloud Computing for Everyone},
+ booktitle = {Proceedings of the 2Nd ACM Symposium on Cloud Computing},
+ series = {SOCC '11},
+ year = {2011},
+ isbn = {978-1-4503-0976-9},
+ location = {Cascais, Portugal},
+ pages = {16:1--16:14},
+ articleno = {16},
+ numpages = {14},
+ url = {http://doi.acm.org/10.1145/2038916.2038932},
+ doi = {10.1145/2038916.2038932},
+ acmid = {2038932},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+ keywords = {cloud computing, distributed actors, programming models},
+}
+
+@article{Tomlinson:1988:ROC:67387.67410,
+ author = {Tomlinson, C. and Kim, W. and Scheevel, M. and Singh, V. and Will, B. and Agha, G.},
+ title = {Rosette: An Object-oriented Concurrent Systems Architecture},
+ journal = {SIGPLAN Not.},
+ issue_date = {April 1989},
+ volume = {24},
+ number = {4},
+ month = sep,
+ year = {1988},
+ issn = {0362-1340},
+ pages = {91--93},
+ numpages = {3},
+ url = {http://doi.acm.org/10.1145/67387.67410},
+ doi = {10.1145/67387.67410},
+ acmid = {67410},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+}
+
+@article{Haller:2009:SAU:1496391.1496422,
+ author = {Haller, Philipp and Odersky, Martin},
+ title = {Scala Actors: Unifying Thread-based and Event-based Programming},
+ journal = {Theor. Comput. Sci.},
+ issue_date = {February, 2009},
+ volume = {410},
+ number = {2-3},
+ month = feb,
+ year = {2009},
+ issn = {0304-3975},
+ pages = {202--220},
+ numpages = {19},
+ url = {http://dx.doi.org/10.1016/j.tcs.2008.09.019},
+ doi = {10.1016/j.tcs.2008.09.019},
+ acmid = {1496422},
+ publisher = {Elsevier Science Publishers Ltd.},
+ address = {Essex, UK},
+ keywords = {Actors, Concurrent programming, Events, Threads},
+}
+
+@inproceedings{epstein2011,
+ acmid = {2034690},
+ added-at = {2014-12-10T16:12:02.000+0100},
+ address = {New York, NY, USA},
+ author = {Epstein, Jeff and Black, Andrew P. and Peyton-Jones, Simon},
+ biburl = {http://www.bibsonomy.org/bibtex/24882f140b6bbca2806c57a22c57b5c5d/chesteve},
+ booktitle = {Proceedings of the 4th ACM symposium on Haskell},
+ doi = {10.1145/2034675.2034690},
+ interhash = {48386ecc60d5772410dec97e267a570b},
+ intrahash = {4882f140b6bbca2806c57a22c57b5c5d},
+ isbn = {978-1-4503-0860-1},
+ keywords = {imported},
+ location = {Tokyo, Japan},
+ numpages = {12},
+ pages = {118--129},
+ publisher = {ACM},
+ series = {Haskell '11},
+ timestamp = {2014-12-10T16:12:02.000+0100},
+ title = {Towards Haskell in the cloud},
+ xxxurl = {http://doi.acm.org/10.1145/2034675.2034690},
+ year = 2011
+}
+
+@book{Agha:1986:AMC:7929,
+ author = {Agha, Gul},
+ title = {Actors: A Model of Concurrent Computation in Distributed Systems},
+ year = {1986},
+ isbn = {0-262-01092-5},
+ publisher = {MIT Press},
+ address = {Cambridge, MA, USA},
+}
+
+@book{Peierls:2005:JCP:1076522,
+ author = {Peierls, Tim and Goetz, Brian and Bloch, Joshua and Bowbeer, Joseph and Lea, Doug and Holmes, David},
+ title = {Java Concurrency in Practice},
+ year = {2005},
+ isbn = {0321349601},
+ publisher = {Addison-Wesley Professional},
+}
+
+@misc{OrleansHalo4Talk,
+ title = {Building the Halo 4 Services with Orleans},
+ author = {Caitie McCaffrey},
+ year = {2015},
+ note = {QCon},
+ url = {https://www.infoq.com/presentations/halo-4-orleans},
+}
+
+@misc{ErlangWhatsAppTalk,
+ title= {Scaling to Millions of Simultaneous Connections},
+ author = {Rick Reed},
+ year = {2012},
+ note= {Erlang Factory SF Bay Area},
+ url = {https://vimeo.com/44312354},
+}
+
+@misc{PayPalAkka,
+ title = {squbs: A New, Reactive Way for PayPal to Build Applications},
+ author = {Akara Sucharitakul },
+ year = {2016},
+ url = {https://www.paypal-engineering.com/2016/05/11/squbs-a-new-reactive-way-for-paypal-to-build-applications/},
+}
+
+@misc{KayQuote,
+ title = {prototypes vs classes was: Re: Sun's HotSpot},
+ author = {Alan Kay},
+ year = {1998},
+ url = {http://lists.squeakfoundation.org/pipermail/squeak-dev/1998-October/017019.html},
+}
diff --git a/_bibliography/rpc.bib b/_bibliography/rpc.bib
index 416b697..638cf1b 100644
--- a/_bibliography/rpc.bib
+++ b/_bibliography/rpc.bib
@@ -7,20 +7,464 @@
year = {2010},
}
-@inproceedings{Elsman2005,
- author = {Martin Elsman},
- title = {Type-specialized serialization with sharing},
- booktitle = {Trends in Functional Programming},
- year = {2005},
- pages = {47-62},
-}
-
-@article{Kennedy2004,
- author = {Andrew Kennedy},
- title = {Pickler combinators},
- journal = {J. Funct. Program.},
- volume = {14},
- number = {6},
- year = {2004},
- pages = {727-739},
-} \ No newline at end of file
+@article{implementingrpc,
+ title={Implementing remote procedure calls},
+ author={Birrell, Andrew D and Nelson, Bruce Jay},
+ journal={ACM Transactions on Computer Systems (TOCS)},
+ volume={2},
+ number={1},
+ pages={39--59},
+ year={1984},
+ publisher={ACM}
+}
+
+@article{rmipaper,
+ title={A Distributed Object Model for the Java\^{} T\^{} M System},
+ author={Wollrath, Ann and Riggs, Roger and Waldo, Jim},
+ year={1996}
+}
+
+@book{rmibook,
+ title={Java. rmi: The Remote Method Invocation Guide},
+ author={Pitt, Esmond and McNiff, Kathy},
+ year={2001},
+ publisher={Addison-Wesley Longman Publishing Co., Inc.}
+}
+
+@book{critiqueofrpc,
+ title={A critique of the remote procedure call paradigm},
+ author={Tanenbaum, Andrew Stuart and van Renesse, Robbert},
+ year={1987}
+}
+
+@inproceedings{rpcoverrdma,
+ title={FaSST: Fast, Scalable and Simple Distributed Transactions with Two-Sided (RDMA) Datagram RPCs},
+ author={Kalia, Anuj and Kaminsky, Michael and Andersen, David G},
+ booktitle={12th USENIX Symposium on Operating Systems Design and Implementation (OSDI 16)},
+ pages={185--201},
+ organization={USENIX Association}
+}
+
+@inproceedings{sunnfs,
+ title={Design and implementation of the Sun network filesystem},
+ author={Sandberg, Russel and Goldberg, David and Kleiman, Steve and Walsh, Dan and Lyon, Bob},
+ booktitle={Proceedings of the Summer USENIX conference},
+ pages={119--130},
+ year={1985}
+}
+
+@misc{thrift,
+ title={Apache Thrift},
+ author={Prunicki, Andrew},
+ year={2009}
+}
+
+@book{corba,
+ title={CORBA 3 fundamentals and programming},
+ author={Siegel, Jon and Ph. D.},
+ volume={2},
+ year={2000},
+ publisher={John Wiley \& Sons New York, NY, USA:}
+}
+
+@misc{grpc,
+ title = {gRPC},
+ author={Google},
+ url = {http://www.grpc.io/},
+ note = {Accessed: 2016-11-11},
+}
+
+@misc{soaparticle1,
+ title = {Exclusive .NET Developer's Journal "Indigo" Interview with Microsoft's Don Box},
+ author={Derek Ferguson},
+ url = {http://dotnet.sys-con.com/node/45908},
+ note = {Accessed: 2016-11-11},
+}
+
+@misc{corbasite,
+ title = {CORBA-OMG},
+ author={CORBA},
+ url = {http://www.corba.org/},
+ note = {Accessed: 2016-11-11},
+}
+
+
+@inproceedings{finagle,
+ title={Your server as a function},
+ author={Eriksen, Marius},
+ booktitle={Proceedings of the Seventh Workshop on Programming Languages and Operating Systems},
+ pages={5},
+ year={2013},
+ organization={ACM}
+}
+
+@inproceedings{anycastrpc,
+ title={Anycast-RPC for Wireless Sensor Networks},
+ author={Bergstrom, Eric and Pandey, Raju},
+ booktitle={2007 IEEE International Conference on Mobile Adhoc and Sensor Systems},
+ pages={1--8},
+ year={2007},
+ organization={IEEE}
+}
+
+@article{rpcrfc,
+ title={RFC 1831 - RPC: Remote procedure call protocol specification version 2},
+ author={Srinivasan, Raj},
+ year={1995}
+}
+
+@misc{microservices1rpc,
+ title={Delving Into the Microservices Architecture},
+ author={Mueller, John},
+ year={2015},
+ url = {http://blog.smartbear.com/microservices/delving-into-the-microservices-architecture/},
+}
+
+@article{rpcorigin,
+ title={High-level framework for network-based resource sharing},
+ author={White, James E},
+ year={1975}
+}
+
+@inproceedings{interweave1,
+ title={Integrating remote invocation and distributed shared state},
+ author={Tang, Chunqiang and Chen, DeQing and Dwarkadas, Sandhya and Scott, Michael L},
+ booktitle={Parallel and Distributed Processing Symposium, 2004. Proceedings. 18th International},
+ pages={30},
+ year={2004},
+ organization={IEEE}
+}
+
+
+@inproceedings{interweave2,
+ title={Interweave: A middleware system for distributed shared state},
+ author={Chen, DeQing and Dwarkadas, Sandhya and Parthasarathy, Srinivasan and Pinheiro, Eduardo and Scott, Michael L},
+ booktitle={International Workshop on Languages, Compilers, and Run-Time Systems for Scalable Computers},
+ pages={207--220},
+ year={2000},
+ organization={Springer}
+}
+
+@inproceedings{interweave3,
+ title={Multi-level shared state for distributed systems},
+ author={Chen, DeQing and Tang, Chunqiang and Chen, Xiangchuan and Dwarkadas, Sandhya and Scott, Michael L},
+ booktitle={Parallel Processing, 2002. Proceedings. International Conference on},
+ pages={131--140},
+ year={2002},
+ organization={IEEE}
+}
+
+@article{offloading1,
+ title={A survey of computation offloading for mobile systems},
+ author={Kumar, Karthik and Liu, Jibang and Lu, Yung-Hsiang and Bhargava, Bharat},
+ journal={Mobile Networks and Applications},
+ volume={18},
+ number={1},
+ pages={129--140},
+ year={2013},
+ publisher={Springer}
+}
+
+@misc{ibis,
+ title={Ibis Communication middleware},
+ author={Ibis},
+ url = {https://www.cs.vu.nl/ibis/rmi.html},
+}
+
+@article{cuckoo,
+ title={Cuckoo: flexible compute-intensive task offloading in mobile cloud computing},
+ author={Zhou, Zhigang and Zhang, Hongli and Ye, Lin and Du, Xiaojiang},
+ journal={Wireless Communications and Mobile Computing},
+ year={2016},
+ publisher={Wiley Online Library}
+}
+
+@inproceedings{maui,
+ title={MAUI: making smartphones last longer with code offload},
+ author={Cuervo, Eduardo and Balasubramanian, Aruna and Cho, Dae-ki and Wolman, Alec and Saroiu, Stefan and Chandra, Ranveer and Bahl, Paramvir},
+ booktitle={Proceedings of the 8th international conference on Mobile systems, applications, and services},
+ pages={49--62},
+ year={2010},
+ organization={ACM}
+}
+
+@article{docker,
+ title={Docker: lightweight linux containers for consistent development and deployment},
+ author={Merkel, Dirk},
+ journal={Linux Journal},
+ volume={2014},
+ number={239},
+ pages={2},
+ year={2014},
+ publisher={Belltown Media}
+}
+
+@inproceedings{selfdest,
+ title={RFID systems and security and privacy implications},
+ author={Sarma, Sanjay E and Weis, Stephen A and Engels, Daniel W},
+ booktitle={International Workshop on Cryptographic Hardware and Embedded Systems},
+ pages={454--469},
+ year={2002},
+ organization={Springer}
+}
+
+@misc{oraclenfs,
+ title={Overview of Secure RPC},
+ author={Oracle},
+ url = {https://docs.oracle.com/cd/E23823_01/html/816-4557/auth-2.html},
+}
+
+@misc{capnprotosecure,
+ title={Is Cap'n Proto Secure?},
+ author={Kenton},
+ url = {https://capnproto.org/faq.html#is-capn-proto-secure},
+}
+
+
+@article{grid1,
+ title={High performance GridRPC middleware},
+ author={Caniou, Yves and Caron, Eddy and Desprez, Fr{\'e}d{\'e}ric and Nakada, Hidemoto and Tanaka, Yoshio and Seymour, Keith},
+ journal={Recent Developments in Grid Technology and Applications, Nova Science Publishers},
+ pages={141--181},
+ year={2008}
+}
+
+@incollection{gridsolve1,
+ title={Gridsolve: The evolution of a network enabled solver},
+ author={YarKhan, Asim and Dongarra, Jack and Seymour, Keith},
+ booktitle={Grid-Based Problem Solving Environments},
+ pages={215--224},
+ year={2007},
+ publisher={Springer}
+}
+
+@article{gridsolve2,
+ title={Interactive Grid-access using Gridsolve and giggle},
+ author={Hardt, M and Seymour, Keith and Dongarra, Jack and Zapf, M and Ruitter, NV},
+ journal={Computing and Informatics},
+ volume={27},
+ number={2},
+ pages={233--248},
+ year={2012}
+}
+
+@article{ninf,
+ title={Ninf-G: A reference implementation of RPC-based programming middleware for Grid computing},
+ author={Tanaka, Yoshio and Nakada, Hidemoto and Sekiguchi, Satoshi and Suzumura, Toyotaro and Matsuoka, Satoshi},
+ journal={Journal of Grid computing},
+ volume={1},
+ number={1},
+ pages={41--51},
+ year={2003},
+ publisher={Springer}
+}
+
+@article{erlang,
+ title={Concurrent programming in ERLANG},
+ author={Armstrong, Joe and Virding, Robert and Wikstr{\"o}m, Claes and Williams, Mike},
+ year={1993},
+ publisher={Citeseer}
+}
+
+@misc{Apigee,
+ title={gRPC: The Story of Microservices at Square},
+ author={Surtani, Manick and Ho, Alan},
+ url = {https://www.youtube.com/watch?v=-2sWDr3Z0Wo},
+}
+
+@misc{CoreSurfaceAPIs,
+ title={gRPC core APIs},
+ author={Google},
+ url = {https://github.com/grpc/grpc/tree/master/src/core},
+}
+
+@misc{gRPCCompanies,
+ title={About gRPC},
+ author={Google},
+ url = {http://www.grpc.io/about/},
+}
+
+@misc{gRPCLanguages,
+ title={gRPC Documentation},
+ author={Google},
+ url = {http://www.grpc.io/docs/},
+}
+
+@misc{gRPCProtos,
+ title={Google APIs},
+ author={Google},
+ url = {https://github.com/googleapis/googleapis/},
+}
+
+@misc{rpcimage,
+ title={Remote Procedure Call (RPC)},
+ author={Taing, Nguonly},
+ url = {http://lycog.com/distributed-systems/remote-procedure-call/},
+ note = {Image URL: http://lycog.com/wp-content/uploads/2011/03/rpc-10-steps.png}
+}
+
+@misc{trendrpcthrift,
+ title={Remote Procedure Call (RPC)},
+ author={Google Trends},
+ url = {https://www.google.com/trends/explore?cat=31&date=today%2012-m&q=apache%20thrift,grpc&hl=en-US}
+}
+
+@misc{grpcauth,
+ title={GRPC Authentication},
+ author={Google},
+ url = {http://www.grpc.io/docs/guides/auth.html},
+}
+
+@misc{rfc707,
+ title={RFC 707: A high-level framework for network-based resource sharing},
+ author={White, James E},
+ year={1975},
+ publisher={December}
+}
+
+@techreport{rfc674,
+ title={RFC 674: Procedure call documents: Version 2},
+ author={Postel, J and White, JE},
+ year={1974}
+}
+
+@article{rfc684,
+ title={RFC 684: Commentary on procedure calling as a network protocol},
+ author={Schantz, Richard},
+ year={1975}
+}
+
+@misc{grpcbetter,
+ title={GRPC Authentication},
+ author={Google},
+ url = {https://www.quora.com/Is-GRPC-better-than-Thrift},
+ publisher = {Quora}
+}
+
+@misc{multiplexingthrift,
+ title={Added service multiplexing support},
+ author={Yu, Lixin},
+ url = {https://github.com/eleme/thriftpy/pull/88/commits/0877531f9246ca993c1d9af5d29cd009ee6ec7d4},
+ publisher = {Github}
+}
+
+@techreport{rfc5531,
+ title={RFC 5531: RPC: Remote Procedure Call Protocol Specification Version 2},
+ author={Thurlow, R},
+ year={2009}
+}
+
+@techreport{rfc1831,
+ title={RFC 1831: RPC: Remote Procedure Call Protocol Specification Version 2},
+ author={Srinivasan, R},
+ year={1995}
+}
+
+@misc{grpcchapter,
+ title={gRPC},
+ booktitle={Programming Models for Distributed Computation},
+ author={Grosu, P and Abdul Rehman, M and Anderson, E and Pai, V and Miller, H},
+ url = {http://dist-prog-book.com/chapter/1/gRPC.html},
+ publisher = {Github}
+}
+
+@misc{stubrpc,
+ title={stub},
+ author={Rouse, M},
+ url = {http://whatis.techtarget.com/definition/stub},
+ publisher = {WhatIs}
+}
+
+
+@misc{grpcpersec,
+ title={Scalable Realtime Microservices with Kubernetes and gRPC},
+ author={Mandel, M},
+ url = {https://www.youtube.com/watch?v=xb8u2s7cxzg&t=486s},
+ publisher = {YouTube}
+}
+
+@misc{usgdp,
+ title={2016 United States Budget Estimate},
+ author={InsideGov},
+ url = {http://federal-budget.insidegov.com/l/119/2016-Estimate},
+ publisher = {InsideGov}
+}
+
+
+@incollection{notedistributed,
+ title={A note on distributed computing},
+ author={Waldo, Jim and Wyant, Geoff and Wollrath, Ann and Kendall, Sam},
+ booktitle={Mobile Object Systems Towards the Programmable Internet},
+ pages={49--64},
+ year={1997},
+ publisher={Springer}
+}
+
+@misc{dewan,
+ title={Synchronous vs Asynchronous},
+ author={Dewan, P},
+ url = {http://www.cs.unc.edu/~dewan/242/s07/notes/ipc/node9.html},
+ year={2006},
+ publisher = {UNC}
+}
+
+
+@misc{async,
+ title={Asynchronous RPC},
+ url = {https://msdn.microsoft.com/en-us/library/windows/desktop/aa373550(v=vs.85).aspx},
+ year={2006},
+ publisher = {Microsoft}
+}
+
+@misc{roi,
+ title={Remote Object Invocation},
+ author={Setia, S},
+ url = {https://cs.gmu.edu/~setia/cs707/slides/rmi-imp.pdf},
+ publisher = {QMU}
+}
+
+
+@misc{Wiener,
+ title={XML-RPC},
+ author={Weiner, D},
+ url = {http://xmlrpc.scripting.com/spec.html},
+ year={1999},
+ publisher = {QMU}
+}
+
+
+@misc{soapvsxml,
+ title={XML-RPC},
+ author={Jones, M},
+ url = {https://www.quora.com/What-is-the-difference-between-xml-rpc-and-soap},
+ year={2014},
+ publisher = {Quora}
+}
+
+@misc{thrifttut,
+ title={Apache THRIFT: A Much Needed Tutorial},
+ author={Maheshwar, C},
+ url = {http://digital-madness.in/blog/wp-content/uploads/2012/11/BSD_08_2013.8-18.pdf},
+ year={2013},
+ publisher = {Digital Madness}
+}
+
+@misc{finagletut,
+ title={Finagle-Quickstart},
+ author={Twitter},
+ url = {https://twitter.github.io/finagle/guide/Quickstart.html},
+ year={2016},
+ publisher = {Twitter}
+}
+
+
+@misc{norman,
+ title={Communication Fundamentals},
+ author={Norman, S},
+ url = {http://slideplayer.com/slide/8555756/},
+ year={2015},
+ publisher = {SlideShare}
+}
+
+
+
diff --git a/_bibliography/streaming.bib b/_bibliography/streaming.bib
index 416b697..bc85bf1 100644
--- a/_bibliography/streaming.bib
+++ b/_bibliography/streaming.bib
@@ -1,26 +1,141 @@
-@inproceedings{Uniqueness,
- author = {Philipp Haller and
- Martin Odersky},
- title = {Capabilities for Uniqueness and Borrowing},
- booktitle = {ECOOP 2010, Maribor, Slovenia, June 21-25, 2010.},
- pages = {354--378},
- year = {2010},
-}
-
-@inproceedings{Elsman2005,
- author = {Martin Elsman},
- title = {Type-specialized serialization with sharing},
- booktitle = {Trends in Functional Programming},
- year = {2005},
- pages = {47-62},
-}
-
-@article{Kennedy2004,
- author = {Andrew Kennedy},
- title = {Pickler combinators},
- journal = {J. Funct. Program.},
- volume = {14},
- number = {6},
- year = {2004},
- pages = {727-739},
+@inproceedings{chandrasekaran2003telegraphcq,
+ title={TelegraphCQ: continuous dataflow processing},
+ author={Chandrasekaran, Sirish and Cooper, Owen and Deshpande, Amol and Franklin, Michael J and Hellerstein, Joseph M and Hong, Wei and Krishnamurthy, Sailesh and Madden, Samuel R and Reiss, Fred and Shah, Mehul A},
+ booktitle={Proceedings of the 2003 ACM SIGMOD international conference on Management of data},
+ pages={668--668},
+ year={2003},
+ organization={ACM}
+}
+
+@inproceedings{zaharia2012resilient,
+ title={Resilient distributed datasets: A fault-tolerant abstraction for in-memory cluster computing},
+ author={Zaharia, Matei and Chowdhury, Mosharaf and Das, Tathagata and Dave, Ankur and Ma, Justin and McCauley, Murphy and Franklin, Michael J and Shenker, Scott and Stoica, Ion},
+ booktitle={Proceedings of the 9th USENIX conference on Networked Systems Design and Implementation},
+ pages={2--2},
+ year={2012},
+ organization={USENIX Association}
+}
+
+@misc{apachekafka,
+ title = {Apache Kafka},
+ howpublished = {https://kafka.apache.org/},
+ note = {Accessed: 2016-12-9}
+}
+
+@misc{apachestorm,
+ title = {Apache Storm},
+ howpublished = {http://storm.apache.org/},
+ note = {Accessed: 2016-12-9}
+}
+
+@inproceedings{zaharia2012discretized,
+ title={Discretized streams: an efficient and fault-tolerant model for stream processing on large clusters},
+ author={Zaharia, Matei and Das, Tathagata and Li, Haoyuan and Shenker, Scott and Stoica, Ion},
+ booktitle={Presented as part of the},
+ year={2012}
+}
+
+@inproceedings{murray2013naiad,
+ title={Naiad: a timely dataflow system},
+ author={Murray, Derek G and McSherry, Frank and Isaacs, Rebecca and Isard, Michael and Barham, Paul and Abadi, Mart{\'\i}n},
+ booktitle={Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles},
+ pages={439--455},
+ year={2013},
+ organization={ACM}
+}
+
+@article{akidau2015dataflow,
+ title={The dataflow model: a practical approach to balancing correctness, latency, and cost in massive-scale, unbounded, out-of-order data processing},
+ author={Akidau, Tyler and Bradshaw, Robert and Chambers, Craig and Chernyak, Slava and Fern{\'a}ndez-Moctezuma, Rafael J and Lax, Reuven and McVeety, Sam and Mills, Daniel and Perry, Frances and Schmidt, Eric and others},
+ journal={Proceedings of the VLDB Endowment},
+ volume={8},
+ number={12},
+ pages={1792--1803},
+ year={2015},
+ publisher={VLDB Endowment}
+}
+
+@inproceedings{toshniwal2014storm,
+ title={Storm@ twitter},
+ author={Toshniwal, Ankit and Taneja, Siddarth and Shukla, Amit and Ramasamy, Karthik and Patel, Jignesh M and Kulkarni, Sanjeev and Jackson, Jason and Gade, Krishna and Fu, Maosong and Donham, Jake and others},
+ booktitle={Proceedings of the 2014 ACM SIGMOD international conference on Management of data},
+ pages={147--156},
+ year={2014},
+ organization={ACM}
+}
+
+@inproceedings{kulkarni2015twitter,
+ title={Twitter heron: Stream processing at scale},
+ author={Kulkarni, Sanjeev and Bhagat, Nikunj and Fu, Maosong and Kedigehalli, Vikas and Kellogg, Christopher and Mittal, Sailesh and Patel, Jignesh M and Ramasamy, Karthik and Taneja, Siddarth},
+ booktitle={Proceedings of the 2015 ACM SIGMOD International Conference on Management of Data},
+ pages={239--250},
+ year={2015},
+ organization={ACM}
+}
+
+@misc{spotifylabs,
+ title = {Spotify Labs},
+ howpublished = {https://labs.spotify.com/2016/02/25/spotifys-event-delivery-the-road-to-the-cloud-part-i/},
+ note = {Accessed: 2016-12-9}
+}
+
+@article{akidau2013millwheel,
+ title={MillWheel: fault-tolerant stream processing at internet scale},
+ author={Akidau, Tyler and Balikov, Alex and Bekiro{\u{g}}lu, Kaya and Chernyak, Slava and Haberman, Josh and Lax, Reuven and McVeety, Sam and Mills, Daniel and Nordstrom, Paul and Whittle, Sam},
+ journal={Proceedings of the VLDB Endowment},
+ volume={6},
+ number={11},
+ pages={1033--1044},
+ year={2013},
+ publisher={VLDB Endowment}
+}
+
+@misc{apacheaurora,
+ title = {Apache Aurora},
+ howpublished = {http://aurora.apache.org},
+ note = {Accessed: 2016-12-15}
+}
+
+@misc{nimbusproject,
+ title = {Nimbus Project},
+ howpublished = {http://www.nimbusproject.org/docs/2.10.1/},
+ note = {Accessed: 2016-12-15}
+}
+@inproceedings{alon1996space,
+ title={The space complexity of approximating the frequency moments},
+ author={Alon, Noga and Matias, Yossi and Szegedy, Mario},
+ booktitle={Proceedings of the twenty-eighth annual ACM symposium on Theory of computing},
+ pages={20--29},
+ year={1996},
+ organization={ACM}
+}
+@misc{pipelinedb,
+ title = {PipelineDB},
+ howpublished = {https://www.pipelinedb.com/},
+ note = {Accessed: 2016-12-15}
+}
+@misc{apachesamza,
+ title = {Apache Samza},
+ howpublished = {http://samza.apache.org},
+ note = {Accessed: 2016-12-15}
+}
+@misc{apacheflink,
+ title = {Apache Flink},
+ howpublished = {https://flink.apache.org},
+ note = {Accessed: 2016-12-15}
+}
+@misc{structuredstreaming,
+ title = {Structured Streaming},
+ howpublished = {http://spark.apache.org/docs/latest/structured-streaming-programming-guide.html#overview},
+ note = {Accessed: 2016-12-15}
+}
+@misc{alibabaflink,
+ title = {Alibaba Flinke},
+ howpublished = {http://data-artisans.com/blink-flink-alibaba-search/#more-1698},
+ note = {Accessed: 2016-12-15}
+}
+@misc{hadoopyarn,
+ title = {Hadoop YARN},
+ howpublished = {https://hadoop.apache.org/docs/r2.7.2/hadoop-yarn/hadoop-yarn-site/YARN.html},
+ note = {Accessed: 2016-12-15}
} \ No newline at end of file