?

Log in

No account? Create an account

Зачем нужны имплисит макросы? - Excelsior — LiveJournal

May. 7th, 2013

11:06 pm - Зачем нужны имплисит макросы?

Previous Entry Share Next Entry

Comments:

[User Picture]
From:xeno_by
Date:May 9th, 2013 08:17 pm (UTC)
(Link)
Можно.

1) Сейчас при ошибке тайпчека макро экспаншенов показываются абсолютно левые сообщения - текст ошибки есть, а на чем ошибка возникла непонятно, т.к. код сгенерирован. Это можно и нужно исправить.

2) Можно попробовать зафигачить систему типов для макросов, которая, например, трэкает то как макрос работает с биндингами или более точно позволяет специфицировать сигнатуры макросов, что-то вроде зависимых типов.
(Reply) (Parent) (Thread)
[User Picture]
From:stdray
Date:May 10th, 2013 09:52 am (UTC)
(Link)
1) А что тут можно сделать? Емитить исходник с результатом раскрытия макроса?

2) Может помочь только с классом ошибок "в этом контексте макрос не может раскрываться". Можно и ассертов понаставить, чем хуже?
(Reply) (Parent) (Thread)
[User Picture]
From:xeno_by
Date:May 10th, 2013 12:24 pm (UTC)
(Link)
1) Пока что план такой.

2) Почему же? Если для макросов задана точная сигнатура, то тогда код можно тайпчекать вообще не раскрывая макросы. Будут более точные сообщения об ошибках + тайперу, который запускается внутри IDE, вообще не надо будет ничего знать о макросах.
(Reply) (Parent) (Thread)