🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: alt.pl.fan.gopher
7 messages
7 total messages Started by Puck Sat, 28 Dec 2002 19:59
filtry
#13448
Author: Puck
Date: Sat, 28 Dec 2002 19:59
86 lines
3996 bytes
Teraz mój system filtrów wygląda tak:

Najpierw na serwerze, o2. ma taką funkcję. Potem
Hamster (2.0.0.0 swoją drogą). Potem jeszcze hs2
w Hamsterze. Właśnie sobie napisałem filtry, które
są najlepsze, bo moje. Na koniec jest jeszcze
czytnik. 
Kill odbywa się na poziomie serwera - jesli ktoś 
mnie bardzo wkurzy. Hamster ogólnie nie killuje.
Ignoruje ze względu na size. 
Hs2 robi dosłownie wszystko, ale o tym później.
W czytniku też raczej nie filtruję. Czasami ustawiam
"Mark Read" (news).

M'kay, co jest takiego świetnego w filtrach hs2? Otóż:
Mogę filtrować pod względem każdego z nagłówków albo
body. Są dwie części każdego filtra: 
 - kryteria (jeśli spełnia, to wykonuje się...)
 - ..polecenia.
Wszystkich może być nieskończenie wiele. Polecenia
mogą być wszystkim. Dodawanie nagłówków, usuwanie ich,
wybieranie gdzie zapisać maila (user), albo na jaką
grupę go zaimportować. Można killowac.
Jeszcze jedną bardzo ciekawą rzeczą jest to, że kryteria
mogą się przeplatać z poleceniami. Wszystkie kryteria są
powiązane spójnikiem 'i' (popracuje trochę i to zmienię)
więc polecenia są wykonywane dopóki wszystkie kryteria
są spełnione. Przykład:

From: osoba1
Subject: temat1
body: tekst2

kryt: from; *osoba*    #prawda
polecenie: ...         #wykonywane
kryt: subject: temat1  #prawda
kryt: body: *nothin*   #fałsz  <--------------.
polecenie: ...         # _nie_ wykonywane     |
kryt: body: *tekst*    #prawda                |
polecenie:  ...        # _nie_ wykonywane, bo '

W planach: dodanie polecenia: przestań przetwarzać.
Na razie mail przechodzi przez wszystkie filtry po
kolei, więc te na początku miaja najmniejszy prio-
rytet.

Oto kawałek źródła:

    :#!hs2
    :#!load hamster.hsm
    :#!load addons.hsm

Some of mine subroutines.

    :const( $filterfile, _ścieżka_do_pliku_z_filtrami_ )
    : assert( FileExists( $filterfile ), "Missing file: " + $filterfile )
(...)
    : ListLoad( $filters, $filterfile )
(...)
    :  assert( Re_Match( $filterline, "^\{\w+\}$" ), "Error in filter file, line " + $if )
    :   assert( ListIndexOf( $filters, "/" + $filterline ) +1, "Missin' end of pattern " + $filterline )

Początek {...} i koniec /{...} filtra (w oddzielnych linijkach).

(...)
    :        set( $con, icase( $con, 0, 0, else, Re_Match( $action, $string ) ) )

Może tego nie widać, ale to jest spójnik 'i'. $con określa,
 czy kryteria są spełnione.

(...)
    :        icase( $action,_
    :         "@header",_
    :                 Re_Split( $string, "( )+" $news, $string )_
    :                +MsgSetHeader( $mesg, $news, $string ),
    :         "@post",_
    :                 set( $news, $string ),_
    :         "@del",_
    :                 set( $news, "dele" ),_
    :          else, "" )

Tu kilka przykładowych poleceń.

-- 
.: Puck  gg#937829  phn# +48505113296  mailto:puck@go2.pl :.
    < +OK closing connection - goodbye!
Re: filtry
#13439
Author: Adam Wysocki
Date: Sat, 28 Dec 2002 07:37
70 lines
4446 bytes
28.12.02 Puck wrote:

> Najpierw na serwerze, o2. ma taką funkcję.

...a wysocki.lodz.pdi.net ma procmaila i się nie chwalę :)

> Potem Hamster (2.0.0.0 swoją drogą).

U mnie jedynym mta jest sendmail, którego zamierzam zamienić na qmaila 
bo już mnie wkurwia rozproszeniem spoola (dwa synchroniczne pliki, jeden 
z nagłówkami a drugi z treścią, jak się rozsynchronizują to się wszystko 
miesza, raz tak miałem).

> M'kay, co jest takiego świetnego w filtrach hs2?

...oprócz tego że są cholernie wolne bo reprezentowane w postaci 
interpretowalnej. Jakby chociaż hamster robił tak jak np. python, 
czyli przy pierwszym uruchomieniu prekompilacja skryptu do postaci 
bytekodu, to byłoby szybciej, o wiele szybciej.

> Mogę filtrować pod względem każdego z nagłówków albo body.

Ja też :)

> Są dwie części każdego filtra: 
>  - kryteria (jeśli spełnia, to wykonuje się...)
>  - ..polecenia.
> Wszystkich może być nieskończenie wiele.

Nie może być nieskończenie wiele. Może być max(2^^32,coresize()/tabsize()).

> Jeszcze jedną bardzo ciekawą rzeczą jest to, że kryteria
> mogą się przeplatać z poleceniami. Wszystkie kryteria są
> powiązane spójnikiem 'i' (popracuje trochę i to zmienię)

Koniunkcję i dysjunkcję można wybrać w zasadzie jedną instrukcją warunkową. 
Ewentualnie możesz skorzystać z logiki bool'a i tego, że koniunkcja jest 
nieprawdziwa dla choćby jednego zera na liście argumentów, a dysjunkcja 
prawdziwa dla choćby jednej jedynki. To bardzo ładnie można zoptymalizować 
rozszerzoną sumą logiczną (tak zwaną nierownoważnością ex-or, popularnie 
zwaną xorem) bez stosowania żadnych instrukcji warunkowych (na x86 instrukcje 
warunkowe zajmują od trzech do pięciu cykli maszynowych, jest to porównanie 
i skok, podejrzewam że w hs2 o wiele więcej).

> W planach: dodanie polecenia: przestań przetwarzać.

Dwie, trzy linijki w kodzie :)

> Na razie mail przechodzi przez wszystkie filtry po
> kolei, więc te na początku miaja najmniejszy prio-
> rytet.

W koniunkcji i dysjunkcji nie ma priorytetów. Jeśli pierwszy 
warunek nie zostanie spełniony, a drugi zostanie, koniunkcja 
będzie niespełniona, tak samo jak po zamianie warunków. Jeśli 
jest to prosty iloczyn logiczny (z tego co napisałeś tak 
wynika), nie ma czegoś takiego jak priorytety warunków. 
Mogą być najwyżej priorytety przetwarzania warunków, wiem 
o co ci chodzi, ale przemyśl to. Swoją drogą kiedyś, dawno 
temu, w taki sposób optymalizowało się operacje w algebrze 
bool'a, ale to było jeszcze na assemblerze XT i 286, potem 
nikomu się nie chciało.

gophi po przejściu przez lekcje logiki cyfrowej u p. Kota (mam czwórkę, 
będę poprawiał na piątkę, ale na koniec roku i tak chciałbym mieć szóstkę).

-- 
Pozdrowienia z Warszawy * Adam `gophi' Wysocki * gophi@studio.tpi.pl
GG# 1234 * RLU# 265791 * ICQ# 173653642 * GSM# +48505439030 * CB# 33
Jesteś Gophim :) Jedynym w swoim rodzaju, niepowtarzalnym (C) Muszek
Re: filtry
#13450
Author: Puck
Date: Mon, 30 Dec 2002 19:14
116 lines
5270 bytes
Wiewiórka, znana jako Adam ,,Gophi'' Wysocki, wprowadza w życie
swój plan podbicia świata przy pomocy puszki mielonki konserwowej:

> > Najpierw na serwerze, o2. ma taką funkcję.
> ...a wysocki.lodz.pdi.net ma procmaila i się nie chwalę :)

Mówisz? Przypomniało mi się, jak ktoś (i.e. polboxowiec)
krzyczał, i to głośno, że chce miec konto mailowe 'na
unixie' (chyba). No to mu ktoś odpisał, że polbox jest
na unixie. :)

> > Potem Hamster (2.0.0.0 swoją drogą).
> U mnie jedynym mta jest sendmail, którego zamierzam zamienić na qmaila 
> bo już mnie wkurwia rozproszeniem spoola (dwa synchroniczne pliki, jeden 
> z nagłówkami a drugi z treścią, jak się rozsynchronizują to się wszystko 
> miesza, raz tak miałem).

Mnie też by wkurzało. Na razie to mnie ajt soft wkurzył, bo zrobił
w ten sposób bazy do słownika. A już myślałem, że będę mógł sobie
je przerobić i w dosie używać, a tu kicha. ;p

> > M'kay, co jest takiego świetnego w filtrach hs2?
> ...oprócz tego że są cholernie wolne

Masz kiepskie wieści. Trochę sie to usprawniło po 1.3.23.4.

> bo reprezentowane w postaci interpretowalnej.

Poczytaj sobie o trollach. :P
http://puck.host.sk/prhn/trolle.php (jeszcze tam tego nei ma, ale będzie)
 TROLL SAMOPOWTARZALNY (nudziarus dilletantus).
    : Przejawia też skłonność do używania skomplikowanych słów, których
    : oczywiście nie rozumie, a którymi zapewne chce zadziwić innych.

> Jakby chociaż hamster robił tak jak np. python, czyli przy
> pierwszym uruchomieniu prekompilacja skryptu do postaci
> bytekodu, to byłoby szybciej, o wiele szybciej.

Od tego jest skryptem, żeby sie nie kompilowac. ;P

> > Mogę filtrować pod względem każdego z nagłówków albo body.
> Ja też :)

No. Bo wiesz, ja jestem raczej przyzwyczajony do tego, co jest
commonly uzywane w mailerach, a tam nie ma zwykle ciekawych
filtrów.

> > Są dwie części każdego filtra: 
> > - kryteria (jeśli spełnia, to wykonuje się...)
> > - ..polecenia.
> > Wszystkich może być nieskończenie wiele.
> Nie może być nieskończenie wiele. Może być max(2^^32,coresize()/tabsize()).

No dobra. :p

> > Jeszcze jedną bardzo ciekawą rzeczą jest to, że kryteria
> > mogą się przeplatać z poleceniami. Wszystkie kryteria są
> > powiązane spójnikiem 'i' (popracuje trochę i to zmienię)
> Koniunkcję i dysjunkcję
               ^^^^^^^^^^
alternatywę?

> Ewentualnie możesz skorzystać z logiki bool'a i tego,
> że koniunkcja jest nieprawdziwa dla choćby jednego
> zera na liście argumentów, a dysjunkcja prawdziwa dla
> choćby jednej jedynki.

To jest podstawa logiki i ja to miałem w pierwszej klasie LO.

> To bardzo ładnie można zoptymalizować rozszerzoną sumą
> logiczną (tak zwaną nierownoważnością ex-or, popularnie 
> zwaną xorem)

To też wiem - hint: Gambler, Marcin Wichary.

> bez stosowania żadnych instrukcji warunkowych

Tj?

> > W planach: dodanie polecenia: przestań przetwarzać.
> Dwie, trzy linijki w kodzie :)

Tak, ale nie chce mi się myśleć nad tym. Jest tu trochę 
zabawy z opuszczaniem pętli. Ale nie chce się w to zagłę-
biać. Problem istnieje dlatego, że w ten a nie inny spo-
sób napisałem ten skrypt.

> > Na razie mail przechodzi przez wszystkie filtry po
> > kolei, więc te na początku miaja najmniejszy prio-
> > rytet.
> W koniunkcji i dysjunkcji nie ma priorytetów.

Nie o to chodzi. Jeśli pierwsze polecenie będzie oznaczało
usunięcie maila, a drugie zapisanie go w "..." to zapisze.
Tzn przechodzi po kolei, wykonując, lub zmieniajac odpo-
wiednie zmienne.

> Jeśli pierwszy warunek nie zostanie spełniony, a drugi
> zostanie, koniunkcja będzie niespełniona, tak samo jak
> po zamianie warunków.

Wiem, Gophi. :)

> Mogą być najwyżej priorytety przetwarzania warunków, wiem 
> o co ci chodzi, ale przemyśl to. 

Why?

> gophi po przejściu przez lekcje logiki cyfrowej u p. Kota (mam czwórkę, 
> będę poprawiał na piątkę, ale na koniec roku i tak chciałbym mieć szóstkę).

Bajka.

-- 
.: Puck  gg#937829  phn# +48505113296  mailto:puck@go2.pl :.
    < +OK closing connection - goodbye!
Re: filtry
#13453
Author: Adam Wysocki
Date: Tue, 31 Dec 2002 16:47
127 lines
6487 bytes
30.12.02 Puck wrote:

> > > Najpierw na serwerze, o2. ma taką funkcję.
> > ...a wysocki.lodz.pdi.net ma procmaila i się nie chwalę :)
> Mówisz? Przypomniało mi się, jak ktoś (i.e. polboxowiec)
> krzyczał, i to głośno, że chce miec konto mailowe 'na
> unixie' (chyba). No to mu ktoś odpisał, że polbox jest
> na unixie. :)

r0tfl :)

> > > Potem Hamster (2.0.0.0 swoją drogą).
> > U mnie jedynym mta jest sendmail, którego zamierzam zamienić na qmaila 
> > bo już mnie wkurwia rozproszeniem spoola (dwa synchroniczne pliki, jeden 
> > z nagłówkami a drugi z treścią, jak się rozsynchronizują to się wszystko 
> > miesza, raz tak miałem).
> Mnie też by wkurzało. Na razie to mnie ajt soft wkurzył, bo zrobił
> w ten sposób bazy do słownika. A już myślałem, że będę mógł sobie
> je przerobić i w dosie używać, a tu kicha. ;p

Przerób, jaki dokładnie format?

> > > M'kay, co jest takiego świetnego w filtrach hs2?
> > ...oprócz tego że są cholernie wolne
> Masz kiepskie wieści. Trochę sie to usprawniło po 1.3.23.4.

Nie mów że są szybsze niż kod wykonywalny ;D

> > bo reprezentowane w postaci interpretowalnej.
> Poczytaj sobie o trollach. :P
> http://puck.host.sk/prhn/trolle.php (jeszcze tam tego nei ma, ale będzie)
>  TROLL SAMOPOWTARZALNY (nudziarus dilletantus).
>     : Przejawia też skłonność do używania skomplikowanych słów, których
>     : oczywiście nie rozumie, a którymi zapewne chce zadziwić innych.

Coś sugerujesz konkretnego?

Postać interpretowalna jest to postać, która zostaje wpuszczona 
do procesora po przerobieniu przez interpreter, i jest przerabiana 
w trakcie wykonywania. Coś niejasnego?

> > Jakby chociaż hamster robił tak jak np. python, czyli przy
> > pierwszym uruchomieniu prekompilacja skryptu do postaci
> > bytekodu, to byłoby szybciej, o wiele szybciej.
> Od tego jest skryptem, żeby sie nie kompilowac. ;P

Mógłby to robić, chociażby przy każdym uruchomieniu.

> > > Mogę filtrować pod względem każdego z nagłówków albo body.
> > Ja też :)
> No. Bo wiesz, ja jestem raczej przyzwyczajony do tego, co jest
> commonly uzywane w mailerach, a tam nie ma zwykle ciekawych
> filtrów.

Zainteresuj się pine.

> > > Jeszcze jedną bardzo ciekawą rzeczą jest to, że kryteria
> > > mogą się przeplatać z poleceniami. Wszystkie kryteria są
> > > powiązane spójnikiem 'i' (popracuje trochę i to zmienię)
> > Koniunkcję i dysjunkcję
>                ^^^^^^^^^^
> alternatywę?

Dokładnie.

> > Ewentualnie możesz skorzystać z logiki bool'a i tego,
> > że koniunkcja jest nieprawdziwa dla choćby jednego
> > zera na liście argumentów, a dysjunkcja prawdziwa dla
> > choćby jednej jedynki.
> To jest podstawa logiki i ja to miałem w pierwszej klasie LO.

Też miałem w szkole.

> > To bardzo ładnie można zoptymalizować rozszerzoną sumą
> > logiczną (tak zwaną nierownoważnością ex-or, popularnie 
> > zwaną xorem)
> To też wiem - hint: Gambler, Marcin Wichary.

Tia, i te jego pseudonaukowe teksty, czytałem tego trochę swego 
czasu (w DDTPacku) żeby się pośmiać.

> > bez stosowania żadnych instrukcji warunkowych
> Tj?

cmp, je, jne, jb, jz, itp. Ewentualnie w niektórych językach if, ale 
tak czy siak if jest zamieniony na porównanie cmp/test i bliski skok.

> > > W planach: dodanie polecenia: przestań przetwarzać.
> > Dwie, trzy linijki w kodzie :)
> Tak, ale nie chce mi się myśleć nad tym. Jest tu trochę 
> zabawy z opuszczaniem pętli.

Nie mów że hs2 tego nie umożliwia...

> Ale nie chce się w to zagłębiać.

Masz dobrze pokomentowany kod?

> Problem istnieje dlatego, że w ten a nie inny sposób napisałem ten skrypt.

Zmień to. I nigdy nie pisz niczego pod naciskiem chwili. Jeśli masz coś 
do zrobienia, przemyśl to z tydzień i dopiero potem siadaj do pisania. 
To naprawdę procentuje.

> > > Na razie mail przechodzi przez wszystkie filtry po
> > > kolei, więc te na początku miaja najmniejszy prio-
> > > rytet.
> > W koniunkcji i dysjunkcji nie ma priorytetów.
> Nie o to chodzi. Jeśli pierwsze polecenie będzie oznaczało
> usunięcie maila, a drugie zapisanie go w "..." to zapisze.

Znaczy się bez sensu :) Nie może być operacji logicznych na 
funkcjach, mogą być najwyżej operacje na wynikach tych funkcji, 
typu czy się udało usunąć, itp. ale nie możesz połączyć ze 
sobą np. usunięcia i zapisania w operacji logicznej.

> > gophi po przejściu przez lekcje logiki cyfrowej u p. Kota (mam czwórkę, 
> > będę poprawiał na piątkę, ale na koniec roku i tak chciałbym mieć szóstkę).
> Bajka.

Dlaczego bajka? Uda się :) Chociażby po to, żeby udowodnić Obiemu, 
jak wiele stracił :>

-- 
Pozdrowienia z Warszawy * Adam `gophi' Wysocki * gophi@studio.tpi.pl
GG# 1234 * RLU# 265791 * ICQ# 173653642 * GSM# +48505439030 * CB# 33
Jesteś Gophim :) Jedynym w swoim rodzaju, niepowtarzalnym (C) Muszek
Re: filtry
#13454
Author: Puck
Date: Wed, 01 Jan 2003 22:27
148 lines
7296 bytes
Wiewiórka, znana jako Adam ,,Gophi'' Wysocki, wprowadza w życie
swój plan podbicia świata przy pomocy puszki mielonki konserwowej:

[...]
> > na unixie. :)
> r0tfl :)
   ^

> > Mnie też by wkurzało. Na razie to mnie ajt soft wkurzył, bo zrobił
> > w ten sposób bazy do słownika. A już myślałem, że będę mógł sobie
> > je przerobić i w dosie używać, a tu kicha. ;p
> Przerób, jaki dokładnie format?

Nie chce mi się, bo za dużo zachodu. W sumie myślałem,
 że będzie to można zrobić jednym filtrem, a tu kicha.
Dwa pliki, binarki. Kilka bajtów, żeby określić kolor
danego tekstu (zamieniłbym na ansi) i cos, co oddziela
kolejne rekordy. Teoretycznie nie byłoby problemów, bo
rekordy z obu baz sobie odpowiadaja.

> >>> M'kay, co jest takiego świetnego w filtrach hs2?
> >> ...oprócz tego że są cholernie wolne
> > Masz kiepskie wieści. Trochę sie to usprawniło po 1.3.23.4.
> Nie mów że są szybsze niż kod wykonywalny ;D

Nie mówie, bo są nadal skryptami, ale mimo to szybsze,
niż były kiedys.

> >> bo reprezentowane w postaci interpretowalnej.
> > Poczytaj sobie o trollach. :P
> > http://puck.host.sk/prhn/trolle.php (jeszcze tam tego nei ma, ale będzie)
> > TROLL SAMOPOWTARZALNY (nudziarus dilletantus).
> >    : Przejawia też skłonność do używania skomplikowanych słów, których
> >    : oczywiście nie rozumie, a którymi zapewne chce zadziwić innych.
> Coś sugerujesz konkretnego?

W sumie mógłbym napisać 'mów jaśniej'.

> Postać interpretowalna jest to postać, która zostaje wpuszczona 
> do procesora po przerobieniu przez interpreter, i jest przerabiana 
> w trakcie wykonywania. Coś niejasnego?

Co jest interpreterem? System operacujny?

> >> Jakby chociaż hamster robił tak jak np. python, czyli przy
> >> pierwszym uruchomieniu prekompilacja skryptu do postaci
> >> bytekodu, to byłoby szybciej, o wiele szybciej.
> > Od tego jest skryptem, żeby sie nie kompilowac. ;P
> Mógłby to robić, chociażby przy każdym uruchomieniu.

Po co tyle zachodu? Przecież to są zwykle małe programy, których
działanie ogranicza się do kilku sekund (jak dobrze pójdzie).

> > No. Bo wiesz, ja jestem raczej przyzwyczajony do tego, co jest
> > commonly uzywane w mailerach, a tam nie ma zwykle ciekawych
> > filtrów.
> Zainteresuj się pine.

Nie podoba mi się. Chociażby dlatego, że raz Exit jest pod
^X, raz pod ^E, ^C albo 'E'. :p To mi się nie podoba. Teraz 
maile czytam w FA i bardzo mi to odpowiada.

> >> To bardzo ładnie można zoptymalizować rozszerzoną sumą
> >> logiczną (tak zwaną nierownoważnością ex-or, popularnie 
> >> zwaną xorem)
> > To też wiem - hint: Gambler, Marcin Wichary.
> Tia, i te jego pseudonaukowe teksty, czytałem tego
> trochę swego czasu (w DDTPacku) żeby się pośmiać.

Nie przesadzaj, pisał dobrze. To były moje na prawdę początki
i teoretycznie jedyny taki kurs w moim życiu. :) Dzięki niemu
napisałem pierwszy i jedyny edytor do sejwów z polan CD. :)

> >> bez stosowania żadnych instrukcji warunkowych
> > Tj?
> cmp, je, jne, jb, jz, itp.

Okay, Cacko kiedys coś o tym mówił, ale nie słuchałem go.
      ^^^^^
Nasz informatyk.

> >>> W planach: dodanie polecenia: przestań przetwarzać.
> >> Dwie, trzy linijki w kodzie :)
> > Tak, ale nie chce mi się myśleć nad tym. Jest tu trochę 
> > zabawy z opuszczaniem pętli.
> Nie mów że hs2 tego nie umożliwia...

Umożliwia, chociażby break, ale ja nie chce opuszczać pętli.
Eeee, nie ważne. Nie zastanawiałem się nad tym głebiej, po
prostu wydaje mi się, że byłoby z tym sporo zachodu i zwykłe
assert by tu nie wystarczyło.

> > Ale nie chce się w to zagłębiać.
> Masz dobrze pokomentowany kod?

Jeśli dobrze Cię rozumiem to nie. Tzn za każdym razem moje
skrypty są bardziej poukładane, ale nadaj jest to wielki
bałągan. Chociażby NewsReaper, którego swojego czasu tak
chwaliłem, wydaje mi się teraz być bardzo niepoukładanym
skryptem, który robi po kilka razy to samo, w dodatku nie 
wiem, czy dobrze, itd. Raz na jakiś czas piszę takie rzeczy
od nowa. 

> > Problem istnieje dlatego, że w ten a nie inny sposób napisałem ten skrypt.
> Zmień to.

Daj spokój, nie teraz. Niech sobie pochodzi, może za jakiś czas.

> I nigdy nie pisz niczego pod naciskiem chwili.
> Jeśli masz coś do zrobienia, przemyśl to z ty-
> dzień i dopiero potem siadaj do pisania. To
> naprawdę procentuje.

No dobra, do przerobienia systemu news-mail zabierałem się od
sporego czasu i cieszę się, że mój pierwszy pomysł nie wszedł
w życie. ;p

> >> W koniunkcji i dysjunkcji nie ma priorytetów.
> > Nie o to chodzi. Jeśli pierwsze polecenie będzie oznaczało
> > usunięcie maila, a drugie zapisanie go w "..." to zapisze.
> Znaczy się bez sensu :) Nie może być operacji logicznych na 
> funkcjach, mogą być najwyżej operacje na wynikach tych funkcji, 
> typu czy się udało usunąć, itp. ale nie możesz połączyć ze 
> sobą np. usunięcia i zapisania w operacji logicznej.

Teraz znowu nie rozumiem, co Ty chcesz tu uskutecznić. :p
Podczas przetwarzania poleceń nie ma wykonywania tych
poleceń. Tzn... jeśli jest to coś związanego z końcowym
położeniem tego maila, to jest to odkładane na później,
czyli po przejściu przez wszystkie filtry. 
Czyli jeśli np. mam ustawione, ze wszystkie do 'puck@go2.pl'
będzie zapisywał w "inbox", a wszystkie od 'gophi@cyberspace'
w "Gophi", to będzie się liczyło, które wcześniej wystąpiło.
A raczej które później. Tu nie ma żadnych innowacji, po
prostu przetważane sa wszystkie po komendy po kolei, a 
wyniki zapisywane do _tych_samych_zmiennych_. 

> >> gophi po przejściu przez lekcje logiki cyfrowej u p. Kota (mam czwórkę, 
> >> będę poprawiał na piątkę, ale na koniec roku i tak chciałbym mieć szóstkę).
> > Bajka.
> Dlaczego bajka? Uda się :) Chociażby po to,
> żeby udowodnić Obiemu,  jak wiele stracił :>

Jasne. Jak sylwek?

-- 
.: Puck  gg#937829  phn# +48505113296  mailto:puck@go2.pl :.
    < +OK closing connection - goodbye!
Re: filtry
#13455
Author: Adam Wysocki
Date: Thu, 02 Jan 2003 18:59
121 lines
5753 bytes
01.01.03 Puck wrote:

> > > na unixie. :)
> > r0tfl :)
>    ^

Tak właśnie miało to zabrzmieć :)

> Dwa pliki, binarki. Kilka bajtów, żeby określić kolor
> danego tekstu (zamieniłbym na ansi)

ANSI to kod kontrolujący terminal i zoptymalizowany pod tym kątem.

> > > Masz kiepskie wieści. Trochę sie to usprawniło po 1.3.23.4.
> > Nie mów że są szybsze niż kod wykonywalny ;D
> Nie mówie, bo są nadal skryptami,

python też czyta skrypty.

> ale mimo to szybsze, niż były kiedys.

Trzy wiadomości na sekundę? ;D

> > Postać interpretowalna jest to postać, która zostaje wpuszczona 
> > do procesora po przerobieniu przez interpreter, i jest przerabiana 
> > w trakcie wykonywania. Coś niejasnego?
> Co jest interpreterem? System operacujny?

Na przykładzie DOSa. Interpreter komend command.com wyświetla prompta 
i odpowiednio interpretuje wydawane przez ciebie komendy, komendy 
z pliku batchowego, strumienia, urządzenia ctty i czego tam sobie 
jeszcze zażyczysz. Natomiast wykonując program com / exe system 
pozostawia interpretowanie kodu procesorowi. Rzeczywistemu, umieszcza 
kod w pamięci, ustawia wskaźnik kodu procesora tak, żeby wykonywał 
ten kod, a sam zmyka w przerwania i stos.

> > > Od tego jest skryptem, żeby sie nie kompilowac. ;P
> > Mógłby to robić, chociażby przy każdym uruchomieniu.
> Po co tyle zachodu?

Po prędkość.

> Przecież to są zwykle małe programy, których działanie 
> ogranicza się do kilku sekund (jak dobrze pójdzie).

Kilka sekund to czasami dużo.

> > > No. Bo wiesz, ja jestem raczej przyzwyczajony do tego, co jest
> > > commonly uzywane w mailerach, a tam nie ma zwykle ciekawych
> > > filtrów.
> > Zainteresuj się pine.
> Nie podoba mi się.

Więc nie mów że nie ma.

> Chociażby dlatego, że raz Exit jest pod ^X,

Nigdy nie jest pod ^X.

> raz pod ^E, ^C albo 'E'. :p

Czasami jeszcze pod < :P

> To mi się nie podoba.

Tyle że są jasne reguły, kiedy jest pod czym.

> > Tia, i te jego pseudonaukowe teksty, czytałem tego
> > trochę swego czasu (w DDTPacku) żeby się pośmiać.
> Nie przesadzaj, pisał dobrze.

Tak, bardzo dobrze ;DD

> > >> bez stosowania żadnych instrukcji warunkowych
> > > Tj?
> > cmp, je, jne, jb, jz, itp.
> Okay, Cacko kiedys coś o tym mówił, ale nie słuchałem go.
>       ^^^^^
> Nasz informatyk.

I to był błąd, bo to podstawa zaprzęgnięcia procesora boolowskiego 
do instrukcji warunkowych.

> > I nigdy nie pisz niczego pod naciskiem chwili.
> > Jeśli masz coś do zrobienia, przemyśl to z ty-
> > dzień i dopiero potem siadaj do pisania. To
> > naprawdę procentuje.
> No dobra, do przerobienia systemu news-mail zabierałem się od
> sporego czasu i cieszę się, że mój pierwszy pomysł nie wszedł
> w życie. ;p

No widzisz :)

> > >> W koniunkcji i dysjunkcji nie ma priorytetów.
> > > Nie o to chodzi. Jeśli pierwsze polecenie będzie oznaczało
> > > usunięcie maila, a drugie zapisanie go w "..." to zapisze.
> > Znaczy się bez sensu :) Nie może być operacji logicznych na 
> > funkcjach, mogą być najwyżej operacje na wynikach tych funkcji, 
> > typu czy się udało usunąć, itp. ale nie możesz połączyć ze 
> > sobą np. usunięcia i zapisania w operacji logicznej.
> Teraz znowu nie rozumiem, co Ty chcesz tu uskutecznić. :p
> Podczas przetwarzania poleceń nie ma wykonywania tych
> poleceń. Tzn... jeśli jest to coś związanego z końcowym
> położeniem tego maila, to jest to odkładane na później,
> czyli po przejściu przez wszystkie filtry.

No i tak jest prawidłowo.

> > >> gophi po przejściu przez lekcje logiki cyfrowej u p. Kota (mam czwórkę, 
> > >> będę poprawiał na piątkę, ale na koniec roku i tak chciałbym mieć szóstkę).
> > > Bajka.
> > Dlaczego bajka? Uda się :) Chociażby po to,
> > żeby udowodnić Obiemu,  jak wiele stracił :>
> Jasne. Jak sylwek?

Kulturalnie i bez przegięć :> A u ciebie?

-- 
Pozdrowienia z Warszawy * Adam `gophi' Wysocki * gophi@studio.tpi.pl
GG# 1234 * RLU# 265791 * ICQ# 173653642 * GSM# +48505439030 * CB# 33
Jesteś Gophim :) Jedynym w swoim rodzaju, niepowtarzalnym (C) Muszek
Re: filtry
#13449
Author: Puck
Date: Fri, 03 Jan 2003 19:01
134 lines
5841 bytes
Wiewiórka, znana jako Adam ,,Gophi'' Wysocki, wprowadza w życie
swój plan podbicia świata przy pomocy puszki mielonki konserwowej:

> >>> na unixie. :)
> >> r0tfl :)
> >   ^
> Tak właśnie miało to zabrzmieć :)

Apcohowo? BTW, Richelieu ma kompa z unixem i udało mi się
nim przez chwilkę pobawić. Pocieszne stworzonko. :)

> > Dwa pliki, binarki. Kilka bajtów, żeby określić kolor
> > danego tekstu (zamieniłbym na ansi)
> ANSI to kod kontrolujący terminal i zoptymalizowany pod tym kątem.

Mniejsza o to, wiesz o co chodzi.

> >>> Masz kiepskie wieści. Trochę sie to usprawniło po 1.3.23.4.
> >> Nie mów że są szybsze niż kod wykonywalny ;D
> > Nie mówie, bo są nadal skryptami,
> python też czyta skrypty.

Perl też. Sed też. Wscript też. I, kurka, mój InboxReaper też.

> > ale mimo to szybsze, niż były kiedys.
> Trzy wiadomości na sekundę? ;D

Zależy co mam w kodzie. :p Obecnie mam dużo shit'u, ale 
optymalny kod (nagłówki, cytowanie, ew-justwanie, wrotki,
casefrom, sig, random-sig, etc - czyli trochę tego jest),
działa szybko, wystarczająco szybko, zeby nie czekać wię-
cej jak kilka sekund, przy pełnym outboxie. Pełny, czyli
koło stu mesgów (powiedzmy). Do tego trzeba dodać, ze i
tak skrypt uruchamia się zaraz po zapisaniu maila (pliku).

> > Co jest interpreterem? System operacujny?
> Na przykładzie DOSa. Interpreter komend command.com wyświetla prompta 
> i odpowiednio interpretuje wydawane przez ciebie komendy, komendy 
> z pliku batchowego, strumienia, urządzenia ctty i czego tam sobie 
> jeszcze zażyczysz.

Od kiedy ctty jest urządzeniem?

> Natomiast wykonując program com / exe system 
> pozostawia interpretowanie kodu procesorowi.

I know that, ale tylko co do com.

> >>> Od tego jest skryptem, żeby sie nie kompilowac. ;P
> >> Mógłby to robić, chociażby przy każdym uruchomieniu.
> > Po co tyle zachodu?
> Po prędkość.

Nie sądzisz, że sama kompilacja by zajmowała czas? Właśnie.

> > Przecież to są zwykle małe programy, których działanie 
> > ogranicza się do kilku sekund (jak dobrze pójdzie).
> Kilka sekund to czasami dużo.

Ej, ale to jest tylko pisanie dupereli pod lokalny serwer,
a nie programowanie z prawdziwego zdarzenia. 

> >>> No. Bo wiesz, ja jestem raczej przyzwyczajony do tego, co jest
> >>> commonly uzywane w mailerach, a tam nie ma zwykle ciekawych
> >>> filtrów.
> >> Zainteresuj się pine.
> > Nie podoba mi się.
> Więc nie mów że nie ma.

_commonly_, http://slowniki.onet.pl, większość ma OE, TheBat! czy Pegasus Mail. :p

> > Chociażby dlatego, że raz Exit jest pod ^X,
> Nigdy nie jest pod ^X.

M'kay, mniejsza o to.

> > raz pod ^E, ^C albo 'E'. :p
> Czasami jeszcze pod < :P

No.

> > To mi się nie podoba.
> Tyle że są jasne reguły, kiedy jest pod czym.

Niemniej jednak, jest to uciązliwe.

> >> Tia, i te jego pseudonaukowe teksty, czytałem tego
> >> trochę swego czasu (w DDTPacku) żeby się pośmiać.
> > Nie przesadzaj, pisał dobrze.
> Tak, bardzo dobrze ;DD

Wystarczająco dobrze. Może dla Ciebie, osoby, która sama
mogłaby go uczyć, jest to śmieszne, ale wątpię, czy Ty,
piszac tak, jak zwykłes pisać, nauczyłbyś mnie czegokol-
wiek (wtedy, od podstaw).
Moja subiektywna ocena, jako osoby, która te teksty czy-
tała po to, zeby się nauczyć, jest taka, że były dobre.

> > Okay, Cacko kiedys coś o tym mówił, ale nie słuchałem go.
> >      ^^^^^
> > Nasz informatyk.
> I to był błąd, bo to podstawa zaprzęgnięcia procesora
> boolowskiego do instrukcji warunkowych.

Ale nasz informatyk nie potrafi uczyć. 

> > No dobra, do przerobienia systemu news-mail zabierałem się od
> > sporego czasu i cieszę się, że mój pierwszy pomysł nie wszedł
> > w życie. ;p
> No widzisz :)

Ty go nie widziałeś. :>

> > Teraz znowu nie rozumiem, co Ty chcesz tu uskutecznić. :p
> > Podczas przetwarzania poleceń nie ma wykonywania tych
> > poleceń. Tzn... jeśli jest to coś związanego z końcowym
> > położeniem tego maila, to jest to odkładane na później,
> > czyli po przejściu przez wszystkie filtry.
> No i tak jest prawidłowo.

Wiem. :p

> > Jasne. Jak sylwek?
> Kulturalnie i bez przegięć :> A u ciebie?

Spokój. Po sylwku trochę...
    :'Miłość mnie całkiem bezbronnym zastała, wtargnęła w serce
    :drogą przez oczy, odtąd ta droga bramą się stała.' Nigdy 
    :nikogo nie pokocham, zrozum! NIE MOGĘ!
...inaczej.

-- 
.: Puck  gg#937829  phn# +48505113296  mailto:puck@go2.pl :.
    < +OK closing connection - goodbye!
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads