Open source RDP (Remote Desktop Protocol) server xrdp (Wikipedie) byl vydán ve verzi 0.10.0. Z novinek je vypíchnuta podpora GFX (Graphic Pipeline Extension). Nová větev řeší také několik bezpečnostních chyb.
Rocky Linux byl vydán v nové stabilní verzi 9.4. Přehled novinek v poznámkách k vydání.
Dellu byla odcizena databáze zákazníků (jméno, adresa, seznam zakoupených produktů) [Customer Care, Bleeping Computer].
V lednu byl otevřen editor kódů Zed od autorů editoru Atom a Tree-sitter. Tenkrát běžel pouze na macOS. Byl napevno svázán s Metalem. Situace se ale postupně mění. V aktuálním příspěvku Kdy Zed na Linuxu? na blogu Zedu vývojáři popisují aktuální stav. Blíží se alfa verze.
O víkendu 11. a 12. května lze navštívit Maker Faire Prague, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.
Byl vydán Fedora Asahi Remix 40, tj. linuxová distribuce pro Apple Silicon vycházející z Fedora Linuxu 40.
Představena byla služba Raspberry Pi Connect usnadňující vzdálený grafický přístup k vašim Raspberry Pi z webového prohlížeče. Odkudkoli. Zdarma. Zatím v beta verzi. Detaily v dokumentaci.
Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.
Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).
Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.
Byla vydána nová verze vývojového prostředí Lazarus pro FreePascal. Obsahuje spoustu vylepšení (nativně v GTK2 pro Linux a BSD, upravené IDE atd.). Více najdete changelogu.
Tiskni Sdílej:
Ale to, ze Pascal (aspon ten z BP7) neumi dynamickou alokaci pameti a uplne cokoli dynamickeho se musi resit pres spojaky
On nemá procedury New
a Dispose
?
už ta jediná věta odporuje sama sobě
Když by bylo třeba, šlo by realizovat spojový seznam v poli (dostatečně velkém), takže by se pak nemusela používat dynamická alokace paměti
Co ale neumi je dynamicka alokace pole
Ale to také umí. Třeba takto:
type
TCisArr = array[1..HorniMez] of integer;
PCisArr = ^TCisArr;
var
pole : PCisArr;
A pak na vhodném místě zaalokovat pamět pro prvky, které jsou skutečně třeba:
GetMem(pole, zadanyPocetPrvkuPole * sizeof(integer));
Já v helpu mám jak GetMem
tak FreeMem
.
Nechci rozpoutat flame, ale rikat o Pascalu, ze je to pekny jazyk, no nevim. Pred mesicem jsem musel zapasit s BP7.0, kdyz jsem tehdejsi kamaradce (a nynejsi pritelkyni) pomahal se zapoctakem a bylo to fakt utrpeni.Uděláš nejlíp, když se budeš namísto Borland Pascalu věnovat přítelkyni.
Spis nez ale na Pascal se zlobim na ceske skolstvi (spatnych/zastaralych jazyku je ostatne hodne) - lez, ze Pascal je jazyk vhodny pro ucebni ucely atp. To mozna plati ve srovnani s Ceckem, ale to je tak vsechno. No a ze Pascal je stale uvodnim ucebnim jazykem na MFF, to uz je neodpustitelne.A já si zase myslím, že Pascal (třeba zrovna ten Borland Pascal) je skvělý pro výuku. Podle mě je mnohem lepší než Delphi. Tuším, že to byla verze 6, kde hoši začali motat typy a pointery. Škoda. Nebo třeba klíčové slovo
packed
. No já nevím. Zletej Borland Pascal.
Stale doufam, ze Borland Pascal vymre, ale zatim se ke mne stale vraci ...Vidíš. A mě třeba osobně mrzí, že umřel. Turbo Vision bylo nádherné prostředí. Dodnes neexistuje tak pěkná a elegantní alternativa. Osobně mi Pascal přijde mnohem více čitelnější než C/C++ a jejich deriváty. Ještě tak ta Java, ale i ta je trochu kryptická. Možná tak PL/SQL, které vychází z Ady… Je to holt smutný…
Object Pascal toho umi celkem dost, ale je to na nej doslova naroubovano silou (treba ta dynamicka alokace pole - nejprve se deklaruje pole s konstantni delkou, pak se na nej vytvori pointer a pak se prikazem rekne, ze pole ma mit jinou velikost)V Borland Pascalu jo, v Object Pascalu (Delphi) ne. Object Pascal má dynamická pole, tím si jsem celkem jistý, protože jsem je používal Viz například, co tak na mne vypadlo z Googlu, tady. K té výuce: podle mě je Pascal taky výborný jazyk pro výuku. Celkem bych byl ochotný věřit, že Python by byl lepší, ale pořádně ho neznám, tak nemůžu hodnotit. Jestli mají pascalisti nebo céčkaři problém s objekty nedokážu posoudit, nic takového jsem nezaznamenal. A nějak si nejsem jistý, jestli je vhodné začínat výuku programování zrovna na OOP. Tedy úvod do programování pro neprogramátory by klidně mohl být v tom Pythonu, ti si s ním zřejmě vystačí, ale budoucím programátorům bych na začátek narval hezky SICP. Myslím to vážně.
- dualita PChar versus StringDomnivam se, ze PChar vznikl jen pro programatory v C, aby se jim zjednodusilo prepisovani kodu do Pascalu. Sam jsem PChar ani jednou nepouzil, nebyl duvod, a to jsem toho programoval docela dost.
- nutnost deklarace promennych v hlavicce funkce/proceduryTo je nahodou skvela vec. Deklarace promennych na ruznych mistech je akorat zdroj castych chyb. Ja dodnes (v jinych jazycich) vetsinu promennych deklaruju na zacatku, i kdyz je pouzivam az daleko pozdeji, to by si mel navyknout kazdy, kdo ma rad "uklizeny" kod.
Jinak, jakym zpusobem to muze byt zdrojem chyb?Jednoduse z duvodu neprehlednosti u dlouheho kodu, promenne jsou pak ruzne rozhazene pres nekolik stranek, hrozi zamena promennych apod. Kdyz se uz na zacatku udela souhrnna deklarace, tak je v tom jasno. Samozrejme pokud se nejaka promenna pouziva jen napr. ve smycce
for
apod., tak souhlasim, ze je to spis otravne ji deklarovat nekde uplne jinde a naopak to zneprehlednuje centralni deklarace zbytecne dlouhym kodem.IMHO by mela byt promenna deklarovana nekde pred prvnim pouzitimNe! Představte si kód:
void bla() { if (blablabla) { char pole[2048]; int pole2[4096]; //blablabla } else { char pole[1024]; long long pole2[6000]; // blablabla } }V případě pascalu byste to deklaroval ve "var" všechno, musel byste to pojmenovat jinak a žralo by to zbytečně cca 2x tolik paměti, nebo byste musel alokovat dynamicky a mít tam režii navíc.
strip nazevsouboru
Velikost se sníží dost postatně. Můj program má po kompilaci nějakých 30MB a po strip to sleze na 8MB.