Какие статически типизированные языки имеют AST в рантайме?

6yrop

кроме дотнетовских C#/VB/F#.

timefim

Афаик Scala, Haskell, Ocaml, D

6yrop

 

In this respect SQuery (as I’ve named it for now) is closer to HaskellDB than to LINQ because Scala (like most languages) does not give you access to an expression’s AST at runtime. In LINQ you can write queries using the real types of the values and columns in your database and have the query expression’s AST translated to SQL at runtime. Without this option we have to use meta-objects like Table and Column to build our own AST from these.
http://szeiger.de/blog/2008/12/21/a-type-safe-database-query...
 

а тут говорят, что Scala (и, по-видимому, Haskell) не имеют AST в рантайме

yroslavasako

Haskell - вряд ли, он вообще чистый, чего вы от него хотите? На крайняк можно ContT заюзать

karkar

В Окамле тоже нет - там даже байткод нетипизированный (аналогично при компиляции в натив).
Разве что в препроцессоре егойном - camlp4..

timefim

Template Haskell?

timefim

Разве что в препроцессоре егойном - camlp4
Да, насколько я понимаю из него перекочевал Quotations в F#.
Оставить комментарий
Имя или ник:
Комментарий: