diff options
Diffstat (limited to 'documentation/research/back-end')
-rw-r--r-- | documentation/research/back-end/native.md | 130 |
1 files changed, 130 insertions, 0 deletions
diff --git a/documentation/research/back-end/native.md b/documentation/research/back-end/native.md new file mode 100644 index 000000000..53a87edaa --- /dev/null +++ b/documentation/research/back-end/native.md @@ -0,0 +1,130 @@ +# Call stack + +1. http://stffrdhrn.github.io/software/embedded/openrisc/2018/06/08/gcc_stack_frames.html +1. https://yurichev.com/blog/reg_alloc/ + +# Memory Management + +1. https://uridiumauthor.blogspot.com/2018/06/memory-management.html +1. https://github.com/mtrebi/memory-allocators +1. http://www.newlisp.org/MemoryManagement.html +1. http://gee.cs.oswego.edu/dl/html/malloc.html +1. https://shipilev.net/blog/2014/jmm-pragmatics/ +1. https://floooh.github.io/2018/06/17/handles-vs-pointers.html +1. https://www.codemag.com/Article/1807051/Introducing-.NET-Core-2.1-Flagship-Types-Span-T-and-Memory-T +1. https://stefansf.de/post/pointers-are-more-abstract-than-you-might-expect/ +1. http://www.memorymanagement.org/ +1. [Pseudomonarchia jemallocum: The false kingdom of jemalloc, or On exploiting the jemalloc memory manager](http://phrack.com/issues/68/10.html#article) +1. https://gankro.github.io/blah/rust-layouts-and-abis/ +1. https://paul.bone.id.au/2018/10/19/gc-falsehoods/ +1. [Safe Programming with Pointers through Stateful Views](https://www.cs.bu.edu/~hwxi/academic/papers/padl05.pdf) + +# Unicode + +1. http://manishearth.github.io/blog/2017/01/14/stop-ascribing-meaning-to-unicode-code-points/ +1. https://garbagecollected.org/2013/03/15/reverse-strings-like-a-pro/ +1. http://reedbeta.com/blog/programmers-intro-to-unicode/ +1. https://mathiasbynens.be/notes/javascript-unicode +1. http://www.daemonology.net/blog/2008-06-05-faster-utf8-strlen.html +1. https://haxe.org/blog/unicode/ +1. http://justinblank.com/notebooks/stringrepresentationsandstringapis.html + +# Shell + +1. https://github.com/dylanaraps/pure-bash-bible + +# Platforms + +1. https://github.com/neutralinojs/neutralinojs + +# Concurrency + +1. https://github.com/hnes/libaco + +# Numeric operation + +1. https://github.com/ridiculousfish/libdivide +1. https://lemire.me/blog/2019/02/08/faster-remainders-when-the-divisor-is-a-constant-beating-compilers-and-libdivide/ + +# Optimization + +1. http://ssw.jku.at/General/Staff/Leopoldseder/manlang2018-fast_path_unrolling_authorpreprint.pdf + +# Foreign function interface (FFI) + +1. https://github.com/swig/swig +1. http://www.swig.org/ +1. http://www.swig.org/Doc2.0/Go.html +1. https://begriffs.com/posts/2019-01-19-inside-c-standard-lib.html +1. https://www.amazon.com/Standard-C-Library-P-J-Plauger/dp/0131315099 + +# Graal + +1. https://www.newtv.co.th/video/video.php?v=topKYJgv6qA + +# Reference + +1. [C Is Not a Low-level Language: Your computer is not a fast PDP-11.](https://queue.acm.org/detail.cfm?id=3212479) +1. http://www.ffconsultancy.com/ocaml/hlvm/ +1. https://nullprogram.com/blog/2018/05/27/ +1. https://github.com/dyu/ffi-overhead +1. https://ivorylang.org/ivory-introduction.html +1. http://blog.llvm.org/2018/03/dragonffi-ffijit-for-c-language-using.html +1. https://internals.rust-lang.org/t/refactoring-std-for-ultimate-portability/4301 +1. https://blog.plan99.net/kotlin-native-310ffac94af2 +1. https://blog.jetbrains.com/kotlin/2017/12/kotlinnative-v0-5-released-calling-kotlin-from-swift-and-c-llvm-5-and-more/ +1. https://readytalk.github.io/avian/ +1. https://medium.com/@octskyward/kotlin-native-310ffac94af2#.xbcxqlm1w +1. https://www.infoq.com/presentations/clojure-scheme +1. https://github.com/ollef/sixten +1. https://software.intel.com/sites/landingpage/IntrinsicsGuide/ +1. https://llvllatrix.wordpress.com/2016/12/31/system-calls-for-developers/ +1. http://www.cipht.net/2017/10/03/are-jump-tables-always-fastest.html +1. https://github.com/libuv/libuv +1. https://www.threadingbuildingblocks.org/ +1. https://cafbit.com/post/tokio_internals/ +1. https://medium.com/@unmeshvjoshi/how-java-thread-maps-to-os-thread-e280a9fb2e06 +1. http://pixielang.org/ +1. https://github.com/pixie-lang/pixie +1. https://github.com/rust-lang/rust +1. http://ziglang.org/# +1. http://www.mpfr.org/ +1. http://www.mpfr.org/algorithms.pdf +1. http://wilsonminesco.com/16bitMathTables/ +1. https://oded.ninja/2017/05/01/floating-point/ +1. [What Every Computer Scientist Should Know About Floating-Point Arithmetic](http://www.lsi.upc.edu/~robert/teaching/master/material/p5-goldberg.pdf) +1. http://blog.veitheller.de/Fixed_Point_Division.html +1. http://libdivide.com/ +1. [Modern Computer Arithmetic](https://members.loria.fr/PZimmermann/mca/mca-cup-0.5.9.pdf) +1. [Division by Invariant Integers using Multiplication](https://gmplib.org/~tege/divcnst-pldi94.pdf) +1. https://lion137.blogspot.com/2019/02/borneo-language-102.html +1. https://www.youtube.com/watch?v=N0JTvyCxiv8 +1. http://robert.ocallahan.org/2017/02/what-rust-can-do-that-other-languages.html +1. https://github.com/graalvm/truffleruby/blob/master/doc/user/svm.md +1. http://bellard.org/libbf/ +1. http://paulcavallaro.com/blog/hashed-and-hierarchical-timing-wheels/ +1. http://speleotrove.com/decimal/ +1. https://lemire.me/blog/2017/11/16/fast-exact-integer-divisions-using-floating-point-operations/ +1. http://eli.thegreenplace.net/2013/07/09/library-order-in-static-linking +1. [Skip the FFI!](http://llvm.org/devmtg/2014-10/Slides/Skip%20the%20FFI.pdf) +1. http://www.infoworld.com/article/3187370/application-development/kotlin-compiles-directly-to-native-code-via-llvm.html +1. https://blog.jetbrains.com/kotlin/2017/04/kotlinnative-tech-preview-kotlin-without-a-vm/ +1. https://github.com/bugvm/bugvm +1. https://github.com/rampantpixels/rpmalloc +1. https://www.cs.umd.edu/class/sum2003/cmsc311/Notes/Data/endian.html +1. http://web.stanford.edu/group/sequoia/ +1. https://hackernoon.com/experimenting-with-small-buffer-optimization-for-c-lambdas-d5b703fb47e4 +1. https://www.microsoft.com/en-us/research/wp-content/uploads/2017/03/kedia2017mem.pdf +1. https://github.com/tomhrr/dale +1. [Fast String Searching](https://pdfs.semanticscholar.org/d991/2ea262986794e29e3f15e5f8930d42f2ced4.pdf) +1. https://github.com/apple/swift/blob/master/docs/StringManifesto.md +1. http://home.pipeline.com/~hbaker1/CheneyMTA.html +1. [Position: Lightweight static resources 0Sexy types for embedded and systems programming](https://pdfs.semanticscholar.org/2368/ccf8c62ab981e2426cd698ba2229f3eca311.pdf?_ga=2.228359389.1990612643.1507689838-1658669397.1507689838) +1. http://homes.soic.indiana.edu/ccshan/tfp2007/talk.pdf +1. http://www.catb.org/esr/structure-packing/ +1. [Ahead Of Time (AOT) Internals](https://www.youtube.com/watch?v=n5DCg6M2MDM) +1. [Polyglot Native: Java, Scala, Kotlin, & JVM languages](https://www.youtube.com/watch?v=5BMHIeMXTqA) +1. https://ziviani.net/2017/functions-in-assembly +1. https://ziviani.net/2017/functions-in-assembly-ii +1. [Hashed and Hierarchical Timing Wheels: Data Structures for the Efficient Implementation of a Timer Facility](http://www.cs.columbia.edu/~nahum/w6998/papers/sosp87-timing-wheels.pdf) + |