aboutsummaryrefslogtreecommitdiff
path: root/documentation/bookmark/compilation
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/bookmark/compilation')
-rw-r--r--documentation/bookmark/compilation/target/c++.md93
-rw-r--r--documentation/bookmark/compilation/target/c.md13
-rw-r--r--documentation/bookmark/compilation/target/clr.md5
-rw-r--r--documentation/bookmark/compilation/target/go.md4
-rw-r--r--documentation/bookmark/compilation/target/godot.md4
-rw-r--r--documentation/bookmark/compilation/target/graal.md4
-rw-r--r--documentation/bookmark/compilation/target/haskell.md9
-rw-r--r--documentation/bookmark/compilation/target/haxe.md5
-rw-r--r--documentation/bookmark/compilation/target/js.md5
-rw-r--r--documentation/bookmark/compilation/target/js__javascript.md14
-rw-r--r--documentation/bookmark/compilation/target/llvm.md4
-rw-r--r--documentation/bookmark/compilation/target/micro_controller.md4
-rw-r--r--documentation/bookmark/compilation/target/native.md133
-rw-r--r--documentation/bookmark/compilation/target/python.md5
-rw-r--r--documentation/bookmark/compilation/target/rust.md5
-rw-r--r--documentation/bookmark/compilation/target/scopes.md4
-rw-r--r--documentation/bookmark/compilation/target/wasm.md58
-rw-r--r--documentation/bookmark/compilation/target/wren.md4
18 files changed, 368 insertions, 5 deletions
diff --git a/documentation/bookmark/compilation/target/c++.md b/documentation/bookmark/compilation/target/c++.md
index d62ed0141..40625b60e 100644
--- a/documentation/bookmark/compilation/target/c++.md
+++ b/documentation/bookmark/compilation/target/c++.md
@@ -1,5 +1,98 @@
+# Memory management
+
+0. []()
+0. [Memory and Performance Overhead of Smart Pointers](https://www.modernescpp.com/index.php/memory-and-performance-overhead-of-smart-pointer)
+0. [](https://coderedirect.com/questions/464444/c-atomic-cascompare-and-swap-operation-does-not-change-value)
+0. [C++ Shared_Ptr implementation](https://codereview.stackexchange.com/questions/254279/c-shared-ptr-implementation)
+0. [C++: shared_ptr and how to write your own](https://medium.com/analytics-vidhya/c-shared-ptr-and-how-to-write-your-own-d0d385c118ad)
+0. [How to implement user defined Shared Pointers in C++](https://www.geeksforgeeks.org/how-to-implement-user-defined-shared-pointers-in-c/)
+0. [](https://en.cppreference.com/w/cpp/memory/shared_ptr)
+0. [smart pointers](https://en.cppreference.com/book/intro/smart_pointers)
+0. [](https://en.cppreference.com/w/cpp/numeric/bit_cast)
+0. [reinterpret_cast conversion](https://en.cppreference.com/w/cpp/language/reinterpret_cast)
+0. [Alternatives to std::atomic_ref](https://stackoverflow.com/questions/67620813/alternatives-to-stdatomic-ref)
+0. [std::atomic_ref is awesome](https://www.reddit.com/r/cpp/comments/i8ckxr/stdatomic_ref_is_awesome/)
+0. [](https://en.cppreference.com/w/cpp/atomic/atomic_ref)
+
+# Optimization
+
+0. []()
+0. [Copy Elision](https://www.youtube.com/watch?v=_zZWUZEwXk8)
+0. [C and C++ coding style for best performance](https://www.ibm.com/docs/en/aix/7.1?topic=implementation-c-c-coding-style-best-performance)
+
# Reference
0. []()
+0. [C++ keywords: noexcept (since C++11)](https://en.cppreference.com/w/cpp/keyword/noexcept)
+0. [alignas specifier (since C++11)](https://en.cppreference.com/w/cpp/language/alignas)
+0. [Perfect Forwarding](https://www.modernescpp.com/index.php/perfect-forwarding)
0. [C++ Tips of the Week](https://abseil.io/tips/)
+0. [Constant references are not always your friends](https://belaycpp.com/2022/02/15/constant-references-are-not-always-your-friends/)
+0. [Unionizing for Profit: How to Exploit the Power of Unions in C++](https://dev-discuss.pytorch.org/t/unionizing-for-profit-how-to-exploit-the-power-of-unions-in-c/444)
+0. [std::any: How, when, and why](https://devblogs.microsoft.com/cppblog/stdany-how-when-and-why/)
+0. [Using C Libraries in your Modern C++ Embedded Project - Michael Caisse - CppCon 2021](https://www.youtube.com/watch?v=Ototzy-nP4M)
+0. [In-memory and Persistent Representations of C++ - Gabriel Dos Reis - CppCon 2021](https://www.youtube.com/watch?v=39wlNRk-nAg)
+0. [Back to Basics: const and constexpr - Rainer Grimm - CppCon 2021](https://www.youtube.com/watch?v=tA6LbPyYdco)
+0. [Misra Parallelism Safety-critical Guidelines for C++11, 17, Then C++20, 23 - CppCon 2021](https://www.youtube.com/watch?v=hVv7Nc3f4Jo)
+0. [Back to Basics: Move Semantics - Nicolai Josuttis - CppCon 2021](https://www.youtube.com/watch?v=Bt3zcJZIalk)
+0. [Type-and-resource Safety in Modern C++ - Bjarne Stroustrup - CppCon 2021](https://www.youtube.com/watch?v=l3rvjWfBzZI)
+0. [Exceptional C++ - Victor Ciura - CppCon 2021](https://www.youtube.com/watch?v=SjlfhyZn2yA)
+
+# Undefined behavior
+
+0. []()
+0. [INT32-C. Ensure that operations on signed integers do not result in overflow](https://wiki.sei.cmu.edu/confluence/display/c/INT32-C.+Ensure+that+operations+on+signed+integers+do+not+result+in+overflow)
+0. [Integer overflow](https://en.wikipedia.org/wiki/Integer_overflow#Handling)
+0. [Back To Basics: Undefined Behavior - Ansel Sermersheim & Barbara Geller - CppCon 2021](https://www.youtube.com/watch?v=NpL9YnxnOqM)
+
+# Dependency management
+
+0. []()
+0. [vcpkg](https://vcpkg.io/en/index.html)
+
+# constexpr
+
+0. []()
+0. [Your New Mental Model of constexpr - Jason Turner - CppCon 2021](https://www.youtube.com/watch?v=MdrfPSUtMVM)
+
+# String
+
+0. []()
+0. [CsString (intro to unicode)](https://www.youtube.com/watch?v=nYzi0-VAXQM)
+0. [CsString (library design)](https://www.youtube.com/watch?v=w_kD-qAkoH0)
+0. [char8_t](https://www.youtube.com/watch?v=vOOLXvu-xtU)
+0. [std::u32string](https://www.cplusplus.com/reference/string/u32string/)
+
+# Variadic functions
+
+0. []()
+0. [Variadic functions](https://en.cppreference.com/w/cpp/utility/variadic)
+0. [Parameter pack](https://en.cppreference.com/w/cpp/language/parameter_pack)
+0. [va_start](https://www.cplusplus.com/reference/cstdarg/va_start/)
+
+# Multi-threading
+
+0. []()
+0. [std::thread](https://en.cppreference.com/w/cpp/thread/thread)
+0. [std::thread::hardware_concurrency](https://en.cppreference.com/w/cpp/thread/thread/hardware_concurrency)
+0. [std::atomic](https://en.cppreference.com/w/cpp/atomic/atomic)
+0. [std::atomic::compare_exchange_strong](https://www.cplusplus.com/reference/atomic/atomic/compare_exchange_strong/)
+
+# Interpreter
+
+0. []()
+0. [Clasp — Bringing Common Lisp and C++ Together](https://github.com/clasp-developers/clasp)
+0. [Cling](https://root.cern/cling/)
+0. [Interactive C++ with Cling](https://blog.llvm.org/posts/2020-11-30-interactive-cpp-with-cling/)
+0. [Cling Transitions to LLVM's Clang-Repl](https://root.cern/blog/cling-in-llvm/)
+0. [cppyy: Automatic Python-C++ bindings](https://cppyy.readthedocs.io/en/latest/index.html)
+
+# Cross-compilation
+
+0. []()
+0. [Cross compiling Windows binaries from Linux](https://jake-shadle.github.io/xwin/)
+0. [Clang C++ Cross Compiler - Generating Windows Executable from Mac OS X](https://stackoverflow.com/questions/23248989/clang-c-cross-compiler-generating-windows-executable-from-mac-os-x)
+0. [The Clang Universal Driver Project](https://clang.llvm.org/UniversalDriver.html)
+0. [Cross-compilation using Clang](https://clang.llvm.org/docs/CrossCompilation.html)
+0. [Wclang: Cross compile source code easily for Windows with clang on Linux/Unix](https://github.com/tpoechtrager/wclang)
diff --git a/documentation/bookmark/compilation/target/c.md b/documentation/bookmark/compilation/target/c.md
new file mode 100644
index 000000000..81fc2960d
--- /dev/null
+++ b/documentation/bookmark/compilation/target/c.md
@@ -0,0 +1,13 @@
+# Reference
+
+0. []()
+0. [](https://github.com/MichaelMiR01/tcc4tcl)
+ 0. [](https://github.com/tcllab/tcc4tcl)
+ 0. [](https://github.com/cyanogilvie/tcc4tcl)
+0. [Quirks of C](https://gist.github.com/fay59/5ccbe684e6e56a7df8815c3486568f01)
+0. [C Isn't A Programming Language Anymore](https://gankra.github.io/blah/c-isnt-a-language/)
+0. [Functional C](https://ris.utwente.nl/ws/portalfiles/portal/5128727/book.pdf)
+0. [Cello: High Level C](https://libcello.org/)
+0. [C as a scripting language thanks to TinyCC](https://ciesie.com/post/tinycc_dynamic_compilation/)
+0. [mlibc: Portable C standard library](https://github.com/managarm/mlibc)
+
diff --git a/documentation/bookmark/compilation/target/clr.md b/documentation/bookmark/compilation/target/clr.md
new file mode 100644
index 000000000..f6e244f9a
--- /dev/null
+++ b/documentation/bookmark/compilation/target/clr.md
@@ -0,0 +1,5 @@
+# Reference
+
+0. []()
+0. [Turbocharged: Writing High-Performance C# and .NET Code](https://www.youtube.com/watch?v=bhq1dzQzJ0E)
+
diff --git a/documentation/bookmark/compilation/target/go.md b/documentation/bookmark/compilation/target/go.md
new file mode 100644
index 000000000..6d25fd45d
--- /dev/null
+++ b/documentation/bookmark/compilation/target/go.md
@@ -0,0 +1,4 @@
+# Reference
+
+0. [Interface method calls with the Go register ABI](https://eli.thegreenplace.net/2022/interface-method-calls-with-the-go-register-abi/)
+
diff --git a/documentation/bookmark/compilation/target/godot.md b/documentation/bookmark/compilation/target/godot.md
new file mode 100644
index 000000000..354e87e96
--- /dev/null
+++ b/documentation/bookmark/compilation/target/godot.md
@@ -0,0 +1,4 @@
+# Reference
+
+1. [GDLisp](https://github.com/Mercerenies/gdlisp)
+
diff --git a/documentation/bookmark/compilation/target/graal.md b/documentation/bookmark/compilation/target/graal.md
new file mode 100644
index 000000000..bd91d9218
--- /dev/null
+++ b/documentation/bookmark/compilation/target/graal.md
@@ -0,0 +1,4 @@
+# Reference
+
+1. [Anybody know how the graal project ties in with all of this? Is oracle effective... | Hacker News](https://news.ycombinator.com/item?id=19435964)
+
diff --git a/documentation/bookmark/compilation/target/haskell.md b/documentation/bookmark/compilation/target/haskell.md
new file mode 100644
index 000000000..b54c23945
--- /dev/null
+++ b/documentation/bookmark/compilation/target/haskell.md
@@ -0,0 +1,9 @@
+# Language
+
+0. [Finkel](https://github.com/finkel-lang/finkel)
+0. [Eta - Modern Haskell on the JVM](https://github.com/typelead/eta)
+
+# Reference
+
+0. [Thunks, Sharing, Laziness: The Haskell Heap Visualized – Joachim Breitner](https://www.youtube.com/watch?v=I4lnCG18TaY)
+
diff --git a/documentation/bookmark/compilation/target/haxe.md b/documentation/bookmark/compilation/target/haxe.md
new file mode 100644
index 000000000..d9aa29d2d
--- /dev/null
+++ b/documentation/bookmark/compilation/target/haxe.md
@@ -0,0 +1,5 @@
+# Reference
+
+0. [How to use the interpreter mode?](https://community.haxe.org/t/how-to-use-the-interpreter-mode/2642)
+0. [Eval - The new Haxe macro interpreter](https://haxe.org/blog/eval/)
+
diff --git a/documentation/bookmark/compilation/target/js.md b/documentation/bookmark/compilation/target/js.md
deleted file mode 100644
index b6ea6916e..000000000
--- a/documentation/bookmark/compilation/target/js.md
+++ /dev/null
@@ -1,5 +0,0 @@
-# Reference
-
-0. [How JavaScript Array Works Internally?](https://blog.gauravthakur.in/how-javascript-array-works-internally)
-0. [Maybe you don't need Rust and WASM to speed up your JS ](https://mrale.ph/blog/2018/02/03/maybe-you-dont-need-rust-to-speed-up-your-js.html)
-
diff --git a/documentation/bookmark/compilation/target/js__javascript.md b/documentation/bookmark/compilation/target/js__javascript.md
new file mode 100644
index 000000000..e345bf4c4
--- /dev/null
+++ b/documentation/bookmark/compilation/target/js__javascript.md
@@ -0,0 +1,14 @@
+# Reference
+
+0. [How JavaScript Array Works Internally?](https://blog.gauravthakur.in/how-javascript-array-works-internally)
+0. [Maybe you don't need Rust and WASM to speed up your JS ](https://mrale.ph/blog/2018/02/03/maybe-you-dont-need-rust-to-speed-up-your-js.html)
+
+# Debugging
+
+0. [The JavaScript Self-Profiling API](https://addyosmani.com/blog/js-self-profiling/)
+
+# Number
+
+0. [BigInt: arbitrary-precision integers in JavaScript](https://v8.dev/features/bigint)
+0. [WebAssembly integration with JavaScript BigInt](https://v8.dev/features/wasm-bigint)
+
diff --git a/documentation/bookmark/compilation/target/llvm.md b/documentation/bookmark/compilation/target/llvm.md
new file mode 100644
index 000000000..55a99f6e8
--- /dev/null
+++ b/documentation/bookmark/compilation/target/llvm.md
@@ -0,0 +1,4 @@
+# Reference
+
+0. [Taming Undefined Behavior in LLVM](https://www.cs.utah.edu/~regehr/papers/undef-pldi17.pdf)
+
diff --git a/documentation/bookmark/compilation/target/micro_controller.md b/documentation/bookmark/compilation/target/micro_controller.md
new file mode 100644
index 000000000..2681cbf67
--- /dev/null
+++ b/documentation/bookmark/compilation/target/micro_controller.md
@@ -0,0 +1,4 @@
+# Reference
+
+1. [HaikuVM](http://haiku-vm.sourceforge.net/)
+
diff --git a/documentation/bookmark/compilation/target/native.md b/documentation/bookmark/compilation/target/native.md
new file mode 100644
index 000000000..32da388c9
--- /dev/null
+++ b/documentation/bookmark/compilation/target/native.md
@@ -0,0 +1,133 @@
+# Java
+
+1. [Java Grinder](https://www.mikekohn.net/micro/java_grinder.php)
+
+# Register allocation
+
+1. [A Quick Introduction to Register Allocation](https://hassamuddin.com/blog/reg-alloc/)
+
+# Call stack
+
+1. http://stffrdhrn.github.io/software/embedded/openrisc/2018/06/08/gcc_stack_frames.html
+1. https://yurichev.com/blog/reg_alloc/
+
+# 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
+
+# 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/
+1. [What Every Computer Scientist Should Know About Floating-Point Arithmetic](http://www.lsi.upc.edu/~robert/teaching/master/material/p5-goldberg.pdf)
+1. https://lemire.me/blog/2017/11/16/fast-exact-integer-divisions-using-floating-point-operations/
+
+# Reference
+
+1. [Executables - Linking and Loading](https://github.com/MattPD/cpplinks/blob/master/executables.linking_loading.md)
+1. http://luajit.org/
+1. http://luajit.org/ext_ffi.html
+1. http://luajit.org/dynasm.html
+1. [The Standard C Library](https://www.amazon.com/Standard-C-Library-P-J-Plauger/dp/0131315099)
+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. 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. 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)
+
diff --git a/documentation/bookmark/compilation/target/python.md b/documentation/bookmark/compilation/target/python.md
new file mode 100644
index 000000000..5113bb712
--- /dev/null
+++ b/documentation/bookmark/compilation/target/python.md
@@ -0,0 +1,5 @@
+# Platform
+
+0. [nanobind — Seamless operability between C++17 and Python](https://github.com/wjakob/nanobind)
+0. [BeeWare: Write once. Deploy everywhere.](https://beeware.org/)
+
diff --git a/documentation/bookmark/compilation/target/rust.md b/documentation/bookmark/compilation/target/rust.md
new file mode 100644
index 000000000..f38b36966
--- /dev/null
+++ b/documentation/bookmark/compilation/target/rust.md
@@ -0,0 +1,5 @@
+# Reference
+
+0. [Rust's Rules Are Made to Be Broken](https://blog.warp.dev/rules-are-made-to-be-broken/)
+0. [CXX — safe interop between Rust and C++](https://cxx.rs/)
+
diff --git a/documentation/bookmark/compilation/target/scopes.md b/documentation/bookmark/compilation/target/scopes.md
new file mode 100644
index 000000000..cd938a3ad
--- /dev/null
+++ b/documentation/bookmark/compilation/target/scopes.md
@@ -0,0 +1,4 @@
+# Reference
+
+0. [The Scopes Programming Language & Compiler Infrastructure](https://hg.sr.ht/~duangle/scopes)
+
diff --git a/documentation/bookmark/compilation/target/wasm.md b/documentation/bookmark/compilation/target/wasm.md
new file mode 100644
index 000000000..e90bcd654
--- /dev/null
+++ b/documentation/bookmark/compilation/target/wasm.md
@@ -0,0 +1,58 @@
+# Interoperability
+
+0. []()
+0. [How to Extend WebAssembly with Host Functions](https://www.secondstate.io/articles/extend-webassembly/)
+0. [js-wasm: JavaScript and WebAssembly should be a joy to use together.](https://wasm.js.org/)
+
+# Concurrency
+
+0. []()
+0. [Wasm threads are now available in all browsers](https://old.reddit.com/r/WebAssembly/comments/rk83mr/wasm_threads_are_now_available_in_all_browsers/)
+
+# Platform
+
+0. []()
+0. [Wasmer Java](https://github.com/wasmerio/wasmer-java)
+0. [WAVM: WAVM is a WebAssembly virtual machine, designed for use in non-web applications.](https://wavm.github.io/)
+
+# Exemplar
+
+0. []()
+0. [Announcing GraalWasm — a WebAssembly engine in GraalVM](https://medium.com/graalvm/announcing-graalwasm-a-webassembly-engine-in-graalvm-25cd0400a7f2)
+0. [Towards a WebAssembly standalone runtime on GraalVM](https://dl.acm.org/citation.cfm?id=3362780)
+0. https://github.com/vvanders/wasm_lua
+0. https://github.com/AppCypher/webassemblylanguages
+0. https://medium.com/perlin-network/life-a-secure-blazing-fast-cross-platform-webassembly-vm-in-go-ea3b31fa6e09
+
+# Reference
+
+0. []()
+0. [TeaVM: Build Fast, Modern Web Apps in Java](https://teavm.org/)
+0. [Recommendations when publishing a Wasm library](https://nickb.dev/blog/recommendations-when-publishing-a-wasm-library)
+0. [Building host implementations for WebAssembly interfaces](https://radu-matei.com/blog/wasm-components-host-implementations/)
+0. [WebAssembly Techniques to Speed Up Matrix Multiplication by 120x](https://jott.live/markdown/mm_wasm)
+0. [Chasing Memory Bugs through V8 and WebAssembly](https://blog.stackblitz.com/posts/debugging-v8-webassembly/)
+0. [Wasm needs a better memory management story](https://github.com/WebAssembly/design/issues/1397)
+0. https://bytecodealliance.org/
+0. [Faster Fractals with Multi-Threaded WebAssembly](https://blog.scottlogic.com/2019/07/15/multithreaded-webassembly.html)
+0. https://blog.scottlogic.com/2018/07/20/wasm-future.html
+0. http://fitzgeraldnick.com/2018/04/26/how-does-dynamic-dispatch-work-in-wasm.html
+0. https://hacks.mozilla.org/2018/03/making-webassembly-better-for-rust-for-all-languages/
+0. https://webassembly.github.io/
+0. https://github.com/WebAssembly/spec/blob/md-proto/md-proto/WebAssembly.md
+0. https://github.com/WebAssembly/binaryen
+0. [NYLUG Presents: Luke Wagner -on- WebAssembly: A New Compiler Target For The Web](https://www.youtube.com/watch?v=RByPdCN1RQ4)
+0. https://binji.github.io/2017/03/05/webassembly-type-checking.html
+0. https://github.com/WebAssembly/spec/tree/master/interpreter
+0. https://mbebenita.github.io//WasmExplorer/
+0. http://thecodebarbarian.com/getting-started-with-webassembly-in-node.js.html
+0. http://blog.seraum.com/compiling-javascript-to-webassembly-wasm-or-asm-js-with-nectarjs
+0. https://hacks.mozilla.org/2017/07/memory-in-webassembly-and-why-its-safer-than-you-think/
+0. [Using WebAssembly and Threads (Chrome Dev Summit 2018)](https://www.youtube.com/watch?v=zgOGZgAPUjQ)
+0. https://github.com/wasmerio/wasmer
+0. https://www.fastly.com/blog/announcing-lucet-fastly-native-webassembly-compiler-runtime
+0. https://hacks.mozilla.org/2019/03/standardizing-wasi-a-webassembly-system-interface/
+0. https://cybernetist.com/2019/04/25/wasm-universal-application-runtime/
+0. https://github.com/intel/wasm-micro-runtime
+0. https://medium.com/wasmer/running-webassembly-on-the-kernel-8e04761f1d8e
+
diff --git a/documentation/bookmark/compilation/target/wren.md b/documentation/bookmark/compilation/target/wren.md
new file mode 100644
index 000000000..8649c720b
--- /dev/null
+++ b/documentation/bookmark/compilation/target/wren.md
@@ -0,0 +1,4 @@
+# Reference
+
+0. [Meta Class](https://wren.io/modules/meta/meta.html)
+