[ALG] generaties van programmeertalen *

Pagina: 1
Acties:
  • 1.280 views sinds 30-01-2008
  • Reageer

Acties:
  • 0 Henk 'm!

  • AtleX
  • Registratie: Maart 2003
  • Niet online

AtleX

Tyrannosaurus Lex 🦖

Modbreak:Let op: dit topic is afgesplitst uit [rml][ ALG] Ergste nachtmerrie van een programmeur[/rml]


Ik ben maar een n00b die af-en-toe wat programmeert, maar wat is nu de hele reeks van die GL's? Ik gok dat xGL staat voor x generation language, aangezien 2GL volgens jullie Assembly is zal 1GL wel de eentjes en nulletjes zijn. 3GL is dan waarschijnlijk C++/Java/Pascal/etc., maar wat is dan weer 4GL?

[ Voor 22% gewijzigd door gorgi_19 op 28-10-2004 22:33 ]

Sole survivor of the Chicxulub asteroid impact.


Acties:
  • 0 Henk 'm!

  • coubertin119
  • Registratie: Augustus 2002
  • Laatst online: 19-10 11:23
Voor zover mijn kennis hierover ver genoeg reikt, zijn 4GL talen compleet grafisch geörienteerd. Een vriend van me werkt er in om simulaties te doen, maar het fijne weet ik er ook niet van.

Skat! Skat! Skat!


Acties:
  • 0 Henk 'm!

  • Orphix
  • Registratie: Februari 2000
  • Niet online
AtleX schreef op 28 oktober 2004 @ 20:40:
Ik ben maar een n00b die af-en-toe wat programmeert, maar wat is nu de hele reeks van die GL's? Ik gok dat xGL staat voor x generation language, aangezien 2GL volgens jullie Assembly is zal 1GL wel de eentjes en nulletjes zijn. 3GL is dan waarschijnlijk C++/Java/Pascal/etc., maar wat is dan weer 4GL?
Een bekende 4GL taal is imo SQL. Deze taal onderscheidt zich duidelijk van de 3GL talen in het feit dat het zeer gericht is op het domein van de probleemhebber (welke data wil je hebben), en niet het domein van de technische oplossing (bijvoorbeeld het specificeren van gebruik van datatypes, indexes, buffers, etc).

Ik denk dat je in het algemeen kan stellen dat naarmate een taal 'hoger' is, deze beter voldoet om een specifiek probleem op te lossen. Maar hierdoor de flexibiliteit verliest om daarnaast ook effectief te zijn in andere probleemdomeinen.

Edit: wat coubertin119 zegt zijn ook vaak 4GL talen. Grote ERP pakketten zoals BAAN, SAP, etc. hebben vaak hun eigen taal om bedrijfsprocessen mee te modelern. Deze talen zijn vaak grafisch en zeer toegespitst op het probleemdomein.

[ Voor 12% gewijzigd door Orphix op 28-10-2004 20:50 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Hier een link van was NASA onder xGL verstaat. Geen scherpe definities:
http://sel.gsfc.nasa.gov/website/documents/study-br/gls.htm

... en volgens mij is SQL gewoon een 2 of 3GL, maar dan voor een virtuele machine. Dat query-bouwkits vaak leuke tools zijn maakt het blijkbaar 4GL ;).

Acties:
  • 0 Henk 'm!

  • Orphix
  • Registratie: Februari 2000
  • Niet online
Verwijderd schreef op 28 oktober 2004 @ 20:55:
Hier een link van was NASA onder xGL verstaat. Geen scherpe definities:
http://sel.gsfc.nasa.gov/website/documents/study-br/gls.htm

... en volgens mij is SQL gewoon een 2 of 3GL, maar dan voor een virtuele machine. Dat query-bouwkits vaak leuke tools zijn maakt het blijkbaar 4GL ;).
Daarom zei ik er ook maar bij dat dat in mijn ogen een 4GL taal is. Er worden nogal verschillende criteria gebruikt voor deze verdeling. Ik vind het onderscheid tussen technisch gericht, of probleem gericht een beter criterium dan wel of geen grafische schil.

Maar eigenlijk is het ook allemaal niet zo boeiend, right tool for the right job :)

Acties:
  • 0 Henk 'm!

  • Freee!!
  • Registratie: December 2002
  • Laatst online: 20:32

Freee!!

Trotse papa van Toon en Len!

coubertin119 schreef op 28 oktober 2004 @ 20:47:
Voor zover mijn kennis hierover ver genoeg reikt, zijn 4GL talen compleet grafisch geörienteerd. Een vriend van me werkt er in om simulaties te doen, maar het fijne weet ik er ook niet van.
Ik ken genoeg 4GL's die dus compleet karakter-georiënteerd zijn hoor. Het belangrijkste kenmerk dat de meeste 4GL's gemeen hebben, is dat hun uitvoer over het algemeen een 3GL is, die door standaard compilers verder verwerkt kan worden.

The problem with common sense is that sense never ain't common - From the notebooks of Lazarus Long

GoT voor Behoud der Nederlandschen Taal [GvBdNT


Acties:
  • 0 Henk 'm!

  • Orphix
  • Registratie: Februari 2000
  • Niet online
Mr. Liu schreef op 28 oktober 2004 @ 21:02:
[...]

Ik ken genoeg 4GL's die dus compleet karakter-georiënteerd zijn hoor. Het belangrijkste kenmerk dat de meeste 4GL's gemeen hebben, is dat hun uitvoer over het algemeen een 3GL is, die door standaard compilers verder verwerkt kan worden.
Die het weer verwerken tot een 2GL taal ;)

Acties:
  • 0 Henk 'm!

Verwijderd

Ik zie dat er wat verwarring is over de generaties van programmeertalen. Mischien een beetje offtopic in deze thread, maar mijn mening is dat generaties gewoon maar -een- classificatie zijn. Een andere classificatie is om naar het paradigma te kijken (imperative, functional, logical, etc). Nog een andere classificatie is om naar het abstractie niveau vanaf de machine te kijken.

Nevertheless, the generaties zijn als volgt:

• 1. machine languages
• 2. assembly languages
• 3. procedural / imperative languages
• 4. application languages
• 5. AI / inference langages
• 6. neural networks languages

Een voorbeeld van een 4gl language is dus SQL, 5gl is prolog en bij een 6gl speelt lerend vermogen een rol.

Merk op dat veel talen hoger dan 3gl niet turing complete zijn: dwz, je kunt er niet elk mogelijk algoritme in uitdrukken. Als heel simpel voorbeeld, je kunt geen quicksort of dijkstra in SQL implementeren.

Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 16:16

gorgi_19

Kruimeltjes zijn weer op :9

Topicstarter
Aangezien ik gok dat de meeste programmeurs het dromen van de verschillende talen niet als nachtmerrie ervaren, maar een kleine afsplitsing uit [rml][ ALG] Ergste nachtmerrie van een programmeur[/rml] :)

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0 Henk 'm!

  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

Verwijderd schreef op 28 oktober 2004 @ 22:28:
Nevertheless, the generaties zijn als volgt:
Haal je dat nou ook uit 'programming language essentials'? :) Staat hier exact hetzelfde, ook sql als 4gl, en prolog als simpele 5gl.

Overigens had jede TS ook de search kunnen gebruiken: Wat houdt 4GL nou precies in.

[ Voor 22% gewijzigd door Zoijar op 28-10-2004 22:41 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Zoijar schreef op 28 oktober 2004 @ 22:35:
[...]

Haal je dat nou ook uit 'programming language essentials'? :) Staat hier exact hetzelfde, ook sql als 4gl, en prolog als simpele 5gl.
*lach* Er -zou- natuurlijk inderdaad hetzelfde in moeten staan als ik het ergens anders vandaan had. Maar het lijstje komt inderdaad uit dat boek, meer precies:

Programming Language Essentials
Henri E. Bal, Dick Grune
Addison Wesley

Studenten van de VU zullen Henri Bal zeker kennen, en studenten van de UL zullen het genoemde boek ook gelezen hebben (voor het vak concepten van programmeertalen).

Ik heb het lijstje destijds uit mijn hoofd moeten leren dus ik wist het nog wel, maar toch maar even nagekeken voor de zekerheid. Leuk dat er ook andere mensen zijn die dit boek kennen en meteen weten waar iets vandaan komt :)

Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 20:35
Ik vind alles van boven 3 GL een beetje willekeurig gokwerk. Bij bytecode, assembly code en imperatieve talen (Fortran, C, etc.) als 1, 2 en 3 GL kan iedereen zich wel wat voorstellen. Voor mijn gevoel zou een 4e generatie taal minder implementatiegericht moeten zijn; functionele en logisch talen, en ook SQL, zouden daarvoor in aanmerking kunnen komen.

Hoe je vervolgens de categorie "hoger dan 3e generatie" indeelt is mij een raadsel. Kan iemand beargumenteren waarom Prolog fundamenteel 'hoger' is dan SQL, zoals hier een aantal mensen stellen? En waar zitten functionele talen dan?

Ook worden er hier en daar dingen genoemd die geen programmeertalen zijn. Hoe kan een neural netwerk nu een 5e generatie taal zijn, als het niet eens een taal is? Als je de applicatie grafisch in elkaar zet, ben je naar mijn mening ook niet aan het programmeren, maar aan het ontwerpen, dus kan in zo'n geval ook geen sprake zijn van een programmeertaal.

Overigens vind ik die tekst van de NASA ook maar twijfelachtig, bij deze punten heb ik zo mijn bedenkingen:
The higher the GL:
• Easier implementation
• Less skill needed of implementers
• Quicker learning of GL
• More graphical

Acties:
  • 0 Henk 'm!

  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

Verwijderd schreef op 28 oktober 2004 @ 22:45:
Studenten van de VU zullen Henri Bal zeker kennen, en studenten van de UL zullen het genoemde boek ook gelezen hebben (voor het vak concepten van programmeertalen).
Ja, ik heb het voor een vak op de VU ooit moeten lezen. En Henri Bal is de supervisor van degene waar ik m'n masters scriptie voor doe; dus die heb ik ook regelmatig gesproken op bijeenkomsten. Ik dacht meteen aan dat boek, en wilde even het rijtje opzoeken; maar toen had jij het al gepost :)

Acties:
  • 0 Henk 'm!

  • Macros
  • Registratie: Februari 2000
  • Laatst online: 08-10 21:07

Macros

I'm watching...

Ik verschil van mening over waar SQL thuis hoort. Volgens mij zijn alle programmeer talen per definitie Turing compleet, anders zijn het geen programmeer talen.
Matlab is een 5de generatie taal en is Turing compleet. Groot verschil tussen 3 en 4 is volgens mij het compilen. 4De generatie is meestal scriptbased en heeft dynamische typing. PHP zit dan tussen 3 en 4 in.
Hoe hoger de generatie, hoe meer domein specifieke functionaliteit zit erin. Matlab heeft dus honderden ingebouwde functies.
Je zou een spreadsheet programma als een 5de generatie taal kunnen zien.

"Beauty is the ultimate defence against complexity." David Gelernter


Acties:
  • 0 Henk 'm!

  • alienfruit
  • Registratie: Maart 2003
  • Laatst online: 20:54

alienfruit

the alien you never expected

Ik heb wel eens gewerkt met een isrealisch product genaamd "Magic" dit werkte erg mooi zowel onder DOS als onder Windows. Toen der tijd was het heel gemakkelijk om de overstap DOS -> Windows te maken, toen de Windows editie er uiteindelijk was. Dit is echt een 4GL taal waarbij je alleen code hoefde te kloppen als je extensies wilde ed.

Acties:
  • 0 Henk 'm!

  • raoulduke
  • Registratie: Oktober 2003
  • Niet online

raoulduke

Get in!

Was dit "Magic" soms een tool om telefonie scripts in elkaar te zetten? Ik heb deze tool namelijk zelf ook wel eens gebruikt en het was in ieder geval een simpele en goedbedachte tool voor het doel, er kwam weinig echt programmeerwerk aan te pas. Wat dat betreft zou je het zeker kunnen scharen tussen de hogere GLs alleen was het in mijn ogen niet echt een volledige programmeertaal.

[ Voor 3% gewijzigd door raoulduke op 28-10-2004 23:23 ]

Remember, if you have any trouble you can always send a telegram to the Right People.


Acties:
  • 0 Henk 'm!

Verwijderd

Soultaker schreef op 28 oktober 2004 @ 22:46:
Ik vind alles van boven 3 GL een beetje willekeurig gokwerk. Bij bytecode, assembly code en imperatieve talen (Fortran, C, etc.) als 1, 2 en 3 GL kan iedereen zich wel wat voorstellen. Voor mijn gevoel zou een 4e generatie taal minder implementatiegericht moeten zijn; functionele en logisch talen, en ook SQL, zouden daarvoor in aanmerking kunnen komen.
Dat is gewoon een andere classificatie die jij nu voorstelt. Minder of meer implementatie gericht lijkt dus op de classificatie waarbij je kijkt hoe dicht je op de machine zit.

Volgens de clasificatie die kijkt naar het paradigma van de talen zijn functionele en logische talen compleet anders van elkaar en beiden verschillen weer van een relationele query taal (zoals SQL).

Vervolgens kun je nog kijken naar declaratieve talen (wat) vs imperatieve talen (hoe). Volgens die indeling horen logische, functionele en query talen opeens weer bij elkaar.
Hoe je vervolgens de categorie "hoger dan 3e generatie" indeelt is mij een raadsel.
Bedoel je nu hoe ik persoonlijk dat hoger dan 3de indeel? Dat doe ik helemaal niet. De indeling in generaties is een standaard indeling die al heel lang in gebruik is en ik alleen voor het gemak van deze discussie opschreef. Iedereen kan op het web of in de literatuur dezelfde indeling opzoeken.
Kan iemand beargumenteren waarom Prolog fundamenteel 'hoger' is dan SQL, zoals hier een aantal mensen stellen? En waar zitten functionele talen dan?
Hoger betekent niet zozeer 'beter', maar veel meer 'anders'. Prolog als AI taal lijkt mischien vreemd op het eerste gezicht, maar toch wordt het vrij veel in AI omgevingen gebruikt.

Toch zie je ook in de generatie indeling dat de algemene tendens is dat de talen zich steeds verder van de machine af bewegen. SQL werkt bijvoorbeeld op datastructuren, wat wel een wiskundige ondergrond heeft (relationele algebra etc), maar toch iets verder van een machine af, maar minder ver als bv Prolog wat op logische regels gebasseerd is (logica).
Ook worden er hier en daar dingen genoemd die geen programmeertalen zijn. Hoe kan een neural netwerk nu een 5e generatie taal zijn, als het niet eens een taal is?
Een neural network zelf is ook geen taal, maar het vormt wel de basis van 6gl talen waarbij het de bedoeling is dat de betekenis van taal geleerd kan worden in plaats van dat dit hardcoded gespecificeerd is. Met een neuraal netwerk kun je dmv invoer het netwerk iets laten doen. Je invoer is een taal opzich. Een getraind netwerk kun je commando's geven, net zoals je met een 3GL taal commando's kunt geven.
Als je de applicatie grafisch in elkaar zet, ben je naar mijn mening ook niet aan het programmeren, maar aan het ontwerpen, dus kan in zo'n geval ook geen sprake zijn van een programmeertaal.
Sorry, maar daar ben ik het niet helemaal mee eens. Grafisch programmeren staat conceptueel geheel los van het paradigma van een taal. Het zal niet mooi worden, maar feitelijk kan ik een imperatieve taal prima grafisch opschrijven. Hoewel UML bedoelt is voor modeleren hangt het af en toe op het randje van een grafische programmeertaal als je bijvoorbeeld de body van methods grafisch gaat specificeren (tot aan de losse statements en flow constructs aan toe). Dat is natuurlijk niet de bedoeling van de UML maar het kan wel.

Toen ik nog studeerde heb ik wat meegeholpen aan een afstudeerproject van een mede student wat over een grafische programmeertaal ging. Deze was dan dataflow (filtering) gebasseerd. De uitvoerbare dataflow* kon zowel grafisch weergegeven worden, als in XML. Dat de ene representatie grafisch was en de andere textueel verandere natuurlijk niks aan het concept van de taal.


*
Een heel simpel voorbeeld van een uitvoerbare dataflow is overigens een unix pipeline.

Acties:
  • 0 Henk 'm!

Verwijderd

Macros schreef op 28 oktober 2004 @ 23:11:
Hoe hoger de generatie, hoe meer domein specifieke functionaliteit zit erin. Matlab heeft dus honderden ingebouwde functies.
Mmwhoaah... de mate van ingebouwde functies lijkt me nu niet echt bepalend voor een generatie. De Java library heeft bijvoorbeeld heel wat meer high level functionaliteit (netwerk, gui, xml parsers, email, etc) dan de C++ library die zich veel meer op de 'universele programmeer technische functionaliteit richt' ( containers, algoritmes, streams, etc).

Toch zijn Java en C++ absoluut kwa concept van dezelfde generatie.

Acties:
  • 0 Henk 'm!

  • Freee!!
  • Registratie: December 2002
  • Laatst online: 20:32

Freee!!

Trotse papa van Toon en Len!

raoulduke schreef op 28 oktober 2004 @ 23:21:
Was dit "Magic" soms een tool om telefonie scripts in elkaar te zetten? Ik heb deze tool namelijk zelf ook wel eens gebruikt en het was in ieder geval een simpele en goedbedachte tool voor het doel, er kwam weinig echt programmeerwerk aan te pas. Wat dat betreft zou je het zeker kunnen scharen tussen de hogere GLs alleen was het in mijn ogen niet echt een volledige programmeertaal.
Ik denk eerder dat er met Magic iets is gebouwd waarmee die telefoniescripts in elkaar te zetten waren. Ik heb al jaren niets meer over Magic gehoord en er ook geen persoonlijke ervaring mee, maar afgaande op wat ik erover gehoord en gelezen heb, was het een volledige 4GL programmeertaal/tool.

The problem with common sense is that sense never ain't common - From the notebooks of Lazarus Long

GoT voor Behoud der Nederlandschen Taal [GvBdNT


Acties:
  • 0 Henk 'm!

  • Freee!!
  • Registratie: December 2002
  • Laatst online: 20:32

Freee!!

Trotse papa van Toon en Len!

Verwijderd schreef op 28 oktober 2004 @ 23:30:
[...]
Mmwhoaah... de mate van ingebouwde functies lijkt me nu niet echt bepalend voor een generatie. De Java library heeft bijvoorbeeld heel wat meer high level functionaliteit (netwerk, gui, xml parsers, email, etc) dan de C++ library die zich veel meer op de 'universele programmeer technische functionaliteit richt' ( containers, algoritmes, streams, etc).

Toch zijn Java en C++ absoluut kwa concept van dezelfde generatie.
Volgens mij zie jij het verschil niet helemaal tussen ingebouwde functies en beschikbare functionaliteit in libraries. Voor een ingebouwde functie hoeft de compiler geen beroep te doen op de beschikbare libraries.

The problem with common sense is that sense never ain't common - From the notebooks of Lazarus Long

GoT voor Behoud der Nederlandschen Taal [GvBdNT


Acties:
  • 0 Henk 'm!

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
Mr. Liu schreef op 28 oktober 2004 @ 23:34:
[...]

Volgens mij zie jij het verschil niet helemaal tussen ingebouwde functies en beschikbare functionaliteit in libraries. Voor een ingebouwde functie hoeft de compiler geen beroep te doen op de beschikbare libraries.
Hoe het een en ander met libraries werkt heeft niet zoveel te maken met de paradigma's waar het hier over gaat hoor.
Het kan dat jij een taal X met meer ingebakken functies op gebied G dan taal Y daarom krachtiger vind, maar dat betekent nog niet dat X per se van een ander paradigma moet zijn. Overigens zijn de hogere generaties niet per se beter. Elk paradigma heeft gewoon zijn eigen toepassingsgebied.

offtopic:
Heb overigens hetzelfde boek uit mijn hoofd geleerd als Henk (+vak aan de VU)

[ Voor 7% gewijzigd door Voutloos op 28-10-2004 23:52 ]

{signature}


Acties:
  • 0 Henk 'm!

  • alienfruit
  • Registratie: Maart 2003
  • Laatst online: 20:54

alienfruit

the alien you never expected

Nee, het is was dit. www.magic-sw.com is onder andere gebruikt door de alarmservice en de VAPRO (Vakopleiding Procesindustrie, maakte er examens etc. mee)

[ Voor 62% gewijzigd door alienfruit op 28-10-2004 23:57 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Mr. Liu schreef op 28 oktober 2004 @ 23:34:
[...]

Volgens mij zie jij het verschil niet helemaal tussen ingebouwde functies en beschikbare functionaliteit in libraries. Voor een ingebouwde functie hoeft de compiler geen beroep te doen op de beschikbare libraries.
Verwijder alle packages maar eens uit java en alle libraries uit C++. Dan zie ik het verschil niet.

Dit is heel anders dan SQL. Order By is altijd beschikbaar, en de manier waarop Order By werkt en kan leren is heel iets anders dan een basis-klasse gebruiken die vervolgens met een vast procede uitgewalst wordt tot machinecode.

Acties:
  • 0 Henk 'm!

Verwijderd

Mr. Liu schreef op 28 oktober 2004 @ 23:34:
[...]

Volgens mij zie jij het verschil niet helemaal tussen ingebouwde functies en beschikbare functionaliteit in libraries. Voor een ingebouwde functie hoeft de compiler geen beroep te doen op de beschikbare libraries.
Nou ik denk dat ik dat verschil wel heel goed ken. Ben op dit moment bezig met het ontwerp van een eigen taal (voor data transformaties), en heb eerder dingen gemaakt als een pascal compiler en een compiler voor een subset van C.

Waar het mischien eerder om gaat is de functies die bedoeld worden. Ik kan als taal designer en/of compiler bouwer een cout achtige functie gewoon als taal functie opnemen of ik kan het een library functie maken. In basic is bijvoorbeeld print een taal 'functie' in C is het library. De plek waarin deze functie gedefineerd wordt maakt de taal nog steeds niet tot een andere generatie of paradigma.

Als er dus van zulk soort ingebouwde functies bedoeld worden, en ik weet vrij zeker dat dat met matlab bedoeld werd (maar correct me if I'm wrong) dan maakt de hoeveelheid daarvan dus helemaal niet uit.

Acties:
  • 0 Henk 'm!

  • DinX
  • Registratie: Februari 2002
  • Laatst online: 10:57

DinX

Motormuis

Volgens webopedia
Often abbreviated 4GL, fourth-generation languages are programming languages closer to human languages than typical high-level programming languages. Most 4GLs are used to access databases. For example, a typical 4GL command is

FIND ALL RECORDS WHERE NAME IS "SMITH"
Klopt ook eigenlijk zoals wij het gezien hebben op school. Ik heb 3 jaar Progress 4GL gehad, een 4de generatie taal dus. En de manier van programmeren kan je dus echt vergelijken met SQL (wat in mijn ogen ook een soort van 4GL is).
Progress broncode kan je bijna lezen als een boek. Veel dingen gewoon uitgeschreven enzo. Iemand die engels begrijpt kan voor een groot deel perfect begrijpen wat dat programma doet wat je juist geschreven hebt.
Wat in het geval van Progress makkelijk is: je moet quasi geen programmeer-ervaring hebben om heel snel een simpele toepassing in elkaar te steken (meestal database-gericht). Je kiest welke database je wil gebruiken en daarna sla je aan het "programmeren".
Daarna hoef je eigenlijk maar een standaard component op j window te slepen waarna je een mooie wizard krijgt waarin je tabellen en velden kan kiezen. Hoppa, je kan al bladeren door je data, dingen toevoegen en dingen aanpassen.
Ja, dat kan je ook met bijvoorbeeld C# onder visual studio .net ofzo, maar in een 3GL taal zal je meestal toch nog wat moeten bij programmeren voor wat functionaliteit te krijgen, maar enorm veel code wordt automatisch voor je aangemaakt door Progress zelf.

In Progress kan je natuurlijk ook zelf manueel gaan coden, is een vereiste zelfs bij de wat uitgebreidere toepassingen of als je echte functionaliteit wil.

Maar het belangrijkste wat 4GL 4GL maakt is dat het een makkelijke vorm van programmeren is.
Maar dat zeiden ze ook bij de komst van 2GL en 3GL denk ik :) Eerst alles ingeven met 0'etjes en 1'tjes. Daarna kon het met assembler, en daarna kwamen dan weer de talen zoals ze nu het meeste gebruikt worden. Elke stap hoger was weer een hogere mate van "makkelijkheid".

[ Voor 12% gewijzigd door DinX op 29-10-2004 00:19 ]

Marokko 2015: Route
Sat Tracker: SpotWalla
Blog: Gone for a ride


Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 20:35
Verwijderd schreef op 28 oktober 2004 @ 23:22:
Volgens de clasificatie die kijkt naar het paradigma van de talen zijn functionele en logische talen compleet anders van elkaar en beiden verschillen weer van een relationele query taal (zoals SQL).
Daar ben ik het mee eens.
Bedoel je nu hoe ik persoonlijk dat hoger dan 3de indeel? Dat doe ik helemaal niet. De indeling in generaties is een standaard indeling die al heel lang in gebruik is en ik alleen voor het gemak van deze discussie opschreef. Iedereen kan op het web of in de literatuur dezelfde indeling opzoeken.
Dit was het belangrijkste punt uit mijn post en dat ben ik dus niet met je eens. Alleen over de eerste drie generaties bestaat brede concensus. Ik heb al heel wat lijstjes gezien, en er zitten behoorlijk wat verschillen in (heel wat lijstjes gaan maar tot 4 of 5, bijvoorbeeld, en vatten daar dingen onder die jij onder 6 hebt staan).

Mijn punt is dus dat het niet zo zinnig is het over een 5e generatie taal te hebben als er geen duidelijkheid is over wat dat inhoud.
Hoger betekent niet zozeer 'beter', maar veel meer 'anders'. Prolog als AI taal lijkt mischien vreemd op het eerste gezicht, maar toch wordt het vrij veel in AI omgevingen gebruikt.
Dat hoor ik steeds, maar niemand onderbouwd dat met feiten en het strookt ook absoluut niet met mijn belevingswereld. Voor zover ik weet worden praktische AI-toepassingen in talen als C geschreven. Veel research (agents, reinforcement learning, e.d.) wordt gedaan met Java. Neurale netwerken zijn vaak geimplementeerd in Matlab (C) of direct in C of Java. Prolog is daar gewoon helemaal niet handig voor.

Ik denk dat je hooguit kunt stellen dat Prolog vooral gebruikt wordt voor AI (maar feitelijk weet ik daar weinig van); dat voor AI veel gebruik gemaakt wordt van Prolog lijkt mij sterk.
Toch zie je ook in de generatie indeling dat de algemene tendens is dat de talen zich steeds verder van de machine af bewegen. SQL werkt bijvoorbeeld op datastructuren, wat wel een wiskundige ondergrond heeft (relationele algebra etc), maar toch iets verder van een machine af, maar minder ver als bv Prolog wat op logische regels gebasseerd is (logica).
Op zich accoord, maar ik zie niet in waarom relationele algebra dichter bij een machine staat dan wiskundige logica (zeker in praktische Prolog-dialecten die allerlei systeemspecifieke features en beperkingen kennen).
Een neural network zelf is ook geen taal, maar het vormt wel de basis van 6gl talen waarbij het de bedoeling is dat de betekenis van taal geleerd kan worden in plaats van dat dit hardcoded gespecificeerd is. Met een neuraal netwerk kun je dmv invoer het netwerk iets laten doen. Je invoer is een taal opzich. Een getraind netwerk kun je commando's geven, net zoals je met een 3GL taal commando's kunt geven.
Toon mij dan een programma geschreven in een 6e generatie taal. Als je er geen programma in kunt schrijven is het geen programmeertaal. Volgens die redenatie kun je photoshoppen ook wel programmeren noemen, want het klikken met de muis is invoer en het plaatje dat eruit komt is uitvoer. Je kunt echter met Photoshop niet uitrekenen wat Pi is, net zo min als je dat met een neuraal netwerk kan.
Sorry, maar daar ben ik het niet helemaal mee eens. Grafisch programmeren staat conceptueel geheel los van het paradigma van een taal.
[..]
Toen ik nog studeerde heb ik wat meegeholpen aan een afstudeerproject van een mede student wat over een grafische programmeertaal ging. Deze was dan dataflow (filtering) gebasseerd. De uitvoerbare dataflow kon zowel grafisch weergegeven worden, als in XML. Dat de ene representatie grafisch was en de andere textueel verandere natuurlijk niks aan het concept van de taal.
Ok, daar ben ik het in principe wel mee eens. Het gaat dus niet altijd op.

Acties:
  • 0 Henk 'm!

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
Soultaker schreef op 29 oktober 2004 @ 00:15:
Ik denk dat je hooguit kunt stellen dat Prolog vooral gebruikt wordt voor AI (maar feitelijk weet ik daar weinig van); dat voor AI veel gebruik gemaakt wordt van Prolog lijkt mij sterk.
Op zich accoord, maar ik zie niet in waarom relationele algebra dichter bij een machine staat dan wiskundige logica (zeker in praktische Prolog-dialecten die allerlei systeemspecifieke features en beperkingen kennen).
Prolog is weer een stap verder qua abstractie. Je denkt niet in datatypes (alhoewel je wel lijsten moet kunnen dromen) of geheugenbeheer, maar in regels om een probleem op te lossen. Ook volgorde hoeft niet altijd uit te maken (maar als je wil kan je voor effeciëntieredenen ergens een cut invoegen, of een set regels met een zelfde goal beter ordenen).
Verder kan je met 5G talen sorteer- en zoekproblemen met minder moeite dan bij imperatieve talen oplossen.

Echter ligt hierin ook een groot nadeel van bijvoorbeeld Prolog: omdat je zo abstract/probleemgericht denkt en je niet druk kan maken om een bitje meer of minder, kan die simpele conceptuele oplossing in feite heel resource-intensief worden.

En afhankelijk van de eisen aan de software gaat dat misschien voorbij het break even punt en kiest men inderdaad voor een lagere taal.

[ Voor 3% gewijzigd door Voutloos op 29-10-2004 00:46 ]

{signature}


Acties:
  • 0 Henk 'm!

Verwijderd

Soultaker schreef op 29 oktober 2004 @ 00:15:
Mijn punt is dus dat het niet zo zinnig is het over een 5e generatie taal te hebben als er geen duidelijkheid is over wat dat inhoud.
Daar heb je inderdaad wel gelijk in ja. Het is inderdaad niet helemaal duidelijk wat er nou precies onder 5 en 6 valt en waarom. Blijft wel staan dat de generatie classificering nog steeds maar -een- classificatie is. Niemand zegt dat dit de beste manier is om talen te onderscheiden van elkaar, zeker de experts niet. Generaties klinken alleen wat populistischer en zijn wat meer bekend bij het grote publiek.

Persoonlijk zie ik meer in een aantal aspecten van een taal te bekijken, dan er 1 stempel op te drukken, die niet eens helemaal duidelijk is. Neem ook bijvoorbeeld het feit dat 1 en 2 minimaal verschillen, getalletjes worden door naampjes veranderd en dat er verder weinig dingen in die generatie zitten. De volgende generaties bevatten ook telkens meer talen, die onderling al meer verschillen dan de hele 1ste en 2de.

Aan de andere kant is dat wel weer logisch, omdat er natuurlijk steeds meer talen komen en er vroeger minder was. Per generatie (als je voor een generatie alleen een tijdsperiode neemt) komt er steeds meer bij.
Dat hoor ik steeds, maar niemand onderbouwd dat met feiten en het strookt ook absoluut niet met mijn belevingswereld.
Het gaat mischien wat te ver om het helemaal uit te leggen, maar prolog (of logische talen in het algemeen) worden gebruikt voor logisch redenerende agents gebasseerd op kennis; knowledge based agents. Deze bevat een reeks 'feiten' over de wereld. Je kunt feiten toevoegen aan de knowledge base van de agent (tell operatie) en daar kan een actie uit volgen (ask operatie). Deze actie volgt logisch uit de feiten dmv een inference mechanism. Als representatie taal kun je simpele propositie logica gebruiken, maar ook het meer complexe first-order-logic. Automatisch redeneren (theorem provers) hangt hier ook mee samen.

Natuurlijk ga je prolog niet gebruiken voor een neural netwerk of voor genetische algoritmes. Die implementeer je bijna altijd voornamelijk met imperatieve talen. Prolog wordt dus alleen voor een afgeschermt gedeelte van de AI gebruikt.

Als alarmnummer in deze discussie langs komt kan hij zeker weten hier nog heel wat meer over vertellen ;)

Acties:
  • 0 Henk 'm!

Verwijderd

Voutloos schreef op 29 oktober 2004 @ 00:45:
[...]
Echter ligt hierin ook een groot nadeel van bijvoorbeeld Prolog: omdat je zo abstract/probleemgericht denkt en je niet druk kan maken om een bitje meer of minder, kan die simpele conceptuele oplossing in feite heel resource-intensief worden.
Inderdaad. declaratieve talen kunnen vaak langzamer zijn. Neem nu het standaard voorbeeld van de sorteer actie. Decleratief zeg je ongeveer iets als: "ik wil de lijst waarvan elke element x en y geldt dat als de positie van x in de lijst kleiner is als de positie van y dan moet de waarde van x groter zijn dan die van y".

Alhier, de declaratie voor een aflopende sortering. De computer mag lekker uitzoeken hoe ie dit klaarspeelt. Helaas blijkt dit zelde een snelle sortering op te leveren. Precies een slim uitgekiend algortime gebruiken (quicksort, mergesort, etc) werkt velen malen beter.

Overigens, offtopic, blijkt uit de praktijk dat vrouwen beter in logische programmeertalen kunnen programmeren dan mannen.

Acties:
  • 0 Henk 'm!

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Voutloos schreef op 29 oktober 2004 @ 00:45:
[...]
Prolog is weer een stap verder qua abstractie. Je denkt niet in datatypes (alhoewel je wel lijsten moet kunnen dromen)
Je denkt zeker wel in datatypes. Alleen prolog heeft hier geen ondersteuning voor. Persoonlijk vind ik dit een enorm zwak punt doordat je algoritmes onnodig onduidelijk worden. Daarom zijn er ook een aantal 'vervolgen' op Prolog zoals Mercury en Godel waar dit wel in zit.

Verder heeft Prolog tov andere talen nog een bepaalde 'afwijking' en dat is de mode van een predikaat. In prolog kan een argument een in argument zijn (gebonden), een out argument( ongebonden) of beide. Het is jammer dat dit in ISO prolog geen onderdeel geworden is van de taal. (Alhoewel dit redelijk eenvoudig toe te voegen is)
Echter ligt hierin ook een groot nadeel van bijvoorbeeld Prolog: omdat je zo abstract/probleemgericht denkt en je niet druk kan maken om een bitje meer of minder, kan die simpele conceptuele oplossing in feite heel resource-intensief worden.
Hmm tja. de nieuwste prolog compilers zoals dia van SWI-Prolog en GNU prolog zijn alles behalve traag te noemen. En compiletechnisch kunnen er optimalisaties worden gemaakt die niet in imperatieve talen mogelijk zijn. Met goed geschreven algoritmes kun je in dezelfde orde van grote zitten als een in c++ (voor bepaalde problemen).
En afhankelijk van de eisen aan de software gaat dat misschien voorbij het break even punt en kiest men inderdaad voor een lagere taal.
Hmmm tja... alleen een quicksort maken in Prolog en de rest in een imperatieve taal is nogal een beetje onhandig. Maar Prolog heeft bepaalde toepassingsgebieden waarin het uitblinkt. En als je daar een sort nodig bent.. tja.. dan is de kans groot dat je het ook in Prolog gaat doen.

[ Voor 5% gewijzigd door Alarmnummer op 29-10-2004 09:21 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op 29 oktober 2004 @ 00:52:
[...]
Overigens, offtopic, blijkt uit de praktijk dat vrouwen beter in logische programmeertalen kunnen programmeren dan mannen.
Gelukkig ! Deze talen waren nu juist ontworpen voor mensen die niet kunnen programmeren :> .

Acties:
  • 0 Henk 'm!

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Verwijderd schreef op 29 oktober 2004 @ 09:21:
[...]
Gelukkig ! Deze talen waren nu juist ontworpen voor mensen die niet kunnen programmeren :> .
Dat is echt onzin.

Ik durf de stelling nog wel aan dat je voor Prolog meer 'man' moet zijn dan voor een imperatieve taal zoals bv Java.

check verder mijn posthistory.. ik ben een doorgewinterde java programmeur.

[ Voor 18% gewijzigd door Alarmnummer op 29-10-2004 09:29 ]


Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 20:35
Ik vind programmeren in functionele talen moeilijker dan in C++, programmeren in C++ moeilijker dan in C, programmeren in C moeilijker dan in assembly. C en assembly komen vaak vooral neer op een heleboel trucjes, standaardoplossingen en implementatiedetails kennen. Ik denk dus dat higher level languages zeker niet makkelijker zijn (dat was ook een van de fouten van de NASA die ik al noemde).

Verder moet ik de eerste vrouw die fatsoenlijk kan programmeren nog tegenkomen, dus die stelling is vrij betekenisloos. :P

Acties:
  • 0 Henk 'm!

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
Alarmnummer schreef op 29 oktober 2004 @ 08:59:
Je denkt zeker wel in datatypes. Alleen prolog heeft hier geen ondersteuning voor. Persoonlijk vind ik dit een enorm zwak punt doordat je algoritmes onnodig onduidelijk worden. Daarom zijn er ook een aantal 'vervolgen' op Prolog zoals Mercury en Godel waar dit wel in zit.
Toch denk je wel iets abstracter, dat was voornamelijk mijn punt. Dat dat niet altijd in je voordeel werkt is ook feit. Ik heb geen ervaring met de andere 2 talen, ik zal eens kijken.
Alarmnummer schreef op 29 oktober 2004 @ 09:28:
Ik durf de stelling nog wel aan dat je voor Prolog meer 'man' moet zijn dan voor een imperatieve taal zoals bv Java.
Dat geloof ik ook. Maar het zijn gewoon allebei redelijk krachtige talen en ze volgen 2 verschillende paradigma's, dus dat in ieder geval de manier van denken verschilt is geen wonder. :)

{signature}


Acties:
  • 0 Henk 'm!

Verwijderd

Het is inderdaad onzin dat prolog ontworpen zou zijn voor mensen die niet kunnen programmeren. Dat is veel meer het doel van 'script' talen als PHP, javascript en visual basic. Het makkelijker (en daardoor op de langere termijn weer moeilijker) maken van die talen veranderd ook niet het paradigma. Dat blijft imperatief!
Ik durf de stelling nog wel aan dat je voor Prolog meer 'man' moet zijn dan voor een imperatieve taal zoals bv Java.
Feit is wel dat vrouwen inderdaad beter zijn in logica. Een vriendin van me heeft wiskunde gestudeerd en volgens haar haalden de vrouwen hogere cijfers voor logica. Professors / onderwijzers zijn ook vaak vrouwen op dat gebied. Ik weet het vak niet uit mijn hoofd, maar voortgezette logica ofzo wordt ook door een vrouw gegeven op de VU. Voorts worden/werden daar de zaken die over prolog gaan ook door een vrouw onderwezen (Elena Marchiori voor de kenners).

Wat me tevens een tijd terug opviel is dat men in Japan veel meer bezig was met prolog dan in het westen. Het zou daar een veel grotere taal zijn dan hier.

Acties:
  • 0 Henk 'm!

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Ik denk verder ook niet dat de kracht van een taal zit in het feit dat het alles goed moet kunnen. De integratie van componenten geschreven in verschillende talen moet eenvoudig te integreren zijn en dan zal een taal zoals Prolog ook handig zijn in de praktijk. En als je dan echt een snelle sort nodig bent... dan lever je gewoon een native implementatie erbij...

Acties:
  • 0 Henk 'm!

  • AtleX
  • Registratie: Maart 2003
  • Niet online

AtleX

Tyrannosaurus Lex 🦖

Zoijar schreef op 28 oktober 2004 @ 22:35:
[...]

Haal je dat nou ook uit 'programming language essentials'? :) Staat hier exact hetzelfde, ook sql als 4gl, en prolog als simpele 5gl.

Overigens had jede TS ook de search kunnen gebruiken: Wat houdt 4GL nou precies in.
Ik had al een beetje met Google gezocht, maar die verwees meer naar discussies over welke taal waar hoorde, daar schoot ik dus niets mee op.

Verder: interresante discussie zo :)

[ Voor 6% gewijzigd door AtleX op 29-10-2004 13:45 ]

Sole survivor of the Chicxulub asteroid impact.


Acties:
  • 0 Henk 'm!

  • Freee!!
  • Registratie: December 2002
  • Laatst online: 20:32

Freee!!

Trotse papa van Toon en Len!

Soultaker schreef op 29 oktober 2004 @ 09:41:
<knip>
Verder moet ik de eerste vrouw die fatsoenlijk kan programmeren nog tegenkomen, dus die stelling is vrij betekenisloos. :P
Dat zegt meer iets over de vrouwen die jij tegenkomt dan over de capaciteiten van vrouwen om fatsoenlijk te programmeren. Ik ben er in de loop der jaren een aantal tegengekomen en als ze langer dan een jaar werkzaam waren als programmeur, deden ze het een stuk beter dan slechts fatsoenlijk (anders waren ze ook zo weg). Verder zijn er genoeg gevallen gedocumenteerd van vrouwen die het uitstekend deden als programmeur (en meer), waarbij ik dus vooral denk aan admiraal Grace Murray Hopper.

The problem with common sense is that sense never ain't common - From the notebooks of Lazarus Long

GoT voor Behoud der Nederlandschen Taal [GvBdNT


Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op 29 oktober 2004 @ 10:49:
(...)
Feit is wel dat vrouwen inderdaad beter zijn in logica. Een vriendin van me heeft wiskunde gestudeerd en volgens haar haalden de vrouwen hogere cijfers voor logica. Professors / onderwijzers zijn ook vaak vrouwen op dat gebied. Ik weet het vak niet uit mijn hoofd, maar voortgezette logica ofzo wordt ook door een vrouw gegeven op de VU. Voorts worden/werden daar de zaken die over prolog gaan ook door een vrouw onderwezen (Elena Marchiori voor de kenners).
(...)
Er kunnen andere factoren meespelen, misschien een studie waard.
Zo is op mijn universiteit wiskunde een redelijk eerloze aangelegenheid. Hier dus vrouwelijke profs en docenten alom maar volgens mij zit er iets scheef.
Bij andere logische terreinen waar wel manlijk interesse voor lijkt te zijn, bij bv natuurkunde of theologie, is het aantal vrouwen beduidend lager (lees 0).
Talking dinosaurs ?

Acties:
  • 0 Henk 'm!

Verwijderd

Mr. Liu schreef op 29 oktober 2004 @ 16:25:Verder zijn er genoeg gevallen gedocumenteerd van vrouwen die het uitstekend deden als programmeur (en meer), waarbij ik dus vooral denk aan admiraal Grace Murray Hopper.
De compiler is dus een uitvinding van een vrouw. Cool.

Acties:
  • 0 Henk 'm!

  • Infinitive
  • Registratie: Maart 2001
  • Laatst online: 25-09-2023

putStr $ map (x -> chr $ round $ 21/2 * x^3 - 92 * x^2 + 503/2 * x - 105) [1..4]


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17:33

.oisyn

Moderator Devschuur®

Demotivational Speaker

Nou heb ik niet de hele draad gelezen, maar aangezien ik toch de ontketenaar van deze discussie ben :P

De meeste sites op internet over GL's zeggen toch:
4 GL - taal die lijkt op de natuurlijke schrijftaal van mensen (zoals SQL)
5 GL - visuele 'taal' door componenten aan elkaar te koppelen enzo.

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

Verwijderd

.oisyn schreef op 29 oktober 2004 @ 17:35:
Nou heb ik niet de hele draad gelezen, maar aangezien ik toch de ontketenaar van deze discussie ben :P

De meeste sites op internet over GL's zeggen toch:
4 GL - taal die lijkt op de natuurlijke schrijftaal van mensen (zoals SQL)
5 GL - visuele 'taal' door componenten aan elkaar te koppelen enzo.
Dat van de visuele taal komt wel vaker naar voren, maar dat van de inference talen ook. Toch zijn dat 2 heel verschillende dingen. Zelf vind ik visuele taal redelijk vaag. Zoals gezegd, je kunt d.m.v. de UML een imperatieve taal toch op de method bodies grafisch weergeven (wat de UML op het randje van een visuele programmeer taal brengt, en dat is een quote van booch, rumbauch en jacobson in hun boek The Unified Modeling Language User Guide).

Zou je dan mischien iets als de JDL ( zie http://www.liacs.nl/~jdawn/screenshots.html ) als 5GL taal zien?

Dit is een executeerbare dataflow based taal, die absoluut niet turing complete is. Het is wel een geheel andere paradigma om in te 'programmeren', maar het grafische aspect is een mogelijkheid ervan, geen essentieel onderdeel kwa taal specificatie (wel kwa bruikbaarheid). Je kunt er echter wel precies mee doen wat dus vaak ook als 5GL bestempelt wordt: 'componenten aan elkaar koppelen enzo'.

Acties:
  • 0 Henk 'm!

  • Bigs
  • Registratie: Mei 2000
  • Niet online
Volgens mij zijn 2GL de talen zoals COBOL. Ik heb er zelf nooit in hoeven schrijven, maar heb wel een aantal programma's mogen omzetten naar C. Wat een taal zeg :) Het is op zich wel te begrijpen, maar ik moet er niet aan denken dat ik daarin uitgebreide progamma's moet gaan schrijven.

Magic, wat hierboven genoemd wordt is eigenlijk een post-4GL taal. Op een van mijn stageplaatsen maakten ze daar redelijk wat software in en het is echt een prachttaal. Ik vind het jammer dat er geen gratis experimenteer-versie op de site te vinden is, want ik zou er best nog wel eens mee willen spelen. Een andere taal van dit kaliber is Omnis Studio, welke ook nog eens multiplatform is en bovendien een trial versie op de site heeft staan.

Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 20:35
Bigs schreef op 01 november 2004 @ 23:40:
Magic, wat hierboven genoemd wordt is eigenlijk een post-4GL taal. Op een van mijn stageplaatsen maakten ze daar redelijk wat software in en het is echt een prachttaal. Ik vind het jammer dat er geen gratis experimenteer-versie op de site te vinden is, want ik zou er best nog wel eens mee willen spelen.
Die is er wel! Je kunt hier een demo downloaden (moet je wel wat gegevens achterlaten). Er zit ook een soort tutorial omheen ("Fundamentals Training"), dus het is echt ideaal om mee te beginnen. Ik heb die demo ook wel eens gedownload, maar ben er nooit aan toegekomen er wat mee te doen.

[ Voor 18% gewijzigd door Soultaker op 02-11-2004 00:47 ]


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17:33

.oisyn

Moderator Devschuur®

Demotivational Speaker

Ken je virtools? Het is een omgeving om grafische 3D applicaties en games mee te ontwikkelen (bagger, maar dat terzijde ;)), met name bedoeld voor artists die het programmeren toch wat minder onder de knie hebben. Het heeft scriptingmogelijkheden, maar in principe modeleert het een imperatieve taal vrijwel 1:1 door allerlei componenten, van een simpel if-then-else-component tot een geheel collision detection component, aan elkaar te verbinden. Elk component heeft in- en output parameters, alsmede een "in-flow" en verschillende "out-flows" (geen idee of ze ook zo genoemd worden, maar het dekt de lading wel). Die flows geven het pad in je programma aan, en zo heeft een if-then-else component dus 2 van die out-flows omdat er 2 verschillende acties op kunnen volgen (de gecontroleerde expressie is of waar of niet waar). Ik zou dit als typisch voorbeeld van een 5GL taal willen bestempelen.

Vanaf Virtools 4.5 kun je de scripts overigens gewoon inkloppen zoals we gewend zijn. En maar goed ook, want laten we wel wezen: het aan elkaar slepen van componenten is kutwerk en alles behalve productief :P

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • Freee!!
  • Registratie: December 2002
  • Laatst online: 20:32

Freee!!

Trotse papa van Toon en Len!

Bigs schreef op 01 november 2004 @ 23:40:
Volgens mij zijn 2GL de talen zoals COBOL. Ik heb er zelf nooit in hoeven schrijven, maar heb wel een aantal programma's mogen omzetten naar C. Wat een taal zeg :) Het is op zich wel te begrijpen, maar ik moet er niet aan denken dat ik daarin uitgebreide progamma's moet gaan schrijven.
FYI: COBOL is een 3GL en nog wel één van de oudste (ouder dan C). Verder is er al vanaf 1968 een internationale standaard voor, wat verder eigenlijk van geen enkele andere programmeertaal meer gezegd kan worden (ANSI-C is uitgestorven). Wat betreft begrijpen kan ik alleen maar zeggen dat daar standaards voor zijn ("Een goed geschreven COBOL-programma leest als een romannetje"). Het enige nadeel dat COBOL heeft, is dat het een beetje veel typewerk is, maar dat valt ruimschoots in het niet bij de verbeterde leesbaarheid.

offtopic:
Ja, ik ben een COBOL-programmeur.

The problem with common sense is that sense never ain't common - From the notebooks of Lazarus Long

GoT voor Behoud der Nederlandschen Taal [GvBdNT


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17:33

.oisyn

Moderator Devschuur®

Demotivational Speaker

Mr. Liu schreef op 02 november 2004 @ 10:01:
wat verder eigenlijk van geen enkele andere programmeertaal meer gezegd kan worden (ANSI-C is uitgestorven)
Onzin, ISO C is nog niet zo heel lang geleden geriviseerd (C99), en met ISO C++ zijn ze nog ook altijd hard bezig (Check bijvoorbeeld http://www.comeaucomputing.com/iso/, en dan met name http://www.comeaucomputing.com/iso/cwg_toc.html voor de lopende C++ issues)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • alienfruit
  • Registratie: Maart 2003
  • Laatst online: 20:54

alienfruit

the alien you never expected

@oisyn: Virtools vind ik wel leuk werken hoor, alleen meer voor simpele spellen of prototyping. Ik last laatst wel dat de nieuwe virtools eindelijk ondersteuning heeft voor shaders, dat is natuurlijk wel cool :)

COBOL is dat nou eigenlijk te vergelijken met MODULA en MODULA-2?

[ Voor 63% gewijzigd door alienfruit op 03-11-2004 03:49 ]


Acties:
  • 0 Henk 'm!

  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
Mr. Liu schreef op 02 november 2004 @ 10:01:
FYI: COBOL is een 3GL en nog wel één van de oudste (ouder dan C). Verder is er al vanaf 1968 een internationale standaard voor, wat verder eigenlijk van geen enkele andere programmeertaal meer gezegd kan worden (ANSI-C is uitgestorven).
Was het niet zo dat elk groot instituut z'n eigen COBOL implementatie had die toch weer net even niet analoog aan de standaard werkte?

Acties:
  • 0 Henk 'm!

  • Freee!!
  • Registratie: December 2002
  • Laatst online: 20:32

Freee!!

Trotse papa van Toon en Len!

Glimi schreef op 03 november 2004 @ 09:04:
[...]
Was het niet zo dat elk groot instituut z'n eigen COBOL implementatie had die toch weer net even niet analoog aan de standaard werkte?
Een paar hebben het geprobeerd, maar zelfs IBM houdt zich aan de standaards. Compilerbouwers kunnen wel dingen toevoegen buiten de standaards (en die zijn soms best handig), maar dat moet dan wel goed gedocumenteerd zijn als extension (wat IBM ook keurig doet). Die extensions willen inderdaad wel eens verschillen tussen verschillende compilers, maar als standaard dingen niet standaard werken, dan heeft de compilerbouwer grote problemen.
alienfruit schreef op 03 november 2004 @ 03:47:
<knip>
COBOL is dat nou eigenlijk te vergelijken met MODULA en MODULA-2?
Ik ken MODULA niet, maar ik heb begrepen dat dat redelijk op Pascal lijkt. Als dat zo is, dan lijkt COBOL daar dus totaal niet op. COBOL schijnt wel te lijken op PL/1, maar dat feitje is voor de meesten hier totaal niet informatief. Een opvallend kenmerk van COBOL is wel dat alle variabelen globaal zijn, wat overigens ook geldt voor RPG.

The problem with common sense is that sense never ain't common - From the notebooks of Lazarus Long

GoT voor Behoud der Nederlandschen Taal [GvBdNT


Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 19-10 22:51
Mr. Liu schreef op 03 november 2004 @ 14:57:
[...]

Een opvallend kenmerk van COBOL is wel dat alle variabelen globaal zijn, wat overigens ook geldt voor RPG.
global variables == evil.
dus
COBOL == evil
:Y)

Ik heb ooit nog COBOL gehad op school, en idd, je moest eigenlijk meer typist zijn dan programmeur. :+
Trouwens, ik zag laatst deze link. 'Is the Java revolution over, wordt Java de nieuwe 'COBOL'.

https://fgheysels.github.io/

Pagina: 1