Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Vlákno názorů k článku
Mercury: Programování s pomocí instalatéra

raxas
raxas (neregistrovaný)
26. 2. 2004 15:39

Terminologie?

Predikát není procedura. Za takové tvrzení by autor článku propadl z logického programování na kterékoliv slušné škole na zeměkouli. Nanejvýš lze říci, že logický deterministický predikát VYPADÁ jako procedurální funkce. Problém podvojného myšlení programátorů v Mercury je možná způsoben tím, ža na rozdíl od Prologu Mercury není striktně deklarativní jazyk. Striktní typování je proti duchu logického programování a to je pravou příčinou, proč je Mercury v komunitě LP tak málo oblíben. U opravdických logických struktur může totiž problém jejich determinismu za chodu programu vypadat jinak než při překladu (např. expertní systémy)

Milan Zamazal
Milan Zamazal (neregistrovaný)
26. 2. 2004 18:10

Re: Terminologie?

Jak definujete "proceduru"? `main' je svým způsobem procedurální, neboť od většiny programů chceme obsáhlejší výstup, než jen ano/ne.

Co myslíte pojmem "striktně deklarativní"? Podle mě Prolog není deklarativní vůbec, protože záleží na pořadí vyhodnocování klauzulí a podcílů a je tam řez.

Co se týká typování a determinismu, tak je pravdou, že Mercury nemá `assert', ale v kolika programech to *rozumně* potřebujete? Žádný jazyk není vhodný úplně na všechno, ale záběr Mercury je *mnohem* širší než u Prologu, právě díky determinismu a typování. Ale na tvorbu dynamických programů se opravdu nehodí.

Zasílat nově přidané příspěvky e-mailem