Wikisage, de vrije encyclopedie van de tweede generatie, is digitaal erfgoed

Wikisage is op 1 na de grootste internet-encyclopedie in het Nederlands. Iedereen kan de hier verzamelde kennis gratis gebruiken, zonder storende advertenties. De Koninklijke Bibliotheek van Nederland heeft Wikisage in 2018 aangemerkt als digitaal erfgoed.

  • Wilt u meehelpen om Wikisage te laten groeien? Maak dan een account aan. U bent van harte welkom. Zie: Portaal:Gebruikers.
  • Bent u blij met Wikisage, of wilt u juist meer? Dan stellen we een bescheiden donatie om de kosten te bestrijden zeer op prijs. Zie: Portaal:Donaties.
rel=nofollow

Plankalkül

Uit Wikisage
Naar navigatie springen Naar zoeken springen
rel=nofollow

Plankalkül is een programmeertaal ontwikkeld door de Duitser Konrad Zuse. De ontwikkeling gebeurde tussen 1943 en 1945. Plankalkül was de eerste hogere programmeertaal. Vanwege de gaande Tweede Wereldoorlog en de commercialisering van Zuses Z3-computer werd de programmeertaal niet toen uitgebracht. Tegen 1946 had Zuse er een boek over geschreven dat niet gepubliceerd werd. In 1948 publiceerde hij wel een paper dat evenwel weinig aandacht kreeg. Hierdoor zou computerprogrammering nog lange tijd gezien worden als een zaak van machinecode. Pas in 1972 werd wijder over Plankalkül gepubliceerd. In 2000, vijf jaar nadat Zuse was overleden, werd de eerste Plankalkül-compiler geschreven door de Vrije Universiteit Berlijn.

Beschrijving

Plankalkül was beïnvloed door de relationele algebra. De notatie (in de oorspronkelijke vorm tweedimensionaal) was gelijkaardig aan die in Gottlob Freges Begriffsschrift uit 1879. De naam was een samentrekking van de Duitse woorden Plan en Kalkül.

De taal omvat onder meer:

Voorbeeld

Volgend voorbeeld berekent de hoogste waarde van drie variabelen door de functie max aan te roepen:

P1 max3 (V0[:8.1],V1[:8.2],V2[:8.1]) => R0[:8.1]
  max(V0[:8.5],V1[:8.4]) => Z1[:8.3]
  max(Z1[:8.6],V2[:8.2]) => R0[:8.2]
END
P2 max (V0[:8.6],V1[:8.3]) => R0[:8.1]
  V0[:8.0] => Z1[:8.4]
  (Z1[:8.0] < V1[:8.3]) -> V1[:8.2] => Z1[:8.1]
  Z1[:8.3] => R0[:8.2]
END

Zie ook

Externe links