You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/blog/_posts/2019-01-21-12th-dotty-milestone-release.md
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -92,7 +92,7 @@ We also connect the new lower-level reflection layer to the existing principled
92
92
-`unseal` that unseals an `Expr[T]` (non traversable code) into a `Term` and
93
93
-`seal` that seals back a `Term` into an `Expr[T]`.
94
94
95
-
Read the [relevant documentation](https://dotty.epfl.ch/docs/reference/metaprogramming/tasty-reflect.html) to learn how to go from quotes and splices to TASTys Reflect trees and back .
95
+
Read the [relevant documentation](https://dotty.epfl.ch/docs/reference/metaprogramming/reflection.html) to learn how to go from quotes and splices to TASTys Reflect trees and back .
Copy file name to clipboardExpand all lines: docs/docs/reference/dropped-features/macros.md
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -8,8 +8,8 @@ The previous, experimental macro system has been dropped.
8
8
Instead, there is a cleaner, more restricted system based on two complementary concepts: `inline` and `'{ ... }`/`${ ... }` code generation.
9
9
`'{ ... }` delays the compilation of the code and produces an object containing the code, dually `${ ... }` evaluates an expression which produces code and inserts it in the surrounding `${ ... }`.
10
10
In this setting, a definition marked as inlined containing a `${ ... }` is a macro, the code inside the `${ ... }` is executed at compile-time and produces code in the form of `'{ ... }`.
11
-
Additionally, the contents of code can be inspected and created with a more complex reflection API (TASTy Reflect) as an extension of `'{ ... }`/`${ ... }` framework.
11
+
Additionally, the contents of code can be inspected and created with a more complex reflection API as an extension of `'{ ... }`/`${ ... }` framework.
12
12
13
13
*`inline` has been [implemented](../metaprogramming/inline.md) in Scala 3.
14
14
* Quotes `'{ ... }` and splices `${ ... }` has been [implemented](../metaprogramming/macros.md) in Scala 3.
15
-
*[TASTy reflect](../metaprogramming/tasty-reflect.md) provides more complex tree based APIs to inspect or create quoted code.
15
+
*[TASTy reflect](../metaprogramming/reflection.md) provides more complex tree based APIs to inspect or create quoted code.
Note that if we need to run the main (in the example below defined in an object called `Test`) after
41
-
compilation we need to make the compiler available to the runtime:
38
+
Note that if we need to run the main (in the example below defined in an object called `Test`) after compilation we need to make the compiler available to the runtime:
Copy file name to clipboardExpand all lines: docs/docs/reference/metaprogramming/toc.md
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -25,13 +25,13 @@ introduce the following fundamental facilities:
25
25
to program code. Together with `inline`, these two abstractions allow
26
26
to construct program code programmatically.
27
27
28
-
3.[Staging](./staging.md) Where macros construct code at _compile-time_,
28
+
3.[Runtime Staging](./staging.md) Where macros construct code at _compile-time_,
29
29
staging lets programs construct new code at _runtime_. That way,
30
30
code generation can depend not only on static data but also on data available at runtime. This splits the evaluation of the program in two or more phases or ...
31
31
stages. Consequently, this method of generative programming is called "Multi-Stage Programming". Staging is built on the same foundations as macros. It uses
32
32
quotes and splices, but leaves out `inline`.
33
33
34
-
4.[TASTy Reflection](./tasty-reflect.md) Quotations are a "black-box"
34
+
4.[Reflection](./reflection.md) Quotations are a "black-box"
35
35
representation of code. They can be parameterized and composed using
36
36
splices, but their structure cannot be analyzed from the outside. TASTy
37
37
reflection gives a way to analyze code structure by partly revealing the representation type of a piece of code in a standard API. The representation
0 commit comments