python-devel-tools

wrobell wrobell w pld-linux.org
Sob, 1 Maj 2004, 21:45:12 CEST


On Sat, May 01, 2004 at 09:06:57PM +0200, Jakub Piotr C?apa wrote:
> wrobell wrote:
> >On Sat, May 01, 2004 at 07:43:42PM +0200, Jakub Piotr C?apa wrote:
> >
> >>wrobell wrote:
> >>
> >>A jak odrozniasz program gcc od skryptu gcc - oba sa w sciezce 
> >>systemowej. Nie rozrozniasz - po prostu nie robisz czegos takiego. 
> >
> >robie i rozrozniam i to w bardzo prosty sposob:
> >  $ ~/bin/gcc
> >  $ /usr/bin/gcc
> 
> Prosty? Przemysl to jeszcze :D
a co moze byc prostszego? moze rzezba z sys.path w skryptach pythona? :-P

> >>Python nie wymaga rozroznienia na skrypty i biblioteki, więc po co je 
> >>robić?
> >
> >bo _Ty_ chcesz pewnego bajeru, ktory przy braku tego rozroznienia powoduje
> >okreslone problemy
> 
> Ale taki bajer ma caly swiat.
a swistak... caly swiat uzywa windowsa, wiec co robisz na tej liscie?

> Stwierdzasz ze problemy z wersjami 
> openLDAPa powoduja balagan na FTP, wiec wywalamy openLDAPa z distro?
co ma wiatrak do piernika?

> >>Rozwiązania widzę dwa:
> >>- programy pythonowe w bin czynimy symlinkami do bibliotek (tak jak 
> >>sugerował Jajcuś)
> >
> >jak?
> >1. prosze o przyklad dla timeit.py
> >2. nie jest to zgodne z FHS zdaje sie?
> 
> Problem mamy z niedolaczaniem zrodel skryptow w pythonie (co jest takze 
nie mamy. tak zostalo kiedys postanowione (nie przeze mnie), wiec...

> niekorzystne od strony debugu), ale i tak sprobujmy (nie bedzie 
> symlinku, ale winno dzialac bezproblemowo):
> 
> #v+
> from timeit import *
> 
> if __name__ == "__main__":
>     sys.exit(main())
> #v-
> 
> Nie jest to do konca clean way, ale dziala. :)

nie dziala

> >
> >>- w globalnych ustawieniach (cos takiego jak site chyba sie nada, nie?) 
> >>wywalamy "" z sys.path, jeśli skrypt rezyduje w systemowym bindir
> >
> >juz predzej jak rezyduje w PATH (jak sugeruje zdaje sie ankry)
> 
> Faktycznie - lepiej.
> 
> >>Nie mozemy po prostu wywalić "" z sys.path, bo cały świat ma inaczej. 
> >
> >mozemy, gdy prowadzi to do problemow. a prowadzi.
> 
> Nie, nie możemy.
a to niby czemu? :-)))

> Zastosujmy jakieś obejście na razie, a nasz rezwiazanie 
> zaproponujmy developerom Pythona i niech sie wytlumacza.
> 
> >>Rule of Least Surprise. Jesli juz to musimy zrobić tak, żeby wywalało 
> >>się z hukiem (czyli na pewno nie zamiana kolejności sys.path) i by było 
> >>wiadomo od razu o co chodzi. Rule of Repair.
> >
> >jak nie ma modulu w sys.path (bez dodawania sciezki do skryptu) oraz
> >w PYTHONPATH to dostajesz _zawsze_ komunikat o bledzie. przy obecnym
> >zachowaniu pythona mozna spodziewac sie wszystkiego.
> 
> Komunikat niewiele mówiący komuś, kto nie zna naszej "poprawki". Ludzie 
> są przyzwyczajeni do występowania "" w sys.path, spodziewają się tego 
> tak samo jak tego, że sin(x) zwraca wartosc sinusa.

er? komunikat niewiele mówiący? dostanie informacje o tym, że nie może
znaleźć danego modułu. czego chcieć więcej?

    wrobell <wrobell w pld-linux.org>



Więcej informacji o liście dyskusyjnej pld-devel-pl