update with parent repo (#1)

update with parent repo
This commit is contained in:
NewAlexandria 2019-08-22 11:27:07 -04:00 committed by GitHub
commit d9e5112446
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
129 changed files with 519 additions and 247 deletions

27
.github/CONTRIBUTING.md vendored Normal file
View File

@ -0,0 +1,27 @@
## Contributing Guidelines
We have a few guidelines in place to keep the repo clean and easy to navigate. We recommend that you follow these conventions in your pull-request for a speedy merge. Note that every pull request we receive must have Two-Thumbs-Up minimum from PWL organizers/collaborators to be merged.
### Follow the group's ethos
We want to help bring academic research closer to practitioners and we strive to:
* **Adhere to [Papers We Love Code of Conduct](https://github.com/papers-we-love/papers-we-love/blob/master/CODE_OF_CONDUCT.md)**.
* **Keep the quality of papers listed high:** Books, blogposts, and/or reference pdfs don't go through the same review process that academic papers do and we won't add them to this repo.
* **Help people understand why a paper is important:** We ask that you include with your commit an update to the directory README with a short justification of why you love this paper (for example: A paper might be interesting because it spawned a new domain, it was exceptionally well-written, or perhaps it was completely wrong about something.) Take look at this [pull request](https://github.com/papers-we-love/papers-we-love/pull/282/files) as a model.
### Respect content licenses
* **We will only merge pull requests that contain research papers that allow digital distribution.** Papers whose copyright prohibits redistribution will not be accepted; for example [license 8](http://www.acm.org/publications/policies/copyright-policy-v8/) from the [ACM digital library](http://www.acm.org/publications/policies/copyright_policy).
* We encourage papers that do not allow digital distribution to be added to a README, with a link to the source URL, in the appropriate subject's folder. For example, [the distributed systems README](https://github.com/papers-we-love/papers-we-love/blob/master/distributed_systems/README.md).
### Follow our commit, naming, and directory-organization conventions
* Directory names are undercased and separated by underscores (example: artificial_intelligence)
* Paper names are undercased and separated by dashes (example: out-of-the-tar-pit.pdf). Use the full title when possible.
* If your pull request includes a binary file, like a `*.pdf` for example, please still include a link to the source URL in the appropriate subject's folder's README file and highlight it with a :scroll: emojii to show that the directory contains the file itself. Here's an example [pull request](https://github.com/papers-we-love/papers-we-love/pull/366/files).
* After raising [this issue](https://github.com/papers-we-love/papers-we-love/issues/290), it would beneficial to also include the *year* along with the title, link, and description/importance when adding paper(s) to a README.
* Please rebase all multi-commit branches/PRs into 1 single commit.
### Copyright
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.

9
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

@ -0,0 +1,9 @@
## Paper Title:
### Paper Year:
### Reasons for including paper
-
-
-

View File

@ -13,15 +13,16 @@ We value the participation of each member of the community and want all attendee
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, the **paperswelove.slack.com** Slack, 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, [PapersWeLove.org](http://paperswelove.org), or via remote presentations, please contact:
- **Zeeshan Lakhani** [zeeshan@paperswelove.org](mailto:zeeshan@paperswelove.org)
- **Clint Newsom** [clint@paperswelove.org](mailto:clint@paperswelove.org)
- **Ines Sombra** [ines@paperswelove.org](mailto:ines@paperswelove.org)
- **Elaine Greenberg** [elaine@paperswelove.org](mailto:elaine@paperswelove.org)
- **Jeremy Heiler** (Github) [jeremy@paperswelove.org](mailto:jeremy@paperswelove.org)
- **Darren Newton** (paperswelove.org) [darren@paperswelove.org](mailto:darren@paperswelove.org)
- **All** [contact@paperswelove.org](mailto:contact@paperswelove.org)
The organizers of your local Papers We Love meet-up/event are available to help you with any issues or concerns at live events.
The organizers of your local Papers We Love meet-up/event are available to help you with any issues or concerns at live and/or live-streaming events. If they are unavailable for some reason, please send a message to our contact email address or to one of our core organizers listed above.
What it means
-------------
@ -39,11 +40,11 @@ Thank you for helping make this a welcoming, friendly event for all.
Spelling it out
---------------
Harassment includes offensive verbal comments related to gender, sexual orientation, disability, physical appearance, body size, race, religion, sexual images in public spaces, deliberate intimidation, stalking, following, harassing photography or recording, sustained disruption of talks or other events, inappropriate physical contact, and unwelcome sexual attention.
Harassment includes offensive verbal comments related to gender, sexual orientation, disability, physical appearance, body size, race, religion, age, sexual images in public spaces, deliberate intimidation, stalking, following, harassing photography or recording, sustained disruption of talks or other events, inappropriate physical contact, and unwelcome sexual attention.
Participants asked to stop any harassing behavior are expected to comply immediately.
Contributors to the GitHub repository, the Meetup and/or event-related sites, sponsors, or similar are also subject to the anti-harassment policy. Organizers (including volunteers) should not use sexualized clothing/uniforms/costumes, or otherwise create a sexualized environment..
Contributors to the GitHub repository, the meetups and/or event-related sites, sponsors, or similar are also subject to the anti-harassment policy. Organizers (including volunteers) should not use sexualized clothing/uniforms/costumes, or otherwise create a sexualized environment.
Local Chapters
--------------

View File

@ -1,8 +1,8 @@
## ![Papers We Love](http://paperswelove.org/images/logo-top.svg)
## ![Papers We Love](http://paperswelove.org/images/logo-top.svg)
**Papers We Love** (*PWL*) is a community built around reading, discussing and learning more about academic computer science papers. This repository serves as a directory of some of the best papers the community can find, bringing together documents scattered across the web. You can also visit the [Papers We Love site](http://paperswelove.org/) for more info.
Due to [licenses](https://github.com/papers-we-love/papers-we-love#respect-content-licenses) we cannot always host the papers themselves (when we do, you will see a :scroll: emoji next to its title in the directory README) but we can provide links to their locations.
Due to [licenses](https://github.com/papers-we-love/papers-we-love/blob/master/.github/CONTRIBUTING.md#respect-content-licenses) we cannot always host the papers themselves (when we do, you will see a :scroll: emoji next to its title in the directory README) but we can provide links to their locations.
If you enjoy the papers, perhaps stop by a local chapter meetup and join in on the vibrant discussions around them. You can also discuss *PWL* events, the content in this repository, and/or anything related to *PWL* on our [Slack](https://paperswelove.slack.com/messages/general/), after [signing-up](http://papersweloveslack.herokuapp.com/) to join it, or on our *#paperswelove* IRC channel on freenode.
@ -11,59 +11,77 @@ If you enjoy the papers, perhaps stop by a local chapter meetup and join in on t
Here are our official chapters. Let us know if you are interested in [starting one](https://github.com/papers-we-love/papers-we-love/wiki/Creating-a-PWL-chapter) in your city!
* [Amsterdam](http://www.meetup.com/papers-we-love-amsterdam/)
* [Athens](https://www.meetup.com/Papers-We-Love-Athens)
* [Atlanta](https://www.meetup.com/Papers-We-Love-Atlanta)
* [Bangalore](http://www.meetup.com/Papers-we-love-Bangalore/)
* [Barcelona](https://www.meetup.com/papers-we-love-bcn/)
* [Beijing](https://www.meetup.com/Beijing-Technology-Meetup-Group/)
* [Belfast](http://www.meetup.com/Papers-We-Love-Belfast/)
* [Berlin](http://www.meetup.com/Papers-We-Love-Berlin/)
* [Bhubaneswar](https://www.facebook.com/groups/pwlbbsr/)
* [Boston](http://www.meetup.com/Papers-We-Love-Boston-Cambridge/)
* [Brasilia](http://www.meetup.com/papers-we-love-bsb)
* [Boulder](http://www.meetup.com/Papers-We-Love-Boulder/)
* [Bucharest](http://www.meetup.com/papers-we-love-bucharest/)
* [Chicago](http://www.meetup.com/Papers-We-Love-Chicago)
* [Cairo](http://www.meetup.com/Papers-We-Love-Cairo/)
* [Chattanooga](http://www.meetup.com/Papers-We-Love-Chattanooga/)
* [Chicago](http://www.meetup.com/papers-we-love-chicago/)
* [Columbus, Ohio](http://www.meetup.com/Papers-We-Love-Columbus/)
* [Dallas](http://www.meetup.com/Papers-We-Love-Dallas/)
* [Dallas](http://www.papersdallas.com/)
* [Gothenburg](https://www.meetup.com/Papers-We-Love-Gothenburg/)
* [Guadalajara](https://www.facebook.com/pwlgdl/)
* [Hamburg](http://www.meetup.com/Papers-We-Love-Hamburg/)
* [Hyderabad](http://www.meetup.com/papers-we-love-hyderabad/)
* [Iasi](http://www.meetup.com/Papers-We-Love-Iasi/)
* [Iowa City](https://www.meetup.com/techcorridorio)
* [Kathmandu](https://www.facebook.com/groups/PapersWeLoveKathmandu/)
* [Kyiv](https://www.facebook.com/groups/PapersWeLoveKyiv)
* [Lebanon](http://www.paperswelovelb.club)
* [London](http://www.meetup.com/papers-we-love-london)
* [Los Angeles](http://www.meetup.com/papers-we-love-la)
* [Madrid](http://www.meetup.com/Papers-We-Love-Madrid/)
* [Medellín](https://www.meetup.com/paperswelovemde/)
* [Montreal](http://www.meetup.com/Papers-We-Love-Montreal/)
* [Mumbai](https://www.meetup.com/Papers-We-Love-Mumbai/)
* [Munich](http://www.meetup.com/Papers-We-Love-Munich/)
* [New York City](http://www.meetup.com/papers-we-love/)
* [Paris](http://www.meetup.com/Papers-We-Love-Paris/)
* [Philadelphia](http://www.meetup.com/Papers-We-Love-Philadelphia/)
* [Portland](http://www.meetup.com/Papers-We-Love-PDX/)
* [Porto](https://www.meetup.com/Papers-We-Love-Porto)
* [Pune](http://www.meetup.com/Doo-Things)
* [Raleigh-Durham](https://www.meetup.com/Papers-We-Love-Raleigh-Durham/)
* [Reykjavík](http://www.meetup.com/Papers-We-Love-Reykjavik)
* [San Francisco](http://www.meetup.com/papers-we-love-too/) || [Meetup list](https://github.com/papers-we-love/papers-we-love/tree/master/_meetups/SanFrancisco)
* [Rio de Janeiro](https://www.meetup.com/pt-BR/papers-we-love-rio-de-janeiro/)
* [San Diego](http://www.meetup.com/Papers-We-Love-San-Diego/)
* [San Francisco](http://www.meetup.com/papers-we-love-too/)
* [Seattle](http://www.meetup.com/Papers-We-Love-Seattle/)
* [Seoul, Korea](http://www.meetup.com/seoul-tech-society)
* [Singapore](https://www.facebook.com/groups/paperswelovesg/)
* [St. Louis](http://www.meetup.com/Papers-We-Love-in-saint-louis/)
* [Teresina](https://www.meetup.com/pt-BR/Papers-We-Love-Teresina/)
* [Toronto](http://www.meetup.com/Papers-We-Love-Toronto/)
* [Vienna](http://www.meetup.com/Papers-We-Love-Vienna/)
* [Washington, DC](http://www.meetup.com/Papers-We-Love-DC/)
* [Winnipeg](http://www.meetup.com/Papers-We-Love-Winnipeg/)
* [Washington, DC](http://www.meetup.com/Papers-We-Love-DC-NoVA/)
* [Winnipeg](http://pwlwpg.ca/)
* [Zürich](https://www.meetup.com/Papers-we-love-Zurich/)
All of our meetups follow our [Code of Conduct](CODE_OF_CONDUCT.md).
### Past Presentations
View a complete list of [past presentations](https://github.com/papers-we-love/papers-we-love/wiki/Past-Presentations) or check out our [Youtube](https://www.youtube.com/user/PapersWeLove) and [MixCloud](https://www.mixcloud.com/paperswelove/) (audio-only format) channels.
## Search this Repo!
[@polyfractal](https://github.com/polyfractal) indexed this repository with Elastic Search. Find papers [here](http://findpaperswelove.com) !
Check out our [YouTube](https://www.youtube.com/user/PapersWeLove) and [MixCloud](https://www.mixcloud.com/paperswelove/) (audio-only format) channels.
## Info
We're looking for pull requests related to papers we should add, better organization of the papers we do have, and/or links to other paper-repos we should point to.
### Other Good Places to Discuss Papers
* [Papers We Love reddit](https://www.reddit.com/r/paperswelove)
### Other Good Places to Find Papers
* [2 Minute Papers](https://www.youtube.com/user/keeroyz)
* [Bell System Technical Journal, 1922-1983](https://www.alcatel-lucent.com/bell-labs-journals)
* [Best Paper Awards in Computer Science](http://jeffhuang.com/best_paper_awards.html)
* [Facebook](https://www.facebook.com/publications)
* [Facebook](https://research.fb.com/publications/)
* [Google Scholar](http://scholar.google.com/citations?view_op=top_venues&hl=en&vq=eng) (choose a subcategory)
* [Microsoft Research](http://research.microsoft.com/apps/catalog/default.aspx?t=publications)
* [Functional Programming Books Review](http://alexott.net/en/fp/books/)
@ -77,7 +95,7 @@ We're looking for pull requests related to papers we should add, better organiza
* [Services Engineering Reading List](https://github.com/mmcgrana/services-engineering)
* [Readings in Distributed Systems](http://christophermeiklejohn.com/distributed/systems/2013/07/12/readings-in-distributed-systems.html)
* [Gradual Typing Bibliography](http://samth.github.io/gradual-typing-bib/)
* [Security Data Science Papers](http://www.covert.io/security-datascience-papers/)
* [Security Data Science Papers](http://www.covert.io/the-definitive-security-datascience-and-machinelearning-guide/)
* [Research Papers from Robert Harper, Carnegie Mellon University](http://www.cs.cmu.edu/~rwh/papers.html)
* [Lobste.rs tagged as PDF](https://lobste.rs/t/pdf)
* [The Morning Paper](http://blog.acolyer.org/)
@ -89,31 +107,19 @@ Please check out our [wiki-page](https://github.com/papers-we-love/papers-we-lov
Reading a paper is not the same as reading a blogpost or a novel. Here are a few handy resources to help you get started.
* [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)
* [Advice on reading academic papers](https://www.cc.gatech.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)
* [The Refreshingly Rewarding Realm of Research Papers](https://www.youtube.com/watch?v=8eRx5Wo3xYA)
### Applications/Ideas built around Papers We Love
* Love a Paper - [@loveapaper](https://twitter.com/loveapaper)
## Contributing Guidelines
We have a few guidelines in place to keep the repo clean and easy to navigate. We recommend that you follow these conventions in your pull-request for a speedy merge. Note that every pull request we receive must have Two-Thumbs-Up minimum from PWL organizers/collaborators to be merged.
Please take a look at our [CONTRIBUTING.md](https://github.com/papers-we-love/papers-we-love/blob/master/.github/CONTRIBUTING.md) file.
### Follow the group's ethos
We want to help bring academic research closer to practitioners and we strive to:
* **Keep the quality of papers listed high:** Books, blogposts, and/or reference pdfs don't go through the same review process that academic papers do and we won't add them to this repo.
* **Help people understand why a paper is important:** We ask that you include with your commit an update to the directory README with a short justification of why you love this paper (for example: A paper might be interesting because it spawned a new domain, it was exceptionally well-written, or perhaps it was completely wrong about something.)
### Respect content licenses
* **We will only merge pull requests that contain research papers that allow digital distribution.** Papers whose copyright prohibits redistribution will not be accepted; for example [license 1](http://www.acm.org/publications/policies/copyright-policy-v1) from the [ACM digital library](http://www.acm.org/publications/policies/copyright_policy).
* We encourage papers that do not allow digital distribution to be added to a README in the appropriate subject's folder. For example, [the distributed systems README](https://github.com/papers-we-love/papers-we-love/blob/master/distributed_systems/README.md).
### Follow our naming convention
* Directory names are undercased and separated by underscores (example: artificial_intelligence)
* Paper names are undercased and separated by dashes (example: out-of-the-tar-pit.pdf). Use the full title when possible.
### Copyright
## Copyright
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.

View File

@ -1,49 +0,0 @@
### PWLSF#1 => Dapper, a Distributed Systems Tracing Infrastructure
Speaker: [Ryan Kennedy](https://twitter.com/rckenned)
Date: [March 26, 2014](http://www.meetup.com/papers-we-love-too/events/168085182/)
Links: [Paper](http://research.google.com/pubs/pub36356.html) || [Video](https://www.youtube.com/watch?v=ya9X63VPgV8) || [Slides](https://speakerdeck.com/paperswelove/pwl-sf-number-1-equals-ryan-kennedy-on-dapper-a-distributed-systems-tracing-infrastructure)
### PWLSF#2 => The Akamai Network
Speaker: [Andy Gross](https://twitter.com/argv0)
Date: [April 24, 2014](http://www.meetup.com/papers-we-love-too/events/168294502/)
Links: [Paper](http://www.akamai.com/dl/technical_publications/network_overview_osr.pdf) || [Video](https://www.youtube.com/watch?v=bQCT93D1bsM) || Slides: N/A
### PWLSF#3 => Bimodal Multicast
Speaker: [Bruce Spang](https://twitter.com/brucespang)
Date: [May 22, 2014](http://www.meetup.com/papers-we-love-too/events/168461962/)
Links: [Paper](http://www.csl.mtu.edu/cs6461/www/Reading/Birman99.pdf) || [Video](https://www.youtube.com/watch?v=iBvWB2K2ULU) || [Slides](https://speakerdeck.com/paperswelove/pwlsf-number-3-equals-bruce-spang-on-bimodal-multicast)
### PWLSF#4 => Calvin
Speaker: [Joel VanderWerf](https://twitter.com/JoelVanderWerf)
Date: [April 24, 2014](http://www.meetup.com/papers-we-love-too/events/171291972/)
Links: [Paper](http://www.cs.yale.edu/homes/dna/papers/calvin-sigmod12.pdf) || [Video](https://www.youtube.com/watch?v=RxMBqVLfei0) || [Slides](https://speakerdeck.com/paperswelove/pwlsf-number-4-equals-joel-vanderwerf-on-calvin)
### PWLSF#5 => Impossibility of Distributed Consensus with One Faulty Process
Speaker: [Henry Robinson](https://twitter.com/HenryR)
Date: [July 24, 2014](http://www.meetup.com/papers-we-love-too/events/168566452/)
Links: [Paper](http://macs.citadel.edu/rudolphg/csci604/ImpossibilityofConsensus.pdf)|| [Video](https://www.youtube.com/watch?v=HAimnwG4Qv4) || [Slides](https://speakerdeck.com/paperswelove/pwlsf-number-5-equals-henry-robinson-on-flp-imp-of-distributed-consensus-w-one-faulty-process)
### PWLSF#6 => Using Reasoning about Knowledge to Analyze Distributed Systems
Speaker: [Peter Alvaro](https://twitter.com/palvaro)
Date: [August 21, 2014](http://www.meetup.com/papers-we-love-too/events/168821902/)
Links: [Paper](https://www.cs.cornell.edu/home/halpern/papers/UsingRAK.pdf) || [Video](https://www.youtube.com/watch?v=CxZrBwhXHdo) || [Slides](https://speakerdeck.com/paperswelove/pwlsf-number-6-equals-peter-alvaro-using-reasoning-about-knowledge-to-analyze-distributed-systems)
### PWLSF#7 => SWIM
Speaker: [Armon Dadgar](https://twitter.com/armon)
Date: [September 25, 2014](http://www.meetup.com/papers-we-love-too/events/176288712/)
Links: [Paper](http://www.cs.cornell.edu/~asdas/research/dsn02-swim.pdf) || [Video](https://www.youtube.com/watch?v=aVYEY75qn3c) || [Slides](https://speakerdeck.com/paperswelove/pwlsf-number-7-equals-armon-dadgar-on-swim)
### PWLSF#8 => On the attraction between two perfectly conducting plates
Speaker: [Kyle Kingsbury](https://twitter.com/aphyr)
Date: [October 22, 2014](http://www.meetup.com/papers-we-love-too/events/187600122/)
Links: [Paper](https://github.com/papers-we-love/papers-we-love/blob/master/physics/on-the-attraction-of-two-perfectly-conducting-plates.pdf?raw=true) || [Video]() || [Slides]()
### PWLSF#9 => Level Ancestor Simplified
Speaker: [Leif Walsh](https://twitter.com/leifwalsh)
Date: [November 13, 2014](http://www.meetup.com/papers-we-love-too/events/197577972/)
Links: [Paper](https://github.com/papers-we-love/papers-we-love/blob/master/data_structures/level-ancestor-simplified.pdf) || [Video]() || [Slides]()
### PWLSF#10 => Managing Update Conflicts in Bayou
Speaker: [Peter Bailis](http://twitter.com/pbailis)
Date: [December 17, 2014](http://www.meetup.com/papers-we-love-too/events/197678922/)
Links: [Paper](http://db.cs.berkeley.edu/cs286/papers/bayou-sosp1995.pdf) || [Video]() || [Slides]()

View File

@ -1,6 +0,0 @@
### San Francisco Papers We Love Meetups
Our [Meetup Page](http://www.meetup.com/papers-we-love-too)
Here is the list of all meetups and links to their resources. Enjoy!
* [2014 Meetups](2014_meetups.md)
* 2015 - coming soon!

View File

@ -0,0 +1,5 @@
## Affective Computing
* :scroll: [Affective Computing](http://affect.media.mit.edu/pdfs/95.picard.pdf)
* :scroll: [Theories, Methods and Current Research on Emotions](https://irenelopatovska.files.wordpress.com/2012/10/lopatovska_arapakis_2011_theories.pdf)

Binary file not shown.

View File

@ -1,6 +1,6 @@
## Artificial Intelligence
* [: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
* :scroll: [Analysis of Three Bayesian Network Inference Algorithms: Variable Elimination, Likelihood Weighting, and Gibbs Sampling](3-bayesian-network-inference-algorithm.pdf) by Rose F. Liu, Rusmin Soetjipto
* :scroll: [Efficient Selectivity and Backup Operators in Monte-Carlo Tree Search](efficient-selectivity-and-backup-operators-in-monte-carlo-tree-search.pdf)
@ -8,3 +8,8 @@
* [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/)
* [Mastering the Game of Go with Deep Neural Networks and Tree Search](http://airesearch.com/wp-content/uploads/2016/01/deepmind-mastering-go.pdf) by Silver et al.
* [A Universal Music Translation Network (2018)](https://arxiv.org/pdf/1805.07848.pdf) by Noam Mor, Lior Wolf, Adam Polyak & Yaniv Taigman
> This paper proposes a method for translating music across musical instruments, genres, and styles. It is based on a multi-domain wavenet autoencoder, with a shared encoder and a disentangled latent space that is trained end-to-end on waveforms. Employing a diverse training dataset and large net capacity, the domain-independent encoder enables translation even from musical domains that were not seen during training. The method is unsupervised and does not rely on supervision in the form of matched samples between domains or musical transcriptions. This method is evaluated on NSynth, as well as on a dataset collected from professional musicians, and achieve convincing translations, even when translating from whistling, potentially enabling the creation of instrumental music by untrained humans.

View File

@ -6,24 +6,18 @@
> complex probability models, identified conditional independence
> relationships as the key organizing principle for uncertain knowledge,
> and described an efficient, distributed, exact inference algorithm.
> -- <cite>[ACM Turing Award Short Annotated Bibliography][1]</cite>
[A theory of inferred causation](http://ftp.cs.ucla.edu/pub/stat_ser/r156-reprint.pdf) - with Thomas S. Verma.
> Introduces minimal-model semantics as a basis for causal discovery,
> and shows that causal directionality can be inferred from patterns
> of correlations without resorting to temporal information.
> -- <cite>[ACM Turing Award Short Annotated Bibliography][1]</cite>
[Causal diagrams for empirical research](http://ftp.cs.ucla.edu/pub/stat_ser/R218-B-L.pdf) - extended version linked.
> Introduces the theory of causal diagrams and its associated do-calculus;
> the first (and still the only) mathematical method to enable a
> systematic removal of confounding bias in observations.
> -- <cite>[ACM Turing Award Short Annotated Bibliography][1]</cite>
[The algorithmization of counterfactuals](http://ftp.cs.ucla.edu/pub/stat_ser/r360.pdf) -
> Describes a computational model that explains how humans generate,
> evaluate and distinguish counterfactual statements so swiftly and
> consistently.
> -- <cite>[ACM Turing Award Short Annotated Bibliography][1]</cite>
[1]: http://amturing.acm.org/bib/pearl_2658896.cfm

View File

@ -3,3 +3,17 @@
* :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
* :scroll: [An Industrial-Strength Audio Search Algorithm](shazam-audio-search-algorithm.pdf) by Avery Li-Chun Wang
* [WaveNet: A Generative Model for Raw Audio](https://arxiv.org/pdf/1609.03499.pdf) by a team @ Google DeepMind, 2016
* [Announcement and interactive examples](https://deepmind.com/blog/wavenet-generative-model-raw-audio/)
* [[Python] Implementation with the Keras Neural Networks library](https://github.com/basveeling/wavenet)
* [[Python] Implementation with the TensorFlow Machine Intelligence library](https://github.com/ibab/tensorflow-wavenet)
* :scroll: [Real time chord recognition for live performance](real-time-chord-detection.pdf) by Adam M. Stark, Mark D. Plumbley
* [[C++] Implementation of real time chord detection](https://github.com/adamstark/Chord-Detector-and-Chromagram)
* :scroll: [ESSENTIA: An Audio Analysis Library for MusicInformation Retrieval](essentia.pdf) by Music Technology Group, Universitat Pompeu Fabra, Barcelona, Spain
* [[C++] Essential open source library](https://github.com/MTG/essentia)
* :scroll: [MARSYAS: A framework for audio analysis](marsyas.pdf) by George Tzanetakis and Perry Cook
* [[C++] Marsyas open source audio processing framework](https://github.com/marsyas/marsyas)

BIN
audio_comp_sci/essentia.pdf Normal file

Binary file not shown.

BIN
audio_comp_sci/marsyas.pdf Normal file

Binary file not shown.

Binary file not shown.

View File

@ -11,3 +11,7 @@ Some resources that may assist in understanding papers in this section:
- How we can generate patterns from reaction-diffusion models and how those models apply in real life situations: cells self-organisation and pattern creation.
- Includes advance mathematical concepts, basic chemistry, basic biology.
- By Alan Turing
* [A DNA-Based Archival Storage System](https://homes.cs.washington.edu/~luisceze/publications/dnastorage-asplos16.pdf)
- DNA is a strong candidate for storing data stably for centuries. DNA also has a very high data/volume density (1 exabyte / mm³).
- This paper describes an algorithm for storing binary data in the form of DNA that is optimized for biochemical reactions.

View File

@ -3,3 +3,5 @@
* [: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
* [:scroll:](a-program-optimization-for-automatic-database-result-caching.pdf)[A Program Optimization for Automatic Database Result Caching](http://adam.chlipala.net/papers/SqlcachePOPL17/SqlcachePOPL17.pdf) by Ziv Scully and Adam Chlipala

View File

@ -1,3 +1,3 @@
## Clustering Algorithms
[On the resemblance and containment of documents](http://gatekeeper.dec.com/ftp/pub/dec/SRC/publications/broder/positano-final-wpnums.pdf) (Andrei Z. Broder)
[On the resemblance and containment of documents](https://www.cs.princeton.edu/courses/archive/spr05/cos598E/bib/broder97resemblance.pdf) (Andrei Z. Broder)

View File

@ -1,3 +1,14 @@
#Combinatory Logic
# Combinatory Logic
* [Flattening Combinators: Surviving Without Parentheses](http://www.westpoint.edu/eecs/SiteAssets/SitePages/Faculty%20Publication%20Documents/Okasaki/jfp03flat.pdf) by Chris Okasaki
* [Flattening Combinators: Surviving Without Parentheses]
by Chris Okasaki (2003) ([DOI])
* [Combinatorial Analysis and Computers]
by Marshall Hall Jr. and Donald E. Knuth (1965)
[Flattening Combinators: Surviving Without Parentheses]:
https://web.archive.org/web/20170828181221/http://www.westpoint.edu:80/eecs/SiteAssets/SitePages/Faculty%20Publication%20Documents/Okasaki/jfp03flat.pdf
[DOI]:
https://doi.org/10.1017/S0956796802004483
[Combinatorial Analysis and Computers]:
http://poncelet.math.nthu.edu.tw/disk5/js/computer/hall-knuth.pdf

View File

@ -1,9 +1,13 @@
## Computer Science Fundamentals and History
* [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
* "Turing, On computable numbers, with an application to the Entscheidungsproblem" by Alan Turing
* As a PDF: [Turing, On computable numbers, with an application to the Entscheidungsproblem](https://www.cs.virginia.edu/~robins/Turing_Paper_1936.pdf)
* As a collection of single images: [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](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)
* :scroll: [Early Lisp History: 1956-1959](early-lisp-history-1956-1959-herbert-stoyan-html-rendering.pdf) by Herbert Stoyan. This is a pdf rendering of the HTML page available at Archive.org.
* :scroll: [Why Programming is a good medium for expressing poorly understood and sloppily-formulated ideas](http://web.media.mit.edu/~minsky/papers/Why%20programming%20is--.html) by Marvin Minsky

View File

@ -0,0 +1,6 @@
## Computational Creativity
* [:scroll:](mexica-a-computer-model-of-a-cognitive-account-of-creativing-writing.pdf) [MEXICA: a computer model of a cognitive account of creative writing.](https://www.researchgate.net/publication/220080099_MEXICA_A_computer_model_of_a_cognitive_account_of_creative_writing) by Rafael Perez Y Perez and Mike Sharples
> This 2001 paper is one of the classics in computational creativity. The Engagement-Reflection cycle that they use, alternating story generation and a set of reflection/revision passes, had a foundational impact on the very young field of narrative generation, the first of its kind to break away from standard theories of events and simulation, and instead look more at the cognitive side of storytelling to inform its approach. - @chrisamaphone

View File

@ -1,13 +1,18 @@
### Rendering
* [: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)
* :scroll: [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)
* [The Rendering Equation](http://www.cs.rpi.edu/~cutler/classes/advancedgraphics/S08/lectures/kajiya.pdf)
* [GigaVoxels : Ray-Guided Streaming for Efficient and Detailed Voxel Rendering](http://maverick.inria.fr/Publications/2009/CNLE09/CNLE09.pdf) - [Web page](http://maverick.inria.fr/Publications/2009/CNLE09/) - [Project page](http://gigavoxels.imag.fr/) - [Video](https://www.youtube.com/watch?v=HScYuRhgEJw)
* [Continuous shading of curved surfaces](http://page.mi.fu-berlin.de/block/htw-lehre/wise2015_2016/bel_und_rend/skripte/gouraud1971.pdf) by Henri Gouraud (1971)
* [Illumination for computer generated pictures](http://www.cs.northwestern.edu/~ago820/cs395/Papers/Phong_1975.pdf) by Bui Tuong Phong (1975)
* [The Rendering Equation](http://www.cs.rpi.edu/~cutler/classes/advancedgraphics/S08/lectures/kajiya.pdf) by James T. Kajiya (1986)
### Surface reconstruction
* [Poisson surface reconstruction](http://research.microsoft.com/en-us/um/people/hoppe/poissonrecon.pdf) - [Code](http://www.cs.jhu.edu/~misha/Code/PoissonRecon/Version5.71/)
@ -16,6 +21,9 @@ This is a really great paper that is both complex and straightforward. This pape
### Object modeling
* [3-Sweep: Extracting Editable Objects from a Single Photo](http://www.cs.tau.ac.il/~dcor/articles/2013/3-Sweep-Extracting-Editable-Objects.pdf) - [Video](https://www.youtube.com/watch?v=Oie1ZXWceqM)
### Photo editing
* [Deep Photo Style Transfer](https://arxiv.org/pdf/1703.07511.pdf) (2017) - [Code](https://github.com/luanfujun/deep-photo-styletransfer) - A deep-learning approach to photographic style transfer (that is, taking the style of one photo and automatically applying it to another). The images in this paper are gorgeous.
### Lighting
* [Light Propagation Volumes in CryEngine 3](http://www.crytek.com/download/Light_Propagation_Volumes.pdf)
@ -37,8 +45,8 @@ This is a really great paper that is both complex and straightforward. This pape
> Of all the ways to manipulate a 3D mesh, push/ technique popularized by SketchUp is one of the most approachable and fun. PushPull++ is a recent paper that elaborates on the technique, cleaning up a lot of edge cases and unlocking new features, using wonderfully straightforward math. The potential for 3D modeling tools or procedural mesh generation APIs built on these simple ideas is very exciting.
> The paper presents the technique and the tool that the authors built. I will focus on the technique, as s the part I loved more in this paper (quote by Ramsey Nasser).
### Image Processing
* :scroll: [Imaging Vector Fields Using Line Integral Convolution](http://cs.brown.edu/courses/csci2370/2000/1999/cabral.pdf) by Brian Cabral and Leith Leedom
### Shape grammars

File diff suppressed because one or more lines are too long

View File

@ -13,3 +13,7 @@
* [The Semantics of x86-CC Multiprocessor Machine Code](http://www.cl.cam.ac.uk/~pes20/weakmemory/popl09.pdf)
*Note: This contribution here is the focus on the rigorous semantics for x86 multiprocessor programs and an axiomatic definition of the memory model. Their definitions and proofs are backed by the [HOL](http://en.wikipedia.org/wiki/HOL_(proof_assistant))(Higher Order Logic) proof assistant.*
* :scroll: [Experience with Processes and Monitors in Mesa](https://people.eecs.berkeley.edu/~brewer/cs262/Mesa.pdf)
* [Simple, Fast, and Practical Non-Blocking and Blocking Concurrent Queue Algorithms](http://www.cs.rochester.edu/~scott/papers/1996_PODC_queues.pdf)

View File

@ -6,6 +6,8 @@
* [New Directions in Cryptography (1976)](http://www-ee.stanford.edu/~hellman/publications/24.pdf)
* [RSA Key Extraction via Low-Bandwidth Acoustic Cryptanalysis (2013)](http://www.cs.tau.ac.il/~tromer/papers/acoustic-20131218.pdf)
* [The Moral Character of Cryptographic Work (2015)](http://web.cs.ucdavis.edu/~rogaway/papers/moral-fn.pdf)
* [:scroll:](ntru-prime.pdf) [NTRU Prime (2016)](https://eprint.iacr.org/2016/461.pdf) (Daniel J. Bernstein, Chitchanok Chuengsatiansup, Tanja Lange, and Christine van Vredendaal)
* [Key Reinstallation Attacks: Forcing Nonce Reuse in WPA2 (2017)](https://papers.mathyvanhoef.com/ccs2017.pdf) (Mathy Vanhoef, Frank Piessens)
## Related Works
### [A Mathematical Theory of Cryptography (1945)](http://www.cs.bell-labs.com/who/dmr/pdfs/shannoncryptshrt.pdf) - Shannon

BIN
cryptography/ntru-prime.pdf Normal file

Binary file not shown.

7
data_fusion/README.md Normal file
View File

@ -0,0 +1,7 @@
## Data Fusion
* [:scroll:](a-new-approach-to-linear-filtering-and-prediction-problems.pdf) [A New Approach to Linear Filtering and Prediction Problems](https://www.cs.unc.edu/~welch/kalman/media/pdf/Kalman1960.pdf) by R. E. Kalman
> The Kalman Filter is a prediction-correction algorithm named after Rudolf E. Kálmán (1930-2016), by which we calculate recursively a dynamical system state at time t_{k} using state at previous time u_{k-1} and new information b_{k} only. This technique is presented as a generalization of the least squares model for problems with varying mean and additive noise.
> The Kalman Filter was first applied to the problem of trajectory estimation for the NASA Apollo space program (in the 1960s) and incorporated in the Apollo space navigation computer. It is also used in the guidance and navigation systems of the NASA Space Shuttle and the attitude control and navigation systems of the International Space Station. In other words, it is mostly used for positioning and navigation systems, but it can be generalized to any time series under suitable conditions. &mdash;@eramirem

View File

@ -1,4 +1,8 @@
# Data Replication
* :scroll: [A comprehensive study of Convergent and Commutative Replicated Data Types](a-comprehensive-study-of-convergent-and-communative-replicated-data-types.pdf)
* :scroll: [Immutability Changes Everything](http://cidrdb.org/cidr2015/Papers/CIDR15_Paper16.pdf)
> An overview on the patterns in computing leveraging immutability.
Nowadays, keeping immutable copies of data is almost inexpensive. One of the advantages of this fact is that it
can alleviate the burden of coordinated accesses to the data in the different layers of the SW/HW stack.
* :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).

7
data_science/README.md Normal file
View File

@ -0,0 +1,7 @@
# Data Science
## Data Cleaning
* :scroll: [Tidy Data] by Hadley Wickham (2014)
[Tidy Data]: https://www.jstatsoft.org/article/view/v059i10

BIN
data_science/tidy_data.pdf Normal file

Binary file not shown.

View File

@ -1,9 +1,10 @@
# 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)
* [Simple, Fast, and Practical Non-Blocking and Blocking Concurrent Queue Algorithms](https://www.cs.rochester.edu/u/scott/papers/1996_PODC_queues.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)
* [Fenwick Tree](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.14.8917&rep=rep1&type=pdf)
* [Hopscotch Hashing](http://mcg.cs.tau.ac.il/papers/disc2008-hopscotch.pdf)
## Hosted Papers

View File

@ -42,9 +42,10 @@
* [Towards a Next Generation Data Center Architecture: Scalability and Commoditization](http://research.microsoft.com/pubs/79348/presto27-greenberg.pdf)
## Hosted Papers
* :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: [Bigtable: A Distributed Storage System for Structured Data](bigtable-a-distributed-storage-system-for-structured-data.pdf)
* :scroll: [Database Metatheory: Asking Big Queries](database-metatheory--asking-the-big-queries.pdf)
@ -55,14 +56,16 @@
* :scroll: [Freenet: A Distributed Anonymous Information Storage and Retrieval System](freenet-a-distributed-anonymous-information-and-retrieval-system.pdf)
* :scroll: [Megastore: Providing Scalable, Highly Available Storage for Interactive Services](megastore-providing-scalable-highly-available-storage-for-interactive-services.pdf)
* :scroll: [The Google File System](the-google-file-system.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: [Megastore: Providing Scalable, Highly Available Storage for Interactive Services](megastore-providing-scalable-highly-available-storage-for-interactive-services.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: [Spanner: Googles Globally-Distributed Database](spanner-google's-globally-distributed-database.pdf)
* :scroll: [Spartan: A distributed array framework with smart tiling](spartan-a-distributed-array-framework-with-smart-tiling.pdf)
* :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)

Binary file not shown.

View File

@ -1,6 +1,7 @@
# Design
* [No Silver Bullet — Essence and Accidents of Software Engineering](http://faculty.salisbury.edu/~xswang/Research/Papers/SERelated/no-silver-bullet.pdf)
* [Traits: A Mechanism for Fine-Grained Reuse](http://scg.unibe.ch/archive/papers/Duca06bTOPLASTraits.pdf)
* [THING-MODEL-VIEW-EDITOR an Example from a planningsystem](http://heim.ifi.uio.no/~trygver/1979/mvc-1/1979-05-MVC.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.

View File

@ -1,3 +1,11 @@
# Digital Currency
* :scroll: [Bitcoin](bitcoin.pdf) * :scroll: [PeerCoin](peercoin.pdf) * :scroll: [PrimeCoin](primecoin.pdf)
## External Papers
* [Ethereum: a secure decentralized generalized transaction ledger](https://ethereum.github.io/yellowpaper/paper.pdf)
## Hosted Papers
* :scroll: [Bitcoin](bitcoin.pdf)
* :scroll: [PeerCoin](peercoin.pdf)
* :scroll: [PrimeCoin](primecoin.pdf)

View File

@ -4,11 +4,12 @@
* Topics
* [Datastores](#datastores)
* [Physics](#physics)
* [Testing, Verification, and Correctness](#testing-verification-and-correctness)
## External Papers
* [:scroll:](a-note-on-distributed-computing.pdf) [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://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=5A960A7B16A7BB42A99D7B6EFC30FB25?doi=10.1.1.41.7628&rep=rep1&type=pdf)
* [A simple totally ordered broadcast protocol](http://diyhpl.us/~bryan/papers2/distributed/distributed-systems/zab.totally-ordered-broadcast-protocol.2008.pdf)
@ -16,7 +17,7 @@
* [Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications](http://pdos.csail.mit.edu/papers/chord:sigcomm01/chord_sigcomm.pdf)
* [Kafka: a Distributed Messaging System for Log Processing](http://research.microsoft.com/en-us/um/people/srikanth/netdb11/netdb11papers/netdb11-final12.pdf)
* [Kafka: a Distributed Messaging System for Log Processing](http://notes.stephenholiday.com/Kafka.pdf)
* [Large-scale cluster management at Google with Borg](http://static.googleusercontent.com/media/research.google.com/en/us/pubs/archive/43438.pdf)
@ -30,7 +31,7 @@
* [Omega: flexible, scalable schedulers for large compute clusters](http://research.google.com/pubs/archive/41684.pdf)
* [Orleans: Distributed Virtual Actors for Programmability and Scalability] (http://research.microsoft.com/apps/pubs/default.aspx?id=210931)
* [Orleans: Distributed Virtual Actors for Programmability and Scalability](http://research.microsoft.com/apps/pubs/default.aspx?id=210931)
* [Paxos Made Live - An Engineering Perspective](http://www.cs.utexas.edu/users/lorenzo/corsi/cs380d/papers/paper2-1.pdf)
@ -48,6 +49,8 @@
* [The Byzantine Generals Problem](http://www.andrew.cmu.edu/course/15-749/READINGS/required/resilience/lamport82.pdf)
* [Hashgraph Consensus: Fair, Fast, Byzantine Fault Tolerance](https://swirlds.com/downloads/SWIRLDS-TR-2016-01.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)
* [: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)
@ -82,9 +85,9 @@
* :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: [Byzantine Chain Replication](bizantine-chain-replication.pdf)
* :scroll: [Byzantine Chain Replication](byzantine-chain-replication.pdf)
* :scroll: [A Byzantine Fault Tolerant Distributed Commit Protocol](bizantine-fault-tolerant-distributed-commit-protocol.pdf)
* :scroll: [A Byzantine Fault Tolerant Distributed Commit Protocol](byzantine-fault-tolerant-distributed-commit-protocol.pdf)
* :scroll: [Brewers Conjecture and the Feasibility of Consistent, Available, Partition-Tolerant Web Services](brewers-conjecture.pdf)
@ -129,7 +132,7 @@ Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web](con
* :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 Apostates Opinion](life-beyoud-distributed-transactions-an-apostates-opinion.pdf)
* :scroll: [Life beyond Distributed Transactions: an Apostates Opinion](life-beyond-distributed-transactions-an-apostates-opinion.pdf)
* :scroll: [MapReduce: Simplified Data Processing on Large Clusters](mapreduce-simplified-data-processing-on-large-clusters.pdf)
@ -179,6 +182,8 @@ Unconditional Sender and Recipient Untraceability](the-dining-cryptographers-pro
* :scroll: [ZooKeeper: Wait-free coordination for Internet-scale systems](zookeeper-wait-free-coordination-for-internet-scale-systems.pdf)
* :scroll: [Tiered Replication: A Cost-effective Alternative to
Full Cluster Geo-replication](tiered-replication-a-cost-effective-alternative-to-full-cluster-geo-replication.pdf)
## Topics
@ -226,7 +231,6 @@ Unconditional Sender and Recipient Untraceability](the-dining-cryptographers-pro
* [Towards a Next Generation Data Center Architecture: Scalability and Commoditization](http://research.microsoft.com/pubs/79348/presto27-greenberg.pdf)
* :scroll: [Bigtable: A Distributed Storage System for Structured Data](../datastores/bigtable-a-distributed-storage-system-for-structured-data.pdf)
* :scroll: [Database Metatheory: Asking Big Queries](../datastores/database-metatheory--asking-the-big-queries.pdf)
@ -251,6 +255,7 @@ Unconditional Sender and Recipient Untraceability](the-dining-cryptographers-pro
* :scroll: [Warp: Multi-Key Transactions for Key-Value Stores](../datastores/warp-multi-key-transactions-for-key-value-stores.pdf)
* :scroll: [Spartan: A distributed array framework with smart tiling](../datastores/spartan-a-distributed-array-framework-with-smart-tiling.pdf)
### Physics
@ -258,4 +263,10 @@ Unconditional Sender and Recipient Untraceability](the-dining-cryptographers-pro
By solving the [asymmetries](http://en.wikipedia.org/wiki/Moving_magnet_and_conductor_problem) that arise in Maxwells equations, Einsteins 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.
### <a name="testing-verification-and-correctness"></a>Testing, Verification, and Correctness
* :scroll: [Simple Testing Can Prevent Most Critical Failures:
An Analysis of Production Failures in Distributed
Data-Intensive Systems](https://www.usenix.org/system/files/conference/osdi14/osdi14-paper-yuan.pdf)
* :scroll: [IronFleet: Proving Practical Distributed Systems Correct](http://research.microsoft.com/pubs/255833/IronFleet-twocol.pdf)

View File

@ -4,4 +4,8 @@
* [Auctions and bidding: A guide for computer scientists (2011)](http://www.sci.brooklyn.cuny.edu/~parsons/projects/mech-design/publications/bluffers-final.pdf) by S. Parsons, J. Rodriguez-Aguilar, M. Klein
* [Optimal Bidding in Online Auctions (2001)] (http://www.mit.edu/~dbertsim/papers/Revenue%20Management/Optimal%20Bidding%20in%20Online%20Auctions.pdf) by Dimitris Bertsimas, Jerey Hawkinsy, Georgia Perakis
* [Optimal Bidding in Online Auctions (2001)](http://www.mit.edu/~dbertsim/papers/Revenue%20Management/Optimal%20Bidding%20in%20Online%20Auctions.pdf) by Dimitris Bertsimas, Jerey Hawkinsy, Georgia Perakis
## Open Source
* [The Simple economics of Open Source (2000)](http://www.people.hbs.edu/jlerner/simple.pdf) by Josh Lerner and Jean Tirole

View File

@ -5,4 +5,4 @@ It can be used in the analysis of algorithms [(Wikipedia)](http://en.wikipedia.o
## Included Papers
* [: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.
* :scroll: [A Theoretician's Guide to the Experimental Analysis of Algorithms](a-theoreticians-guide-to-the-experimental-analysis-of-algorithms.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.

View File

@ -0,0 +1,16 @@
# Fault Protection
## External Papers
* [GN&C Fault Protection Fundamentals](https://trs.jpl.nasa.gov/bitstream/handle/2014/41696/08-0125.pdf)
> As software becomes more and more integrated in our daily lives, we
> need, more than ever, for the software we write to work reliably in a
> wide range of conditions--even, and especially, in unexpected
> conditions. This paper, written by Robert Rasmussen from the Jet
> Propulsion Laboratory in 2008, documents and explains some fundamental
> principles about designing fault tolerant systems as learned through
> the hard-won experience of designing Guidance, Navigation, and Control
> (GN&C) systems for spacecraft. This paper is rich in principles,
> examples, and advice, and has a lot to offer to our industry
> generally--even for those of us who don't actively work on software for
> spaceships!

View File

@ -4,7 +4,7 @@
* [Defining Gamification - A Service Marketing Perspective](http://www.rolandhubscher.org/courses/hf765/readings/p17-huotari.pdf)
* [Design Requirements for Technologies that Encourage Physical Activity](http://www.katherineeveritt.com/papers/p457-consolvo.pdf)
* [Design Requirements for Technologies that Encourage Physical Activity](https://www.cs.helsinki.fi/u/thusu/opinnot/uschool/T-121.5500/p457-consolvo.pdf)
* [Exploring the Potential of Gamification Among Frail Elderly Persons](http://gamification-research.org/wp-content/uploads/2011/04/12-Gerling.pdf)

View File

@ -1,4 +1,5 @@
* [A Unified Theory of Garbage Collection](http://www.cs.virginia.edu/~cs415/reading/bacon-garbage.pdf)
> An overview for programmers and language implementors for understanding different garbage collection algorithms.
* [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)

View File

@ -1,21 +1,21 @@
## 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)
* [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)
# Peer sampling services
Briefly, a peer sampling service is a system that maintains a restricted set (partial view) of the all machines participating in a gossip system.
* [The Peer Sampling Service: Experimental Evaluation of Unstructured Gossip-Based Implementations](http://infoscience.epfl.ch/record/83409/files/neg--1184036295all.pdf)
* [HyParView](http://gsd.di.uminho.pt/jop/pdfs/LPR07b.pdf)
* [SWIM: Scalable Weakly-consistent Infection-style Process Group Membership Protocol](http://www.cs.cornell.edu/~asdas/research/dsn02-swim.pdf)
* [HyParView: a membership protocol for reliable gossip-based broadcast](http://asc.di.fct.unl.pt/~jleitao/pdf/dsn07-leitao.pdf)
* [SWIM: Scalable Weakly-consistent Infection-style Process Group Membership Protocol](http://www.cs.cornell.edu/info/projects/spinglass/public_pdfs/swim.pdf)
# Epidemic broadcast
* [Large-Scale Newscast Computing on the Internet ](http://www.soc.napier.ac.uk/~benp/dream/dreampaper17.pdf)
* [Bimodal Multicast](http://www.csl.mtu.edu/cs6461/www/Reading/Birman99.pdf)
* [Efficient Reconciliation and Flow Control for Anti-Entropy Protocols](http://idning-paper.googlecode.com/svn/trunk/reference/ignore/Scuttlebutt_Efficient_reconciliation_and_flow_control_for_anti-entropy_protocols.pdf)
* [Efficient Reconciliation and Flow Control for Anti-Entropy Protocols](http://www.cs.cornell.edu/home/rvr/papers/flowgossip.pdf)
* [Epidemic Broadcast Trees](http://www.gsd.inesc-id.pt/~ler/reports/srds07.pdf)
# Failure Detectors
* [A Gossip-Style Failure Detection Service](http://ecommons.cornell.edu/bitstream/1813/7341/2/98-1687.ps)
* [The ϕ Accrual Failure Detector ](http://ddg.jaist.ac.jp/pub/HDY+04.pdf)
* [A Gossip-Style Failure Detection Service](https://ecommons.cornell.edu/bitstream/handle/1813/7341/98-1687.pdf)
* [The ϕ Accrual Failure Detector ](https://dspace.jaist.ac.jp/dspace/bitstream/10119/4784/1/IS-RR-2004-010.pdf)

View File

@ -1,7 +0,0 @@
# 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](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.
* :scroll: [Parallel Generational-Copying Garbage Collection with a Block-Structured Heap](../garbage_collection/parallel_generational_copying_garbage_collection_with_a_block_structured_heap.pdf). In Haskell, data immutability forces us to produce a lot of temporary data but also helps to collect this garbage rapidly. This paper explains how the Glasgow Haskell Compiler accomplishes this task in a simple, yet effective, manner with no programmer intervention.

View File

@ -17,7 +17,7 @@ The included documents are
significantly better results that popular existing models. This
paper won a honorable mention at CIKM 2013.
* [:scroll:](pagerank.pdf) [Pagerank Algorithm](http://ilpubs.stanford.edu:8090/422/1/1999-66.pdf) - Lawrence Page, Sergey Brin, Rajeev Motwani and Terry Winograd
* [:scroll:](the-pagerank-citation-ranking-bringing-order-to-the-web) [The PageRank Citation Ranking: Bringing Order to the Web](http://ilpubs.stanford.edu:8090/422/1/1999-66.pdf) - Lawrence Page, Sergey Brin, Rajeev Motwani and Terry Winograd
This paper introduces the PageRank algorithm, which forms the backbone of
the present day google search engine. Pagerank operates by assessing the
@ -29,7 +29,7 @@ The included documents are
every webpage in the world wide web. Google is currently the most commercially
sucessful generic search engine in the world.
* [:scroll:](ocapi-trec3.pdf) [Okapi System](http://trec.nist.gov/pubs/trec3/papers/city.ps.gz) - Stephen E. Robertson, Steve Walker, Susan Jones, Micheline Hancock-Beaulieu, and Mike Gatford
* [:scroll:](okapi-at-trec3.pdf) [Okapi at TREC3](http://trec.nist.gov/pubs/trec3/papers/city.ps.gz) - Stephen E. Robertson, Steve Walker, Susan Jones, Micheline Hancock-Beaulieu, and Mike Gatford
This paper introduces the now famous Okapi information retrieval
framework which introduces the BM25 ranking function for ranked
@ -45,7 +45,6 @@ The included documents are
weighting schemes. While the paper was in postscript form, the committer has
changed the format to pdf as per guidelines of papers we love via ps2pdf.
* [:scroll:](hits.pdf) [Hits Algorithm](https://www.cs.cornell.edu/home/kleinber/auth.pdf) - Jon M. Kleinberg
This paper introduces the HITS algorithm, a link analysis algorithm that rates webpages. Unlike the more famous page rank algorithm, the hits algorithm makes a distinction between webpage behavior classifies them as hubs and autho rities. A page is authoratitative (in the sense the page has a large number of incoming links) or acts as a hub (a directory of sort, which can be measured by the number of outgoing link). The hits algorithm computes two scores for a page (authority and hub score) where the algorithm iteratively computes the hub score as sum of authority scores of outgoing links and authority scores as sum of hub scores of incoming links until a convergence is attained. These scores can then be used to rank documents. While this algorithm is famous in academia, its not very widely used in the industry (a variant of this algorithm was used by a company called Teoma which was acquired by AskJeeves)
* [:scroll:](authoritative-sources-in-a-hyperlinked-environment.pdf) [Authoritative Sources in a Hyperlinked Environment](https://www.cs.cornell.edu/home/kleinber/auth.pdf) - Jon M. Kleinberg
This paper introduces the **HITS algorithm**, a link analysis algorithm that rates webpages. Unlike the more famous page rank algorithm, the hits algorithm makes a distinction between webpage behavior classifies them as hubs and authorities. A page is authoratitative (in the sense the page has a large number of incoming links) or acts as a hub (a directory of sort, which can be measured by the number of outgoing link). The hits algorithm computes two scores for a page (authority and hub score) where the algorithm iteratively computes the hub score as sum of authority scores of outgoing links and authority scores as sum of hub scores of incoming links until a convergence is attained. These scores can then be used to rank documents. While this algorithm is famous in academia, its not very widely used in the industry (a variant of this algorithm was used by a company called Teoma which was acquired by AskJeeves)

View File

@ -1,51 +0,0 @@
## Information Retrieval
Information retrieval is the activity of obtaining information resources relevant to an information need from a collection of information resources. (Says Wikipedia).
The included documents are
* [: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.
Such a model ignores dependencies between terms and considers a
document's terms to occur independently of each other (and is aptly
called the bag-of-words model). In this paper the authors use a
statistic that uses a graph representation of a document to encode
dependencies between terms and replace the TF statistic with a new
TW statistic based on the graph constructed and achieve
significantly better results that popular existing models. This
paper won a honorable mention at CIKM 2013.
* [:scroll:](pagerank.pdf) [Pagerank Algorithm](http://ilpubs.stanford.edu:8090/422/1/1999-66.pdf) - Lawrence Page, Sergey Brin, Rajeev Motwani and Terry Winograd
This paper introduces the PageRank algorithm, which forms the backbone of
the present day google search engine. Pagerank operates by assessing the
number of incoming and outgoing hyper links to a given web page and ranks the
pages based on the link structure of a page. The authors also implemented
PageRank on the backrub system (now called the Google Search
Engine) in the [Anatomy of a Large-Scale Hypertextual Web Search Engine]
http://infolab.stanford.edu/~backrub/google.html which assigned page ranks to
every webpage in the world wide web. Google is currently the most commercially
sucessful generic search engine in the world.
* [:scroll:](ocapi-trec3.pdf) [Okapi System](http://trec.nist.gov/pubs/trec3/papers/city.ps.gz) - Stephen E. Robertson, Steve Walker, Susan Jones, Micheline Hancock-Beaulieu, and Mike Gatford
This paper introduces the now famous Okapi information retrieval
framework which introduces the BM25 ranking function for ranked
retrieval. It is one of the first implementations of the probabilistic
retrieval frameworks in literature. BM25 is a bag of words retrieval
function. The IDF(Inverse document frequency) term can be interpreted
via information theory. If a query q appears in n(q) docs the probability
of picking a doc randomly and it containing that term :p(q) = n(q) / D,
where D is the number of documents. The information content based on
shannon's noisy channel model is = -log(p(q)) = log (D / n(q)). Smoothing
by adding a constant to both numberator and demoninator leads to IDF term
used in BM25. BM25 has been shown to be one of the best probabilistic
weighting schemes. While the paper was in postscript form, the committer has
changed the format to pdf as per guidelines of papers we love via ps2pdf.
* [:scroll:](hits.pdf) [Hits Algorithm](https://www.cs.cornell.edu/home/kleinber/auth.pdf) - Jon M. Kleinberg
This paper introduces the HITS algorithm, a link analysis algorithm that rates webpages. Unlike the more famous page rank algorithm, the hits algorithm makes a distinction between webpage behavior classifies them as hubs and autho rities. A page is authoratitative (in the sense the page has a large number of incoming links) or acts as a hub (a directory of sort, which can be measured by the number of outgoing link). The hits algorithm computes two scores for a page (authority and hub score) where the algorithm iteratively computes the hub score as sum of authority scores of outgoing links and authority scores as sum of hub scores of incoming links until a convergence is attained. These scores can then be used to rank documents. While this algorithm is famous in academia, its not very widely used in the industry (a variant of this algorithm was used by a company called Teoma which was acquired by AskJeeves)

View File

@ -2,7 +2,7 @@
* :scroll: [A Mathematical Theory of Communication](a-mathematical-theory-of-communication-1948.pdf)
* [Differential Privacy](http://www.msr-waypoint.com/pubs/64346/dwork.pdf)
* [Differential Privacy](https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/dwork.pdf)
- How do we quantify the exposure an individual faces from being
included in a statistical dataset? How do we anonymize aggregated
data in a way that has formal guarantees?

16
languages/README.md Normal file
View File

@ -0,0 +1,16 @@
# Programming Language Theory
Programming language theory (PLT) is a branch of computer science that deals with the design, implementation, analysis, characterization, and classification of programming languages and their individual features.
## Included Papers
* :scroll: [On the Expressive Power of Programming Languages](scp91-felleisen.ps.gz) [sciencedirect](https://www.sciencedirect.com/science/article/pii/016764239190036W)(Matthias Felleisen): "The literature on programming languages contains an abundance of informal
claims on the relative expressive power of programming languages, but there
is no framework for formalizing such statements nor for deriving interesting
consequences. As a first step in this direction, we develop a formal notion
of expressiveness and investigate its properties. To demonstrate the theory's
closeness to published intuitions on expressiveness, we analyze the expressive
power of several extensions of functional languages. Based on these results,
we believe that our system correctly captures many of the informal ideas on
expressiveness, and that it constitutes a good basis for further research in this
direction. " (abstract)

View File

@ -20,4 +20,4 @@ This is a cross-listing of papers related to Clojure, it's core, contrib and pop
* QuickCheck
* [QuickCheck: A Lightweight Tool for Random Testing of Haskell Programs](http://www.cs.tufts.edu/~nr/cs257/archive/john-hughes/quick.pdf)
* [QuickCheck Testing for Fun and Profit](http://people.inf.elte.hu/center/fulltext.pdf)
* Property-Based Testing, best explained in John Hughes own talk at [ClojureWest 2014](https://www.youtube.com/watch?v=zi0rHwfiX1Q&list=PLZdCLR02grLp__wRg5OTavVj4wefg69hM).
* Property-Based Testing, best explained in John Hughes own talk [Testing the Hard Stuff and Staying Sane](https://www.youtube.com/watch?v=zi0rHwfiX1Q&list=PLZdCLR02grLp__wRg5OTavVj4wefg69hM).

View File

@ -0,0 +1,6 @@
[Programmatic and Direct Manipulation, Together at Last](http://arxiv.org/abs/1507.02988). Ravi
Chugh, Brian Hempel, Mitchell Spradlin, and Jacob Albers. PLDI 2016.
> Introduces the idea of "prodirect manipulation" for creating visual artifacts,
> a hybrid of the direct manipulation technique used in WYSIWYG programs like
> Photoshop and PowerPoint, and the programmatic manipulation used in languages
> and libraries such as LaTeX and Processing.

View File

@ -0,0 +1,10 @@
# Erlang
* [Making reliable distributed systems in the presence of software errors](http://erlang.org/download/armstrong_thesis_2003.pdf)
PhD thesis of Joe Armstrong, Erlangs co-inventor, describing the origins of Erlang.
* [A History of Erlang](http://webcem01.cem.itesm.mx:8005/erlang/cd/downloads/hopl_erlang.pdf) by Joe Armstrong
* [Characterizing the Scalability of Erlang VM on Many-core Processors](http://www.diva-portal.org/smash/get/diva2:392243/FULLTEXT01.pdfOn) by Jianrong Zhang
* [On the Scalability of the Erlang Term Storage](http://winsh.me/papers/erlang_workshop_2013.pdf) by David Klaftenegger, Konstantinos Sagonas, Kjell Winblad

View File

@ -0,0 +1,17 @@
# 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](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.
* :scroll: [Parallel Generational-Copying Garbage Collection with a Block-Structured Heap](../garbage_collection/parallel_generational_copying_garbage_collection_with_a_block_structured_heap.pdf). In Haskell, data immutability forces us to produce a lot of temporary data but also helps to collect this garbage rapidly. This paper explains how the Glasgow Haskell Compiler accomplishes this task in a simple, yet effective, manner with no programmer intervention.
* [Notions of Computation and Monads](https://ac.els-cdn.com/0890540191900524/1-s2.0-0890540191900524-main.pdf?_tid=45497e1c-b5c9-11e7-963f-00000aacb361&acdnat=1508526351_2f3bf288ce0f81ff89fb10ece92eeb9e) by Eugenio Moggi. One of the canonical references for Monads in the functional paradigm. It relates the semantics of computations to equivalences of programs for various notions of computations.
* [The Essence of Functional Programming](https://page.mi.fu-berlin.de/scravy/realworldhaskell/materialien/the-essence-of-functional-programming.pdf) by Philip Wadler. This paper uses monads to structure functional programs in Haskell. A very good reference for understanding monads and more generally in the context of programming languages.
* [Monad Transformers and Modular Interpreters](http://haskell.cs.yale.edu/wp-content/uploads/2011/02/POPL96-Modular-interpreters.pdf) by Sheng Liang, Paul Hudak and Mark Jones. Canonical paper on Monad Transformers: the canonical way in which to combine monads and the basis of the popular mtl Haskel library.
* [Extensible Effects: An Alternative to Monad Transformers](http://okmij.org/ftp/Haskell/extensible/exteff.pdf) by Oleg Kiselyov, Amr Sabry and Cameron Swords. A popular position paper introducing algebraic effects as an alternative to Monad Transformers. Effects are modelled using type level Open Unions of Effect Sets (one for each effect) with the Free Monad interpretation of Algebraic Effects. Is the basis for the extensible effects library.
* [Freer Monads, More Extensible Effects](http://okmij.org/ftp/Haskell/extensible/more.pdf) by Oleg Kiselyov and Hiromi Ishii. An extension of the extensible-effects library that removes the Functor constraint on the Free Monad Type.
* [Data types a la carte](http://www.cs.ru.nl/~W.Swierstra/Publications/DataTypesALaCarte.pdf) by Wouter Swierstra. Popular paper on using smart constructors and injection operators in order to solve Wadler's expression problem. Also a canonical method of developing algebraic effects by using effect Functors, see Wu, Shrijvers and Hinze(below).
* [Effect Handlers in Scope](http://www.cs.ox.ac.uk/people/nicolas.wu/papers/Scope.pdf) by Nicolas Wu, Tom Shrijvers and Ralf Hinze. Very interesting paper on developing algebraic effects, and handlers a la carte. Extends Swierstra's work by introducing higher order syntax to handle the interaction of effects (such as state and exceptions where errors backtrack the state).
* [Fusion for Free: Efficient Algebraic Handlers](https://people.cs.kuleuven.be/~tom.schrijvers/Research/papers/mpc2015.pdf) by Nicolas Wu and Tom Shrijvers. Under the Interpretation of effectful computations as Free Monad abstract syntax trees and handlers as folds, this paper introduces Term Monads to folds in order to enable fold fusion. The handlers may then be combined into a single fold and inlined by GHC to provide performance that rivals, and in some cases, outperforms extensible effects and mtl libraries (proofs and tests included).
* [Handlers In Action](http://homepages.inf.ed.ac.uk/slindley/papers/handlers.pdf) by Ohad Kammar, Sam Lindley and Nicolas Oury. A popular position paper and basis of a Haskell library to develop algebraic effects and handlers. The template Haskell library supports open handlers by using type families instead of co-product functors a la carte.
* [Composing Fractals](http://web.cecs.pdx.edu/~mpj/pubs/composing-fractals.pdf) by Mark P. Jones. This paper describes a simple but flexible family of Haskell programs for drawing pictures of fractals such as Mandelbrot and Julia sets. Its main goal is to showcase the elegance of a compositional approach to program construction, and the benefits of a clean separation between different aspects of program behavior.

Binary file not shown.

View File

@ -4,8 +4,8 @@
* [Top 10 algorithms in data mining](http://www.cs.uvm.edu/~icdm/algorithms/10Algorithms-08.pdf) - While it is difficult to identify the top 10, this paper contains 10 very important data mining/machine learning algorithms
* [A Few Useful Things to Know about Machine Learning](http://homes.cs.washington.edu/~pedrod/papers/cacm12.pdf) - Just like the title says, it contains many useful tips and gotchas for machine learning
* [Random Forests](http://oz.berkeley.edu/~breiman/randomforest2001.pdf) - The initial paper on random forests
* [Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data](http://repository.upenn.edu/cgi/viewcontent.cgi?article=1162&context=cis_papers) - The paper introducing conditional random fields as a framework for building probablistic models.
* [Random Forests](https://www.stat.berkeley.edu/~breiman/randomforest2001.pdf) - The initial paper on random forests
* [Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data](http://repository.upenn.edu/cgi/viewcontent.cgi?article=1162&context=cis_papers) - The paper introducing conditional random fields as a framework for building probabilistic models.
* [Support-Vector Networks](http://rd.springer.com/content/pdf/10.1007%2FBF00994018.pdf) - The initial paper on support-vector networks for classification.
* [The Fast Johnson-Lindenstrauss Transforms](https://www.cs.princeton.edu/~chazelle/pubs/FJLT-sicomp09.pdf)
@ -13,7 +13,17 @@
*Ailon, Nir, and Bernard Chazelle. "The fast Johnson-Lindenstrauss transform and approximate nearest neighbors." SIAM Journal on Computing 39.1 (2009): 302-322. Available: https://www.cs.princeton.edu/~chazelle/pubs/FJLT-sicomp09.pdf*
* [Applications of Machine Learning to Location Data](ftp://ftp.cs.princeton.edu/techreports/2013/949.pdf) - Using machine learning to design and analyze novel algorithms that leverage location data.
* [Applications of Machine Learning to Location Data](http://www.berkkapicioglu.com/wp-content/uploads/2013/11/thesis_final.pdf) - Using machine learning to design and analyze novel algorithms that leverage location data.
* ["Why Should I Trust You?" Explaining the Predictions of Any Classifier](http://www.kdd.org/kdd2016/papers/files/rfp0573-ribeiroA.pdf) - This paper introduces an explanation technique for any classifier in a interpretable manner.
* [Multiple Narrative Disentanglement: Unraveling *Infinite Jest*](http://dreammachin.es/p1-wallace.pdf) - uses an unsupervised approach to natural language processing to classify narrators in David Foster Wallace's 1,000-page novel.
* [ImageNet Classification with Deep Convolutional Neural Networks](http://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks.pdf) - This paper introduces AlexNet, a neural network architecture which dramatically improved over the state-of-the-art in image classification algorithms and is widely regarded as a breakthrough moment for deep learning.
* [Interpretable machine learning: definitions, methods, and applications](https://arxiv.org/pdf/1901.04592.pdf) - This paper introduces the foundations of the rapidly emerging field of interpretable machine learning.
* [Distilling the Knowledge in a Neural Network](https://arxiv.org/pdf/1503.02531.pdf) - This seminal paper introduces a method to distill information from an ensemble of neural networks into a single model.
## Hosted Papers

5
mathematics/README.md Normal file
View File

@ -0,0 +1,5 @@
## Mathematics
* [:scroll:](transcendence-of-pi.pdf) [The Transcendence of pi](https://github.com/papers-we-love/papers-we-love/blob/master/mathematics/transcendence-of-pi.pdf) by Steve Mayer

Binary file not shown.

View File

@ -2,7 +2,7 @@
* [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)
* [Teaching Garbage Collection without Implementing Compilers or Interpreters](https://cs.brown.edu/~sk/Publications/Papers/Published/cgkmf-teach-gc/paper.pdf)
* [Message Analysis Guided Allocation and Low Pause Incremental GC in a Concurrent Language](http://user.it.uu.se/~kostis/Papers/ismm04.pdf)

BIN
nautilus.db Normal file

Binary file not shown.

View File

@ -1,4 +1,7 @@
## Networks
* [Bimodal Multicast](http://www.csl.mtu.edu/cs6461/www/Reading/Birman99.pdf)
* [End-to-End Arguments in System Design](http://www.reed.com/dpr/locus/Papers/EndtoEnd.html)
* [End-to-End Arguments in System Design](http://www.deepplum.com/dpr/locus/Papers/EndtoEnd.html)
* [Can SPDY Really Make the Web Faster?](http://www.comp.lancs.ac.uk/~elkhatib//Docs/2014.06_Netw.pdf)
* [Datacenter Traffic Control: Understanding Techniques and Trade-offs](https://osf.io/6qzxc/)
* [B4: Experience with a Globally-Deployed Software Defined WAN](https://dl.acm.org/citation.cfm?id=2486019)

View File

@ -0,0 +1,9 @@
# Non-Blocking Algorithmics
An non-blocking algorithm is an algorithm in which failure or suspension of any thread cannot cause failure or suspension of another thread; for some operations, these algorithms provide a useful alternative to traditional blocking implementations. A non-blocking algorithm is lock-free if there is guaranteed system-wide progress, and wait-free if there is also guaranteed per-thread progress.
## Included Papers
* [:scroll:](a-wait-free-stack.pdf) [A Wait-Free Stack (2015)](https://arxiv.org/abs/1510.00116) (Seep Goel, Pooja Aggarwal, Smruti R. Sarangi)
* [:scroll:](a-wait-free-queue-as-fast-as-fetch-and-add.pdf) [A Wait-free Queue as Fast as Fetch-and-Add (2016)](http://chaoran.me/assets/pdf/wfq-ppopp16.pdf) (Chaoran Yang, John Mellor-Crummey)
* [:scroll:](efficient-lock-free-b+trees.pdf) [Efficient Lock-free B+trees (2014)](http://orbit.dtu.dk/files/102419168/abstract_ELB_trees.pdf) (Lars Frydendal Bonnichsen, Sven Karlsson, Christian W. Probst)

Binary file not shown.

View File

@ -1,13 +1,14 @@
## Operating Systems
* [Xen and the Art of Virtualization](http://www.cl.cam.ac.uk/research/srg/netos/papers/2003-xensosp.pdf)
* :scroll: [The UNIX Time-Sharing System](unix-time-sharing-system.pdf)
* [The operating system: should there be one?](http://plosworkshop.org/2013/preprint/kell.pdf)
* [The operating system: should there be one?](https://www.cl.cam.ac.uk/~srk31/research/papers/kell13operating.pdf)
* [The Scalable Commutativity Rule: Designing Scalable Software for Multicore Processors](http://web.mit.edu/amdragon/www/pubs/commutativity-sosp13.pdf)
* [The Scalable Commutativity Rule: Designing Scalable Software for Multicore Processors](https://people.csail.mit.edu/nickolai/papers/clements-sc.pdf)
* :scroll: [Live Migration of Virtual Machines](live-migration-of-virtual-machines.pdf)
## Jails and containers
* :scroll: [Jails: Confining the omnipotent root.](https://us-east.manta.joyent.com/bcantrill/public/ppwl-cantrill-jails.pdf)
* :scroll: [Solaris Zones: Operating System Support for Consolidating Commercial Workloads](https://us-east.manta.joyent.com/bcantrill/public/ppwl-cantrill-zones.pdf)

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,6 @@
## Organizational Simulation
* [:scroll:](common-ground-and-coordination-in-joint-activity.pdf) [Common Ground and Coordination in Joint Activity](http://jeffreymbradshaw.net/publications/Common_Ground_Single.pdf) by Klein, Feltovich, and Woods
> The paper is the result of what happens when people with backgrounds in mathematics, psychology, and artificial intelligence (Feltovich and Bradshaw) get together to ask questions about how teams operate alongside the originators of modern decision-making and cognitive systems engineering research (Klein and Woods). The concepts outlined in the paper have provided frames and directions in designing tools and environments where successful work requires multiple actors (whether they are people or software agents!) to succeed. This seminal paper takes a deep dive into not just people and teamwork, but what comprises the sometimes invisible activity of coordination, collaboration, cooperation, and the contracts and expectations entities have with each other along the way. The paper has had far-reaching influence in multiple domains: military intelligence, space transportation and aviation, and more recently: software engineering and operations on the web. Let me walk you through where this paper came from, what makes this paper critical to the future of software, and a hint about what I'm sure it means about the future. - @allspaw

View File

@ -7,9 +7,11 @@
> 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 isnt 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. als work, this paper brings the enormous abstractive power of category theory to bear on the subject of traversing data structures—its 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)
* :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)
* [:scroll:](purely-functional-data-structures.pdf) [Purely Functional Data Structures](https://www.cs.cmu.edu/~rwh/theses/okasaki.pdf)
## Applicative Programming
@ -20,7 +22,7 @@
## Concatenative Programming
* [: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)
* :scroll: [Concatenative Programming: An Overlooked Paradigm in Functional Programming](concatenative-programming-an-overlooked-paradigm.pdf)
## Imperative Programming - Functional Programming

Some files were not shown because too many files have changed in this diff Show More