The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Релиз Cython 0.15, варианта языка Python, поддерживающего пл..."
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Отдельный RSS теперь доступен для каждого обсуждения в форуме и каждого минипортала.
. "Релиз Cython 0.15, варианта языка Python, поддерживающего пл..." –1 +/
Сообщение от Andrew Kolchoogin (?), 14-Авг-11, 01:45 
Тут прозвучала где-то верная мысль, что хранение Питоновского байткода рядом с скриптом модуля -- это подход либо виндозника, либо "админа локалхоста".

Просто на реальной многопользовательской системе в этом случае пользоваться скомпилированным байткодом _в некоторых случаях_ становится просто невозможно, и вот почему.

Представьте себе группу программистов, работающих над проектом на Питоне. Причём не над проектом "для сдачи заказчику", а над проектом "для себя", к примеру, это учёные, которые пишут софтину для обработки относительно своих математических моделей данных, получаемых с ЯМР-спектрометра фирмы "Хренов и Огурцов".
Стоит в лаборатории числодробилка, на которой нежными руками сисадмина собран numpy, слинкованный с Атласом -- вся математика будет обрабатываться с охрененной скоростью оптимизированного кода на Фортране, а интерфейс может и потормозить, зато среднему учёному изучить скриптовый Питон куда проще, чем тот же самый Фортран или C. Также среднему учёному наплевать на всякие там SCM'ы и проч.: он логинится в Юникс и своим любимым текстовым редактором правит свой любимый исходник на Питоне.

Разумеется, что лежит это всё в ${PREFIX}/lib/python${PYTHON_VER}/site_packages, где ему и положено, ибо где ему ещё лежать -- над проектом работают несколько человек, один пишет "разгребатор" данных, приходящих с ЯМР-гроба, другой -- математику, третий -- интерфейс.

А теперь, внимание, вопрос: какие права должна иметь директория site_packages, и кому она должна принадлежать, чтобы Питон смог прекомпилировать все модули, которые пишутся этими тремя людьми? И при этом сам системный администратор вдруг случайно не обнаружил, что из-за того, что математик, задумавшись, не сказал 'rm -R' не в той директории, ни одного из стапицоттыщ Питоновских модулей, установленных в системе, больше нет?

Если в моём рассуждении заменить слово "Питон" на слова "Перл версии 5.12 или старше", то ситуация становится вполне понятной: весь код должен лежать в групповой директории, доступной этим троим на запись, а вначале главного файла нужно в '@INC' запихнуть путь к ней -- Перл поддерживает run-time @INC customisation, если его правильно собрать.

Но Питон, насколько мне известно, не поддерживает. Как быть?

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Релиз Cython 0.15, варианта языка Python, поддерживающего пл..., opennews, 12-Авг-11, 00:06  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру