Запутанный способ получить «0» в функции tcl, кросс-платформенный? - PullRequest
0 голосов
/ 09 октября 2010

Я раньше не использовал tcl, мне просто нужно сделать один трюк, я могу сделать это тривиально в bash, но мне нужно, чтобы он работал кроссплатформенно (например, tcl в cygwin на windows).

Может кто-нибудь предложить короткую (5-10) запутанную функцию, которая просто возвращает 0 после получения двух строковых аргументов?Он просто не может делать что-то вроде запуска команд оболочки, которые не будут работать под Mac / Cygwin.

Вот почему: зачем тратить время на написание теста - создание одного из файлов не работает, но я не могу его изменить, взламывая сценарий тестирования TCL, пока не внесу значительные измененияиспользовать другое «тестовое ядро», которое не сломано.А пока просто объявите первый файл как «хороший», если он существует.

1 Ответ

2 голосов
/ 09 октября 2010

Я не понимаю требования обфускации, но самый простой способ создать команду, которая принимает два аргумента и возвращает 0, это:

proc theCommandName {firstArgument secondArgument} {
    return 0
}

Существует множество способов сделать вещи непонятными (например, регулярное выражение, которое на самом деле ничего не соответствует, сложное выражение), но, как я уже говорил, я не понимаю требования в этой области; Я всегда стараюсь, чтобы мой код был самой простой вещью, которая могла бы работать ...

...