Comments 22
> Но есть язык, лишённый большинства недостатков Scheme и обладающий рядом достоинств.
Scheme, лучше Python ??? Многие, я думаю готовы поспорить на эту тему.
Scheme, лучше Python ??? Многие, я думаю готовы поспорить на эту тему.
+8
Экспресс-сравнение scheme vs. Python в топике явно лишнее.
Потому что вроде оффтопик, а вопросы возникают. Откуда например взялось следующее?
«Например, нельзя использовать свой графический интерфейс, сохранить настройки дополнения в конфигурационный файл, подключить некий внешний модуль с дополнительными функциями и т.д. и т.п.»
Потому что вроде оффтопик, а вопросы возникают. Откуда например взялось следующее?
«Например, нельзя использовать свой графический интерфейс, сохранить настройки дополнения в конфигурационный файл, подключить некий внешний модуль с дополнительными функциями и т.д. и т.п.»
+4
>> Откуда например взялось следующее?
>> «Например, нельзя использовать свой графический интерфейс, сохранить настройки дополнения в
>> конфигурационный файл, подключить некий внешний модуль с дополнительными функциями и т.д. и т.п.»
К сожалению интерпретатор Scheme который поставляется вместе с GIMP-ом действительно не позволяет этого делать.
>> «Например, нельзя использовать свой графический интерфейс, сохранить настройки дополнения в
>> конфигурационный файл, подключить некий внешний модуль с дополнительными функциями и т.д. и т.п.»
К сожалению интерпретатор Scheme который поставляется вместе с GIMP-ом действительно не позволяет этого делать.
+2
Там tiny scheme используется. Экстеншены судя по всему поддерживаются.
0
Это все не важно на самом деле.
Ясно что питон из коробки умеет намного больше, а его синтаксис для большинства комфортнее схемы. Зато tiny scheme в разы меньше и осознанно позиционируется как «встраиваемый». Поэтому в GIMP встроен именно tiny scheme, а не python. Могли бы встроить lua, чтобы порадовать тех, кому не нравятся скобочки. Но увы.
Ясно что питон из коробки умеет намного больше, а его синтаксис для большинства комфортнее схемы. Зато tiny scheme в разы меньше и осознанно позиционируется как «встраиваемый». Поэтому в GIMP встроен именно tiny scheme, а не python. Могли бы встроить lua, чтобы порадовать тех, кому не нравятся скобочки. Но увы.
0
Полный переход на новое ядро, скорее всего, принесет возможность писать дополнения на lua.
+1
А лучше бы встроили guile. www.gnu.org/software/guile/
Он умеет и scheme и lua и даже ECMAScript3
Он умеет и scheme и lua и даже ECMAScript3
+1
Спасибо!
Когда-то давным-давно писал своё дополнение на LISP'e, было интересно, но сложно.
С питоном попроще будет! :)
Кажется, вводите пользователя в заблуждение по поводу border_width:
Рамка добавляется ширины border_width / 2. Я бы писал так (и ожидал бы такого поведения от чужого модуля):
Но, вобщем, не суть. Статья хорошая. Спасибо!
P.S. Тег
Когда-то давным-давно писал своё дополнение на LISP'e, было интересно, но сложно.
С питоном попроще будет! :)
Кажется, вводите пользователя в заблуждение по поводу border_width:
pdb.gimp_image_resize(image, pdb.gimp_image_width(image) + border_width, pdb.gimp_image_height(image) + border_width, border_width / 2, border_width / 2)
Рамка добавляется ширины border_width / 2. Я бы писал так (и ожидал бы такого поведения от чужого модуля):
pdb.gimp_image_resize(image, pdb.gimp_image_width(image) + border_width*2, pdb.gimp_image_height(image) + border_width*2, border_width, border_width)
Но, вобщем, не суть. Статья хорошая. Спасибо!
P.S. Тег
<code>в предпросмотре не работает…
0
>> С питоном попроще будет! :)
Да проще. Можно даже ещё проще:
Об этом расскажу в следующей статье.
>> Рамка добавляется ширины
Вы правы. Просмотрел. Приношу извинения.
Да проще. Можно даже ещё проще:
image.resize(image.width + border_width * 2,
image.height + border_width * 2,
border_width / 2,
border_width / 2)
Об этом расскажу в следующей статье.
>> Рамка добавляется ширины
Вы правы. Просмотрел. Приношу извинения.
0
(язык идиотских глупых скобок, в которых заключено это выражение).
Нормальный язык, мое оценочное суждение.
Везде есть правила и ограничения.
Нормальный язык, мое оценочное суждение.
Везде есть правила и ограничения.
+5
> Также обратите внимание на то, что все нижние подчеркивания «_» в имени регистрируемой функции необходимо заменить на знак «-» — эта неоднозначная особенность попортила мне много крови, когда я начал осваивать написание дополнений на Pythone. Не до конца понимаю, зачем это сделано, но иначе дополнение просто не заработает…
Я так понимаю, это сделано для совместимости со Scheme. Имена функций / параметров в браузере функций тоже выдаются с дефисами в стиле Scheme.
Я так понимаю, это сделано для совместимости со Scheme. Имена функций / параметров в браузере функций тоже выдаются с дефисами в стиле Scheme.
+1
Python — наше все!
0
> несоблюдение баланса скобок — один из главных источников ошибок программы, написанной на LISP и ему подобных
Скажите уже, в каком языке несоблюдение баланса скобок не будет ошибкой?
> Далеко не каждый может разобраться с непростым синтаксисом этого языка
Одна единственная синтаксическая конструкция (список) — это «непростой синтаксис»?!
Скажите уже, в каком языке несоблюдение баланса скобок не будет ошибкой?
> Далеко не каждый может разобраться с непростым синтаксисом этого языка
Одна единственная синтаксическая конструкция (список) — это «непростой синтаксис»?!
+10
А почему script-fu, но python-fy? Потому что Python?
+2
Нет. Это потому что я невнимателен.
Таким образом получаем, что произнесённую мной с такой уверенностью фразу: «К тому же, если не указать префикс «python-fy» в начале функции, то она не будет зарегистрирована (по-моему, это только для Python-скриптов такое ограничение, и оно к лучшему, я считаю).» можно считать бредом.
Сейчас внесу необходимые изменения в пост.
Спасибо за внимательность. Вы правы, должно быть python-fu.
Таким образом получаем, что произнесённую мной с такой уверенностью фразу: «К тому же, если не указать префикс «python-fy» в начале функции, то она не будет зарегистрирована (по-моему, это только для Python-скриптов такое ограничение, и оно к лучшему, я считаю).» можно считать бредом.
Сейчас внесу необходимые изменения в пост.
Спасибо за внимательность. Вы правы, должно быть python-fu.
0
Молодой человек, два предложения вашей статьи — «Но есть язык, лишённый большинства недостатков Scheme и обладающий рядом достоинств. Этот язык — Python.» — сделали вас знаменитым.
Постарайтесь распорядиться своей славой разумно.
Постарайтесь распорядиться своей славой разумно.
0
> Далеко не каждый может разобраться с непростым синтаксисом этого языка
Все слова которые пришли мне в голову после прочтения этого предложеия будут восприняты автором как оскорбления, поэтому я лучше промолчу.
Третий абзац введения лучше просто уберите. Статья станет лучше.
Все слова которые пришли мне в голову после прочтения этого предложеия будут восприняты автором как оскорбления, поэтому я лучше промолчу.
Третий абзац введения лучше просто уберите. Статья станет лучше.
+1
>> Третий абзац введения лучше просто уберите. Статья станет лучше.
«Слово не воробей...», как говориться, раз уж опубликовал, то убирать не буду.
«Слово не воробей...», как говориться, раз уж опубликовал, то убирать не буду.
-2
Спасибо, статья не теряет актуальность
0
Sign up to leave a comment.
Как написать дополнение для GIMP на языке Python