Code of the future reading notes < A >1 programming time and space
This paper reviews the development of computer and Moore's Law, and makes a definite conjecture about the future.
2 the past present and the future of programming languages 2.1 programming languages of the world
It introduces the history of programming language and makes a conjecture about the future.
2.2 DSL-specific domain language
DSLs are technologies that leverage the vocabulary and syntax specifically designed for a specific domain (domain), simplify the process of programming, and improve productivity, while also making it possible for non-programming domain experts to directly describe the logic. The advantage of DSLs is that you can directly use the concepts in their object realms to focus on what you want to do, without having to describe how.
2.3 Meta Programming
- Meta-programming is the program used to write programs. You can refer to C-oop.
- S-Expressions and macros
2.4 Memory Management
Three basic ways to recover memory
1 Mark Clear
From the root, the object that may be referenced is tagged recursively, and then there are no tagged objects as garbage collection
2 Copy Collection
Copies the object referenced from the root to another space, and then copies the objects that the copied object can refer to recursively.
3 reference count
Saves the reference count of the modified object in each object, followed by a new count when the reference occurs. Release the memory when a count becomes 0
High-level way
Generational recycling
The object is scanned for new generations of objects by time. The old object's reference to the new object is in the recordset. After several Cenozoic scans, a complete scan is conducted.
Incremental recovery
The garbage collection operation is subdivided into sections and executes individually. Limit the maximum time-to-live for each collection.
Parallel recycling
Take advantage of multi-CPU processing power for garbage collection. Garbage collection while the original program is running
2.5 Exception Handling
This paper introduces several kinds of exception handling
2.6 Closures
Describes what closures are and why there are closures
Function object
The best use of a function as a value is to use higher-order functions (functions as parameters).
Closed Package
In a function object, the structure in which the local variable is enclosed is called a closure.
Code of the future reading notes < a >