KO
|
EN
gitlite โ search
Search
#javascript
#python
#hacktoberfest
#react
#ai
#typescript
#llm
#go
#golang
#android
#machine-learning
#rust
#deep-learning
#linux
plresources
โ 11
Open GitHub โ
Resources to study Programming Languages
Download README (.md)
Explore Similar Repositories
Jedi-Survivor-Occlusion-Culling-Fix
:
Mod that fixes Occlusion Culling White Flashes.
go-psi
:
๐ฅต Pressure Stall Informations (PSI) and starvation notifier
srvit
:
SRViT: Satellite to Radar Vision Transformer
HTML-Page2
:
A simple HTML page with a heading and a paragraph.
Action-Playgrounds-macOS
:
A visual scripting editor for macOS
// repository documentation
Was this content helpful?
โ 0
(0 ratings)
Select Rating:
โ
โ
โ
โ
โ
Submit Feedback
Recent Feedback
×
Download README
Do you want to download the
README.md
file for
plresources
?
Download (.md)
# Resources to study Programming Languages ## Basics - [Crafting Interpreters](https://craftinginterpreters.com/) - [Mukul Rathi's articles](https://mukulrathi.com/create-your-own-programming-language/intro-to-compiler/) - [Writing A Compiler In Go](https://compilerbook.com/) ## Resource Collections - [Programming languages resources](https://bernsteinbear.com/pl-resources/) - Max Bernstein - [Programming Language Theory](https://steshaw.org/plt/) - Steven Shaw - [Oregon Programming Languages Summer SChool](https://www.cs.uoregon.edu/research/summerschool/archives.html) - [Programming Language Implementation Summer School.](https://www.youtube.com/@pliss5319) - [Resources on Compilers for Functional Languages](https://github.com/soupi/rfc/blob/master/fun-compilers.md) - [Matt Might's articles](https://matt.might.net/articles/) - [jayconrod.com](https://jayconrod.com/posts) - [Great Works in Programming Languages - Collected by Benjamin C. Pierce](https://www.cis.upenn.edu/~bcpierce/courses/670Fall04/GreatWorksInPL.shtml) - [Approachable PL Papers for Undergrads](https://gist.github.com/pdarragh/4f81236109f9575209d5ab7c5c3c3b58) - [aalhour/awesome-compilers](https://github.com/aalhour/awesome-compilers) ## Courses - [CS 6120: Advanced Compilers](https://www.cs.cornell.edu/courses/cs6120/2022sp/schedule/) - [CS 6110: Advanced Programming Languages](https://www.cs.cornell.edu/courses/cs6110/2023sp/) - [UCSD - Advanced Compiler Design](https://ucsd-cse231-w21.github.io/) - [IITD - Advanced Compiler Techniques](https://iitd.github.io/col874/) - [UCB CS294-113: Virtual Machines and Managed Runtimes](http://www.wolczko.com/CS294/) - [Virtual Machine Summer School 2016](https://www.youtube.com/playlist?list=PLJq3XDLIJkib2h2fObomdFRZrQeJg4UIW) ## Compiler Optimisation - [A Catalogue of Optimising Transforms](https://www.clear.rice.edu/comp512/Lectures/Papers/1971-allen-catalog.pdf) - [Intel Microcode](https://www.agner.org/optimize/microarchitecture.pdf) - [Fabian Giesen](https://www.youtube.com/@fabiangiesen306) - [Combining Analyses, Combining Optimizations](https://scholarship.rice.edu/bitstream/handle/1911/96451/TR95-252.pdf) ## Garbage Collection - [Writing a Simple Garbage Collector in C](http://maplant.com/gc.html) - [The Journey of Go's Garbage Collector](https://go.dev/blog/ismmkeynote) - [A Guide to the Go Garbage Collector](https://tip.golang.org/doc/gc-guide) - [Generational GC - Mono](https://www.mono-project.com/docs/advanced/garbage-collector/sgen/) - [Understanding Garbage Collection in JavaScriptCore](https://webkit.org/blog/12967/understanding-gc-in-jsc-from-scratch/) - [Trash talk: the Orinoco garbage collector](https://v8.dev/blog/trash-talk) - [Babyโs First Garbage Collector](http://journal.stuffwithstuff.com/2013/12/08/babys-first-garbage-collector/) - ### Incremental GCs - [Train GC](https://beta.cs.au.dk/Papers/Train/train.html) - [Treadmill GC](https://www.cofault.com/2022/07/treadmill.html) ## Static Program Analysis - [Course taught by Fernando Magno Quintao Pereira](https://youtube.com/playlist?list=PLC-dUCVQghfdu7AG5f_p4oRyKgjDuoAWU&feature=shared) ## Single Static Assignment - [Simple and Efficient Construction of Static Single Assignment Form](https://link.springer.com/chapter/10.1007/978-3-642-37051-9_6) - [Efficiently computing static single assignment form and the control dependence graph](https://www.cs.utexas.edu/~pingali/CS380C/2010/papers/ssaCytron.pdf) - [CMU - cs6120 - SSA](https://www.cs.cornell.edu/courses/cs6120/2022sp/lesson/6/) - [SSABook](https://pfalcon.github.io/ssabook/latest/book-full.pdf) ## Compile-time Memory Management - [compile time memory management models - r/programminglanguages](https://www.reddit.com/r/ProgrammingLanguages/comments/y3rq8w/compile_time_memory_management_models/) - [Linear Types - c2](https://wiki.c2.com/?LinearTypes) - [Unique Type - c2](https://wiki.c2.com/?UniqueType) - [Linear Type Systems - CS 6110](https://www.cs.cornell.edu/courses/cs6110/2017sp/lectures/lec30.pdf) - [Substructural Type Systems - CS 152](https://groups.seas.harvard.edu/courses/cs152/2019sp/lectures/lec17-substructural.pdf) - [Lobster's Memory Management](http://aardappel.github.io/lobster/memory_management.html) - [Zero-Cost Borrowing with Vale Regions](https://verdagon.dev/blog/zero-cost-borrowing-regions-overview) - [Generational References - Vale](https://verdagon.dev/blog/generational-references) - [Ownership and Lifetimes - Rustnomicon](https://doc.rust-lang.org/nomicon/ownership.html) - [Region-based memory management](https://en.wikipedia.org/wiki/Region-based_memory_management) - [Uniqueness Type](https://en.wikipedia.org/wiki/Uniqueness_type) - [Practical Affine Types](https://users.cs.northwestern.edu/~jesse/pubs/alms/tovpucella-alms.pdf) - [Linear Regions Are All You Need](https://www.cs.cornell.edu/people/fluet/research/substruct-regions/ESOP06/esop06.pdf) - [A Step-Indexed Model of Substructural State](https://www.cs.cornell.edu/people/fluet/research/substruct-state/ICFP05/icfp05.pdf) - [Monadic Regions](https://www.cs.cornell.edu/people/fluet/research/rgn-monad/JFP06/jfp06.pdf) - [Ownership Types for Safe Region-Based Memory Management in Real-Time Java](https://web.eecs.umich.edu/~bchandra/publications/pldi03.pdf) - [ASAP: As Static As Possible memory management](https://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-908.pdf) - [Ownership You Can Count On: A Hybrid Approach to Safe Explicit Memory Management](https://inko-lang.org/papers/ownership.pdf) - [Adoption and Focus: Practical Linear Types for Imperative Programming](https://www.microsoft.com/en-us/research/wp-content/uploads/2002/05/pldi02.pdf) - [Memory safety without runtime checks or garbage collection](https://dl.acm.org/doi/abs/10.1145/780732.780743) - [Perceus: Garbage Free Reference Counting with Reuse](https://www.microsoft.com/en-us/research/publication/perceus-garbage-free-reference-counting-with-reuse/) - [Type Systems for Memory Safety](https://borretti.me/article/type-systems-memory-safety) ## Fearless Concurrency - [A Simple Capability-Based Dynamic Language Design For Data Race-Freedom](https://arxiv.org/pdf/2109.07541.pdf) - [A Flexible Type System for Fearless Concurrency](https://dl.acm.org/doi/pdf/10.1145/3519939.3523443) ## Functional - [Compiling a Functional Language Using C++](https://danilafe.com/blog/00_compiler_intro/) - [Compiling Functional Languages - chalmers](https://www.cse.chalmers.se/edu/year/2011/course/CompFun/) - [An Introduction to Combinator Compilers and Graph Reduction Machines](https://www.youtube.com/watch?v=GawiQQCn3bk) - [Implementing functional languages: a tutorial](https://www.microsoft.com/en-us/research/publication/implementing-functional-languages-a-tutorial/) - [Making a Fast Curry: Push/Enter vs. Eval/Apply](https://www.microsoft.com/en-us/research/wp-content/uploads/2016/07/eval-apply.pdf) - ### GHC - [Low-level Haskell: An Interactive Tour Through the STG](https://www.youtube.com/watch?v=-MFk7PIKYsg) - [2023 GHC Contributor's Workshop](https://www.youtube.com/playlist?list=PLQpeDZt0_xQfTQPvjsT1ub-qVPXJ6fVy0) - [@lexi_lambda: The GHC optimization pipeline](https://www.youtube.com/watch?v=fdyh3YQ-ZWI) ## JIT - [spencertipping/jit-tutorial](https://github.com/spencertipping/jit-tutorial) - [Adventures in JIT compilation](https://eli.thegreenplace.net/2017/adventures-in-jit-compilation-part-2-an-x64-jit/) - [Building a baseline JIT for Lua automatically](https://sillycross.github.io/2023/05/12/2023-05-12/) - [Speculation in JavaScriptCore](https://webkit.org/blog/10308/speculation-in-javascriptcore/) - [TigerShrimp: An Understandable Tracing JIT Compiler](https://odr.chalmers.se/server/api/core/bitstreams/87898837-623a-46f0-bcdc-06d2bf10805d/content) - [wdv4758h/awesome-jit](https://github.com/wdv4758h/awesome-jit) - [A primer on code generation in Cranelift](https://blog.benj.me/2021/02/17/cranelift-codegen-primer/) - [How JIT Compilers are Implemented and Fast](https://carolchen.me/blog/jits-impls/) - [The Sea of Nodes and the HotSpot JIT - Cliff Click](https://www.youtube.com/watch?v=98lt45Aj8mo) - [A JVM Does That??? by Dr Cliff Click](https://www.youtube.com/watch?v=-vizTDSz8NU) ## Type Systems / Effects - [Hindley-Milner](https://stackoverflow.com/questions/12532552/what-part-of-hindley-milner-do-you-not-understand) - [Ahnfelt/type-inference-by-example](https://github.com/Ahnfelt/type-inference-by-example) - [Typing Haskell in Haskell](http://web.cecs.pdx.edu/~mpj/thih/TypingHaskellInHaskell.html#tth_sEc6) - [jozefg/learn-tt](https://github.com/jozefg/learn-tt) - [Notes on Hindley-Milner polymorphism](https://jgbm.github.io/eecs662f17/Notes-on-HM.html) - [CMU - Types and Programming Languages Schedule](https://www.cs.cmu.edu/~fp/courses/15814-f21/schedule.html) - [yallop/effects-bibliography](https://github.com/yallop/effects-bibliography)