Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
stchang
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
7 ms
·
1.
▲
by
stchang
7y ago
Correct. More specifically, type checking is performed as part of macro expansion, which happens at compile-time.
2.
▲
by
stchang
7y ago
Thanks for the comment!
3.
▲
by
stchang
7y ago
The submitted link might be an older preprint. Here is the official acm link to the paper: https://dl.acm.org/doi/10.1145/3371071
4.
▲
by
stchang
9y ago
Awesome! Would love to check it out once you have a prototype.
5.
▲
by
stchang
9y ago
It could, though it's not clear whether it would be an improvement. Typed Racket uses macro expansion to translate its typed surface language into a typed core language, and then type checks that core language. This approach works well
6.
▲
by
stchang
9y ago
Typed Racket uses macro expansion to translate its typed surface language into a typed core language, and then typechecks the core language. Our approach uses macro expansion to typecheck the surface language and translates it into an unt
7.
▲
by
stchang
9y ago
> Can you do dependent types? Yes. For example, see https://github.com/wilbowma/cur
8.
▲
by
stchang
10y ago
Minor correction, Matthias created Racket.
9.
▲
by
stchang
10y ago
It's a misunderstanding that has unfortunately caught on among many Haskell programmers. People who say "macros are only useful in strict languages" mistakenly think that macros can only be used to delay evaluation. Of cour
10.
▲
by
stchang
10y ago
FWIW, the phase system that is the main topic of the article was created for Racket [1], though some Scheme macro systems have since adopted this Racket innovation. [1]: https://www.cs.utah.edu/plt/publications/mac
11.
▲
by
stchang
11y ago
Here's some more context info for the paper: http://2015.ecoop.org/event/research-track-towards-practical...
12.
▲
by
stchang
11y ago
Yup! I meant that they switched from GOAL to Racket for the PS3. Here's a summary from a presentation at the CUFP workshop (likely a shorter version of the slides above): Dan Liebgold from Naughty Dog Software in Santa Monica then
13.
▲
by
stchang
11y ago
They switched to Racket when moving to the PS3. Here's a talk discussing the use of Racket in developing The Last of Us: https://www.youtube.com/watch?v=oSmqbnhHp1c
14.
▲
by
stchang
11y ago
When moving to PS3, they used Racket instead. https://www.youtube.com/watch?v=oSmqbnhHp1c
15.
▲
by
stchang
12y ago
> (presumably because you have lives) Why does it matter what people do for leisure?
16.
▲
by
stchang
12y ago
All of Racket's `#lang` family of languages are implemented with macros on top of core Racket. For example, Scribble, mentioned in another comment, is the documentation language used to author the article, and the Racket docs[1]). Or S
17.
▲
by
stchang
13y ago
> Haskell, by its lazy evaluation, is basically a macro-only language This is not correct. To understand why, please see Ryan Culpepper's answer to this SO question: http://stackoverflow.com/questions/7046950&