Autor Téma: Delphi XE2: Generics a File Of Byte  (Přečteno 14019 krát)

Offline Radek Červinka

  • Administrátoři
  • Padawan
  • *****
  • Příspěvků: 3004
  • Karma: 108
    • Verze Delphi: D2007, DXE + 2 poslední
    • O Delphi v češtině
Re:Delphi XE2: Generics a File Of Byte
« Odpověď #60 kdy: 09-11-2015, 13:41:30 »
Citace
Jak zde nekdo rekl na zacatku - na File of Byte v generikach se jaksi pozapomelo - no mam pocit, ze tohle pozapominani je tam na hafo mistech a to drive nebyvalo tak bezne.
Upřímně řečeno, v tomto případě vůbec nechápu, o jaké "pozapomenutí" by se mělo jednat. Generika přece nejsou psaná na jednotlivé datové typy, od toho jsou to generika, že se tam ten typ dosadí dodatečně. Navíc pokud čtu první příspěvek dobře, tak tam vůbec nešlo o to, že by generika byla nějak inherentně nekopatibilní s File of Byte - šlo o to, že když se v jednom souboru vyskytla generika a File of Byte, tak to šlo do kopru, ale to File of Byte vlastně s těmi generiky nijak nesouviselo. Takže označovat to za "pozapomenutí" je podle mě hodně zavádějící.

Tvdil jsem, že se musel upravit parser, aby pochopil ze File of neco je korektni konstrukce v ramci deklarace generickeho typu a na tom trvam.
Embarcadero MVP - Czech republic

Offline pepak

  • Padawan
  • ******
  • Příspěvků: 1559
  • Karma: 37
    • Pepak.net
Re:Delphi XE2: Generics a File Of Byte
« Odpověď #61 kdy: 09-11-2015, 13:52:15 »
Tvdil jsem, že se musel upravit parser, aby pochopil ze File of neco je korektni konstrukce v ramci deklarace generickeho typu a na tom trvam.
Já s tebou, Radku, souhlasím. Akorát tiše podotýkám, že to vůbec nesouvisí s tím, co je popsáno v prvním příspěvku, protože tam se File of neco v rámci deklarace generického typu vůbec nepoužívá :-).

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 3343
  • Karma: 139
    • Verze Delphi: D2007, XE3, DX10
Re:Delphi XE2: Generics a File Of Byte
« Odpověď #62 kdy: 09-11-2015, 13:53:16 »
Tvdil jsem, že se musel upravit parser, aby pochopil ze File of neco je korektni konstrukce v ramci deklarace generickeho typu a na tom trvam.
Tak zrovna takova chyba ma u me vahu blizici se nule. Osobne jsem file of snad nikdy nepouzil a kdyz, tak nekdy v ere Borland Pascalu, kdyz neexistovaly streamy. AFAIR, tak D1 uz streamy mel, protoze je pouzival pro persistenci formulare v .DFM. Osobne bych tyhle Wirthovy ulitby studentum stejne jako WITH a podobne taskarice davno z jazyka vykopal.
« Poslední změna: 09-11-2015, 14:07:35 od pf1957 »

Offline JaroB

  • Guru
  • *****
  • Příspěvků: 1065
  • Karma: 29
    • Verze Delphi: XE8, Sydney
Re:Delphi XE2: Generics a File Of Byte
« Odpověď #63 kdy: 09-11-2015, 13:57:13 »
Myslím, že Wirth vůbec file of neměl, tam bylo určitě jen něco jako put a get v std out/in
:)

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 3343
  • Karma: 139
    • Verze Delphi: D2007, XE3, DX10
Re:Delphi XE2: Generics a File Of Byte
« Odpověď #64 kdy: 09-11-2015, 14:01:08 »
Zazil jsem i pripad, kdy evaluate v breakpointu ukazoval jine hodnoty, nez vypis hodnot primo v programu do logu - a to mi prijde jako dost bruntal.
No to brutalni je. Ja si to taky vyzkousel, kdyz jsem unicodifikoval cizi, lety strasne zprasenej rozsahlej projekt, kde se vyskytovaly metody o delce tisicu radku s vicenasobnym WITH..DO. A najednou ouha, kdyz Delphi zacal pridavat to prostych recordu properties, tak doslo ke kolizi jmen clenu. A tam mel prekladac presnou predstavu, s cim ma operovat, zatimco debugger ne a tak vyhodnocoval neco jineho. Musim rict, ze to byla jedna z nejsvinstejsich chyb, s jakou jsem se setkal a musel jsem to ladit na urovni ASM (ale vinu nedavam debuggeru, protoze jsem mel tu cest si jeden napsat, ale tem prasatum, co ten program tak prasacky napsali).

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 6161
  • Karma: 44
    • Verze Delphi: W10 + D11
Re:Delphi XE2: Generics a File Of Byte
« Odpověď #65 kdy: 09-11-2015, 14:01:51 »
Citace
Myslim, ze se narazilo na rozdil upgrade - pridani novych vlastnosti, vs update - oprava chyb, de facto zaruka za produkt.
Ja som dokonca ochotný zaplatiť za update ale nejde to >:(  V žiadnom prípade nechcem, ani nebudem chcieť, novú verziu.
W10 64b, Delphi 10.4, FireBird 3.08
Expert na kladenie nejasne formulovaných otázok.

Offline Radek Červinka

  • Administrátoři
  • Padawan
  • *****
  • Příspěvků: 3004
  • Karma: 108
    • Verze Delphi: D2007, DXE + 2 poslední
    • O Delphi v češtině
Re:Delphi XE2: Generics a File Of Byte
« Odpověď #66 kdy: 09-11-2015, 14:02:05 »
o Delphi 6 že je sice dobré i na linux a Qt ale bylo to tu ALE... o Delphi 7 že je to vlastně stabilní 6.1

mimochodem Delphi 6 - 21. květen 2001, Delphi 7 - 9. srpen 2002, tj. po necelém  1,5 roce (teda pokud se dá věřit týpkovi http://delphi.cz/page/Verze-Delphi.aspx).

Teď kdyby byla nová verze po takové době v takovém rozsahu tak bych nechtěl číst ty komentáře.

Embarcadero MVP - Czech republic

Offline JaroB

  • Guru
  • *****
  • Příspěvků: 1065
  • Karma: 29
    • Verze Delphi: XE8, Sydney
Re:Delphi XE2: Generics a File Of Byte
« Odpověď #67 kdy: 09-11-2015, 14:04:57 »
Však říkám, všechno se zesložitilo, je to dobou, se složitostí roste i chybovost, ta tlačí na rychlejší inovaci, tak se vydávají polotovary, obchodníci větří vyšší profit, rychlejší peníze atp.

Offline Radek Červinka

  • Administrátoři
  • Padawan
  • *****
  • Příspěvků: 3004
  • Karma: 108
    • Verze Delphi: D2007, DXE + 2 poslední
    • O Delphi v češtině
Re:Delphi XE2: Generics a File Of Byte
« Odpověď #68 kdy: 09-11-2015, 14:06:37 »
Tvdil jsem, že se musel upravit parser, aby pochopil ze File of neco je korektni konstrukce v ramci deklarace generickeho typu a na tom trvam.
Já s tebou, Radku, souhlasím. Akorát tiše podotýkám, že to vůbec nesouvisí s tím, co je popsáno v prvním příspěvku, protože tam se File of neco v rámci deklarace generického typu vůbec nepoužívá :-).

Mozna se pletu, ale funkce, která se součástí generické třídy TPrvek1<Obsah> obsahuje lokální proměnnou File of Byte.

Kód: Delphi [Vybrat]
  1. Function TPrvek1<Obsah>.MujFileSize(Const VSoubor : String) : Integer;
  2. Var
  3.      FB : File Of Byte; //Pokud se toto vypustilo, tak překlad proběhl bez problémů
  4.  Begin //Tady nemusí být žádný kód
  5.  End;
  6. End.
  7.  

Chápu tedy, že analyzer musí vědět, že je to metoda generické třídy a že může očekávat různé kontrukce s generiky <Obsah> a že File of byte je normální a ne generická konstrukce. Nevím jak ten analyzer mají napsaný a  jak jsem řekl, nikdy jsem nechodil do teorie překladačů.

Embarcadero MVP - Czech republic

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 3343
  • Karma: 139
    • Verze Delphi: D2007, XE3, DX10
Re:Delphi XE2: Generics a File Of Byte
« Odpověď #69 kdy: 09-11-2015, 14:06:53 »
Myslím, že Wirth vůbec file of neměl, tam bylo určitě jen něco jako put a get v std out/in
:)
http://www.standardpascal.org/The_Programming_Language_Pascal_1972.pdf
Podivej se na stranu 15 :-)
« Poslední změna: 09-11-2015, 14:11:40 od pf1957 »

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 3343
  • Karma: 139
    • Verze Delphi: D2007, XE3, DX10
Re:Delphi XE2: Generics a File Of Byte
« Odpověď #70 kdy: 09-11-2015, 14:15:32 »
Teď kdyby byla nová verze po takové době v takovém rozsahu tak bych nechtěl číst ty komentáře.
Tak D7 uz byl jen takovy ksaft umirajici firmy Borland, nez to preprasili na Inprase... My tentkrat zustali u D6.x

Offline JaroB

  • Guru
  • *****
  • Příspěvků: 1065
  • Karma: 29
    • Verze Delphi: XE8, Sydney
Re:Delphi XE2: Generics a File Of Byte
« Odpověď #71 kdy: 09-11-2015, 14:33:06 »
Myslím, že Wirth vůbec file of neměl, tam bylo určitě jen něco jako put a get v std out/in
:)
http://www.standardpascal.org/The_Programming_Language_Pascal_1972.pdf
Podivej se na stranu 15 :-)

omlouvám se, máš pravdu. put^ a get^ měl tiny pasqil běžící pod fortranem

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 3343
  • Karma: 139
    • Verze Delphi: D2007, XE3, DX10
Re:Delphi XE2: Generics a File Of Byte
« Odpověď #72 kdy: 09-11-2015, 14:43:21 »
omlouvám se, máš pravdu. put^ a get^ měl tiny pasqil běžící pod fortranem
To se nemusis omlouvat. Jen ze file of prijde jako silenej archasimus - horsi snad ani neexistuje, takze se vubec nedivim tvurcum prekladace, ze po tom ani nevzdechli :-)

Pascal jsem potkal az na mikrech, kde byl vitanou nahradou za PL/Mxx. Jako prvni jsme pouzivali MIT Pascal pod CP/M a tam get/put bylo, ale uz nepamatuju, na co presne. To bylo jeste pred Turbo Pascalem

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 3343
  • Karma: 139
    • Verze Delphi: D2007, XE3, DX10
Re:ještě malá poznámka
« Odpověď #73 kdy: 09-11-2015, 17:09:50 »
Nicméně CEO Idery pan Randy Jacops mi zaslal velice milý e-mail,
A cos cekal, ze ti napise  ;D Spis bys mel zacit sledovat ekonomicke ukazatele https://www.moodys.com/research/Moodys-assigns-B3-CFR-to-Idera-Inc-outlook-stable--PR_335231 apod, jestli to ufinancuji (a to myslim vazne, alespon annual reports a rating).

Ostatni nebudu komentovat, i kdyz s radou veci nesouhlasim, ale nemam na to cas.

Offline Marek Weyda

  • Hrdina
  • ****
  • Příspěvků: 258
  • Karma: 8
    • Verze Delphi: Delphi 2007, 10.1 Berlin
díky za odkaz
« Odpověď #74 kdy: 10-11-2015, 09:01:06 »
To pf1957:

No, samozřejmě máš pravdu v tom, že ten CEO Idery by mi určitě nenapsal něco, co nechci slyšet :-) O tom nemá cenu diskutovat, v tom máš pravdu. Nicméně ten e-mail nebyl až tak moc oblbovací, měl docela hlavu i patu. Ale známe americký marketing a je jasné, že realita bývá někdy dost jiná :-) To ostatně ale platí i pro naší krajinu. Jinak díky za odkaz na ty ekonomický ukazatele. Sledovat určitě budu.

Jinak jsi mě docela pobavil s tím file of v původním standardu Pascalu. Příjemně jsem se vrátil do historie, protože jsem si vzpomněl, jak onehdy na jedné VŠ v Praze učitel bazíroval na standardu Pascalu a my se ho fakt museli naučit z takového toho českého překladu tuším od Svazarmu nebo od koho to bylo. Byl to kompletní standard jazyka Pascal přepsaný do češtiny. No a pak jsem přestoupil na jinou školu a tam jsem se vůbec na zkoušky z programování neučil a při zkoušce jsem začal odříkávat ten standard Pascalu a učitel z toho nemohl a říkal mi, že s tímhle fakt v dnešní době už bych se neuživil a připomněl mi, že na přednáškách se probíral Turbo Pascal 7.0 a ten standard Pascalu fanaticky nekopíruje :-) Takže jsem šel s pravdou ven, řekl jsem mu, že ani moc nevím, co se na přednáškách probíralo, že v té předchozí VŠ do nás hustili standard Pascalu a tak jsem s tím přišel i ke zkoušce. Dodneška mám tu knížku někde zahrabanou, možná si jí zase místo večerníčku přečtu :-)