Как восхитить наладчика
Feb. 3rd, 2015 02:06 pmВчера я по почте объяснял наладчику (field application engineer), почему наш компилятор-синтезатор моделей цифровой аппаратуры по умолчанию ведет себя определенным образом, а с установленной опцией — другим по причине срезания некоторых углов в деталях реализуемого языка с целью ускорения. Я написал примерно так:
Наладчик пришел в полный восторг и сказал, что меня нужно отрядить писать все сообщения о предупреждениях и ошибках, а я всего лишь хотел съязвить.
Так как [деталь языка] по умолчанию не поддерживается, компилятор сообщает об ошибке, если встречает использование этой детали (а не просто игнорирует ее -- S.), чтобы обратить внимание пользователя на это.
Использование опции означает: "Дорогой [компилятор], я понимаю, что полная семантика [детали языка] не поддерживается, но, возможно, она мне и не нужна; пожалуйста(b0p0h0k: ты понял, что я в этот момент вспомнил?), попробуй, как сумеешь, сделать преобразование, пусть и с некоторой потерей семантики, в то, что ты можешь синтезировать, а я потом проверю, получилось ли у тебя то, что я хотел".
Наладчик пришел в полный восторг и сказал, что меня нужно отрядить писать все сообщения о предупреждениях и ошибках, а я всего лишь хотел съязвить.
no subject
Date: 2015-02-03 10:30 pm (UTC)no subject
Date: 2015-02-03 10:37 pm (UTC)no subject
Date: 2015-02-03 10:57 pm (UTC)no subject
Date: 2015-02-03 11:17 pm (UTC)-felide-constructors This switch lacks documentation
Ну и как это в том же стиле корректно описать и уложить в одну-две строчки?
no subject
Date: 2015-02-03 11:28 pm (UTC)no subject
Date: 2015-02-03 11:30 pm (UTC)no subject
Date: 2015-02-03 11:36 pm (UTC)no subject
Date: 2015-02-03 11:41 pm (UTC)no subject
Date: 2015-02-04 03:35 am (UTC)no subject
Date: 2015-02-04 03:37 am (UTC)no subject
Date: 2015-02-03 11:48 pm (UTC)no subject
Date: 2015-02-03 11:55 pm (UTC)no subject
Date: 2015-02-04 12:52 am (UTC)no subject
Date: 2015-02-04 01:00 am (UTC)no subject
Date: 2015-02-04 01:54 am (UTC)no subject
Date: 2015-02-04 06:33 am (UTC)comp.compilers: Error-handling if your compiler had an attitude.
no subject
Date: 2015-02-04 06:43 am (UTC)no subject
Date: 2015-02-04 08:15 pm (UTC)Ну вот чтобы прочувствовать разницу, могу привести в пример юниксный и виндовсный API. В виндовсе все системные вызовы названы исключительно формально (и пауэршелл - еще более отдельная история), в юниксе - неформально. Одна только история о том, какую попаболь вызывал вызов kill() у IBM когда она таки решилась делать AIX, чего стоят. Но приколизмов в юниксе нет.
no subject
Date: 2015-02-04 08:21 pm (UTC)no subject
Date: 2015-02-04 08:25 pm (UTC)no subject
Date: 2015-02-06 05:42 am (UTC)http://en.wikipedia.org/wiki/Easter_egg_%28media%29#Software
no subject
Date: 2015-02-03 10:36 pm (UTC)no subject
Date: 2015-02-03 10:37 pm (UTC)no subject
Date: 2015-02-03 10:44 pm (UTC)no subject
Date: 2015-02-03 10:52 pm (UTC)no subject
Date: 2015-02-04 01:26 am (UTC)А приведи точный текст. Может тогда станет яснее, это сарказм, или вдруг им стало понятно.
no subject
Date: 2015-02-04 01:38 am (UTC)As it is not supported, by default synthesis will fail if a MOS/RMOS gate is encountered to alert the user to that fact.
Setting the ConvertMOS attribute to true means "Dear [compiler], I understand that full MOS/RMOS semantics is not supported, but maybe I don't really need it; please try *converting* it as best you currently can, potentially losing some semantics, into something you can synthesize; I'll check if it works as I expect".
no subject
Date: 2015-02-04 03:54 am (UTC)no subject
Date: 2015-02-04 06:27 am (UTC)Studying circuit compilation,
I will teach you in my verse
Things like MOS, CMOS and RMOS...
no subject
Date: 2015-02-04 06:32 am (UTC)Can potentially we loose
no subject
Date: 2015-02-04 06:34 am (UTC)no subject
Date: 2015-02-04 06:39 am (UTC)no subject
Date: 2015-02-04 10:10 pm (UTC)Может быть, это было не первое письмо)
no subject
Date: 2015-02-04 10:52 pm (UTC)no subject
Date: 2015-02-04 09:23 am (UTC)no subject
Date: 2015-02-04 08:22 pm (UTC)