avva: (Default)
[personal profile] avva
Шуточный язык Vigil - вариант Питона, в который добавлены ключевые слова "заклинаю" и "клянусь" (implore, swear). Оба используются как механизм проверок а-ля assert, но "заклинаю" проверяет аргументы на входе в функцию, а "клянусь" - результат работы самой функции. В случае, если проверка не выполняется, Vigil удаляет функцию-виновника из исходного кода - да-да, открывает исходник как файл, находит в нем нужную функцию и стирает.

Date: 2014-06-08 10:57 am (UTC)
From: [identity profile] carfagen.livejournal.com
Прелесть.
Интересно, они тестировали этот язык ;-)?

Date: 2014-06-08 10:59 am (UTC)
From: [identity profile] francis-drake.livejournal.com
Если функция ссылается на еретика, она также объявляется еретиком. Интересно, не делает ли Vigil исключения для main(), и если нет, то удаляет ли весь исходник, если main() оказывается порочной.

Date: 2014-06-15 03:58 pm (UTC)
From: [identity profile] grossws.livejournal.com
Цитирую:
Vigil deleted a function. Won't that cause the functions that call it to fail?
It would seem that those functions appear to be corrupted as well. Run Vigil again and it will take care of that for you. Several invocations may be required to fully excise all bugs from your code.


Судя по коду -- удаляет. Да здравствует код без багов.

Date: 2014-06-15 04:33 pm (UTC)
From: [identity profile] francis-drake.livejournal.com
Этот фрагмент текста я читал; удаление мэйна противоречит фрагменту про обязательность наличия этого самого мэйна. Если мэйн удалён, весь исходник тоже уничтожается?

Date: 2014-06-15 08:57 pm (UTC)
From: [identity profile] grossws.livejournal.com
А разве есть иные варианты получить код без багов?

В реальности main() не удаляется, а vigil падает. Ошибка имплементации, что поделаешь.

Надо бы ещё сделать pull request, чтобы vigil умел работать с гитом.

Date: 2014-06-15 10:05 pm (UTC)
From: [identity profile] francis-drake.livejournal.com
Удалить вызовы, заменить их чем-нибудь грязным.

Date: 2014-06-08 11:02 am (UTC)
From: [identity profile] catpad.livejournal.com
В Eiffel что-то похожее есть, только без удаления, конечно.

Date: 2014-06-08 12:44 pm (UTC)
From: [identity profile] amarao-san.livejournal.com
А автору (по git blame) закрывать возможность пушить. Повыведутся, правда...

Англицкий

Date: 2014-06-08 03:08 pm (UTC)
From: [identity profile] michaelm1234.livejournal.com
implore - просить, упрашивать; кажется не имеет значения заклинания.

swear - клянусь; имеются еще значения:
to swear at - ругаться матом
to swear by - полагаться на

Re: Англицкий

Date: 2014-06-08 05:12 pm (UTC)
From: [identity profile] avva.livejournal.com
В чем сложность, не понимаю? "I implore you" и "я заклинаю вас" примерно соответствуют по эмоциональному настрою.

m-w.com:

implore: : to make a very serious or emotional request to (someone)

: to say (something) as a serious or emotional request

: to ask or beg for (something) in a very serious or emotional way

ожегов:

заклинать: Настойчиво умолять о чем-н. во имя чего-н. (высок.).

Re: Англицкий

Date: 2014-06-08 05:51 pm (UTC)
From: [identity profile] michaelm1234.livejournal.com
значит у меня с Русским проблемы; я то думал что :(см вики)

Заклинание (заклятие) — вид ритуально-магической речи; прямое обращение к объекту магического воздействия в императивной форме

Заклинание != заклинать; кажется я лажанулся
Edited Date: 2014-06-08 06:21 pm (UTC)

Date: 2014-06-11 09:27 pm (UTC)
From: [identity profile] kogan.livejournal.com
Из какой-то классической хохмы про "улучшение" Фортрана:
В дополнение к оператору "передать управление на" вводится также оператор "принять управление из"

Date: 2014-06-12 12:53 pm (UTC)
From: [identity profile] ush.livejournal.com
А кто виновник в случае implore?

Date: 2014-06-15 03:59 pm (UTC)
From: [identity profile] grossws.livejournal.com
Тот кто передал неправильные параметры, судя под документации на https://github.com/munificent/vigil

January 2026

S M T W T F S
    1 2 3
4 5 6 7 8 910
11 12 1314 151617
18192021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 16th, 2026 02:01 am
Powered by Dreamwidth Studios