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