Ada
Ales Prochaska
prochaska@alsoft.cz
Neděle Březen 5 22:48:16 CET 2006
O zadnem clanku bohuzel nevim. Podivej se do referencni prirucky
(googlem ADA and AARM), take mam k dispozici cesky preklad referencni
prirucky Ady 83 (jen v papirove podobe :-)). Ale nutno priznat, ze
z referencni prirucky neni uplne vsechno na prvni pohled jasne :-)
Tasky komunikuji metodou randez-vous, snaha autoru jazyka byla aby to
pripominalo volani procedury.
Ales Prochaska
> Zdravim,
> Ta komunikace tasku me docela zajima, je o tom nekde clanecek? :).
> S pozdravem,
> Marek Pavlu
> // -----Original Message-----
> // From: hw-list-bounces@list.hw.cz
> [mailto:hw-list-bounces@list.hw.cz] On
> // Behalf Of Ales Prochaska
> // Sent: Sunday, March 05, 2006 10:05 PM
> // To: hw-list@list.hw.cz
> // Subject: Re: Jádro pudla (Cernobily svet) :-)
> //
> // Tyhle kontrolni funkce se normalne pouzivaji jen pri ladeni, pak se
> // vypnou. Ale nemely by vadit ani v ostrem provozu (kde se ovsem
> // exception osetruje zapisem do logu a tise se doufa, ze si toho
> // zakaznik nevsimne driv nez dodavatel), protoze malokdy se narazi na
> // misto kde by to vadilo z hlediska rychlosti. Program je totiz ve
> // vetsine realnych pripadu bud s obrovskou rezervou dostatecne rychly,
> // ze unese jeste spoustu dalsich veci a nebo je naopak natolik pomaly,
> // ze se prislusna cast programu musi zgruntu predelat.
> //
> // Jinak aby nedochazelo k mateni nezasvecenych: u Ady je tahle typova
> // kontrola jakasi drobna samozrejmost, jeji hlavni sila je v perfektne
> // propracovane synchronizaci tasku (threadu) a mezitaskove komunikaci a
> // v portabilite na urovni zdrojaku dotazene ad absurdum.
> //
> // Ales Prochaska
> //
// >> Zdravim,
> //
// >> Z reakci Marka Pasky na c/c++, programators, OS, konfetách vim, co je
> // jeho
// >> hoby a co je jeho studijni/pracovni zajem.
// >> Je to 100% informatik, ktery zije na velkých systémech, to dokazuje i
> // veta,
// >> cituji:
// >> "Pro kontrolu celočíselných mezí existuje v současných procesorech
> // speciální
// >> instrukce, takže režie s tím spojená se u reálných aplikací počítá na
// >> jednotky procent."
> //
// >> Ocividne zapomina na 99% ostatich procesoru mimo domenu velkych
// >> procesoru:(((. Ale to jen takovy my lehky zhodnoceni, kampak Marek
> // Paska by
// >> chtel Adu pouzit:).
> //
// >> Jinak to jedine, co mi prislo zajimave neni moznost nadefinovat nove
// >> typy(C++ umi, pretizeni operatoru taky) a nechat se Adou privazat k
> // posteli
// >> a vydat se do raje sadomaso:), ale explicitne vymezit rozsah typu.
> //
// >> Tohle muze byt z bezpesnostniho hlediska opravdu velke plus, jenze na
> // druhe
// >> strane to znamena, ze kazda operace s takovym typem musi po skonceni
> // byt
// >> otestovana, zda nahadou nedoslo k přetečeni.
> //
// >> Jasne, da se rict, ono se to ted stejne dela, jenze je propastny
> // rozdil,
// >> jestli mam hranice datoveho typu dane binarni soustavou a tim padem
> // testuji,
// >> jestli pretekl bit nebo a nebo tam mam meze jako cisla, ktera nelze
> // testovat
// >> jednim bitem.
> //
// >> Co tim myslim? :
> //
// >> UINT16 0 - 65535
> //
// >> Nula je OK, kdyz pretece 65535->65536 tak se mi nastavi carry v CPU a
> // je to
// >> OK.
> //
// >> UserTyp 0 - 32456
// >> A jsem v haji, test po kazde operaci, pokud chci testovat, zda doslo k
// >> preteceni musim resit jako rozdil hranice a hodnoty v takovem typu.
> //
// >> Vetsina procesoru bude mit nutne rychlejsi praci s typem, jehoz meze
> // jsou
// >> 2^k-1 respektive -2^k ...
> //
// >> Tohle se asi tezko da udelat rychleji, prtoze musim dat procesoru
> // radove
// >> vetsi mnozstvi informaci, aby tu typovou kontrolu program zpracoval,
> // nez jen
// >> stare dobre testovani příznaku :(...
> //
> //
// >> S pozdravem,
// >> Marek Pavlu
> //
// >> // -----Original Message-----
// >> // From: hw-list-bounces@list.hw.cz
// >> [mailto:hw-list-bounces@list.hw.cz] On
// >> // Behalf Of Ales Prochaska
// >> // Sent: Sunday, March 05, 2006 7:12 PM
// >> // To: hw-list@list.hw.cz
// >> // Subject: Re: Jádro pudla (Cernobily svet) :-)
// >> //
// >> // Uz zminovana Ada zadny "int" nema. Ma jen prostredky jak popsat
// >> // celociselny typ, napriklad
// >> // type int is range -32768..32767;
// >> // nebo jinak
// >> // type int is range -2**15 .. 2**15-1;
// >> // nebo
// >> // type int is digits 6;
// >> // jak je libo. A ted prekvapko:
// >> // var jablka is range -32768..32767;
// >> // var hrusky is range -32768..32767;
// >> // deklaruje dve _nekompatibilni_ promenne "jablka" a "hrusky". Ale
// >> // radeji se podivejte do clanku Marka Pasky
// >> // http://www.root.cz/clanky/bezpecne-programovani-ala-ada , tam je
> // to
// >> // velmi prehledne shrnute.
// >> //
// >> // Ales Prochaska
// >> //
// // >>> Zdravim,
// >> //
// // >>> Jak?
// // >>> Prece kazdy jazyk v základech dostane do vinku něco na způsob
// >> // celociselnych
// // >>> cisel a jejich operace, takze datovy typ. Dobře, nektere jazyky
> // to
// >> // nemai tak
// // >>> dobře videt, ze to je int, ale ty operace a typy tam na pozadi
> // jsou.
// >> //
// // >>> Jaky jazyk nema datovy typ int(alespon schovany), ze do nej
> // nemuzu
// >> // vlozit
// // >>> zadne cislo??? Protože JEN TAKOVY JAZYK BY SPLNIL VASE
> // POZADAVKY...
// >> //
// // >>> S pozdravem,
// // >>> Marek Pavlu
// >> //
// // >>> // -----Original Message-----
// // >>> // From: hw-list-bounces@list.hw.cz
// // >>> [mailto:hw-list-bounces@list.hw.cz] On
// // >>> // Behalf Of Ales Prochaska
// // >>> // Sent: Sunday, March 05, 2006 9:12 AM
// // >>> // To: hw-list@list.hw.cz
// // >>> // Subject: Re: Jádro pudla (Cernobily svet) :-)
// // >>> //
// // >>> // Jazyk to muze ovlivnit tak, ze programator je primo nucen
> // zvolit
// // >>> // datovy typ (ruzny od int). Pokud i potom poplete jednotky
> // neni to
// >> // uz
// // >>> // omyl ale sabotaz ;-)
// // >>> //
// // >>> // Ales Prochaska
// // >>> //
// // // >>>> Zdravim,
// // >>> //
// // // >>>> Asi takoto, v C si muzu udelat extra datovy typ
// // >>> //
// // // >>>> typedef mile int;
// // // >>>> typedef meter int;
// // >>> //
// // // >>>> A k tomu sadu konverznich funkci a MAM TYPOVOU KONTROLU
> // :))).
// // >>> //
// // // >>>> V C++ si vytvorim objekty mCmile a mCmeter, kterym pretizim
// >> // operatory
// // >>> // pro
// // // >>>> +,-,*,/,^ a mam ještě lepsi typovou kontrolu nez v C.
// // >>> //
// // >>> //
// // // >>>> Tohle není problem jazyka, ale toho, ze 95% programatoru to
// >> // neudela,
// // >>> // ale
// // // >>>> udela toto:
// // >>> //
// // // >>>> int mile, meter;
// // >>> //
// // // >>>> mile = 1235;
// // // >>>> meter = 5;
// // >>> //
// // // >>>> mile += k*meter;
// // >>> //
// // // >>>> //a nebo toto:
// // >>> //
// // // >>>> mile += meter;
// // >>> //
// // // >>>> // a spadne jim sonda za 100 milionu USD na budku,
// // // >>>> // protože ZAPOMNELI VYNASOBIT METR KONSTANTOU!!!
// // // >>>> // :)))))))))))))))))...
// // >>> //
// // // >>>> Tak to je a i Pascal se z toho posere, respektive ta sonda,
> // kdyz
// // >>> // programátor
// // // >>>> je prase a promenne s ruznymi jednotkami v kritických
> // systémech
// // >>> // nazabali do
// // // >>>> tridy nebo neobali datovy typ funkcemi, aby typova kontrola
> // byla
// >> // i k
// // >>> // necemu,
// // // >>>> nez jen k hovnu:(.
// // >>> //
// // >>> //
// // // >>>> S pozdravem,
// // // >>>> Marek Pavlu
// // >>> //
// // // >>>> // -----Original Message-----
// // // >>>> // From: hw-list-bounces@list.hw.cz
// // // >>>> [mailto:hw-list-bounces@list.hw.cz] On
// // // >>>> // Behalf Of Ales Prochaska
// // // >>>> // Sent: Saturday, March 04, 2006 11:16 PM
// // // >>>> // To: hw-list@list.hw.cz
// // // >>>> // Subject: Re: Jádro pudla (Cernobily svet) :-)
// // // >>>> //
// // // >>>> // No, kdyz neni bordel v navrhu, ani si nevsimnete ze
> // nejaka
// >> // typova
// // // >>>> // kontrola existuje.
// // // >>>> //
// // // >>>> // Ales Prochaska
// // // >>>> //
// // // // >>>>> At 22:54 4.3.2006, Ales Prochaska wrote:
// // // // >>>>>>To co predevsim nemivaji nekteri programatori radi je
// // // // >>>>>>silna typova kontrola kterou povazuji za zbytecnou
// >> // administrativu
// >> //
// // >>> // a
// // // // >>>>>>brzdu tvurciho rozletu. Pak tvurcim zpusobem
> // interpertuji
// >> // hodnotu
// >> //
// // >>> // v
// // // // >>>>>>metrech jako udaj ve stopach a spadne jim Mars Polar
> // Lander
// >> // :-)
// // // >>>> //
// // // // >>>>> To neni problem typove kontroly (int je int i kdyz jsou
> // to
// >> // hrusky
// >> //
// // >>> // nebo
// // >>> //
// // // // >>>>> jabka), ale bordelu v navrhu.
// // // >>>> //
// // // // >>>>> (A to je presne problem tehle debaty: micha jabka a
> // hrusky
// >> // :o) )
// // // >>>> //
// // // >>>> //
// // // // >>>>> Jindroush (kubecj@avast.com)
// // // // >>>>> http://www.kostky.org - Pro fany stavebnic LEGO.
// // // >>>> //
// // // // >>>>> _______________________________________________
// // // // >>>>> HW-list mailing list - sponsored by www.HW.cz
// // // // >>>>> Hw-list@list.hw.cz
// // // // >>>>> http://list.hw.cz/mailman/listinfo/hw-list
// // // >>>> //
// // // >>>> //
// // // >>>> // _______________________________________________
// // // >>>> // HW-list mailing list - sponsored by www.HW.cz
// // // >>>> // Hw-list@list.hw.cz
// // // >>>> // http://list.hw.cz/mailman/listinfo/hw-list
// // >>> //
// // >>> //
// // >>> //
// // // >>>> _____
// // >>> //
// // // >>>> avast! Antivirus <http://www.avast.com> : Odchozi zprava
> // cista.
// // >>> //
// // >>> //
// // // >>>> Virova databaze (VPS): 0609-3, 03.03.2006
// // // >>>> Testovano: 5.3.2006 7:55:40
// // // >>>> avast! - copyright (c) 2000-2003 ALWIL Software.
// // >>> //
// // >>> //
// // >>> //
// // // >>>> _______________________________________________
// // // >>>> HW-list mailing list - sponsored by www.HW.cz
// // // >>>> Hw-list@list.hw.cz
// // // >>>> http://list.hw.cz/mailman/listinfo/hw-list
// // >>> //
// // >>> //
// // >>> // _______________________________________________
// // >>> // HW-list mailing list - sponsored by www.HW.cz
// // >>> // Hw-list@list.hw.cz
// // >>> // http://list.hw.cz/mailman/listinfo/hw-list
// >> //
// >> //
// >> //
// // >>> _____
// >> //
// // >>> avast! Antivirus <http://www.avast.com> : Odchozi zprava cista.
// >> //
// >> //
// // >>> Virova databaze (VPS): 0609-3, 03.03.2006
// // >>> Testovano: 5.3.2006 18:29:38
// // >>> avast! - copyright (c) 2000-2003 ALWIL Software.
// >> //
// >> //
// >> //
// // >>> _______________________________________________
// // >>> HW-list mailing list - sponsored by www.HW.cz
// // >>> Hw-list@list.hw.cz
// // >>> http://list.hw.cz/mailman/listinfo/hw-list
// >> //
// >> //
// >> // _______________________________________________
// >> // HW-list mailing list - sponsored by www.HW.cz
// >> // Hw-list@list.hw.cz
// >> // http://list.hw.cz/mailman/listinfo/hw-list
> //
> //
> //
// >> _____
> //
// >> avast! Antivirus <http://www.avast.com> : Odchozi zprava cista.
> //
> //
// >> Virova databaze (VPS): 0609-3, 03.03.2006
// >> Testovano: 5.3.2006 21:48:24
// >> avast! - copyright (c) 2000-2003 ALWIL Software.
> //
> //
> //
// >> _______________________________________________
// >> HW-list mailing list - sponsored by www.HW.cz
// >> Hw-list@list.hw.cz
// >> http://list.hw.cz/mailman/listinfo/hw-list
> //
> //
> // _______________________________________________
> // HW-list mailing list - sponsored by www.HW.cz
> // Hw-list@list.hw.cz
> // http://list.hw.cz/mailman/listinfo/hw-list
> _____
> avast! Antivirus <http://www.avast.com> : Odchozi zprava cista.
> Virova databaze (VPS): 0609-3, 03.03.2006
> Testovano: 5.3.2006 22:31:26
> avast! - copyright (c) 2000-2003 ALWIL Software.
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz
> Hw-list@list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
Další informace o konferenci Hw-list