From 387639edfc0d68728173345739f24cb2d504050e Mon Sep 17 00:00:00 2001 From: Alan Johnson Date: Fri, 4 Sep 2015 11:50:39 -0400 Subject: [PATCH 1/7] add Deprecating the Observer Pattern by Maier, Rompf & Odersky --- .../deprecating-the observer-pattern.pdf | Bin 0 -> 209549 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 functional_reactive_programming/deprecating-the observer-pattern.pdf diff --git a/functional_reactive_programming/deprecating-the observer-pattern.pdf b/functional_reactive_programming/deprecating-the observer-pattern.pdf new file mode 100644 index 0000000000000000000000000000000000000000..32785ab6c8886a9cd18eb187846285ad53d2d7ec GIT binary patch literal 209549 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%0AU;7M6~I*mmp_8 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 literal 0 HcmV?d00001 From 648696b242e119feafba6137452b591478cfd5a5 Mon Sep 17 00:00:00 2001 From: Zeeshan Lakhani Date: Thu, 1 Oct 2015 12:26:23 -0400 Subject: [PATCH 2/7] Update to account for slack channel. --- CODE_OF_CONDUCT.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index e3afbe7..4bea604 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -8,12 +8,12 @@ Papers We Love events are for anyone interested in Computer Science/Computer Eng **Be an adult, don't be a jerk.** -We value the participation of each member of the community and want all attendees to have an enjoyable and fulfilling experience. Accordingly, all attendees are expected to show respect and courtesy to other attendees throughout the meet-ups and at all Papers We Love events and interactions on the GitHub repository and IRC channel. +We value the participation of each member of the community and want all attendees to have an enjoyable and fulfilling experience. Accordingly, all attendees are expected to show respect and courtesy to other attendees throughout the meet-ups and at all Papers We Love events and interactions on the GitHub repository, IRC or [Slack](paperswelove.slack.com) channels. Need help? ---------- -If you are experiencing harassment on or have concerns about content within the [GitHub repo](https://github.com/papers-we-love/papers-we-love), the **#paperswelove** IRC channel on Freenode, or [PapersWeLove.org](http://paperswelove.org) please contact: +If you are experiencing harassment on or have concerns about content within the [GitHub repo](https://github.com/papers-we-love/papers-we-love), the **#paperswelove** IRC channel on Freenode, the **paperswelove.slack.com** Slack channel, or [PapersWeLove.org](http://paperswelove.org) please contact: - **Zeeshan Lakhani** [zeeshan@paperswelove.org](mailto:zeeshan@paperswelove.org) - **Clint Newsom** [clint@paperswelove.org](mailto:clint@paperswelove.org) From c83742b09b967f6e0ad048e3e03603733847cf47 Mon Sep 17 00:00:00 2001 From: Sam L'ecuyer Date: Thu, 1 Oct 2015 10:41:49 -0700 Subject: [PATCH 3/7] add metaobject protocols --- object_oriented_programming/README.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 object_oriented_programming/README.md diff --git a/object_oriented_programming/README.md b/object_oriented_programming/README.md new file mode 100644 index 0000000..41927c4 --- /dev/null +++ b/object_oriented_programming/README.md @@ -0,0 +1,3 @@ + + * [Metaobject protocols: Why we want them and what else they can do](http://cseweb.ucsd.edu/~vahdat/papers/mop.pdf) + From 038e7abaf187c4125c9b434e427c4c569b56a4fe Mon Sep 17 00:00:00 2001 From: Ted Fujimoto Date: Mon, 5 Oct 2015 16:17:46 -0400 Subject: [PATCH 4/7] Add Papers We Love Philadelphia --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 24b0a52..acd7903 100644 --- a/README.md +++ b/README.md @@ -37,6 +37,7 @@ Here are our official chapters. Let us know if you are interested in [starting o * [Winnipeg](http://www.meetup.com/Papers-We-Love-Winnipeg/) * [Paris](http://www.meetup.com/Papers-We-Love-Paris/) * [Brasilia](http://www.meetup.com/papers-we-love-bsb) +* [Philadelphia](http://www.meetup.com/Papers-We-Love-Philadelphia/) All of our meetups follow our [Code of Conduct](CODE_OF_CONDUCT.md). From d2acf0fc3b8fe06a3fc189df18902a0609f3f718 Mon Sep 17 00:00:00 2001 From: Zachary Jones Date: Wed, 7 Oct 2015 15:11:04 -0400 Subject: [PATCH 5/7] Update to all READMEs for hosted content reorganization of so-called historical papers --- api_design/README.md | 6 +- artificial_intelligence/README.md | 9 +- audio_comp_sci/README.md | 4 +- biocomputing/README.md | 2 +- caching/README.md | 6 +- clojure/README.md | 2 +- comp_sci_fundamentals_and_history/README.md | 9 +- computer_graphics/README.md | 11 +- computer_vision/README.md | 2 + concurrency/README.md | 2 + cryptography/README.md | 2 + data_compression/README.md | 3 + data_replication/README.md | 4 + data_structures/README.md | 7 + datastores/README.md | 6 + design/README.md | 5 + digital_currency/README.md | 3 + distributed_systems/README.md | 136 +++++++++++++++++- ethics/README.md | 2 + experimental_algorithmics/README.md | 2 +- functional_programming/README.md | 14 +- functional_reactive_programming/README.md | 7 + gamification/README.md | 6 + garbage_collection/README.md | 5 +- gossip/README.md | 2 + haskell/README.md | 6 +- information_retrieval/README.md | 2 +- information_theory/README.md | 4 +- logic_and_programming/README.md | 6 +- machine_learning/README.md | 4 +- macros/README.md | 2 + memory_management/README.md | 21 ++- .../making-lockless-synchronization-fast.pdf | Bin memory_reclamation/README.md | 14 -- networks/README.md | 2 + new_paradigms/README.md | 3 + operating_systems/README.md | 5 + pattern_matching/README.md | 8 +- physics/README.md | 2 + ...n-the-electrodynamics-of-moving-bodies.pdf | Bin plt/README.md | 18 ++- processes/README.md | 4 +- security/README.md | 6 + smalltalk/README.md | 4 + .../The-Early-History-Of-Smalltalk.pdf | Bin sports_analytics/README.md | 3 + sublinear_algorithms/README.md | 2 +- time_series/README.md | 2 +- 48 files changed, 309 insertions(+), 66 deletions(-) create mode 100644 data_replication/README.md create mode 100644 digital_currency/README.md rename {memory_reclamation => memory_management}/making-lockless-synchronization-fast.pdf (100%) delete mode 100644 memory_reclamation/README.md create mode 100644 new_paradigms/README.md rename {historical/physics => physics}/on-the-electrodynamics-of-moving-bodies.pdf (100%) create mode 100644 smalltalk/README.md rename {historical/smalltalk => smalltalk}/The-Early-History-Of-Smalltalk.pdf (100%) create mode 100644 sports_analytics/README.md diff --git a/api_design/README.md b/api_design/README.md index e69976e..b402441 100644 --- a/api_design/README.md +++ b/api_design/README.md @@ -1 +1,5 @@ -[Architectural Styles and the Design of Network-based Software Architectures (REST) by Roy Fielding](https://www.ics.uci.edu/~fielding/pubs/dissertation/fielding_dissertation.pdf) +# API Design + +* [Architectural Styles and the Design of Network-based Software Architectures (REST) by Roy Fielding](https://www.ics.uci.edu/~fielding/pubs/dissertation/fielding_dissertation.pdf) + +* :scroll: [Little Manual of API Design](api-design.pdf) \ No newline at end of file diff --git a/artificial_intelligence/README.md b/artificial_intelligence/README.md index a4cf9dc..6db7fe6 100644 --- a/artificial_intelligence/README.md +++ b/artificial_intelligence/README.md @@ -1,7 +1,10 @@ ## Artificial Intelligence -[Analysis of Three Bayesian Network Inference Algorithms:Variable Elimination, Likelihood Weighting, and Gibbs Sampling](https://github.com/papers-we-love/papers-we-love/blob/master/artificial_intelligence/3-bayesian-network-inference-algorithm.pdf) by Rose F. Liu, Rusmin Soetjipto +* [:scroll:](3-bayesian-network-inference-algorithm.pdf) [Analysis of Three Bayesian Network Inference Algorithms:Variable Elimination, Likelihood Weighting, and Gibbs Sampling](https://github.com/papers-we-love/papers-we-love/blob/master/artificial_intelligence/3-bayesian-network-inference-algorithm.pdf) by Rose F. Liu, Rusmin Soetjipto -[Computing Machinery and Intelligence](http://www.csee.umbc.edu/courses/471/papers/turing.pdf) by A.M. Turing +* :scroll: [Efficient Selectivity and Backup Operators in Monte-Carlo Tree Search](efficient-selectivity-and-backup-operators-in-monte-carlo-tree-search.pdf) -[Judea Pearl](http://bayes.cs.ucla.edu/jp_home.html) folder - Papers by Judea Pearl, 2011 winner of the ACM Turing Award. +* [Computing Machinery and Intelligence](http://www.csee.umbc.edu/courses/471/papers/turing.pdf) by A.M. Turing + +* [Judea Pearl](http://bayes.cs.ucla.edu/jp_home.html) folder - Papers by Judea Pearl, 2011 winner of the ACM Turing Award. + * [:open_file_folder: Summary of Papers](judea_pearl/) \ No newline at end of file diff --git a/audio_comp_sci/README.md b/audio_comp_sci/README.md index 24932af..e20d054 100644 --- a/audio_comp_sci/README.md +++ b/audio_comp_sci/README.md @@ -1,5 +1,5 @@ ## Audio-related Computer Science -[An ethnographic and technological study of breakbeats in Hardcore, Jungle, and Drum & Bass](https://github.com/papers-we-love/papers-we-love/blob/master/audio_comp_sci/an-ethnographic-and-technological-study-of-breakbeats.pdf) by Jason A. Hockman +* :scroll: [An ethnographic and technological study of breakbeats in Hardcore, Jungle, and Drum & Bass](an-ethnographic-and-technological-study-of-breakbeats.pdf) by Jason A. Hockman -[An Industrial-Strength Audio Search Algorithm](https://github.com/papers-we-love/papers-we-love/blob/master/audio_comp_sci/shazam-audio-search-algorithm.pdf) by Avery Li-Chun Wang +* :scroll: [An Industrial-Strength Audio Search Algorithm](shazam-audio-search-algorithm.pdf) by Avery Li-Chun Wang diff --git a/biocomputing/README.md b/biocomputing/README.md index dacd61a..dfb2723 100644 --- a/biocomputing/README.md +++ b/biocomputing/README.md @@ -1,4 +1,4 @@ -##Biocomputing +## Biocomputing Some resources that may assist in understanding papers in this section: - Polymerase Chain Reaction ( [a short video](http://www.youtube.com/watch?v=2KoLnIwoZKU), [wikipedia](http://en.wikipedia.org/wiki/Pcr)) diff --git a/caching/README.md b/caching/README.md index fb3f291..f56f0fe 100644 --- a/caching/README.md +++ b/caching/README.md @@ -1,3 +1,5 @@ -[An O(1) algorithm for implementing the LFU cache eviction scheme](https://github.com/papers-we-love/papers-we-love/blob/master/caching/a-constant-algorithm-for-implementing-the-lfu-cache-eviction-scheme.pdf) by Prof. Ketan Shah, Anirban Mitra, Dhruv Matani +# Caching -[2Q: A Low Overhead High Performance Buffer Management Replacement Algorithm](http://www.vldb.org/conf/1994/P439.PDF) by Theodore Johnson and Dennis Shasha +* [:scroll:](a-constant-algorithm-for-implementing-the-lfu-cache-eviction-scheme.pdf) [An O(1) algorithm for implementing the LFU cache eviction scheme](https://github.com/papers-we-love/papers-we-love/blob/master/caching/a-constant-algorithm-for-implementing-the-lfu-cache-eviction-scheme.pdf) by Prof. Ketan Shah, Anirban Mitra, Dhruv Matani + +* [:scroll:](2q-a-low-overhead-high-performance-buffer-management-replacement-algorithm.pdf) [2Q: A Low Overhead High Performance Buffer Management Replacement Algorithm](http://www.vldb.org/conf/1994/P439.PDF) by Theodore Johnson and Dennis Shasha diff --git a/clojure/README.md b/clojure/README.md index 62ccf01..744d286 100644 --- a/clojure/README.md +++ b/clojure/README.md @@ -10,7 +10,7 @@ This is a cross-listing of papers related to Clojure, it's core, contrib and pop * [Compiling Pattern Matching to good Decision Trees](http://www.cs.tufts.edu/~nr/cs257/archive/luc-maranget/jun08.pdf) ## Type Theory -* [Practical Optional Types for Clojure](http://frenchy64.github.io/papers/typed-clojure-draft.pdf) (draft) +* [:scroll:](a-practical-optional-type-system-for-clojure.pdf) [Practical Optional Types for Clojure](http://frenchy64.github.io/papers/typed-clojure-draft.pdf) (draft) ## Clojure/West 2014 * Applicative Functional Programming diff --git a/comp_sci_fundamentals_and_history/README.md b/comp_sci_fundamentals_and_history/README.md index 3f993ea..917f858 100644 --- a/comp_sci_fundamentals_and_history/README.md +++ b/comp_sci_fundamentals_and_history/README.md @@ -2,7 +2,8 @@ * [Turing, On computable numbers, with an application to the Entscheidungsproblem](http://www.turingarchive.org/browse.php/B/12) by Alan Turing * [Mealy, A Method for Synthesizing Sequential Circuits] (http://www3.alcatel-lucent.com/bstj/vol34-1955/articles/bstj34-5-1045.pdf) by George H. Mealy -* :scroll: [Back to the Future - The Story of Squeak, A Practical Smalltalk Written in Itself](https://github.com/papers-we-love/papers-we-love/blob/master/comp_sci_fundamentals_and_history/story-of-squeak-a-practical-smalltalk-written-in-itself.pdf) by Dan Ingalls, Ted Kaehler, John Maloney, Scott Wallace & Alan Kay -* :scroll: [Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part I](https://github.com/papers-we-love/papers-we-love/blob/master/comp_sci_fundamentals_and_history/recursive-functions-of-symbolic-expressions-and-their-computation-by-machine-parti.pdf) by John McCarthy -* :scroll: [An Axiomatic Basis for Computer Programming](https://github.com/papers-we-love/papers-we-love/blob/master/comp_sci_fundamentals_and_history/axiomatic-basis-computer-programming.pdf) by C. A. R. HOARE -* :scroll: [On the Computational Complexity of Algorithims](http://www.ams.org/journals/tran/1965-117-00/S0002-9947-1965-0170805-7/S0002-9947-1965-0170805-7.pdf) by J. HARTMANIS AND R. E. STEARNS \ No newline at end of file +* :scroll: [Back to the Future - The Story of Squeak, A Practical Smalltalk Written in Itself](story-of-squeak-a-practical-smalltalk-written-in-itself.pdf) by Dan Ingalls, Ted Kaehler, John Maloney, Scott Wallace & Alan Kay +* :scroll: [Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part I](recursive-functions-of-symbolic-expressions-and-their-computation-by-machine-parti.pdf) by John McCarthy +* :scroll: [An Axiomatic Basis for Computer Programming](axiomatic-basis-computer-programming.pdf) by C. A. R. HOARE +* [On the Computational Complexity of Algorithims](http://www.ams.org/journals/tran/1965-117-00/S0002-9947-1965-0170805-7/S0002-9947-1965-0170805-7.pdf) by J. HARTMANIS AND R. E. STEARNS +* :scroll: [Hints for Computer System Design](hints-for-computer-system-design.pdf) \ No newline at end of file diff --git a/computer_graphics/README.md b/computer_graphics/README.md index 3f325dc..1e6c97d 100644 --- a/computer_graphics/README.md +++ b/computer_graphics/README.md @@ -1,14 +1,7 @@ ### Rendering -* [Digital Video Stabilization and Rolling Shutter Correction using - Gyroscopes](http://graphics.stanford.edu/papers/stabilization/karpenko_gyro.pdf) -This is a really great paper that is both complex and straightforward. -This paper "present a robust, real-time video stabilization and rolling -shutter correction technique based on gyroscopes". I think -this is a great paper because it makes a clever use of a commodity technology -(smartphones' gyroscopes) to make a state-of-the-art improvement to a -central components of phones: video cameras by removing the shakes -and rolling shutter artifacts of a video in real-time. +* [:scroll:](digital_video_stabilization_and_rolling_shutter_correction_using_gyroscopes.pdf) [Digital Video Stabilization and Rolling Shutter Correction using Gyroscopes](http://graphics.stanford.edu/papers/stabilization/karpenko_gyro.pdf) +This is a really great paper that is both complex and straightforward. This paper "present a robust, real-time video stabilization and rolling shutter correction technique based on gyroscopes". I think this is a great paper because it makes a clever use of a commodity technology (smartphones' gyroscopes) to make a state-of-the-art improvement to a central components of phones: video cameras by removing the shakes and rolling shutter artifacts of a video in real-time. * [An Improved Illumination Model for Shaded Display](https://www.cs.drexel.edu/~david/Classes/CS586/Papers/p343-whitted.pdf) diff --git a/computer_vision/README.md b/computer_vision/README.md index b09aa0a..6d30165 100644 --- a/computer_vision/README.md +++ b/computer_vision/README.md @@ -1,3 +1,5 @@ +# Computer Vision + * [Coupled 3D Reconstruction of Sparse Facial Hair and Skin](http://www.disneyresearch.com/project/coupled-3d-reconstruction-of-sparse-facial-hair-and-skin/) * [High-Quality Single-Shot Capture of Facial Geometry](http://www.disneyresearch.com/project/high-quality-single-shot-capture-of-facial-geometry/) diff --git a/concurrency/README.md b/concurrency/README.md index 3d03e60..bbd9cbf 100644 --- a/concurrency/README.md +++ b/concurrency/README.md @@ -1,3 +1,5 @@ +# Concurrency + * [Everything You Always Wanted to Know About Synchronization but Were Afraid to Ask](http://sigops.org/sosp/sosp13/papers/p33-david.pdf) * [Time, Clocks, and the Ordering of Events in a Distributed System](http://research.microsoft.com/en-us/um/people/lamport/pubs/time-clocks.pdf) diff --git a/cryptography/README.md b/cryptography/README.md index 9fedde2..9b4fa2b 100644 --- a/cryptography/README.md +++ b/cryptography/README.md @@ -1,3 +1,5 @@ +# Cryptography + * [A Method for Obtaining Digital Signatures and Public-Key Cryptosystems](http://people.csail.mit.edu/rivest/Rsapaper.pdf) * [Twenty Years of Attacks on the RSA Cryptosystem](https://crypto.stanford.edu/~dabo/papers/RSA-survey.pdf) * :scroll: [Communication Theory of Secrecy Systems](communication-theory-of-secrecy-systems.pdf) diff --git a/data_compression/README.md b/data_compression/README.md index 8b13789..a083cf9 100644 --- a/data_compression/README.md +++ b/data_compression/README.md @@ -1 +1,4 @@ +# Data Compression +* :scroll: [Data Compression](data-compression.pdf) + > This paper surveys a variety of data compression methods spanning almost 40 years of research, from the work of Shannon, Fano and Huffman in the 40's, to a technique developed in 1986. \ No newline at end of file diff --git a/data_replication/README.md b/data_replication/README.md new file mode 100644 index 0000000..8d4da0b --- /dev/null +++ b/data_replication/README.md @@ -0,0 +1,4 @@ +# Data Replication + +* :scroll: [A comprehensive study of Convergent and Commutative Replicated Data Types](a-comprehensive-study-of-convergent-and-communative-replicated-data-types.pdf) + > Eventual consistency aims to ensure that replicas of some mutable shared object converge without foreground synchronisation. We study a principled approach: to base the design of shared data types on some simple formal conditions that are sufficient to guarantee even- tual consistency. We call these types Convergent or Commutative Replicated Data Types (CRDTs). \ No newline at end of file diff --git a/data_structures/README.md b/data_structures/README.md index 58e51e2..857c05d 100644 --- a/data_structures/README.md +++ b/data_structures/README.md @@ -1,5 +1,12 @@ +# Data Structures + * [Dynamic Hash Tables](http://www.csd.uoc.gr/~hy460/pdf/Dynamic%20Hash%20Tables.pdf) * [Simple, Fast, and Practical Non-Blocking and Blocking Concurrent Queue Algorithms](http://www.research.ibm.com/people/m/michael/podc-1996.pdf) * [RRB-Trees: Efficient Immutable Vectors](http://infoscience.epfl.ch/record/169879/files/RMTrees.pdf) * [Cuckoo Hashing](http://www.it-c.dk/people/pagh/papers/cuckoo-jour.pdf) * [Hopscotch Hashing](http://mcg.cs.tau.ac.il/papers/disc2008-hopscotch.pdf) + +## Hosted Papers + +* :scroll: [Epidemic Broadcast Trees](epidemic-broadcast-trees.pdf) + * :scroll: [Ideal Hash Trees](ideal-hash-trees.pdf * :scroll: [The Least Common Ancestor Problem revisited](lca-revisited.pdf * :scroll: [The Level Ancestor Problem simplifed](level-ancestor-simplified.pdf \ No newline at end of file diff --git a/datastores/README.md b/datastores/README.md index 746b9d2..2293502 100644 --- a/datastores/README.md +++ b/datastores/README.md @@ -1,2 +1,8 @@ +# Datastores + * [Calvin: Fast Distributed Transactions for Partitioned Database Systems](http://cs.yale.edu/homes/thomson/publications/calvin-sigmod12.pdf) * [f4: Facebook’s Warm BLOB Storage System](http://www-bcf.usc.edu/~wyattllo/papers/f4-osdi14.pdf) + +## Hosted Papers + +* :scroll: [Stasis: Flexible Transactional Storage](stasis-flexible-transactional-storage.pdf) * :scroll: [TAO: Facebooks Distributed Data Store for the Social Graph'](tao-facebook-distributed-datastore.pdf) \ No newline at end of file diff --git a/design/README.md b/design/README.md index 30d052c..67674bb 100644 --- a/design/README.md +++ b/design/README.md @@ -1 +1,6 @@ +# Design + * [Traits: A Mechanism for Fine-Grained Reuse](http://scg.unibe.ch/archive/papers/Duca06bTOPLASTraits.pdf) + +* :scroll: [Out of the Tar Pit](out-of-the-tar-pit.pdf) + > We identify common causes of complexity and discuss general approaches which can be taken to eliminate them where they are accidental in nature. \ No newline at end of file diff --git a/digital_currency/README.md b/digital_currency/README.md new file mode 100644 index 0000000..ac86903 --- /dev/null +++ b/digital_currency/README.md @@ -0,0 +1,3 @@ +# Digital Currency + +* :scroll: [Bitcoin](bitcoin.pdf) * :scroll: [PeerCoin](peercoin.pdf) * :scroll: [PrimeCoin](primecoin.pdf) \ No newline at end of file diff --git a/distributed_systems/README.md b/distributed_systems/README.md index a2c4693..6e15f13 100644 --- a/distributed_systems/README.md +++ b/distributed_systems/README.md @@ -2,7 +2,7 @@ ## External Papers -* :scroll: [A Note on Distributed Computing](http://www.eecs.harvard.edu/~waldo/Readings/waldo-94.pdf) +* [:scroll:](a-note-on-distributed-computing.pdf) [A Note on Distributed Computing](http://www.eecs.harvard.edu/~waldo/Readings/waldo-94.pdf) * [A simple totally ordered broadcast protocol](http://labs.yahoo.com/files/ladis08.pdf) @@ -80,11 +80,11 @@ * [The Byzantine Generals Problem](http://www.andrew.cmu.edu/course/15-749/READINGS/required/resilience/lamport82.pdf) -* :scroll: [The Chubby Lock Service for Loosely-Coupled Distributed Systems](http://static.googleusercontent.com/media/research.google.com/en/us/archive/chubby-osdi06.pdf) +* [:scroll:](the-chubby-lock-service-for-loosely-coupled-distributed-systems.pdf) [The Chubby Lock Service for Loosely-Coupled Distributed Systems](http://static.googleusercontent.com/media/research.google.com/en/us/archive/chubby-osdi06.pdf) * [The Dangers of Replication and a Solution](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.21.2707&rep=rep1&type=pdf) -* :scroll: [The Join Calculus: a Language for Distributed Mobile Programming](http://research.microsoft.com/en-us/um/people/fournet/papers/join-tutorial.pdf) +* [:scroll:](join-calculus.pdf) [The Join Calculus: a Language for Distributed Mobile Programming](http://research.microsoft.com/en-us/um/people/fournet/papers/join-tutorial.pdf) * [The Part-Time Parliament](http://research.microsoft.com/en-us/um/people/lamport/pubs/lamport-paxos.pdf) @@ -110,3 +110,133 @@ ### [“On the Electrodynamics of Moving Bodies” (1905) — Einstein](../historical/physics/on-the-electrodynamics-of-moving-bodies.pdf) By solving the [asymmetries](http://en.wikipedia.org/wiki/Moving_magnet_and_conductor_problem) that arise in Maxwell’s equations, Einstein’s 1905 paper set the stage for current distributed systems work by demonstrating that there is no absolute frame of reference and by providing an upper bound on the speed of communication. + + +## Other Hosted Papers + +* :scroll: [A History of the Virtual Synchrony Replication Model](a-history-of-the-virtual-synchrony-replication-model.pdf) + +* :scroll: [A Hundred Impossibility Proofs for Distributed Systems](a-hundred-impossibility-proofs-for-distributed-computing.pdf) + +* :scroll: [A response to Cheriton and Skeen's Criticism of Causal and Totally Ordered Communication](a-response-to-cheriton-and-skeens-criticism-of-causal-and-totally-ordered-communication.pdf) + +* :scroll: [A Universal Modular ACTOR Formalism for Artificial Intelligence](a-universal-modular-actor-formalism-for-artificial-intelligence.pdf) + +* :scroll: [A Versatile Scheme for Routing Highly Variable Traffic in Service Overlays and IP Backbones](a-versatile-scheme-for-routing-highly-variable-traffic-in-service-overlays-and-ip.pdf) + +* :scroll: [Beehive: O(1) Lookup Performance for Power-Law Query Distributions in Peer-to-Peer Overlays](beehive-lookup-performance-for-power-law-query-distributions-in-peer-to-peer-overlays.pdf) + +* :scroll: [Bigtable: A Distributed Storage System for Structured Data](bigtable-a-distributed-storage-system-for-structured-data.pdf) + +* :scroll: [Byzantine Chain Replication](bizantine-chain-replication.pdf) + +* :scroll: [A Byzantine Fault Tolerant Distributed Commit Protocol](bizantine-fault-tolerant-distributed-commit-protocol.pdf) + +* :scroll: [Brewer’s Conjecture and the Feasibility of Consistent, Available, Partition-Tolerant Web Services](brewers-conjecture.pdf) + +* :scroll: [Chain Replication for Supporting High Throughput and Availability](chain-replication-for-supporting-high-throughput-and-availability.pdf) + +* :scroll: [Commodifying Replicated State Machines with OpenReplica](commodifying-replicated-state-machines-with-openreplica.pdf) + +* :scroll: [Consensusin the Presenceof Partial Synchrony](consensus-in-presence-of-partial-synchrony.pdf) + +* :scroll: [Consistent Global States of Distributed Systems: Fundamental Concepts and Mechanisms](consistent-global-states-of-distributed-systems-fundamental-concepts-and-mechanisms.pdf) + +* :scroll: [Consistent Hashing and Random Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web](consistent-hashing-and-random-trees.pdf) + +* :scroll: [Copysets: Reducing the Frequency of Data Loss in Cloud Storage](copysets-reducing-the-frequency-of-data-loss-in-cloud-storage.pdf) + +* :scroll: [Dapper, a Large-Scale Distributed Systems Tracing Infrastructure](dapper-a-large-scale-distributed-tracing-infrastructure.pdf) + +* :scroll: [Database Metatheory: Asking Big Queries](database-metatheory--asking-the-big-queries.pdf) + +* :scroll: [Distributed Snapshots: Determining Global States of Distributed Systems](distributed-snapshots-determining-global-states-of-distributed-systems.pdf) + +* :scroll: [Dynamo: Amazon’s Highly Available Key-value Store](dynamo-amazons-highly-available-key-value-store.pdf) + +* :scroll: [Eluding Carnivores: File Sharing with Strong Anonymity](eluding-carnivores-file-sharing-with-strong-anonymity.pdf) + +* :scroll: [End-to-end arguments in system design](end-to-end-arguments-in-system-design.pdf) + +* :scroll: [Epidemic Algorithms for Replicated Database Maintenance](epidemic-algorithms-for-replicated-database-maintenance.pdf) + +* :scroll: [Flat Datacenter Storage](flat-datacenter-storage.pdf) + +* :scroll: [Freenet: A Distributed Anonymous Information Storage and Retrieval System](freenet-a-distributed-anonymous-information-and-retrieval-system.pdf) + +* :scroll: [Harvest, Yield, and Scalable Tolerant Systems](harvest-yield-and-scalable-tolerant-systems.pdf) + +* :scroll: [Herbivore: A Scalable and Efficient Protocol for Anonymous Communication](herbivore-a-scalable-and-efficient-protocol-for-anonymous.pdf) + +* :scroll: [High-Level Specifications: Lessons from Industry](high-level-specifications--lessons-from-industry.pdf) + +* :scroll: [How the Hidden Hand Shapes the Market for Software Reliability](how-the-hidden-hand-shapes-the-market-for-software-reliability.pdf) + +* :scroll: [Implementing the Omega failure detector in the crash-recovery failure model](implementing-the-omega-failure-detector-in-crash-recovery-failure-model.pdf) + +* :scroll: [Impossibility of Distributed Consensuswith One Faulty Process](impossibility-of-consensus-with-one-faulty-process.pdf) + +* :scroll: [In Search of an Understandable Consensus Algorithm](in-search-of-an-understandable-consensus-algorithm.pdf) + +* :scroll: [Kelips*: Building an Efficient and Stable P2P DHT Through Increased Memory and Background Overhead](kelips-building-an-efficient-and-stable-p2p-dht-through-increased-memory-and-background-overhead.pdf) + +* :scroll: [Large-scale Incremental Processing Using Distributed Transactions and Notifications](large-scale-incremental-processing-using-distributed-transactions-and-notifications.pdf) + +* :scroll: [Life beyond Distributed Transactions: an Apostate’s Opinion](life-beyoud-distributed-transactions-an-apostates-opinion.pdf) + +* :scroll: [MapReduce: Simplified Data Processing on Large Clusters](mapreduce-simplified-data-processing-on-large-clusters.pdf) + +* :scroll: [Megastore: Providing Scalable, Highly Available Storage for Interactive Services](megastore-providing-scalable-highly-available-storage-for-interactive-services.pdf) + +* :scroll: [Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center](mesos-a-platform-for-fine-grained-resource-sharing-in-the-data-center.pdf) + +* :scroll: [A Solution to the Network Challenges of Data Recovery in Erasure-coded Distributed Storage Systems: A Study on the Facebook Warehouse Cluster](network-challenges-of-data-recovery-in-erasure-coded-distributed-storage-systems.pdf) + +* :scroll: [Oblivious routing of highly variable traffic in service overlays and IP backbones](oblivious-routing-of-highly-variable-traffic-in-service-overlays-and-ip-backbones.pdf) + +* :scroll: [On proof and progress in mathematics](on-proof-and-progress-in-mathematics.pdf) + +* :scroll: [P5: A Protocol for Scalable Anonymous Communication](p5-a-protocal-for-scalable-anonymous-communication.pdf) + +* :scroll: [Pastry: Scalable, decentralized object location and routing for large-scale peer-to-peer systems](pastry-scalable-decentralized-object-location-and-routing-for-large-scale-peer-to-peer-systems.pdf) + +* :scroll: [Paxos Made Moderately Complex](paxos-made-moderately-complex.pdf) + +* :scroll: [Paxos Made Simple](paxos-made-simple.pdf) + +* :scroll: [RADOS: A Scalable, Reliable Storage Service for Petabyte-scale Storage Clusters](rados-a-scalable-reliable-storage-service-for-petabyte-scale-storage-clusters.pdf) + +* :scroll: [Self-stabilizing Systems in Spite of Distributed Control](self-stabilizing-systems-in-spite-of-distributed-control.pdf) + +* :scroll: [SIFT: Design and Analysis of a Fault-Tolerant Computer for Aircraft Control](sift-design-and-analysis-of-a-fault-tolerant-computer-for-aircraft-contro.pdf) + +* :scroll: [Signal/Collect: Graph Algorithms for the (Semantic) Web](signal-%26-collect-graph-algorithms-for-the-\(semantic\)-web.pdf) + +* :scroll: [Slution of a Problem in Concurrent Programming Control](solution-of-a-problem-in-concurrent-programming-control.pdf) + +* :scroll: [Spanner: Google’s Globally-Distributed Database](spanner-google's-globally-distributed-database.pdf) + +* :scroll: [Sparse Partitions](sparse-partitions.pdf) + +* :scroll: [Stronger Semantics for Low-Latency Geo-Replicated Storage](stronger-semantics-for-low-latency-geo-replicated-storage.pdf) + +* :scroll: [The Akamai Network: A Platform for High-Performance Internet Applications](the-akamai-network.pdf) + +* :scroll: [The Dining CryptographersProblem: Unconditional Sender and Recipient Untraceability](the-dining-cryptographers-problem.pdf) + +* :scroll: [Tor: The Second-Generation Onion Router](tor-the-second-generation-onion-router.pdf) + +* :scroll: [Towards a cloud computing research agenda](towards-a-cloud-computing-research-agenda.pdf) + +* :scroll: [Transactional storage for geo-replicated systems](transactional-storage-for-geo-replicated-systems.pdf) + +* :scroll: [Understanding the Limitations of Causally and Totally Ordered Communication](understanding-the-limitations-of-causally-and-totally-ordered-communication.pdf) + +* :scroll: [Viewing Control Structures as Patterns of Passing Messages](viewing-control-structures-as-patterns-of-passing-messages.pdf) + +* :scroll: [Warp: Multi-Key Transactions for Key-Value Stores](warp-multi-key-transactions-for-key-value-stores.pdf) + +* :scroll: [Zab: High-performance broadcast for primary-backup systems ](zab-high-performance-broadcast-for-primary-backup-systems.pdf) + +* :scroll: [ZooKeeper: Wait-free coordination for Internet-scale systems](zookeeper-wait-free-coordination-for-internet-scale-systems.pdf) + diff --git a/ethics/README.md b/ethics/README.md index 8023f35..d925856 100644 --- a/ethics/README.md +++ b/ethics/README.md @@ -1 +1,3 @@ +# Ethics + * [Reflections on Trusting Trust](http://www.ece.cmu.edu/~ganger/712.fall02/papers/p761-thompson.pdf) diff --git a/experimental_algorithmics/README.md b/experimental_algorithmics/README.md index f38439a..7c6a4bc 100644 --- a/experimental_algorithmics/README.md +++ b/experimental_algorithmics/README.md @@ -5,4 +5,4 @@ It can be used in the analysis of algorithms [(Wikipedia)](http://en.wikipedia.o ## Included Papers -* [A Theoretician's Guide to the Experimental Analysis of Algorithms](http://davidsjohnson.net/papers/experguide.pdf) (David S. Johnson): An exceptionally well-written guide to correctly evaluating algorithms by experimental analysis. The techniques described in this paper do not only apply to theoreticians although the title might lead one to believe so. The examples used in this paper and specifically the method of listing straight-forward principles illustrated by pit-falls and pet peeves make for an excellent must-read for everyone intending to publish experimental algorithm results. +* [:scroll:](a-theoreticians-guide-to-the-experimental-analysis-of-algorithms.pdf) [A Theoretician's Guide to the Experimental Analysis of Algorithms](http://davidsjohnson.net/papers/experguide.pdf) (David S. Johnson): An exceptionally well-written guide to correctly evaluating algorithms by experimental analysis. The techniques described in this paper do not only apply to theoreticians although the title might lead one to believe so. The examples used in this paper and specifically the method of listing straight-forward principles illustrated by pit-falls and pet peeves make for an excellent must-read for everyone intending to publish experimental algorithm results. diff --git a/functional_programming/README.md b/functional_programming/README.md index bcbc31c..260dbdd 100644 --- a/functional_programming/README.md +++ b/functional_programming/README.md @@ -1,10 +1,16 @@ # Functional Programming -* :scroll: [Organizing Programs Without Classes](http://cs.au.dk/~hosc/local/LaSC-4-3-pp223-242.pdf) -* :scroll: [Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire](http://eprints.eemcs.utwente.nl/7281/01/db-utwente-40501F46.pdf) - - From Patrick Thomson's [An introduction to Recursion Schemes](http://patrickthomson.ghost.io/an-introduction-to-recursion-schemes/): +* [:scroll:](organizing-programs-without-classes.pdf) [Organizing Programs Without Classes](http://cs.au.dk/~hosc/local/LaSC-4-3-pp223-242.pdf) +* [:scroll:](functional-programming-with-bananas-lenses-envelops-and-barbed-wire.pdf) [Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire](http://eprints.eemcs.utwente.nl/7281/01/db-utwente-40501F46.pdf) + + From Patrick Thomson's [An introduction to Recursion Schemes](http://patrickthomson.ghost.io/an-introduction-to-recursion-schemes/): > In 1991, Erik Meijer, Maarten Fokkinga, and Ross Paterson published their now-classic paper Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire. Though this paper isn’t widely known outside of the functional programming community, its contributions are astonishing: the authors use category theory to express a set of simple, composable combinators, called recursion schemes, that automate the process of traversing and recursing through nested data structures. Though recursion schemes predate Meijer et. al’s work, this paper brings the enormous abstractive power of category theory to bear on the subject of traversing data structures—it’s a magnificent example of how category-theoretical concepts can bring both rigor and simplicity to day-to-day programming tasks. + +* :scroll: [Equal Rights for Functional Objects or, The More Things Change, The More They Are the Same](equal-rights-for-functional-objects.pdf) + * :scroll: [Optimal Purely Functional Priority Queues](optimal-purely-functional-priority-queues.pdf) + * :scroll: [Why Functional Programming Matters](why-functional-programming-matters.pdf) + ## Applicative Programming @@ -14,7 +20,7 @@ ## Concatenative Programming -* :scroll: [Concatenative Programming: An Overlooked Paradigm in Functional Programming](https://github.com/dterei/Research-Papers/blob/master/To%20Read/CONCATENATIVE%20PROGRAMMING%0AAn%20Overlooked%20Paradigm%20in%20Functional%20Programming.pdf) +* [:scroll:](concatenative-programming-an-overlooked-paradigm.pdf) [Concatenative Programming: An Overlooked Paradigm in Functional Programming](https://github.com/dterei/Research-Papers/blob/master/To%20Read/CONCATENATIVE%20PROGRAMMING%0AAn%20Overlooked%20Paradigm%20in%20Functional%20Programming.pdf) ## Imperative Programming - Functional Programming diff --git a/functional_reactive_programming/README.md b/functional_reactive_programming/README.md index 933ed97..b6a8821 100644 --- a/functional_reactive_programming/README.md +++ b/functional_reactive_programming/README.md @@ -1,5 +1,12 @@ +# Functional Reactive Programming + * [Asynchronous Functional Reactive Programming for GUIs](http://people.seas.harvard.edu/~chong/pubs/pldi13-elm.pdf) * [Push-Pull Functional Reactive Programming](http://conal.net/papers/push-pull-frp/push-pull-frp.pdf) * [Wormholes: Introducing Effects to FRP](http://haskell.cs.yale.edu/wp-content/uploads/2012/08/Winograd-Cort-Wormholes.pdf) + +## Hosted Papers + +* :scroll: [A Survey of Functional Reactive Programming](a-survey-of-functional-reactive-programming.pdf) * :scroll: [Deprecating the Observer Pattern](deprecating-the observer-pattern.pdf) * :scroll: [FrTime: Functional Reactive Programming in PLT Scheme](frp-in-plt-scheme.pdf) * :scroll: [Functional Reactive Animation](functional-reactive-animation.pdf) + * :scroll: [RAY: Integrating Rx and Async for Direct-Style Reactive Streams](ray-integrating-rx-and-async-for-direct-style-reactive-streams.pdf) \ No newline at end of file diff --git a/gamification/README.md b/gamification/README.md index 6227b51..2a6d384 100644 --- a/gamification/README.md +++ b/gamification/README.md @@ -13,3 +13,9 @@ * [MoviPill: Improving Medication Compliance for Elders - Using a Mobile Persuasive Social Game](http://www.ic.unicamp.br/~oliveira/doc/Ubicomp2010_MoviPill.pdf) * [Removing Gamification from an Enterprise SNS](http://www.jennthom.com/papers/gamification.pdf) + +## Hosted Papers + +* :scroll: [Gamification in Education: What, How, Why Bother?](gamification-in-education-what-how-why-bother.pdf) + +* :scroll: [Why Students Engage in “Gaming the System” Behavior in Interactive Learning Environments](why-students-engage-in-gaming-the-system-behavior-in-interactive-learning-environments.pdf) \ No newline at end of file diff --git a/garbage_collection/README.md b/garbage_collection/README.md index 87d9602..2b513ba 100644 --- a/garbage_collection/README.md +++ b/garbage_collection/README.md @@ -1,7 +1,8 @@ * [A Unified Theory of Garbage Collection](http://www.cs.virginia.edu/~cs415/reading/bacon-garbage.pdf) * [A LISP Garbage-Collector for Virtual-Memory Computer Systems](https://www.cs.purdue.edu/homes/hosking/690M/p611-fenichel.pdf) + * [Incremental Collection of Mature Objects](http://pdf.aminer.org/000/465/194/incremental_collection_of_mature_objects.pdf) -* :scroll: [Incremental Mature Garbage Collection Using the Train Algorithm](https://www.sics.se/~seif/DatalogiII/Book/train.ps) +* [:scroll:](incremental_mature_garbage_collection_using_the_train_algorithm.pdf) [Incremental Mature Garbage Collection Using the Train Algorithm](https://www.sics.se/~seif/DatalogiII/Book/train.ps) * [Incremental Garbage Collection: The Train Algorithm](http://www.ssw.uni-linz.ac.at/General/Staff/TW/Wuerthinger05Train.pdf) -* :scroll: The Lisp II Garbage Collector (ftp://publications.ai.mit.edu/ai-publications/pdf/AIM-019.pdf) +* [:scroll:](the_lisp_ii_garbage_collector.pdf) [The Lisp II Garbage Collector](ftp://publications.ai.mit.edu/ai-publications/pdf/AIM-019.pdf) * [The Treadmill: Real-Time Garbage Collection Without Motion Sickness](http://home.pipeline.com/~hbaker1/NoMotionGC.html) diff --git a/gossip/README.md b/gossip/README.md index 35652d6..7c55c90 100644 --- a/gossip/README.md +++ b/gossip/README.md @@ -1,3 +1,5 @@ +## Gossip + If you only read one of these papers, start with the classic Demers, et al paper: * [Epidemic Algorithms for Replicated Database Maintenance] (http://bitsavers.informatik.uni-stuttgart.de/pdf/xerox/parc/techReports/CSL-89-1_Epidemic_Algorithms_for_Replicated_Database_Maintenance.pdf) diff --git a/haskell/README.md b/haskell/README.md index 2b10fdb..e2599b2 100644 --- a/haskell/README.md +++ b/haskell/README.md @@ -1,6 +1,6 @@ # Haskell * [A History of Haskell: Being Lazy With Class](http://research.microsoft.com/en-us/um/people/simonpj/papers/history-of-haskell/history.pdf) by Paul Hudak, John Hughes, Simon Peyton Jones -* :scroll: [Tackling the Awkward Squad: monadic input/output, concurrency, exceptions, and foreign-language calls in Haskell](../haskell/tackling-the-awkward-squad-monadic-input-output-concurrency-exceptions-and-foreign-language-calls-in-haskell.pdf) by Simon Peyton Jones -* :scroll: [Making a Fast Curry: Push/Enter vs. Eval/Apply for Higher-order Languages](../haskell/making-a-fast-curry-push-enter-versus-eval-apply-for-higher-order-languages.pdf) by Simon Marlow and Simon Peyton Jones. A classic... describes well the execution model GHC uses for Haskell, and catches the brilliant authors in a design pivot from original intuition to new conclusions based on empirical data. -* :scroll: [A Poor Man's Concurrency Monad](../haskell/a-poor-mans-concurrency-monad.pdf) by Koen Claessen. Paper describes how without adding any primitives to the language, you could define a concurrency monad transformer in Haskell. +* :scroll: [Tackling the Awkward Squad: monadic input/output, concurrency, exceptions, and foreign-language calls in Haskell](tackling-the-awkward-squad-monadic-input-output-concurrency-exceptions-and-foreign-language-calls-in-haskell.pdf) by Simon Peyton Jones +* :scroll: [Making a Fast Curry: Push/Enter vs. Eval/Apply for Higher-order Languages](making-a-fast-curry-push-enter-versus-eval-apply-for-higher-order-languages.pdf) by Simon Marlow and Simon Peyton Jones. A classic... describes well the execution model GHC uses for Haskell, and catches the brilliant authors in a design pivot from original intuition to new conclusions based on empirical data. +* :scroll: [A Poor Man's Concurrency Monad](a-poor-mans-concurrency-monad.pdf) by Koen Claessen. Paper describes how without adding any primitives to the language, you could define a concurrency monad transformer in Haskell. diff --git a/information_retrieval/README.md b/information_retrieval/README.md index 82e90bb..16bbe3e 100644 --- a/information_retrieval/README.md +++ b/information_retrieval/README.md @@ -4,7 +4,7 @@ Information retrieval is the activity of obtaining information resources relevan The included documents are -* [Graph of Word and TW-IDF](http://www.lix.polytechnique.fr/~rousseau/papers/rousseau-cikm2013.pdf) - Francois Rousseau & Michalis Vazirgiannis +* [:scroll:](graph_of_word_and_tw_idf.pdf) [Graph of Word and TW-IDF](http://www.lix.polytechnique.fr/~rousseau/papers/rousseau-cikm2013.pdf) - Francois Rousseau & Michalis Vazirgiannis The traditional IR system stores term-specific statistics (typically a term's frequency in each document - which we call TF) in an index. diff --git a/information_theory/README.md b/information_theory/README.md index 2c30388..5252db1 100644 --- a/information_theory/README.md +++ b/information_theory/README.md @@ -1,4 +1,6 @@ -* :scroll: [A Mathematical Theory of Communication](./a-mathematical-theory-of-communication-1948.pdf) +## Information Theory + +* :scroll: [A Mathematical Theory of Communication](a-mathematical-theory-of-communication-1948.pdf) * [Differential Privacy](http://www.msr-waypoint.com/pubs/64346/dwork.pdf) - How do we quantify the exposure an individual faces from being diff --git a/logic_and_programming/README.md b/logic_and_programming/README.md index 0d5eedb..7a52f7a 100644 --- a/logic_and_programming/README.md +++ b/logic_and_programming/README.md @@ -1,2 +1,6 @@ +## Logic and Programming + +* :scroll: [Representing Game Dialogue as Expresions in Firt-Order Logic](representing-game-dialogue-as-expressions-in-first-order-logic.pdf) +* :scroll: [The Event Calculus as a Linear Logic Program](event-calculus.txt) * [Purely Functional Lazy Non-deterministic Programming](http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.148.524) -* :scroll: [On the Meanings of the Logical Constants and the Justifications of the Logical Laws](http://www.pps.univ-paris-diderot.fr/~saurin/Enseignement/LMFI/articles/Martin-Lof83.pdf) +* [:scroll:](on-the-meanings-of-the-logical-constants.pdf) [On the Meanings of the Logical Constants and the Justifications of the Logical Laws](http://www.pps.univ-paris-diderot.fr/~saurin/Enseignement/LMFI/articles/Martin-Lof83.pdf) diff --git a/machine_learning/README.md b/machine_learning/README.md index c59cdeb..2f55d2c 100644 --- a/machine_learning/README.md +++ b/machine_learning/README.md @@ -17,13 +17,13 @@ ## Hosted Papers -* :scroll: **[A Sparse Johnson-Lindenstrauss Transform](https://github.com/papers-we-love/papers-we-love/blob/master/machine_learning/dimensionality_reduction/a-sparse-johnson-lindenstrauss-transform.pdf)** +* :scroll: **[A Sparse Johnson-Lindenstrauss Transform](dimensionality_reduction/a-sparse-johnson-lindenstrauss-transform.pdf)** The JLT is still computationally expensive for a lot of applications and one goal would be to minimize the overall operations needed to do the aforementioned matrix multiplication. This paper showed that a goal of a `O(k log d)` algorithm (e.g. `(log(d))^2)` may be attainable by showing that very sparse, structured random matrices could provide the *JL* guarantee on pairwise distances. *Dasgupta, Anirban, Ravi Kumar, and Tamás Sarlós. "A sparse johnson: Lindenstrauss transform." Proceedings of the forty-second ACM symposium on Theory of computing. ACM, 2010. Available: [arXiv/cs/1004:4240](http://arxiv.org/abs/1004.4240)* -* :scroll: **[Towards a unified theory of sparse dimensionality reduction in Euclidean space](https://github.com/papers-we-love/papers-we-love/blob/master/machine_learning/dimensionality_reduction/toward-a-unified-theory-of-sparse-dimensionality-reduction-in-euclidean-space.pdf)** +* :scroll: **[Towards a unified theory of sparse dimensionality reduction in Euclidean space](dimensionality_reduction/toward-a-unified-theory-of-sparse-dimensionality-reduction-in-euclidean-space.pdf)** This paper attempts to layout the generic mathematical framework (in terms of convex analysis and functional analysis) for sparse dimensionality reduction. The first author is a Fields Medalist who is interested in taking techniques for Banach Spaces and applying them to this problem. This paper is a very technical paper that attempts to answer the question, "when does a sparse embedding exist deterministically?" (e.g. doesn't require drawing random matrices). diff --git a/macros/README.md b/macros/README.md index a075c02..6931cf4 100644 --- a/macros/README.md +++ b/macros/README.md @@ -1,2 +1,4 @@ +## Macros + * [D-Expressions: Lisp Power, Dylan Style](http://people.csail.mit.edu/jrb/Projects/dexprs.pdf) * [Fortifying Macros](http://www.ccs.neu.edu/racket/pubs/icfp10-cf.pdf) diff --git a/memory_management/README.md b/memory_management/README.md index db10e2b..5b2821a 100644 --- a/memory_management/README.md +++ b/memory_management/README.md @@ -1,3 +1,5 @@ +## Memory Management + * [A Unified Theory of Garbage Collection](http://www.cs.virginia.edu/~cs415/reading/bacon-garbage.pdf) * [Teaching Garbage Collection without Implementing Compilers or Interpreters](http://faculty.cs.byu.edu/~jay/static/cooper-sigcse2013.pdf) @@ -11,5 +13,20 @@ - [POSTSCRIPT version](https://www.usenix.org/legacy/publications/library/proceedings/bos94/full_papers/bonwick.ps) * :scroll: [ScatterAlloc: Massively Parallel Dynamic Memory Allocation for the GPU](http://www.icg.tugraz.at/Members/steinber/scatteralloc-1) - - Presents a useful algorithm as well as considerations relevant to - designing algorithms for GPUs. + + Presents a useful algorithm as well as considerations relevant to designing algorithms for GPUs. + + +* [:scroll:](making-lockless-synchronization-fast.pdf) [Making Lockless Synchronization Fast: Performance Implications of Memory Reclamation](http://www.rdrop.com/users/paulmck/RCU/hart_ipdps06.pdf) + + Multicore systems are ubiquitous but modern concurrent programming +techniques still do not see wide-spread adoption. Most concurrent software +(developed in low-level languages) still relies on error-prone and unscalable +memory management techniques for correctness despite the introduction of +superior methods over 30 years ago. Safe memory reclamation allows for +performant and robust memory management that is also suitable for advanced +concurrent programming techniques such as non-blocking synchronization. If +properly used, safe memory reclamation techniques allow improved performance and +simplicity without the complexity of full-blown garbage collection. This paper +provides a terrific overview of common safe memory reclamation mechanisms and +then explores their performance implications. diff --git a/memory_reclamation/making-lockless-synchronization-fast.pdf b/memory_management/making-lockless-synchronization-fast.pdf similarity index 100% rename from memory_reclamation/making-lockless-synchronization-fast.pdf rename to memory_management/making-lockless-synchronization-fast.pdf diff --git a/memory_reclamation/README.md b/memory_reclamation/README.md deleted file mode 100644 index db96642..0000000 --- a/memory_reclamation/README.md +++ /dev/null @@ -1,14 +0,0 @@ -# Memory Reclamation - -* :scroll: [Making Lockless Synchronization Fast: Performance Implications of Memory Reclamation](http://www.rdrop.com/users/paulmck/RCU/hart_ipdps06.pdf) - - Multicore systems are ubiquitous but modern concurrent programming -techniques still do not see wide-spread adoption. Most concurrent software -(developed in low-level languages) still relies on error-prone and unscalable -memory management techniques for correctness despite the introduction of -superior methods over 30 years ago. Safe memory reclamation allows for -performant and robust memory management that is also suitable for advanced -concurrent programming techniques such as non-blocking synchronization. If -properly used, safe memory reclamation techniques allow improved performance and -simplicity without the complexity of full-blown garbage collection. This paper -provides a terrific overview of common safe memory reclamation mechanisms and -then explores their performance implications. diff --git a/networks/README.md b/networks/README.md index 12ecd61..46f564c 100644 --- a/networks/README.md +++ b/networks/README.md @@ -1 +1,3 @@ +## Networks + * [Bimodal Multicast](http://www.csl.mtu.edu/cs6461/www/Reading/Birman99.pdf) diff --git a/new_paradigms/README.md b/new_paradigms/README.md new file mode 100644 index 0000000..4b4017e --- /dev/null +++ b/new_paradigms/README.md @@ -0,0 +1,3 @@ +## New Paradigms + +* :scroll: [Cognitive Computing Programming Paradigm: A Corelet Language for Composing Networks of Neurosynaptic Cores](cognitive-computing-programming-paradigm-corelet-language.pdf) \ No newline at end of file diff --git a/operating_systems/README.md b/operating_systems/README.md index 243f202..7459774 100644 --- a/operating_systems/README.md +++ b/operating_systems/README.md @@ -1,5 +1,10 @@ +## Operating Systems + * [Xen and the Art of Virtualization](http://www.cl.cam.ac.uk/research/srg/netos/papers/2003-xensosp.pdf) * [The operating system: should there be one?](http://plosworkshop.org/2013/preprint/kell.pdf) * [The Scalable Commutativity Rule: Designing Scalable Software for Multicore Processors](http://web.mit.edu/amdragon/www/pubs/commutativity-sosp13.pdf) + +* :scroll: [Live Migration of Virtual Machines](live-migration-of-virtual-machines.pdf) + diff --git a/pattern_matching/README.md b/pattern_matching/README.md index a661741..de527fe 100644 --- a/pattern_matching/README.md +++ b/pattern_matching/README.md @@ -1,6 +1,6 @@ # Pattern Matching -* :scroll: [Compiling Pattern Matching to good Decision Trees](../pattern_matching/compiling-pattern-matching-to-good-decision-trees.pdf) by Luc Maranget. Paper address the issue of compiling ML pattern matching to efficient decisions trees. -* :scroll: [Extensible Pattern Matching in an Extensible Language](../pattern_matching/extensible-pattern-matching-extensible-language.pdf) by Sam Tobin-Hochstadt. Paper present a sophisticated pattern matcher for [Racket](http://racket-lang.org/), implemented as language extension using macros. -* :scroll: [Warnings for pattern matching](../pattern_matching/warnings-for-pattern-matching.pdf) by Luc Maranget. Paper examine the ML pattern-matching anomalies of useless clauses and non-exhaustive matches. -* :scroll: [Efficient String Matching: An Aid to Bibliographic Search](../pattern_matching/aho-corasick-string-matching.pdf) by Alfred V. Aho and Margaret J. Corasick. A single-pass pattern matching algorithm used in early versions of fgrep and similar projects. [Aho–Corasick entry](http://xlinux.nist.gov/dads//HTML/ahoCorasick.html) in NIST's Dictionary of Algorithms and Data Structures. +* :scroll: [Compiling Pattern Matching to good Decision Trees](compiling-pattern-matching-to-good-decision-trees.pdf) by Luc Maranget. Paper address the issue of compiling ML pattern matching to efficient decisions trees. +* :scroll: [Extensible Pattern Matching in an Extensible Language](extensible-pattern-matching-extensible-language.pdf) by Sam Tobin-Hochstadt. Paper present a sophisticated pattern matcher for [Racket](http://racket-lang.org/), implemented as language extension using macros. +* :scroll: [Warnings for pattern matching](warnings-for-pattern-matching.pdf) by Luc Maranget. Paper examine the ML pattern-matching anomalies of useless clauses and non-exhaustive matches. +* :scroll: [Efficient String Matching: An Aid to Bibliographic Search](aho-corasick-string-matching.pdf) by Alfred V. Aho and Margaret J. Corasick. A single-pass pattern matching algorithm used in early versions of fgrep and similar projects. [Aho–Corasick entry](http://xlinux.nist.gov/dads//HTML/ahoCorasick.html) in NIST's Dictionary of Algorithms and Data Structures. diff --git a/physics/README.md b/physics/README.md index 5e227a8..ee123ba 100644 --- a/physics/README.md +++ b/physics/README.md @@ -1,3 +1,5 @@ # Physics * :scroll: [On the attraction of two perfectly conducting plates](on-the-attraction-of-two-perfectly-conducting-plates.pdf) + +* :scroll: [On the electrodynamics of moving bodies](on-the-electrodynamics-of-moving-bodies.pdf) \ No newline at end of file diff --git a/historical/physics/on-the-electrodynamics-of-moving-bodies.pdf b/physics/on-the-electrodynamics-of-moving-bodies.pdf similarity index 100% rename from historical/physics/on-the-electrodynamics-of-moving-bodies.pdf rename to physics/on-the-electrodynamics-of-moving-bodies.pdf diff --git a/plt/README.md b/plt/README.md index 676857d..801bd58 100644 --- a/plt/README.md +++ b/plt/README.md @@ -2,12 +2,26 @@ * [Can Programming Be Liberated from the von Neumann Style? A Functional Style and Its Algebra of Programs](http://www.thocp.net/biographies/papers/backus_turingaward_lecture.pdf) -* [Programming and Reasoning with Algebraic Effects and Dependent Types](http://eb.host.cs.st-andrews.ac.uk/drafts/effects.pdf) +* [:scroll:](https://github.com/papers-we-love/papers-we-love/blob/master/plt/programming-with-algebraic-effects-and-handlers.pdf) [Programming and Reasoning with Algebraic Effects and Dependent Types](http://eb.host.cs.st-andrews.ac.uk/drafts/effects.pdf) * [Programming Languages: History and Future](http://www.csee.umbc.edu/courses/undergraduate/CMSC331/resources/papers/sammet1972.pdf) * [Soft Typing](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.24.9333&rep=rep1&type=pdf) -* :scroll: [Composable and Compilable Macros: You Want it When?](https://www.cs.utah.edu/plt/publications/macromod.pdf) +* [:scroll:](https://github.com/papers-we-love/papers-we-love/blob/master/plt/composable-and-compilable-macros-you-want-it-when.pdf) [Composable and Compilable Macros: You Want it When?](https://www.cs.utah.edu/plt/publications/macromod.pdf) * :scroll: [Propositions as Types](http://homepages.inf.ed.ac.uk/wadler/papers/propositions-as-types/propositions-as-types.pdf) + +* :scroll: [Fundamnetal Concepts in Programming Languages](https://github.com/papers-we-love/papers-we-love/blob/master/plt/fundamental-concepts-in-programming-languages.pdf) + +* :scroll: [On Understanding Types, Data Abstraction, and Polymorphism](https://github.com/papers-we-love/papers-we-love/blob/master/plt/on-understanding-types-data-abstraction-polymorphism.pdf) + +* :scroll: [Predicate Dispatching](https://github.com/papers-we-love/papers-we-love/blob/master/plt/predicate-dispatching.pdf) + +* :scroll: [Principal type-schemes for functional programs](https://github.com/papers-we-love/papers-we-love/blob/master/plt/principal-type-schemes-for-functional-programs.pdf) + +* :scroll: [Programming Languages: Application and Interpretation](https://github.com/papers-we-love/papers-we-love/blob/master/plt/programming-languages-application-and-interpretation.pdf) + +* :scroll: [The Derivative of a Regular Type is its Type of One-Hole Contexts](https://github.com/papers-we-love/papers-we-love/blob/master/plt/the-derivative-of-a-regular-type-one-hole-contexts.pdf) + +* :scroll: [Theory in Programming Practice](https://github.com/papers-we-love/papers-we-love/blob/master/plt/theory-in-programming-practice.pdf) \ No newline at end of file diff --git a/processes/README.md b/processes/README.md index c898731..46338f9 100644 --- a/processes/README.md +++ b/processes/README.md @@ -1,2 +1,4 @@ -* [Communicating Sequential Processes](http://www.cs.ucf.edu/courses/cop4020/sum2009/CSP-hoare.pdf) +## Process Control + +* [:scroll](https://github.com/papers-we-love/papers-we-love/blob/master/processes/communicating-sequential-processes.pdf) [Communicating Sequential Processes](http://www.cs.ucf.edu/courses/cop4020/sum2009/CSP-hoare.pdf) * [Calculus of Communicating Systems](https://moodle.risc.jku.at/pluginfile.php/3407/mod_resource/content/1/A%20Calculus%20of%20Communicating%20Systems%5B1980%5D.pdf) diff --git a/security/README.md b/security/README.md index 480306e..26baa39 100644 --- a/security/README.md +++ b/security/README.md @@ -1,3 +1,5 @@ +## Security + * [Reflections on Trusting Trust](http://www.ece.cmu.edu/~ganger/712.fall02/papers/p761-thompson.pdf) * [Internet Census via Insecure Routers](http://internetcensus2012.bitbucket.org/paper.html) * [Looking inside the (Drop) box](http://ictc.aeoi.org.ir/sites/default/files/US-13-Prado-SSL-Gone-in-30-seconds-A-BREACH-beyond-CRIME-WP_0.pdf) @@ -5,3 +7,7 @@ * [Breach: Reviving The Crime Attack](http://breachattack.com/resources/BREACH%20-%20SSL,%20gone%20in%2030%20seconds.pdf) * [Why Silent Updates Boost Security](http://www.techzoom.net/Papers/Browser_Silent_Updates_%282009%29.pdf) * :scroll: [Macaroons: Cookies with Contextual Caveats for Decentralized Authorization in the Cloud](http://research.google.com/pubs/archive/41892.pdf) + +* :scroll: [Insertion, Evasion, and Denial of Service: eluding network intrusion detection] + + *Ptacek, and Newsham. "Insertion, Evasion, and Denial of Service: eluding network intrusion detection." Secure Networks, Inc., Jan. 1998* \ No newline at end of file diff --git a/smalltalk/README.md b/smalltalk/README.md new file mode 100644 index 0000000..3da716c --- /dev/null +++ b/smalltalk/README.md @@ -0,0 +1,4 @@ +## Smalltalk + +* :scroll: [Design Principles Behind Smalltalk](Design-Principles-Behind-Smalltalk.pdf) +* :scroll: [The Early History of Smalltalk, by Alan Kay](The-Early-History-Of-Smalltalk.pdf) \ No newline at end of file diff --git a/historical/smalltalk/The-Early-History-Of-Smalltalk.pdf b/smalltalk/The-Early-History-Of-Smalltalk.pdf similarity index 100% rename from historical/smalltalk/The-Early-History-Of-Smalltalk.pdf rename to smalltalk/The-Early-History-Of-Smalltalk.pdf diff --git a/sports_analytics/README.md b/sports_analytics/README.md new file mode 100644 index 0000000..116d2f5 --- /dev/null +++ b/sports_analytics/README.md @@ -0,0 +1,3 @@ +## Sports Analytics + +* :scroll: [Predicting Points and Valuing Decisions in Real Time with NBA Optical Tracking Data](2014-ssac-pointwise-predicting-points-and-valuing-decisions-in-real-time.pdf) \ No newline at end of file diff --git a/sublinear_algorithms/README.md b/sublinear_algorithms/README.md index 3a32b38..0d9446c 100644 --- a/sublinear_algorithms/README.md +++ b/sublinear_algorithms/README.md @@ -1,6 +1,6 @@ # Sublinear Algorithms -## Hosted Papers +## Hosted Papers :open_file_folder: * :scroll: **[Probablistic Counting Algorithms for Database Applications](https://github.com/papers-we-love/papers-we-love/blob/master/sublinear_algorithms/1985-Flajolet-Probabilistic-counting.pdf)** diff --git a/time_series/README.md b/time_series/README.md index 632043c..44e8cfd 100644 --- a/time_series/README.md +++ b/time_series/README.md @@ -6,7 +6,7 @@ one-pass processing. The included documents are: -* :scroll: [Operators on Inhomogeneous Time Series] (http://papers.ssrn.com/sol3/papers.cfm?abstract_id=208278) - Gilles O. Zumbach and Ulrich A. Müller +* [:scroll:](https://github.com/papers-we-love/papers-we-love/blob/master/time_series/operators-on-inhomogeneous-time-series.pdf) [Operators on Inhomogeneous Time Series](http://papers.ssrn.com/sol3/papers.cfm?abstract_id=208278) - Gilles O. Zumbach and Ulrich A. Müller We present a toolbox to compute and extract information from inhomogeneous (i.e. unequally spaced) time series. The toolbox From 8b33f9bb756f99b9c315ad1c39131d032984d8e0 Mon Sep 17 00:00:00 2001 From: Jeremy Heiler Date: Wed, 7 Oct 2015 22:21:03 -0400 Subject: [PATCH 6/7] Update copyright --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index acd7903..39d0184 100644 --- a/README.md +++ b/README.md @@ -110,4 +110,4 @@ We want to help bring academic research closer to practitioners and we strive to ### Copyright -The name "Papers We Love" and the logos for the organization are copyrighted, and under the ownership of Papers We Love NYC, all rights reserved. When starting a chapter, please review [our guidelines](https://github.com/papers-we-love/papers-we-love/wiki/Creating-a-PWL-chapter) and ask us about using the logo. +The name "Papers We Love" and the logos for the organization are copyrighted, and under the ownership of Papers We Love Ltd, all rights reserved. When starting a chapter, please review [our guidelines](https://github.com/papers-we-love/papers-we-love/wiki/Creating-a-PWL-chapter) and ask us about using the logo. From 5aba4207e2253be8fc8158d896e527bfb2fc646e Mon Sep 17 00:00:00 2001 From: Zeeshan Lakhani Date: Thu, 8 Oct 2015 00:35:53 -0400 Subject: [PATCH 7/7] Readme Updates w/ new links --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 39d0184..657664d 100644 --- a/README.md +++ b/README.md @@ -77,6 +77,7 @@ We're looking for pull requests related to papers we should add, better organiza * [Security Data Science Papers](http://www.covert.io/security-datascience-papers/) * [Research Papers from Robert Harper, Carnegie Mellon University](http://www.cs.cmu.edu/~rwh/papers.htm) * [Lobste.rs tagged as PDF](https://lobste.rs/t/pdf) +* [The Morning Paper](http://blog.acolyer.org/) Please check out our [wiki-page](https://github.com/papers-we-love/papers-we-love/wiki/Other-Good-Sources-of-Reading-Material) for links to blogs, books, exchanges that are worth a good read. @@ -87,6 +88,7 @@ Reading a paper is not the same as reading a blogpost or a novel. Here are a few * [How to read an academic article](http://organizationsandmarkets.com/2010/08/31/how-to-read-an-academic-article/) * [Advice on reading academic papers](http://www4.ncsu.edu/~akmassey/posts/2012-02-15-advice-on-reading-academic-papers.html) * [How to read and understand a scientific paper](http://violentmetaphors.com/2013/08/25/how-to-read-and-understand-a-scientific-paper-2/) +* [Should I Read Papers?](http://michaelrbernste.in/2014/10/21/should-i-read-papers.html) ## Contributing Guidelines