Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: nm 10. 07. 2015, 08:34:36
-
Doba velkého používání Pascalu je dávno pryč. Dnes (pokud je mi známo) přežívá pascal v Delphi.
Možná nebo určitě existuje komunita, která pokračuje v udržování a možná i vývoji Pascalu.
A tady bych se chtěl zeptat: Existuje nějaký úkol nebo oblast, pro který se Pascal stále hodí jako nejlepší řešení?
-
Řekl bych, že ne. Byl navržený hlavně jako jednoduchý výukový jazyk. V tomhle ho myslím překonaly věci jako Python.
-
Pascal má pěkné gui na navrhování gui - ať už Delphi, nebo Lazarus. Kdybych potřeboval jednoduchou aplikaci se složitějším gui, tak bych ji naklikal v lazarusu - zkusil jsem si to posledně v pythonu (pygtk s glade tuším) a připadal jsem si jak zpátky v turbopascalu 6, než se i pro něj objevil návrhář uživatelského rozhraní pro turbovision. Ale třeba jen neznám ten správný nástroj. A když už jsem se tak rozepsal, prakticky ve všech jazycích, kterých se momentálně dotýkám (php, python, javascript) mi chybí pascalská striktní typová kontrola. Ani céčko nemá tak pěknou typovou kontrolu. Do php se teď pomalu prodírá, ale je to spíš parodie.
-
Myslím že není a ještě dlouho nebude. Původně byl sice navržen pro výuku, takže je trochu moc „upovídaný“ a striktní na umístění deklarací. Dnes se používají jiné jazyky pro výuku, často vidím Python, ale znám i školu, kde se dělá VBA (ano, čtete správně). Aplikací napsaných v OP je dost, mnozí udržujeme aplikace napsané někdy v prvních Delphi a postupně modernizované.
Je to už dlouho, co se používá Object Pascal a není to zrovna špatný jazyk.
Minimálně komunita kolem FreePascal/Lazarus je dost aktivní, ani Embarcadero (bývalý Borland) nerezignoval.
-
Minimálně komunita kolem FreePascal/Lazarus je dost aktivní....
Zrovna tahle aktivita mne trochu vyšplouchla - měl jsem v lazaru napsané pěkné ide pro php, jenže lazarus změnil některé klíčové komponenty a bez radikálních úprav to nefunguje... tak jsem se radši naučil zacházet s vimem :-).
-
Zcela mrtví není je v něm dost kódu co je nutné udržovat, ale na to stačí pár lidí a ti se ho když je třeba doučí.
Takže do budoucností bych v tom už nic nového nevytvářel.
K typové kontrole, pokud někdo programuje v jazycích bez typové kontroly a pak si stěžuje, že je to hrozné, že mu chybí. Tak prosím změn nástroj. Je to jako by sis stěžoval, že se ti motikou špatně zatlouká hřebík, na hřebík se používá kladivo, motika je na něco jiného. A to samé platí u jazyků, jsou situace kdy to, že jazyk nemá tipovou kontrolu ti dovoluje všelijaká kouzla, ale zas může to vést k zajímavým a těško odhalitelným chybám.
-
K typové kontrole, pokud někdo programuje v jazycích bez typové kontroly a pak si stěžuje, že je to hrozné, že mu chybí. Tak prosím změn nástroj. Je to jako by sis stěžoval, že se ti motikou špatně zatlouká hřebík, na hřebík se používá kladivo, motika je na něco jiného. A to samé platí u jazyků, jsou situace kdy to, že jazyk nemá tipovou kontrolu ti dovoluje všelijaká kouzla, ale zas může to vést k zajímavým a těško odhalitelným chybám.
Těžko měnit nástroj, když jde o údržbu a rozvoj starého maxiprojektu v php. Striktní typovou kontrolu nahrazují unit-testy, které se sice musejí dělat (typová kontrola je tak nějak zadarmo...), ale zas dokážou ošetřit víc situací než jen typy, takže můj stesk za typovostí byl jen obyčejný sentiment.
P.S. Fascinuje mne Tvůj/Váš přístup k i/y, ale to bude asi účelem, protože kdyby to bylo pravopisně správně, asi bych neodpověděl a takhle mi slovo "motika" zůstane v hlavě ještě několik dnů.
-
Existuje nějaký úkol nebo oblast, pro který se Pascal stále hodí jako nejlepší řešení?
na nove projekty ani omylom
borland pascal sux. namiesto neho napr. python.
delphi su dead. miesto nich visual studiom. c# > objectpascal
na slovensku uz aj posledne zapadnute skoly opustili pascal a presli na lazarus ale to len preto ze nemusia menit metodiky a preskolovat inych ludi
na univerzitach vsetci presli do java / c / python / c#
-
naposled jsem to videl pouzity pro anketni pruzkumy trhu. mam to hyperrychly klikaci navrh gui co zvladne i clovek s kurzem programovani pro deti a hodne to setri cas a naklady.
-
... prakticky ve všech jazycích, kterých se momentálně dotýkám (php, python, javascript) mi chybí pascalská striktní typová kontrola. Ani céčko nemá tak pěknou typovou kontrolu. Do php se teď pomalu prodírá, ale je to spíš parodie.
Jak jsi psal níže, testy tu typovou kontrolu dokáží nahradit lépe než dobře. A pokud v PHP budeš obalovat primitivní typy (zjistil jsem, že je to velmi praktické i rychlé), tak můžeš mít typovou kontrolu i v něm.
-
Nevím, proč by se měl každý jazyk nutně nějak vyvíjet. Pascal je solidní jazyk pro výuku strukturovaného programování a algoritmisace v podmínkách silného statického typového prostředí - v tomto ohledu nevím o žádné jeho konkurenci, snad jen za zmínku stojí, že ve Francii se pro tyto účely místo Pascalu uchytila Ada.
Python mám sice rád, dá se v něm dělat podstatně více věcí než v Pascalu a přitom je jednoduchý, ale jako průprava např. pro C nebo Assembler toho moc nenaučí. Klesající atraktivita Pascalu jde ruku v ruce s klesajícím významem starších a nízkoúrovňových jazyků. Ovšem kdo se někdy chce vrtat na úrovni systémového programování a blízko železa, pro toho je pascalská škola dost přínosná.
-
Existuje nějaký úkol nebo oblast, pro který se Pascal stále hodí jako nejlepší řešení?
na nove projekty ani omylom
borland pascal sux. namiesto neho napr. python.
delphi su dead. miesto nich visual studiom. c# > objectpascal
na slovensku uz aj posledne zapadnute skoly opustili pascal a presli na lazarus ale to len preto ze nemusia menit metodiky a preskolovat inych ludi
na univerzitach vsetci presli do java / c / python / c#
Na MFF UK sa Pascal stale pouziva ako ukazku zakladnych technik programovania na Informatike aj na matematike. Na informatike je to v principe jedno, lebo clovek sa vyprofiluje a najde si svoje jazyky, na matematike je to skoda, lebo s inym ako Pascalom sa matematik nestretne. Myslim si, ze keby matematici sa ucili Python namiesto Pascalu, tak by programovanie vyuzivalo daleko viac matematikov. To je specificke pre MFF UK.
Co sa tyka komercnych projektov, Pascal je takmer mrtvy jazyk. Predpokladam, ze su nejake vynimky, o ktorych neviem. A ani neviem o ziadnom ukole alebo oblasti, kde by najlepsim riesenim bol prave Pascal.
-
No, mrtvý není, ale kdyby ses zeptal, jestli je umírající, tak bych řekl, že ano. Třeba v Delphi se třeba pořád ještě tu a tam něco dělá nebo aspoň udržuje. Je to asi jako kdyby ses zeptal, jestli je Jawa mrtvá značka motorek, no. U toho Pascalu je to spíš o tom, že tak nějak vyšel z módy, než že by byl až tak hrozný. Jinak z praktického hlediska mi připadá lepší se učit C. Zase o tolik nízkoúrovňovější než Pascal (či spíš praktické varianty Pascalu) není, nějakou divočinu přes pointery a pole a preprocesor tam člověk dělat nemusí, když nechce. Takže je to pak v podstatě téměř takový Pascal s přejmenovanými klíčovými slovy a s mnohem větším praktickým využitím, přenositelností atd. A taky dobrý základ pro C++, C#, Javu nebo PHP.
-
Je mrtvý. Používají ho jenom mrtvoly a zombíci.
-
Jinak z praktického hlediska mi připadá lepší se učit C. Zase o tolik nízkoúrovňovější než Pascal (či spíš praktické varianty Pascalu) není, nějakou divočinu přes pointery a pole a preprocesor tam člověk dělat nemusí, když nechce. Takže je to pak v podstatě téměř takový Pascal s přejmenovanými klíčovými slovy a s mnohem větším praktickým využitím, přenositelností atd. A taky dobrý základ pro C++, C#, Javu nebo PHP.
C má proti Pascalu mnoho nevýhod. Například povinné indexování polí od nuly, cykly se dají zmršit daleko snáze - aniž by překladač protestoval, chybí vnořování procedur, return pouze na primitivní typy, ... Naproti tomu je Pascal pro běžné použití překonán, nahradily ho zmíněné praktičtější jazyky C#, Java, Python nebo PHP.
-
Pascal se dost používá na IBM mainframe, spolu s COBOLem. Používá se třeba pro CICSy (transakční databáze) a pak jsem v tom viděl napsaný billingový systém jednoho velkého telekomunikačního operátora. Takže bych neřekl, že je mrtvý, ale jak kdosi výše pronesl, umírající rozhodně ano.
-
Z projektov ktoré používam je v Pascale (rozumej Delphi) napísaná napríklad ABRA (G1, G2.....). Akurát od tohoto roku prešli na Delphi XE. Je to katastrofa. Aplikácie sa nafúkli a spomalili. Nároky na zdroje prudko stúpli. GUI je mierne iné, nie je to štandardné Windows GUI. Je mi jasné, že prechod na niečo iné (u takto komplexného projektu ani neviem čo by bolo optimálne) by bol veľmi bolestivý (čítaj dlhotrvajúci a drahý).
-
Nedávno jsem potkal nějakou open-source aplikaci dělanou Lazarem. V distribučních repozitářích to není, protože balení je noční můra. GUI hnusné. Jazyk samotný…
…mno, na učení to moc není, protože chybí interaktivita – furt překládat kvůli překlepům (jako packalovská středníková konvence) je demotivující. I jako pseudokód je podmnožina Pythonu čitelnější. Ani o hardwaru se toho člověk zase tolik nedozví ve srovnání s Céčkem.
-
…mno, na učení to moc není, protože chybí interaktivita – furt překládat kvůli překlepům (jako packalovská středníková konvence) je demotivující.
Jaká interaktivita? Vždyť ani C nebo PHP nemá žádnou interaktivitu. Přeložit to stejně musíš, abys mohl spustit testy. Stisk jedné klávesy pro kompilaci a spuštění testů ti vadí?
-
Nedávno jsem potkal nějakou open-source aplikaci dělanou Lazarem. V distribučních repozitářích to není, protože balení je noční můra. GUI hnusné. Jazyk samotný…
…mno, na učení to moc není, protože chybí interaktivita – furt překládat kvůli překlepům (jako packalovská středníková konvence) je demotivující. I jako pseudokód je podmnožina Pythonu čitelnější. Ani o hardwaru se toho člověk zase tolik nedozví ve srovnání s Céčkem.
To je v rukách - ne v jazyku. Je to jazyk, který byl navrhovaný pro jinou dobu a jiné počítače, a jiné lidi. Pro základní algoritmizaci je pořád super.
-
Hlavně se ale jedná o ekosystém, který si nedokáže udržet vývojáře.
http://tomkphd.blogspot.com/2014/07/moving-from-delphi-to-c.html
http://delphi.cz/post/RAD-Studio-XE8-Update-1.aspx
-
Mrtvý určitě není, jenom je méně na očích. Teď místo učení řídí fabriky a jaderné elektrárny: https://cache.industry.siemens.com/dl/files/188/1137188/att_27471/v1/SCLV4_e.pdf
Ono je tohle použití celkem logické, Pascal kontroluje za běhu každou 3.14čovinu, takže programy v něm jsou velmi bezpečné. Mnohem bezpečnější než při použití jakéhokoliv dnes moderního/módního jazyka 8)
-
A tady bych se chtěl zeptat: Existuje nějaký úkol nebo oblast, pro který se Pascal stále hodí jako nejlepší řešení?
Pascal už asi k ničemu. Delphi je stále nepřekonáno v oblasti Windows GUI. Programuje se tam jako v C/C++ ale některé věci jsou spíše jako v Javě. Některé věci jsou tam líp vyřešeny než v nových jazycích (property, message dispatch, vnitřní funkce), některé věci tam nejsou (template, RAII). Netahá za sebou kouli na noze .NET framework nebo JRE, vše se vejde do jedné malé binárky, takže základní problémy si opraví zákazník sám. Je možnost přímo volat funkce z DLL včetně všech API z Windows bez nějakých obstrukcí.
Nevýhoda je že to není managed code, běžný Franta programátor si tam nabije hubu stejně jako v C/C++.
Pascal kontroluje za běhu každou 3.14čovinu
Možná nějaký upravený klon. Originál Pascal umožňuje zapsat do paměti kamkoliv ho OS pustí a s oblibou se to používalo.
-
C# prekovanava Delphi v kazdom ohlade, vratane Windows GUI. Sice ano, pre C# je nutny aj .NET framework, ale to uz je dnes zaklad takmer kazdeho pouzivaneho Windowsu. Iba na Windows XP to treba explicitne instalovat..
-
C# prekovanava Delphi v kazdom ohlade, vratane Windows GUI. Sice ano, pre C# je nutny aj .NET framework, ale to uz je dnes zaklad takmer kazdeho pouzivaneho Windowsu. Iba na Windows XP to treba explicitne instalovat..
Bohužel .NET Framework na spoustě PC nefunguje...
-
A tady bych se chtěl zeptat: Existuje nějaký úkol nebo oblast, pro který se Pascal stále hodí jako nejlepší řešení?
Podle mě se dneska jazyky dělí na pár větví, kde každá má nějakou svou niku:
- C, C++, (Go?) - pokud chci něco rychlého, přenositelného nebo pro větší projekt a nechci managed jazyk
- Java, C# - dnešní standard pro desktop i server a velké projekty, dostupná pracovní síla
- Python, Ruby, přinejhorším Perl - pokud chci dynamický jazyk a velkou volnost nebo jsem hipster
- PHP, JavaScript, CofeeScript, *Script - prakticky jenom web, dostupná pracovní síla a technologie (hostingy, browsery atd.)
- Erlang, Haskell, Scala apod. (Go?) - jazyky s nějakými speciálními vlastnostmi, které můžu chtít (dobrá podpora paralelismu, silný typový systém apod.) nebo jsem ostentativní asociál
- Matlab, R, Julia, ... - doménově specifické jazyky (tyhle jsou pro matematiku/statistiku)
Když se na to podíváš, moc prostoru, kde by se mohl uchytil Pascal, coby univerzální jazyk bez nějakých speciálních zajímavých vlastností, nezbývá...
-
Pascal je solidní jazyk pro výuku strukturovaného programování a algoritmisace v podmínkách silného statického typového prostředí - v tomto ohledu nevím o žádné jeho konkurenci, snad jen za zmínku stojí, že ve Francii se pro tyto účely místo Pascalu uchytila Ada.
Tady by mohl zafungovat Go. Bohužel se zatím ale uchytil jenom málo (bohužel, doufal jsem, že ho Google bude tlačit daleko víc).
-
Bohužel .NET Framework na spoustě PC nefunguje...
delphi od novej verzie tiez su na .net
-
Na MFF UK sa Pascal stale pouziva ako ukazku zakladnych technik programovania na Informatike aj na matematike.
To je spíše známkou jisté zkostnatělosti ;)
-
mff v bratislave ma hlavne didaktikov co tlacili pred x * 10 rokmi pascal do gymnazii
-
C# prekovanava Delphi v kazdom ohlade, vratane Windows GUI.
Velký omyl, v Delphi můžeš volat Windows API funkce rovnou bez obstrukcí (stejně jako v C/C++) a GUI není o ničem jiném než o soustavném volání funkcí z Windows, je tam navíc podpora pro mapování windows zpráv na metody objektu. V C# to uděláš také, ale v delším čase a s více psaní. Rozbitý .Net Framework je na samostatnou diskuzi.
Na MFF UK sa Pascal stale pouziva ako ukazku zakladnych technik programovania na Informatike aj na matematike.
To je spíše známkou jisté zkostnatělosti ;)
Pro výuku programování je jednoznačně stále lepší Pascal než současné kombo Python a Java, když už materiál co leze na VŠ není schopen zvládnout C/C++.
-
p/invoke uz v c# nefunguje?
co sa tyka vyuky, pascal ma svoje vyhody, didakticly je to skvela vec na proceduralne veci. oop je tam komplikovane ma vysvetlenie a tie vyhody pointrov a win32 api zaciatocnimov nezaujimaju
vyhoda je v tom ze k pascalu je kopa matrosu lebo kantori ho poznaju dost dobre
-
Tak pokud si to dobře pamatuji, tak Pascal se kompiloval přímo do nativní binárky, takže s nějakým Pythonem bych to zrovna nesrovnával.
Podle mě je lepší volit C++, třeba Qt, než Delphi, ale je to každhého volba, v čem se mu dělá lépe.
-
Wirth: Pascal -> Modula -> Modula-2 -> Oberon
https://en.wikipedia.org/wiki/Oberon_%28programming_language%29
Oberon-07 pro ARM Cortex-M3/4 mikrokontroléry
http://www.astrobe.com/default.htm
-
Že je mrtvý a že se v nim nic neprogramuje nebo počet aplikací v něm napsaných je minimum a jsou neznámé?
Co třeba PSPad, NeroBurning Rom, Fl Studio... ;)
A díky Embarcaderu se docela svižně rozvijí na všechny platformy. Také FPC a Lazarus nejsou pozadu. Takže hurá do něj.
-
Pascal je solidní jazyk pro výuku strukturovaného programování a algoritmisace v podmínkách silného statického typového prostředí - v tomto ohledu nevím o žádné jeho konkurenci, snad jen za zmínku stojí, že ve Francii se pro tyto účely místo Pascalu uchytila Ada.
Tady by mohl zafungovat Go. Bohužel se zatím ale uchytil jenom málo (bohužel, doufal jsem, že ho Google bude tlačit daleko víc).
Nebo Swift.
-
Na vyucbu je to super jazyk. Myslim, ze mrtvy nie je, minimalne na skolach nie
-
C# prekovanava Delphi v kazdom ohlade, vratane Windows GUI. Sice ano, pre C# je nutny aj .NET framework, ale to uz je dnes zaklad takmer kazdeho pouzivaneho Windowsu. Iba na Windows XP to treba explicitne instalovat..
C# ma povinne indexovanie poli od 0, delphi si mozes indexovat od kolko chces. Delphi ma typ interval a bohatsie moznosti prace s typmi. Delphi umoznuje vytvarat objekty aj na stacku. Delphi je viac low level a nizkourovnove veci sa v nom robia jednoduchsie. Delphi nevnucuje programatorovi OOP tam kde to nema opodstatnenie. A ma zrozumitelneujsiu syntax.
Bohužel .NET Framework na spoustě PC nefunguje...[/quote ]
Ale skoro vsade funguje mono a ak vyvojar neni prasa a chce multiplatformnu aplikaciu tak nepouziva windows only kniznice (WPF, Entity Framework) .NET aplikacie neni problem spustit pod Monom.
-
Že je mrtvý a že se v nim nic neprogramuje nebo počet aplikací v něm napsaných je minimum a jsou neznámé?
Co třeba PSPad, NeroBurning Rom, Fl Studio... ;)
A díky Embarcaderu se docela svižně rozvijí na všechny platformy. Také FPC a Lazarus nejsou pozadu. Takže hurá do něj.
Alebo Total Commander.
-
total commander je delanej v nejake starsi verzi Delphi, Ch. Ghisler se vyjadroval ze nechce platit za novejsi verzi co si zada Embarcadero, spis jednu chvili uvazoval o prechode na lazarus ale zustal zatim? u toho starsiho vydani delphi
jinak subjektivne co jsem videl veci napsane v delphi tak na mne pusobily ze maji nejkrasnejsi windows gui, stejne jako se mi kdysi libily veci udelane pres turbovision
asi nejaky smysl pro krasu v borlandu ?
-
Pascal je mrtvej asi tak jako je mrtvej common lisp.
Takže, nikde moc se nepoužívá, ale svý fanboys má.
Zhruba jako třeba Haskell nebo Elm.
-
C# prekovanava Delphi v kazdom ohlade, vratane Windows GUI. Sice ano, pre C# je nutny aj .NET framework, ale to uz je dnes zaklad takmer kazdeho pouzivaneho Windowsu. Iba na Windows XP to treba explicitne instalovat..
C# ma povinne indexovanie poli od 0, delphi si mozes indexovat od kolko chces. Delphi ma typ interval a bohatsie moznosti prace s typmi. Delphi umoznuje vytvarat objekty aj na stacku. Delphi je viac low level a nizkourovnove veci sa v nom robia jednoduchsie. Delphi nevnucuje programatorovi OOP tam kde to nema opodstatnenie. A ma zrozumitelneujsiu syntax.
Bohužel .NET Framework na spoustě PC nefunguje...[/quote ]
Ale skoro vsade funguje mono a ak vyvojar neni prasa a chce multiplatformnu aplikaciu tak nepouziva windows only kniznice (WPF, Entity Framework) .NET aplikacie neni problem spustit pod Monom.
preto vsetci pouzivaju Delphi a nie C# :D
-
Že je mrtvý a že se v nim nic neprogramuje nebo počet aplikací v něm napsaných je minimum a jsou neznámé?
Co třeba PSPad, NeroBurning Rom, Fl Studio... ;)
A díky Embarcaderu se docela svižně rozvijí na všechny platformy. Také FPC a Lazarus nejsou pozadu. Takže hurá do něj.
Alebo Total Commander.
Nebo Double Commander (Lazarus).
-
C# ma povinne indexovanie poli od 0, delphi si mozes indexovat od kolko chces. Delphi ma typ interval a bohatsie moznosti prace s typmi. Delphi umoznuje vytvarat objekty aj na stacku. Delphi je viac low level a nizkourovnove veci sa v nom robia jednoduchsie. Delphi nevnucuje programatorovi OOP tam kde to nema opodstatnenie. A ma zrozumitelneujsiu syntax.
Delphi hlavně může indexovat pole výčtovým typem a pak ho tím výčtem enumerovat.
-
Podle Tiobe (já vím, statistiky si mám zfalšovat sám, ale stejně) to není úplně pravda:
http://www.tiobe.com/tiobe-index/
Možná - teď jen odhaduju - to bude tím, že pro korporátní appky, co ještě nepřešly komletně na web, je to asi pořád velmi dobré řešení (GUI+DB+OLAP, v podstatě ideální kombinace no). Ale komunita není moc viditelná, prostě...korporátno...žádné startupy s x-tou variantou JavaScriptu.
-
Kdyz si clovek da praci a necha si vyjet statistiku githubu, tak tam pascal/delphi nefiguruje vubec. Ale to nesnizuje jeho kvalitu.
Kdyz to strasne moc prezenu a prirovnam to ke statistikam 40ti nejpouzivanejsich aut v CR nebo ve svete - Bugatti Veyron tam asi taky nebude a je snad spatny? :-)
-
Kdyz si clovek da praci a necha si vyjet statistiku githubu, tak tam pascal/delphi nefiguruje vubec. Ale to nesnizuje jeho kvalitu.
Kdyz to strasne moc prezenu a prirovnam to ke statistikam 40ti nejpouzivanejsich aut v CR nebo ve svete - Bugatti Veyron tam asi taky nebude a je snad spatny? :-)
Oltcit tam taky asi nebude :)
-
Že je mrtvý a že se v nim nic neprogramuje nebo počet aplikací v něm napsaných je minimum a jsou neznámé?
Co třeba PSPad, NeroBurning Rom, Fl Studio... ;)
A díky Embarcaderu se docela svižně rozvijí na všechny platformy. Také FPC a Lazarus nejsou pozadu. Takže hurá do něj.
To není zrovna reprezentativní vzorek. PSPad je možná o něco lepší než Notepad, ale jinak nic moc. NeroBurning Rom je hnusnou slátaninou s nelogickým ovládáním. Fl Studio neznám.
-
Napr Fl Studio je vice nez reprezentativni vzorek B-)
www.flstudio.com
Ale kazdy ma rad to svoje, jen me irituje, ze vsechno ostatni musi byt za kazdou cenu uned spatne, nepouzivane, mrtve.
V pascalu napsanych her moc neni, na to jsou vice nez dobre jazyky jako C a spol..
Ale na jakekoliv aplikace je pascal/delphi plnohodnotny a srovnatelny jazyk.
A ted se poperte, ale beze mne - to byl muj posledni prispevek do teto diskuze :-)
Mejte se fajne a programovani v cemkoliv ZDAR!
End.
-
Že je mrtvý a že se v nim nic neprogramuje nebo počet aplikací v něm napsaných je minimum a jsou neznámé?
Co třeba PSPad, NeroBurning Rom, Fl Studio... ;)
A díky Embarcaderu se docela svižně rozvijí na všechny platformy. Také FPC a Lazarus nejsou pozadu. Takže hurá do něj.
To není zrovna reprezentativní vzorek. PSPad je možná o něco lepší než Notepad, ale jinak nic moc. NeroBurning Rom je hnusnou slátaninou s nelogickým ovládáním. Fl Studio neznám.
A ako suvisi tvoj subjektivny pohlad na ovládanie nejakého programu s kvalitami jazyka? Nero je snad najpouzivanejsi napalovaci software.
A pokracujme Total commander je najpouzivanejsi spravca suborov, Fl studio najpouzivanejsi sftware v hudobných studiach, WinRar najpouzivanejsi program na kompersiu suborov a vsetko je to napisane v delphi.
https://jonlennartaasenden.wordpress.com/2014/11/06/famous-software-made-with-delphi/
-
Wirth: Pascal -> Modula -> Modula-2 -> Oberon
https://en.wikipedia.org/wiki/Oberon_%28programming_language%29
Oberon-07 pro ARM Cortex-M3/4 mikrokontroléry
http://www.astrobe.com/default.htm
Podle mě je velká škoda, že se Oberon více nerozšířil. Je to takové C pro ty, co zrovna neholdují hackerskému punku – o něco uhlazenější, o něco bezpečnější, o něco přehlednější, ale stále dostatečně nízkoúrovňový.
Pascal byl v první řadě navržen jako jazyk pro výuku programování (strukturovaného) a výuku algoritmizace. A v tomto vždycky plnil a plní svou funkci výborně. Takže mi připadá trochu nemístné poměřovat jeho kvality počtem projektů.
-
Že je mrtvý a že se v nim nic neprogramuje nebo počet aplikací v něm napsaných je minimum a jsou neznámé?
Co třeba PSPad, NeroBurning Rom, Fl Studio... ;)
A díky Embarcaderu se docela svižně rozvijí na všechny platformy. Také FPC a Lazarus nejsou pozadu. Takže hurá do něj.
To není zrovna reprezentativní vzorek. PSPad je možná o něco lepší než Notepad, ale jinak nic moc. NeroBurning Rom je hnusnou slátaninou s nelogickým ovládáním. Fl Studio neznám.
A ako suvisi tvoj subjektivny pohlad na ovládanie nejakého programu s kvalitami jazyka? Nero je snad najpouzivanejsi napalovaci software.
A pokracujme Total commander je najpouzivanejsi spravca suborov, Fl studio najpouzivanejsi sftware v hudobných studiach, WinRar najpouzivanejsi program na kompersiu suborov a vsetko je to napisane v delphi.
https://jonlennartaasenden.wordpress.com/2014/11/06/famous-software-made-with-delphi/
Subjektivní pohled na ovládání? Když vidím, že se program ovládá jinak než ostatní komponenty operačního systému, tak je jeho ovládání nelogické. Nero naštěstí používat nemusím.
Total commander ani WinRar nepoužívám, nemám k tomu důvod. Podle mne jsou to zbytečnosti, které se i s Nerem, PSPadem a FL studiem hodí možná pro Windows.
-
Kdyz si clovek da praci a necha si vyjet statistiku githubu, tak tam pascal/delphi nefiguruje vubec. Ale to nesnizuje jeho kvalitu.
Kdyz to strasne moc prezenu a prirovnam to ke statistikam 40ti nejpouzivanejsich aut v CR nebo ve svete - Bugatti Veyron tam asi taky nebude a je snad spatny? :-)
Teď jsi na to kápnul, Pascal je Bugatti Veyron. Akorát je divné, že ho (skoro) nikdo nechce ani zadarmo.
-
Pascal byl v první řadě navržen jako jazyk pro výuku programování (strukturovaného) a výuku algoritmizace. A v tomto vždycky plnil a plní svou funkci výborně. Takže mi připadá trochu nemístné poměřovat jeho kvality počtem projektů.
A to říkáš proto, že k tomu máš své konkrétní důvody, nebo se jen opakuje to starodávné Wirthovo tvrzení (které se stalo samopotvrzujícím se proroctvím)? Zeptám se takto - proč dnes Pascal pro výuku ano a proč ne?
-
V pascalu napsanych her moc neni, na to jsou vice nez dobre jazyky jako C a spol..
pascal nemel sanci. za ceckem stali vyrobci procesoru a prave v cecku svadeli boj o trzni podil. pascal se vzdy jen s bidou dotahoval jak v optimalizacich, tak v tom vlozitelnem assembleru
-
Subjektivní pohled na ovládání? Když vidím, že se program ovládá jinak než ostatní komponenty operačního systému, tak je jeho ovládání nelogické. Nero naštěstí používat nemusím.
Total commander ani WinRar nepoužívám, nemám k tomu důvod. Podle mne jsou to zbytečnosti, které se i s Nerem, PSPadem a FL studiem hodí možná pro Windows.
A neni to tak, že je nelogické ovládání OS?
-
Teď jsi na to kápnul, Pascal je Bugatti Veyron. Akorát je divné, že ho (skoro) nikdo nechce ani zadarmo.
<rýp>
Tedy něco jako Linux, ten taky nechce skoro nikdo ani zadarmo ;)
</rýp>
-
Teď jsi na to kápnul, Pascal je Bugatti Veyron. Akorát je divné, že ho (skoro) nikdo nechce ani zadarmo.
<rýp>
Tedy něco jako Linux, ten taky nechce skoro nikdo ani zadarmo ;)
</rýp>
Jasně, jenom na něm běží velká část Internetu, prakticky všechny superpočítače z top500 a většina mobilů.
-
Subjektivní pohled na ovládání? Když vidím, že se program ovládá jinak než ostatní komponenty operačního systému, tak je jeho ovládání nelogické. Nero naštěstí používat nemusím.
Total commander ani WinRar nepoužívám, nemám k tomu důvod. Podle mne jsou to zbytečnosti, které se i s Nerem, PSPadem a FL studiem hodí možná pro Windows.
A neni to tak, že je nelogické ovládání OS?
I to je možné, ale oběma zmetkům se vyhýbám, tak je mi to už jedno.
-
Pokud znáte účetní programy Money S3 nebo Helios Orange, tak ty jsou také psané v Delphi.
Osobně občas rád sáhnu i po Lazarusu, protože výsledný program se dá snadno překompilovat jak pro Linux (včetně ARM)či Windows, tak pro Mac OS.
-
Zeptám se takto - proč dnes Pascal pro výuku ano a proč ne?
Protože dodnes nic lepšího nikdo nevymyslel. A je to vážně ostuda, už by to něco modernějšího fakt chtělo!
Takže si místo plácání ve zbytečných diskuzích můžeš zkusit naplácat ideální současný didaktický jazyk, který povede úplného začátečníka za ručičku, donutí ho programy psát aspoň trochu čitelně a promyšleně, a za každou chybu mu okamžitě nafackuje a řekne kde jí udělal, aby jí nemusel po každém segfaultu několik hodin hledat!
A mysli při tom na to, že Pascal je sám o sobě natolik bezpečný, že jedna jeho odnož řídí i jaderné elektrárny! Dokážeš něco takového dnes vytvořit?
Her v Pascalu je dost, mám tu třeba Mario a konverzi Manic Miner.
-
Zeptám se takto - proč dnes Pascal pro výuku ano a proč ne?
Protože dodnes nic lepšího nikdo nevymyslel. A je to vážně ostuda, už by to něco modernějšího fakt chtělo!
Takže si místo plácání ve zbytečných diskuzích můžeš zkusit naplácat ideální současný didaktický jazyk, který povede úplného začátečníka za ručičku, donutí ho programy psát aspoň trochu čitelně a promyšleně, a za každou chybu mu okamžitě nafackuje a řekne kde jí udělal, aby jí nemusel po každém segfaultu několik hodin hledat!
A mysli při tom na to, že Pascal je sám o sobě natolik bezpečný, že jedna jeho odnož řídí i jaderné elektrárny! Dokážeš něco takového dnes vytvořit?
Her v Pascalu je dost, mám tu třeba Mario a konverzi Manic Miner.
Je mi jasné, že mluvíš o jazyku Ada, ale to není jenom o jazyku. Software pro JE, letadla, vlaky, auta prochází takovým testováním o jakém se lidem v IT firmách ani nesní (dělal jsem obojí, můžu porovnávat).
Použití jazyků s volnější kontrolou typů, nebo bez přímé kontroly paměti je v safety critical aplikacích absolutně nemyslitelné. Ne kvůli HW prostředkům, ale kvůli bezpečnosti a splnění norem a předpisů.
V tomhle je Ada, C, C++ nezastupitelná.
Ale jestli se nepletu, tak Ada původní Pascal dost rozšiřuje.
-
Pascal určitě není mrtvý jazyk. Embarcadero ho pořád vyvíjí, objevují se nové vlastnosti (přijde mi, že se hodně inspirují v .NET) a dokonec se hrnou třeba i do oblasti mobilních aplikací (ale tam tomu moc šancí nedávám). Jen o něm už není tolik slyšet jako kdysi - jenže tenkrát neexistoval web, chytré telefony a takové kvanta různých programovacích jazyků.
Jinak osobně pracuju a programuju v Delphi (nesmějte se mi :)), projekt má za tu hromadu let už pár miliónů řádků a nejen že to pořád dál funguje a vyvíjí se, ale taky se i prodává :)
-
Zeptám se takto - proč dnes Pascal pro výuku ano a proč ne?
Protože dodnes nic lepšího nikdo nevymyslel. A je to vážně ostuda, už by to něco modernějšího fakt chtělo!
Takže si místo plácání ve zbytečných diskuzích můžeš zkusit naplácat ideální současný didaktický jazyk, který povede úplného začátečníka za ručičku, donutí ho programy psát aspoň trochu čitelně a promyšleně, a za každou chybu mu okamžitě nafackuje a řekne kde jí udělal, aby jí nemusel po každém segfaultu několik hodin hledat!
A mysli při tom na to, že Pascal je sám o sobě natolik bezpečný, že jedna jeho odnož řídí i jaderné elektrárny! Dokážeš něco takového dnes vytvořit?
Her v Pascalu je dost, mám tu třeba Mario a konverzi Manic Miner.
Je mi jasné, že mluvíš o jazyku Ada, ale to není jenom o jazyku. Software pro JE, letadla, vlaky, auta prochází takovým testováním o jakém se lidem v IT firmách ani nesní (dělal jsem obojí, můžu porovnávat).
Použití jazyků s volnější kontrolou typů, nebo bez přímé kontroly paměti je v safety critical aplikacích absolutně nemyslitelné. Ne kvůli HW prostředkům, ale kvůli bezpečnosti a splnění norem a předpisů.
V tomhle je Ada, C, C++ nezastupitelná.
Ale jestli se nepletu, tak Ada původní Pascal dost rozšiřuje.
že to je Ada zas tak jasné není, IEC61508 povoluje/doporučuje přímo pascal pro SIL4 , takže proč ne :)
-
Zeptám se takto - proč dnes Pascal pro výuku ano a proč ne?
Protože dodnes nic lepšího nikdo nevymyslel. A je to vážně ostuda, už by to něco modernějšího fakt chtělo!
Takže si místo plácání ve zbytečných diskuzích můžeš zkusit naplácat ideální současný didaktický jazyk, který povede úplného začátečníka za ručičku, donutí ho programy psát aspoň trochu čitelně a promyšleně, a za každou chybu mu okamžitě nafackuje a řekne kde jí udělal, aby jí nemusel po každém segfaultu několik hodin hledat!
No to bych si musel napřed položit otázku, co přesně budu chtít toho úplného začátečníka učit. Bude to takové to Pascalovské strukturované programování, bude to OOP, funkcionální styl, deklarativní programování, nějaký mix mezi tím? A budu opravdu chtít jazyk, kde mi nebyli za čtyři roky vyučující schopni odpověděť, jak a hlavně proč je někdy před else středník a někdy ne (ano, je to nakonec jednoduché - Pascal středníkem _odděluje_ příkazy, ostatní jazyky středníkem příkazy _ukončují_). Jazyk, který mi ukazuje možnosti, kterých v něm nemůžu sám dosáhnout? (write/writeln je pěkný příklad za všechny). Jazyk, kde klidně můžu jako prasátko indentovat jak se mi zachce, nebudu nikdy vědět, jestli se boolovské výrazy vyhodnocují zkráceně nebo ne?
Btw jak pokročíš k seznamům a stromům (což je pořád ještě pro pokročilého začátečníka), tak se stejně nevyhneš ukazatelům a segfaultům i v Pascalu.
Popravdě si myslím že máš v něčem pravdu - Pascal byl kdysi dobrý pro konkrétní účel (strukturované programování + striktní datové typy), navíc měl mega rychlý jednoprůchodový překladač, to se taky počítalo. Dneska? no žádná sláva, ale já bych do začátečníka v pohodě nadrtil BBC BASIC^H^H^H^H^H^H^H^H^H eh Python :)
-
že to je Ada zas tak jasné není, IEC61508 povoluje/doporučuje přímo pascal pro SIL4 , takže proč ne :)
Možná je to i Pascal, ale s nástrojema co dělám je častěji podpora pro Ada, že by byl někde psaný Pascal jsem se ještě nesetkal, proto je můj pohled deformovaný, to otevřeně přiznávám. 8)
-
Teď jsi na to kápnul, Pascal je Bugatti Veyron. Akorát je divné, že ho (skoro) nikdo nechce ani zadarmo.
<rýp>
Tedy něco jako Linux, ten taky nechce skoro nikdo ani zadarmo ;)
</rýp>
Jasně, jenom na něm běží velká část Internetu, prakticky všechny superpočítače z top500 a většina mobilů.
+1
-
Pascal byl v první řadě navržen jako jazyk pro výuku programování (strukturovaného) a výuku algoritmizace. A v tomto vždycky plnil a plní svou funkci výborně. Takže mi připadá trochu nemístné poměřovat jeho kvality počtem projektů.
A to říkáš proto, že k tomu máš své konkrétní důvody, nebo se jen opakuje to starodávné Wirthovo tvrzení (které se stalo samopotvrzujícím se proroctvím)? Zeptám se takto - proč dnes Pascal pro výuku ano a proč ne?
Jaké tvrzení? Wirth v 70. letech pro své studenty curišské techniky vymyslel jazyk, který měl být dostatečně jednoduchý a nenáročný jak pro jeho uživatele, tak pro implementátory jeho překladače, intuitivní, dobře čitelný, bezpečný a vedoucí k dobrým návykům. Protože to vše Pascal splňoval, rychle se rozšířil i mimo jeho alma mater, a dokonce, oproti původním předpokladům, se začal používat i k praktickým účelům. V této oblasti ho samozřejmě bylo nezbytné trochu přiohýbat, protože na to nebyl stavěný.
Dnes se Pascal stále hodí pro přípravu studentů, kteří budou v praxi používat jazyky jako je C, tj. klasické strukturované jazyky bez GC. Takových lidí je třeba stále pro embedded oblast. Dále se Pascal výborně hodí k vysvětlování klasických algoritmů a datových struktur, tedy různé grafové algoritmy, stromy, seznamy apod. Člověk zvyklý na to, že o dynamické objekty se musí postarat, si lehce zvykne na GC. Obráceně je to mnohem strastiplnější cesta.
Celkově je Pascal vhodný jako jazyk, kde člověk získá nějakou představu o tom, jak počítač zpracovává program, ale stále je to jednoduchý vysokoúrovňový jazyk. O tom by měl mít nějakou představu každý programátor. Navíc se dá na jeho poměrně jednoduchém, obvykle LL(1) rekurzivně sestupujícím parseru demonstrovat, jak takové věci vlastně fungují. Wirth pro tyto účely specifikoval ještě jednodušší formu, kterou nazval PL/0, což je jazyk Pascalu dost podobný, takže pro studenty je to jednodušší, jehož kompilátor či interpret se dá napsat jako semestrální cvičení.
Dnes, aspoň teoreticky, frčí objektový návrh, pro jehož výuku Pascal IMHO vhodný není. Jenže realita je taková, že ty objektové programy jsou mnohdy jen více či méně dobře navržené strukturované programy zabalené do tříd. S rostoucí oblibou funkcionálního návrhu to podle mě dopadne podobně - začnou vznikat zmršeniny, jak se to paradigma bude šířit mezi méně talentované vývojáře.
Pokud chcete naučit objektové programování, sáhněte po Smalltalku. Ale budete trpět, až v praxi budete muset něco dělat v Javě nebo nedej bože v C++. Pokud chcete naučit strukturovanému programování, sáhněte po Pascalu, a až v praxi budete muset vyvíjet v C, tak zajásáte, protože najednou odpadne ten pascalský pedantismus. Ale to je až v okamžiku, kdy máte zažité dobré návyky a víte, kdy sem-tam něco udělat nějakým hackem, aniž by to způsobilo katastrofu. Assembler, Fortran, Cobol apod. ani neuvádím, ačkoli pro případné vývojáře je i zde Pascal vhodným učebním nástrojem. Ale je mi jasné, že to, narozdíl od dob vzniku Pascalu, už dávno není mainstream.
-
Zeptám se takto - proč dnes Pascal pro výuku ano a proč ne?
Protože dodnes nic lepšího nikdo nevymyslel. A je to vážně ostuda, už by to něco modernějšího fakt chtělo!
Myslíš Javu?
Pascal byla vždy sračka a používat to na výuku byl vždy fail. Nevím, proč se dodnes tvrdí, že se na to hodí. Ale lopaty to budou opakovat ještě 500 let asi.
-
placal: jestli ti vyučující nebyli schopni říct proč se někdy píše středník a někdy ne, není to chyba jazyka, ale těch vyučujících. A jestli se booleovské výrazy vyhodnocují zkráceně nebo ne se nastaví ve vlastnostech projektu (pokud to pak někdo změní direktivou překladače kdesi v kódu, to už je jeho boj). Blbě indentovat ti dovolí prakticky každý jazyk. A pointerům v seznamech apod. se dnes klidně vyhneš, např. přes generické listy (ať už listy objektů, nebo jen paměťových struktur).
-
Zeptám se takto - proč dnes Pascal pro výuku ano a proč ne?
Protože dodnes nic lepšího nikdo nevymyslel. A je to vážně ostuda, už by to něco modernějšího fakt chtělo!
Myslíš Javu?
Java se na výuku programování docela hodí, ale nesmí se učit ve stylu strukturovaného programování, jak je dnes běžné. Objektově orientovaný přístup ve výuce Javy často citelně chybí a Java tím zbytečně získává pověst mizerného jazyka.
-
placal: jestli ti vyučující nebyli schopni říct proč se někdy píše středník a někdy ne, není to chyba jazyka, ale těch vyučujících. A jestli se booleovské výrazy vyhodnocují zkráceně nebo ne se nastaví ve vlastnostech projektu (pokud to pak někdo změní direktivou překladače kdesi v kódu, to už je jeho boj). Blbě indentovat ti dovolí prakticky každý jazyk. A pointerům v seznamech apod. se dnes klidně vyhneš, např. přes generické listy (ať už listy objektů, nebo jen paměťových struktur).
Bavíme se stále o Pascalu nebo o Object Pascalu (Delphi)? Jinak s těmi Booleovskými výrazy to býval problém, protože to skutečně bylo rozhodnuto při překladu projektu a nebylo to nikde součástí zdrojového kódu. Jinak podobnou kravinu měl i MS Basic (Quick, Q...) s volbou, jestli pole začínají od 0 nebo 1, good luck při používání cizích funkcí, které počítaly s jedním nebo s druhým.
Podle mého názoru, já bych klidně začínal s něčím na první pohled sice jednodušším, ale ve skutečnosti mocnějším - Lua nebo Python. Ale to je samozřejmě věčný boj, protože v současně nastaveném školském systému to samozřejmě na SŠ učit s velkou pravděpodobností nepůjdu (důvodů je víc a asi bych to nerad rozebíral zrovna tady).
-
Jinak podobnou kravinu měl i MS Basic (Quick, Q...) s volbou, jestli pole začínají od 0 nebo 1, good luck při používání cizích funkcí, které počítaly s jedním nebo s druhým.
Používání polí se vcelku úspěšně vyhýbám, přece jen Fortran se používá jen na specifické úkoly. Proto je mi zpravidla jedno, zda se takové pole indexuje od 0 či 1. Samozřejmě preferuji indexování od 1, protože je to přirozenější a například v uvedeném Fortranu je to default a v Pascalu běžné.
-
Je mi jasné, že mluvíš o jazyku Ada...
Dobrá volba, ale měl jsem na mysli SCL od Siemensu.
Myslíš Javu?
To je ještě horší sračka než byl Visual Basic neblahé paměti, ty vemeno!
http://www.itnews.sk/spravy/software/2008-01-17/c87894-programatorske-schopnosti-absolventov-klesaju-problemom-je-java
http://www.zdrojak.cz/clanky/nebezpeci-java-skol/
-
Jinak podobnou kravinu měl i MS Basic (Quick, Q...) s volbou, jestli pole začínají od 0 nebo 1, good luck při používání cizích funkcí, které počítaly s jedním nebo s druhým.
Používání polí se vcelku úspěšně vyhýbám, přece jen Fortran se používá jen na specifické úkoly. Proto je mi zpravidla jedno, zda se takové pole indexuje od 0 či 1. Samozřejmě preferuji indexování od 1, protože je to přirozenější a například v uvedeném Fortranu je to default a v Pascalu běžné.
Super, takze asi nepouzivas Pascal, protoze ten standardni ma jen staticka pole. FreePascal (http://www.freepascal.org/docs-html/ref/refse14.html#refsu15.html) a Delphi pak i pole dynamicka (vitejte v 21.stoleti). Seznamy nebo nedejboze hashe/asociativni pole ve standardu nejsou (samozrejme je jde dodat knihovnami, ale syntaxe pro ne neexistuje), podle toho potom vypada boj studentu i se zakladnimi programy typu nacti seznam zaku a serad je podle jejich prospechu.
-
Myslíš Javu?
To je ještě horší sračka než byl Visual Basic neblahé paměti, ty vemeno!
http://www.itnews.sk/spravy/software/2008-01-17/c87894-programatorske-schopnosti-absolventov-klesaju-problemom-je-java
http://www.zdrojak.cz/clanky/nebezpeci-java-skol/
Tak určitě. Java je na to nejlepší. Je to luxusní jazyk. Ale to hloupé lopatě těžko vysvětlím.
-
A ty linky, kde píšou další lopaty, to jen potvrzují. Prostě to není jazyk pro vás, protože na to nemáte.
-
Používání polí se vcelku úspěšně vyhýbám, přece jen Fortran se používá jen na specifické úkoly. Proto je mi zpravidla jedno, zda se takové pole indexuje od 0 či 1. Samozřejmě preferuji indexování od 1, protože je to přirozenější a například v uvedeném Fortranu je to default a v Pascalu běžné.
Super, takze asi nepouzivas Pascal, protoze ten standardni ma jen staticka pole. FreePascal (http://www.freepascal.org/docs-html/ref/refse14.html#refsu15.html) a Delphi pak i pole dynamicka (vitejte v 21.stoleti). Seznamy nebo nedejboze hashe/asociativni pole ve standardu nejsou (samozrejme je jde dodat knihovnami, ale syntaxe pro ne neexistuje), podle toho potom vypada boj studentu i se zakladnimi programy typu nacti seznam zaku a serad je podle jejich prospechu.
V Pascalu jsem kdysi napsal hodně programů, ale pak jsem ho opustil, protože přestal vyhovovat řešeným úlohám. Dnes už nemám důvod se k němu vracet, neboť s moderními jazyky mi jde vývoj mnohem lépe, rychleji a robustněji.
-
A ty linky, kde píšou další lopaty, to jen potvrzují. Prostě to není jazyk pro vás, protože na to nemáte.
Říká žvanil který nezvládl ani malou násobilku ;D
-
A ty linky, kde píšou další lopaty, to jen potvrzují. Prostě to není jazyk pro vás, protože na to nemáte.
Frodova noho, vzdyt Java je jazyk s obrousenyma hranama a detskou pojistkou!
(Coz neni zdaleka kritika, mam ji m.j. proto pro dost veci rad. Ale nema smysl tvarit se, ze je to nejaka raketova neurochirurgie.)
-
Je to luxusní jazyk na velké věci. Nemůžu za to, že většina lidí končí u MVC Pythonu, kde zvládne pár šablon a nějakou tu DB. Aplikace v Javě jsou úplně jiná liga komplexností i nároky. V jiném jazyce bys to neměl šanci dělat a nebo nemáš knihovny a nástroje.
-
Pre pár okmi som riešil voľajaké spracovávanie dát zo starého riadaceho systému. V linuxe som dekóder + konvertor urobil pomerne rýchlo v C, potom som si myslel, že to ľahko cez MinGW prekompilujem a pôjde to na Win (u klienta). Ale vždy to nešlo, z (mnou) nezistených dôvodom to občas padalo,... proste na Win som to nevedel odladiť (nemám už ani kdejakú prax pod Win, kedže aj vo firme máme už iba jeden PC s Win)...
Nakoniec som pod Win spustil Delphi 6 (ktorý som používal v 2002, ešte na škole), pomerne rýchlo si pospomínal ako na to a rýchlo som zbastlil spomínaný program (aj s jednoduchým GUI).
Vtedy som bol vďačný za starý-dobrý objektový pascal.
Tak ma napadlo - Lazarus sa chváli: "Write once, compile anywhere" - je to ozaj pravda? Máte niekto skúsenosť, že v Linuxe spraví GUI v Lazarovi (môže povedzme volať inú časť kódu napr. v C [ovládam len C, pascal, bash a (e)lisp :( ]) a po skompilovaní (zrejme sa niekde definuje platforma, cpu) to pôjde aj na Win?
-
Firiem ktorych IS su postavene na Delphi je aj v tunajsizch krajinach vela, to ze o tom bitbucket mlci bude asi tym ze komercny softver asi opensource nebude. Problem je akurat v tom ze dobrych programatorov v pascale je malo, firmy si ich drzia. O patlalov v jave, c# a tak podobne moc zaujem nie je, staci si zriadit profi ucet na linkedin (myslim ze je tam nejake obdobie na vyskusanie zadarmo) a spravit si prehlad co sa pozaduje a co su ludia schopny poskytnut.
-
Tak ma napadlo - Lazarus sa chváli: "Write once, compile anywhere" - je to ozaj pravda? Máte niekto skúsenosť, že v Linuxe spraví GUI v Lazarovi (môže povedzme volať inú časť kódu napr. v C [ovládam len C, pascal, bash a (e)lisp :( ]) a po skompilovaní (zrejme sa niekde definuje platforma, cpu) to pôjde aj na Win?
Jj, je to pravda. Teda ak nevyuzivas nejake lowlevel vylomeniny... mam teda vyskusany linux/win/osx...
-
placal: jestli ti vyučující nebyli schopni říct proč se někdy píše středník a někdy ne, není to chyba jazyka, ale těch vyučujících. A jestli se booleovské výrazy vyhodnocují zkráceně nebo ne se nastaví ve vlastnostech projektu (pokud to pak někdo změní direktivou překladače kdesi v kódu, to už je jeho boj). Blbě indentovat ti dovolí prakticky každý jazyk. A pointerům v seznamech apod. se dnes klidně vyhneš, např. přes generické listy (ať už listy objektů, nebo jen paměťových struktur).
Bavíme se stále o Pascalu nebo o Object Pascalu (Delphi)? Jinak s těmi Booleovskými výrazy to býval problém, protože to skutečně bylo rozhodnuto při překladu projektu a nebylo to nikde součástí zdrojového kódu. Jinak podobnou kravinu měl i MS Basic (Quick, Q...) s volbou, jestli pole začínají od 0 nebo 1, good luck při používání cizích funkcí, které počítaly s jedním nebo s druhým.
Podle mého názoru, já bych klidně začínal s něčím na první pohled sice jednodušším, ale ve skutečnosti mocnějším - Lua nebo Python. Ale to je samozřejmě věčný boj, protože v současně nastaveném školském systému to samozřejmě na SŠ učit s velkou pravděpodobností nepůjdu (důvodů je víc a asi bych to nerad rozebíral zrovna tady).
Tak já myslel, že to tady je o dnešním Pascalu (Delphi nebo alespoň Lazarus)... používat původní Pascal by byla nekrofilie, ten už je mrtvý snad desítky let.
S těmi booleovskými výrazy mě to buď nějak minulo, nebo už patřím do generace, která tohle nezažila. Dnes to prostě buď neřeším a vím, že překladač defaultně používá zkrácené vyhodnocování, nebo si to nastavím v projektu, nebo si to pořeším v kódu direktivou. Už dávno to prostě není problém.
Jinak když jsi nakousl ty pole - to je zrovna věc, co se mi na Pascalu líbí - můžu si je indexovat v jakém rozsahu chci, třeba i přes výčtový typ. Tohle moc jazyků nemá.
-
placal: jestli ti vyučující nebyli schopni říct proč se někdy píše středník a někdy ne, není to chyba jazyka, ale těch vyučujících. A jestli se booleovské výrazy vyhodnocují zkráceně nebo ne se nastaví ve vlastnostech projektu (pokud to pak někdo změní direktivou překladače kdesi v kódu, to už je jeho boj). Blbě indentovat ti dovolí prakticky každý jazyk. A pointerům v seznamech apod. se dnes klidně vyhneš, např. přes generické listy (ať už listy objektů, nebo jen paměťových struktur).
Bavíme se stále o Pascalu nebo o Object Pascalu (Delphi)? Jinak s těmi Booleovskými výrazy to býval problém, protože to skutečně bylo rozhodnuto při překladu projektu a nebylo to nikde součástí zdrojového kódu. Jinak podobnou kravinu měl i MS Basic (Quick, Q...) s volbou, jestli pole začínají od 0 nebo 1, good luck při používání cizích funkcí, které počítaly s jedním nebo s druhým.
Podle mého názoru, já bych klidně začínal s něčím na první pohled sice jednodušším, ale ve skutečnosti mocnějším - Lua nebo Python. Ale to je samozřejmě věčný boj, protože v současně nastaveném školském systému to samozřejmě na SŠ učit s velkou pravděpodobností nepůjdu (důvodů je víc a asi bych to nerad rozebíral zrovna tady).
Tak já myslel, že to tady je o dnešním Pascalu (Delphi nebo alespoň Lazarus)... používat původní Pascal by byla nekrofilie, ten už je mrtvý snad desítky let.
S těmi booleovskými výrazy mě to buď nějak minulo, nebo už patřím do generace, která tohle nezažila. Dnes to prostě buď neřeším a vím, že překladač defaultně používá zkrácené vyhodnocování, nebo si to nastavím v projektu, nebo si to pořeším v kódu direktivou. Už dávno to prostě není problém.
Jinak když jsi nakousl ty pole - to je zrovna věc, co se mi na Pascalu líbí - můžu si je indexovat v jakém rozsahu chci, třeba i přes výčtový typ. Tohle moc jazyků nemá.
Nevím tedy, jak to mají Pascalisti, ale u jiných jazyků, když se řekne jméno, tak se tím většinou myslí implementace podle standardu toho jazyka. U Pascalu existují AFAIK dvě specifikace - ISO 7185, ISO 10206. Object Pascal je Object Pascal, tuším normu ani nemá (takže až to někdo v Delphi nebo FPC změní, tak se moc nedivte, ostatně Delphi ani neodpovídá ISO 7185 - https://en.wikipedia.org/wiki/Comparison_of_Pascal_and_Delphi#Differences_between_Standard_Pascal_and_Delphi).
Analogicky když mluvíme o Céčku, myslí se tím skutečně C a ne C++, dtto bych čekal u Pascalu, ať do toho nevnášíte ještě větší zmatky, než už jsou (a že je jich ten současný jazyk plný - minimálně čtyři typy stringů, dva objektové systémy (no jeden asi už umřel s Turbo Pascalem).
Jinak k těm pravdivostním výrazům - norma Extended Pascalu mluví jasně:
Short Circuit Boolean Evaluation . The operators and_then and or_else are logically
equivalent to and and or , except that evaluation order is de ned as left-to-right, and the right
operand is not evaluated if the value of the expression can be determined solely from the value
of the left operand.
Takže pokud tvůj překladač pro and a or používá chování vyhrazené operátorům and_then a or_else, je to jistě super, ale není to korektní a ten překladač porušuje normu (asi to ve světě Pascalu nevadí, u jiných jazyků by ale lidi ten překladač nepoužívali).
S poli souhlas - pěkné a mnohdy velmi praktické chování.
-
Pascal je pravděpodobně "mrtvý" jako jazyk pro vývoj aplikací (snad kromě Delphi) ale je přímým předchůdcem Ady, takže podle mě má smysl se s ním seznámit, pokud se člověk potřebuje učit Adu
-
Pascal je pravděpodobně "mrtvý" jako jazyk pro vývoj aplikací (snad kromě Delphi) ale je přímým předchůdcem Ady, takže podle mě má smysl se s ním seznámit, pokud se člověk potřebuje učit Adu
Jenom pozor, abyste s učením jazyků nedopadli v jedné povídce Stephena Leacocka, kde se chce hrdina naučit jazyk X, ale to nejde bez předchozí znalosti jazyka Y a jazyk Y se nedá pochopit, když neumíte jazyk Z.
Dopadlo to tak, že protagonista upadl do takové rekurze, že se z ní už nedostal a jeho snoubenka si raději vzala někoho, kdo neuměl ani latinsky.
-
Super, takze asi nepouzivas Pascal, protoze ten standardni ma jen staticka pole. FreePascal (http://www.freepascal.org/docs-html/ref/refse14.html#refsu15.html) a Delphi pak i pole dynamicka (vitejte v 21.stoleti). Seznamy nebo nedejboze hashe/asociativni pole ve standardu nejsou (samozrejme je jde dodat knihovnami, ale syntaxe pro ne neexistuje), podle toho potom vypada boj studentu i se zakladnimi programy typu nacti seznam zaku a serad je podle jejich prospechu.
Ve VCL/FCL je, myslím, docela dost možností:
- TList. Nejjednodušší, schraňuje pointery. Možnost indexování, třídění,....
- TStrings. Univerzální seznam stringů. Ale umí i třídění, parsování CSV, ke stringu navázat TObject nebo potomka, načítat/ukládat soubor/stream,... A pokud nad TStringList někdo vysvětlí algoritmus a chce ho vizualizovat, stačí (interně díky property+ TPersistent) jeden řádek - ListBox.Items := Vysledek;
- TCollection + TCollectionList
- ...
Pro základy to stačí. A třeba pole hashů - hash převedu na string, hodím do StringListu pomocí funkce AddObject, nastavím Sort na True a je to... Proti overheadu na JVM nabo .NET rychlý jako blesk a v mnohem menší binárce.
A teď to nejlepší - VCL je standardní součást Delphi, FCL je standardní součást Lazarusu. Takže tohle je k dispozici všude.
-
Pokud jste extrémisti, tak můžete Pascal použít i místo JavaScriptu - dwscript (https://bitbucket.org/egrange/dwscript) umožňuje kompilaci podmnožiny Pascalu do JavaScriptu, případně i exekuci přímo na serveru: example (https://www.delphitools.info/2014/10/13/dws-webserver-with-javascript-codegen/).
Jakýkoliv jazyk, pro který někdo udělá kompilaci do javascriptu má naději na resurekci :D.
-
Je to luxusní jazyk na velké věci. Nemůžu za to, že většina lidí končí u MVC Pythonu, kde zvládne pár šablon a nějakou tu DB. Aplikace v Javě jsou úplně jiná liga komplexností i nároky. V jiném jazyce bys to neměl šanci dělat a nebo nemáš knihovny a nástroje.
Zdejší rozumbrada asi ještě neviděl ani nepřičichl ke komplexnosti nějakého flight control systému ani netuší jak vypadá kód co je ve vlacích, nebo autech, jinak by něco takového nemohl napsat, navážet se do ostatních, že jsou lopaty a ze sebe dělat mistra ;D
-
Je to luxusní jazyk na velké věci. Nemůžu za to, že většina lidí končí u MVC Pythonu, kde zvládne pár šablon a nějakou tu DB. Aplikace v Javě jsou úplně jiná liga komplexností i nároky. V jiném jazyce bys to neměl šanci dělat a nebo nemáš knihovny a nástroje.
Zdejší rozumbrada asi ještě neviděl ani nepřičichl ke komplexnosti nějakého flight control systému ani netuší jak vypadá kód co je ve vlacích, nebo autech, jinak by něco takového nemohl napsat, navážet se do ostatních, že jsou lopaty a ze sebe dělat mistra ;D
Ten uz tady svou neznalosti naprosto elementarnich veci ze sebe tolikrat udelal blbce, ze uz mu nikdo asi neveri ani slovo. Jen ho tu vsichni popichuji jako dvorniho saska - on pak svou hlouposti bavi vsechny prihlizejici.
-
Každopádne - pascal mŕtvy nie je, inak by sa diskusia skončila už skôr, a nebol by toto 92. príspevok, ktorý ma za úlohu, aby táto diskusná téma chvíľu ešte požila na hlavnej stránke roota.
Ak nie kto prispeje ďalším, ale rozumným príspevkom, tento možno zmazať... ;)