PLT-List
Programming Language List
Overview
-
2017-Where do Type Systems Come From?: In short, type theory was developed to be an alternative to set theory as the foundation of mathematical proofs in symbolic logic due to its ability to solve some contradictions stemming from naive set theory.
-
2013-The Future of Programming (2013),Near Future of Programming Languages
-
Rosetta Code — unlocking the mysteries of the programming languages that power our world
-
A Brief Totally Accurate History Of Programming Languages: One Hundred Percent Inspired by Facts.
-
Luna: Luna is an expressive, minimalistic, elegant programming language implemented in C. With cooperative thread concurrency at its core, async IO, and influences derived from languages such as Lua, io, Rust, Ruby, and C.
Resource
Collection
-
2017-awesome-compilers 🗃️: A curated list of awesome resources on the theory and construction of Compilers, Interpreters and Runtimes.
-
PLT 🗃️: A path to Programming Language Theory enlightenment.
-
Collection of cheat sheets for programmers 🗃️: Even the most experienced programmers aren’t able to remember all CSS properties or a correct way to write all commands. That’s why it’s always useful to have a cheat sheet at hand in the bookmarks of a browser.
Course
-
2012-Learning SICP 🎥: MIT 视频公开课《计算机程序的构造和解释》中文化项目及课程学习资料搜集。
-
2016-History of Programming Languages, Spring ‘17 Edition 🎥:The primary goal is to understand (some of) the discipline as it exists today and how some of its major themes evolved. Initially, the seminar will focus on themes that NUPRL faculty members have developed over the many decades of their careers. The choice of other themes will depend on students’ interests and preferences. The secondary goal is to develop basic skills for understanding and describing research themes. Every student will learn to study a theme via a series of papers, prepare an annotated bibliography, and present the key steps in the evaluation of the theme. 参考资料:nuprl/hopl-s2017。
Book
-
2013-Tim Stuart-Understanding Computation》📚: You can learn computation theory and programming language design in an engaging, practical way. Understanding Computation explains theoretical computer science in a context you’ll recognize, helping you appreciate why these ideas matter and how they can inform your day-to-day programming.
-
2014-《How to Design Programs, Second Edition》📚: Many professions require some form of programming. Accountants program spreadsheets; musicians program synthesizers; authors program word processors; and web designers program style sheets. When we wrote these words for the first edition of the book (1995–2000), readers may have considered them futuristic; by now, programming has become a required skill and numerous outlets—books, on-line courses, K-12 curricula—cater to this need, always with the goal of enhancing people’s job prospects.
-
2017-Programming Languages: Application and Interpretation》📚: 中文译本,lotuc-PLAI_cn
-
2018-How to Design Programs》📚: Program design—but not programming—deserves the same role in a liberal-arts education as mathematics and language skills.
-
2018-Interactive SICP n.》📚: Interactive Structure and Interpretation of Computer Programs. Online version of SICP with a built-in scheme interpreter to allow readers to edit and run the code embedded in SICP.
-
2019-Elements of Programming》📚: This book applies the deductive method to programming by affiliating programs with the abstract mathematical theories that enable them to work.
-
2021-Isomorphism:Mathematics of Programming : This book introduces the mathematics behind computer programming.
-
2022-Writing Interpreters in Rust: a Guide》📚: In this book we will walk through the basics of interpreted language implementation in Rust with a focus on the challenges that are specifc to using Rust.
Blog
- Tweag Blog #Blog#: 包含了很多对于类型的讨论。
Memory Management
- 2012-The Garbage Collection Handbook》📚: The book addresses new challenges to garbage collection made by recent advances in hardware and software.