From b7cff25b71f024a4da86603e5a0b432fae1601e6 Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Thu, 21 Nov 2019 23:05:27 -0400 Subject: Ported JVM host extension generation to the new JVM bytecode machinery. --- documentation/research.md | 9 +++++++++ documentation/research/Array.md | 4 ++++ documentation/research/Cache.md | 4 ++++ documentation/research/Compilation.md | 4 ++++ documentation/research/Data format.md | 4 ++++ documentation/research/Graphic User Interface (GUI).md | 13 +++++++++++++ documentation/research/Memory Management.md | 9 +++++++++ documentation/research/Procedural generation.md | 4 ++++ documentation/research/Security.md | 6 ++++++ documentation/research/back-end/Python.md | 4 ++++ documentation/research/back-end/native.md | 1 + documentation/research/machine_learning.md | 3 +++ documentation/research/math.md | 17 +++++++++++++++++ .../research/paradigm/Answer Set Programming.md | 4 ++++ documentation/research/paradigm/Concept programming.md | 8 ++++++++ .../research/paradigm/probabilistic_programming.md | 2 ++ documentation/research/parsing.md | 2 ++ documentation/research/text_editor & ide.md | 4 ++++ documentation/research/tool/Notebook.md | 4 ++++ 19 files changed, 106 insertions(+) create mode 100644 documentation/research.md create mode 100644 documentation/research/Array.md create mode 100644 documentation/research/Cache.md create mode 100644 documentation/research/Compilation.md create mode 100644 documentation/research/Data format.md create mode 100644 documentation/research/Procedural generation.md create mode 100644 documentation/research/back-end/Python.md create mode 100644 documentation/research/paradigm/Answer Set Programming.md create mode 100644 documentation/research/paradigm/Concept programming.md create mode 100644 documentation/research/tool/Notebook.md (limited to 'documentation') diff --git a/documentation/research.md b/documentation/research.md new file mode 100644 index 000000000..0344c452b --- /dev/null +++ b/documentation/research.md @@ -0,0 +1,9 @@ +# Reference + +1. [Designing File Formats](https://www.fadden.com/tech/file-formats.html) +1. [The Twelve-Factor Container](https://medium.com/notbinary/the-twelve-factor-container-8d1edc2a49d4) +1. [What is PL Research?](https://www.youtube.com/watch?v=vyF5d-EFIwU) +1. https://www.ambient-mixer.com/ +1. https://github.com/danistefanovic/build-your-own-x +1. [LoCal: A Language for Programs Operating onSerialized Data](http://recurial.com/pldi19main.pdf) + diff --git a/documentation/research/Array.md b/documentation/research/Array.md new file mode 100644 index 000000000..29c0dc889 --- /dev/null +++ b/documentation/research/Array.md @@ -0,0 +1,4 @@ +# Reference + +1. [Dex: array programming with typed indices](https://openreview.net/pdf?id=rJxd7vsWPS) + diff --git a/documentation/research/Cache.md b/documentation/research/Cache.md new file mode 100644 index 000000000..cba5d6826 --- /dev/null +++ b/documentation/research/Cache.md @@ -0,0 +1,4 @@ +# Reference + +1. https://github.com/eko/gocache + diff --git a/documentation/research/Compilation.md b/documentation/research/Compilation.md new file mode 100644 index 000000000..2249ebdc3 --- /dev/null +++ b/documentation/research/Compilation.md @@ -0,0 +1,4 @@ +# Demand-driven + +1. [Queries: demand-driven compilation](https://github.com/rust-lang/rustc-guide/blob/master/src/query.md) + diff --git a/documentation/research/Data format.md b/documentation/research/Data format.md new file mode 100644 index 000000000..6961ff704 --- /dev/null +++ b/documentation/research/Data format.md @@ -0,0 +1,4 @@ +# Reference + +1. https://internetobject.org/ + diff --git a/documentation/research/Graphic User Interface (GUI).md b/documentation/research/Graphic User Interface (GUI).md index a796aaf2c..32f391764 100644 --- a/documentation/research/Graphic User Interface (GUI).md +++ b/documentation/research/Graphic User Interface (GUI).md @@ -1,5 +1,18 @@ +# Design + +1. [Ant Design](https://ant.design/) +1. [7 Practical Tips for Cheating at Design](https://medium.com/refactoring-ui/7-practical-tips-for-cheating-at-design-40c736799886) + +# Dark Patterns + +1. https://neal.fun/dark-patterns/ + # Immediate mode 1. [Sol on Immediate Mode GUIs (IMGUI)](http://sol.gfxile.net/imgui/) 1. [Immediate-Mode Graphical User Interfaces (2005)](https://caseymuratori.com/blog_0001) +# Accessibility + +1. [What I’ve learned about accessibility in SPAs](https://nolanlawson.com/2019/11/05/what-ive-learned-about-accessibility-in-spas/) + diff --git a/documentation/research/Memory Management.md b/documentation/research/Memory Management.md index abfe8a1e8..21a222ed9 100644 --- a/documentation/research/Memory Management.md +++ b/documentation/research/Memory Management.md @@ -1,3 +1,7 @@ +# Allocation + +1. [Always Bump Downwards](https://fitzgeraldnick.com/2019/11/01/always-bump-downwards.html) + # Compaction 1. ["Compacting the Uncompactable" by Bobby Powers](https://www.youtube.com/watch?v=c1UBJbfR-H0) @@ -10,8 +14,13 @@ 1. [Floorplan: Spatial Layout in Memory Management Systems](https://conf.researchr.org/details/gpce-2019/gpce-2019-papers/6/Floorplan-Spatial-Layout-in-Memory-Management-Systems) +# Garbage collection + +1. [Baby's First Garbage Collector](http://journal.stuffwithstuff.com/2013/12/08/babys-first-garbage-collector/) + # Reference +1. [Scopes Describe Frames: A Uniform Model for Memory Layout in Dynamic Semantics](http://drops.dagstuhl.de/opus/volltexte/2016/6114/) 1. https://uridiumauthor.blogspot.com/2018/06/memory-management.html 1. https://github.com/mtrebi/memory-allocators 1. http://www.newlisp.org/MemoryManagement.html diff --git a/documentation/research/Procedural generation.md b/documentation/research/Procedural generation.md new file mode 100644 index 000000000..40553176b --- /dev/null +++ b/documentation/research/Procedural generation.md @@ -0,0 +1,4 @@ +# Fractional Brownian Motion + +1. http://iquilezles.org/www/articles/fbm/fbm.htm + diff --git a/documentation/research/Security.md b/documentation/research/Security.md index cdb12bcb7..bf6f219a5 100644 --- a/documentation/research/Security.md +++ b/documentation/research/Security.md @@ -1,3 +1,7 @@ +# Finger-printing + +1. https://github.com/Valve/fingerprintjs2 + # Access Control List 1. [Capirca: Multi-platform ACL generation system](https://github.com/google/capirca) @@ -26,6 +30,7 @@ # Vulnerability +1. [Against Cipher Agility in Cryptography Protocols](https://paragonie.com/blog/2019/10/against-agility-in-cryptography-protocols) 1. [Padding the struct: How a compiler optimization can disclose stack memory](https://www.nccgroup.trust/us/about-us/newsroom-and-events/blog/2019/october/padding-the-struct-how-a-compiler-optimization-can-disclose-stack-memory/) 1. [PCG generators are easily “crackable”](https://news.ycombinator.com/item?id=21475210) 1. [Safely Creating And Using Temporary Files](https://www.netmeister.org/blog/mktemp.html) @@ -40,6 +45,7 @@ # Reference +1. [Don't get pwned: practicing the principle of least privilege](https://cloud.google.com/blog/products/identity-security/dont-get-pwned-practicing-the-principle-of-least-privilege) 1. [Good Practices for Capability URLs](https://www.w3.org/TR/capability-urls/) 1. [Secure Socket API](https://securesocketapi.org/) 1. [Mind your Language(s): A discussion about languages and security](https://www.ssi.gouv.fr/uploads/IMG/pdf/Mind_Your_Languages_-_version_longue.pdf) diff --git a/documentation/research/back-end/Python.md b/documentation/research/back-end/Python.md new file mode 100644 index 000000000..5a3266107 --- /dev/null +++ b/documentation/research/back-end/Python.md @@ -0,0 +1,4 @@ +# Platform + +1. [BeeWare: Write once. Deploy everywhere.](https://beeware.org/) + diff --git a/documentation/research/back-end/native.md b/documentation/research/back-end/native.md index 19ad6f882..7631b0d5e 100644 --- a/documentation/research/back-end/native.md +++ b/documentation/research/back-end/native.md @@ -48,6 +48,7 @@ # Floating point arithmetic +1. [Accurate Differences of Products with Kahan's Algorithm](https://pharr.org/matt/blog/2019/11/03/difference-of-floats.html) 1. https://floating-point-gui.de/ 1. [Faster floating point arithmetic with Exclusive OR](http://nfrechette.github.io/2019/10/22/float_xor_optimization/) 1. https://oded.ninja/2017/05/01/floating-point/ diff --git a/documentation/research/machine_learning.md b/documentation/research/machine_learning.md index cc2d4d548..fe5871b87 100644 --- a/documentation/research/machine_learning.md +++ b/documentation/research/machine_learning.md @@ -10,6 +10,7 @@ # Reference +1. ["Multi-Level Intermediate Representation" Compiler Infrastructure](https://github.com/tensorflow/mlir) 1. [Sampling can be faster than optimization](https://www.pnas.org/content/116/42/20881) 1. [Layer rotation: a surprisingly powerful indicator of generalization in deep networks](https://arxiv.org/abs/1806.01603v2) 1. https://nostalgebraist.tumblr.com/post/185326092369/the-transformer-explained @@ -72,6 +73,8 @@ # Differentiable programming +1. [The principles behind Differentiable Programming - Erik Meijer](https://www.youtube.com/watch?v=lk0PhtSHE38) +1. [Kotlin∇: Type-safe Symbolic Differentiation for Kotlin](https://github.com/breandan/kotlingrad) 1. [Differentiable Programming Manifesto](https://github.com/apple/swift/blob/master/docs/DifferentiableProgramming.md) 1. [Backpropagation in the Simply Typed Lambda-calculus with Linear Negation](https://arxiv.org/abs/1909.13768) 1. [One-and-a-Half Simple Differential Programming Languages](https://pages.cpsc.ucalgary.ca/~robin/FMCS/FMCS2019/slides/GordonPlotkin-FMCS2019.pdf) diff --git a/documentation/research/math.md b/documentation/research/math.md index 27fab7503..36071c92b 100644 --- a/documentation/research/math.md +++ b/documentation/research/math.md @@ -92,11 +92,16 @@ # Discrete mathematics +1. [Applied Discrete Structures](http://discretemath.org/ads-latex/ads.pdf) 1. [Notes on Discrete Mathematics](http://www.cs.yale.edu/homes/aspnes/classes/202/notes.pdf) 1. [The system of integer functions, an efficient version of discrete mathematical analysis](https://arxiv.org/abs/1710.00676) 1. [Computing the Continuous Discretely: Integer-Point Enumeration in Polyhedra](http://math.sfsu.edu/beck/papers/ccd.pdf) 1. [Discrete Mathematics: An Open Introduction](http://discrete.openmathbooks.org/dmoi2/frontmatter.html) +# Probability + +1. [Introduction to Probability at anadvanced leve](https://www.stat.berkeley.edu/~aditya/resources/AllLectures2018Fall201A.pdf) + # Linear Algebra 1. [Don’t invert that matrix](https://www.johndcook.com/blog/2010/01/19/dont-invert-that-matrix/) @@ -126,8 +131,13 @@ 1. [Convolution is outer product](https://arxiv.org/abs/1905.01289) 1. [Graphical Calculus for products and convolutions](https://arxiv.org/abs/1903.01366) +# Domain Theory + +1. [A Brief Intro to Domain Theory](https://www.alignmentforum.org/posts/4C4jha5SdReWgg7dF/a-brief-intro-to-domain-theory) + # Category Theory +1. [Awesome Applied Category Theory](https://github.com/statebox/awesome-applied-ct) 1. [Categorical Query Language](https://www.categoricaldata.net/) 1. [Abstract and Concrete Categories: The Joy of Cats](http://katmat.math.uni-bremen.de/acc/acc.pdf) 1. https://bartoszmilewski.com/ @@ -147,6 +157,8 @@ # Geometric Algebra | Clifford Algebra +1. [Exterior Product](https://medium.com/@marksaroufim/exterior-product-ecd5836c28ab) +1. [Projective geometric algebra: A modern framework for doing geometry](http://page.math.tu-berlin.de/~gunn/PGA/index.html) 1. [Geometric Algebra for Computer Graphics](https://slides.com/enkimute/siggraph/#/) 1. https://bivector.net/ 1. https://slehar.wordpress.com/2014/03/18/clifford-algebra-a-visual-introduction/ @@ -259,8 +271,13 @@ 1. https://en.wikibooks.org/wiki/GLPK 1. https://white.ucc.asn.au/2018/05/28/Optimizing-your-diet-with-JuMP.html +# Measure theory + +1. [Resources for Learning Measure Theory](https://bcmullins.github.io/measure_theory_resources/) + # Combinatorics +1. [Advances in Combinatorics](https://www.advancesincombinatorics.com/) 1. http://andy.kitchen/combinations.html 1. [Combinatorial Algorithms](http://www2.denizyuret.com/bib/kreher/donald1999combinatorial/combinatorialA.pdf) diff --git a/documentation/research/paradigm/Answer Set Programming.md b/documentation/research/paradigm/Answer Set Programming.md new file mode 100644 index 000000000..089debd99 --- /dev/null +++ b/documentation/research/paradigm/Answer Set Programming.md @@ -0,0 +1,4 @@ +# Reference + +1. [Introduction to Answer Set Programming (ASP)](https://lucas.bourneuf.net/blog/drafts/tuto-asp-en.html) + diff --git a/documentation/research/paradigm/Concept programming.md b/documentation/research/paradigm/Concept programming.md new file mode 100644 index 000000000..c91489723 --- /dev/null +++ b/documentation/research/paradigm/Concept programming.md @@ -0,0 +1,8 @@ +# Language + +1. [XL (programming language)](https://en.wikipedia.org/wiki/XL_(programming_language)) +1. http://xlr.sourceforge.net/ +1. https://sourceforge.net/projects/xlr/ +1. https://github.com/c3d/xl +1. http://mozart-dev.sourceforge.net/xl.html + diff --git a/documentation/research/paradigm/probabilistic_programming.md b/documentation/research/paradigm/probabilistic_programming.md index 7799eac7c..0a4670d9a 100644 --- a/documentation/research/paradigm/probabilistic_programming.md +++ b/documentation/research/paradigm/probabilistic_programming.md @@ -11,6 +11,8 @@ # Reference +1. [Paradigms of Probabilistic Programming](https://www.youtube.com/watch?v=CmH1xxKRbiE) +1. [Anatomy of a Probabilistic Programming Framework](https://eigenfoo.xyz/prob-prog-frameworks/) 1. [Probabilistic Programming with monad‑bayes, Part 1: First Steps](https://www.tweag.io/posts/2019-09-20-monad-bayes-1.html) 1. [Probabilistic Programming with monad‑bayes, Part 2: Linear Regression](https://www.tweag.io/posts/2019-11-08-monad-bayes-2.html) 1. [FACTORIE](http://factorie.cs.umass.edu/) diff --git a/documentation/research/parsing.md b/documentation/research/parsing.md index f33307463..1d5bac732 100644 --- a/documentation/research/parsing.md +++ b/documentation/research/parsing.md @@ -1,3 +1,5 @@ # Reference +1. [Base64 encoding and decoding at almost the speed of a memory copy](https://arxiv.org/abs/1910.05109) 1. [Parsing XML at the Speed of Light](https://aosabook.org/en/posa/parsing-xml-at-the-speed-of-light.html) + diff --git a/documentation/research/text_editor & ide.md b/documentation/research/text_editor & ide.md index e1eb5b6cc..0f6ccf128 100644 --- a/documentation/research/text_editor & ide.md +++ b/documentation/research/text_editor & ide.md @@ -43,6 +43,7 @@ # Reference +1. [It’s 2019. Why don’t we have good code editors?](https://thoughts.thorlaksson.com/2019/09/27/its-2019-why-dont-we-have-good-code-editors/) 1. [Text Editing Hates You Too](https://lord.io/blog/2019/text-editing-hates-you-too/) 1. [Why ContentEditable is Terrible](https://medium.engineering/why-contenteditable-is-terrible-122d8a40e480) 1. [Broot: A better way to navigate directories](https://github.com/Canop/broot) @@ -109,6 +110,8 @@ # Extensibility +1. [The Spoofax Language Workbench](https://metaborg.github.io/spoofax/) +1. [A Language Independent Task Engine for Incremental Name and Type Analysis](https://www.researchgate.net/publication/290110229_A_Language_Independent_Task_Engine_for_Incremental_Name_and_Type_Analysis) 1. [Extensible Type-Directed Editing](http://cattheory.com/extensibleTypeDirectedEditing.pdf) # Parsing @@ -192,6 +195,7 @@ ## Structured editing +1. [俺のlisp](https://github.com/illiichi/orenolisp) 1. [豆腐 (Tofu): meaningful code editing](https://gregoor.github.io/tofu/) 1. [Tiled Text](http://www.tiledtext.com/projects/tiledtext) 1. [Deuce: A Lightweight User Interface for Structured Editing](https://arxiv.org/abs/1707.00015) diff --git a/documentation/research/tool/Notebook.md b/documentation/research/tool/Notebook.md new file mode 100644 index 000000000..7ec319d79 --- /dev/null +++ b/documentation/research/tool/Notebook.md @@ -0,0 +1,4 @@ +# Reference + +1. https://jupyter.org/ + -- cgit v1.2.3