Jump to content

User:NevilleDNZ/ALGOL 68

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by NevilleDNZ (talk | contribs) at 08:03, 14 November 2021 (→‎par: Parallel processing). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

par: Parallel processing

Page Template:Algol strict/styles.css has no content. ALGOL 68 supports programming of parallel processing. Using the keyword par, a collateral clause is converted to a parallel clause, where the synchronisation of actions is controlled using semaphores. In A68G the parallel actions are mapped to threads when available on the hosting operating system. In A68S a different paradigm of parallel processing was implemented (see below).

<css> b { font-weight: bold; text-transform:lowercase;}</css>

  • TEST Test test

<style> b { font-weight: bold; text-transform:lowercase;}</style>

  • TEST Test test

{{#css: b { font-weight: bold; text-transform:lowercase; } }}

  • TEST Test test
   Template:Algol68 strict
   Template:Algol68 strict
  • TEST Test test
  • TEST Test test - desired.
PROC
    eat = VOID: ( muffins-:=1; print(("Yum!",new line))),
    speak = VOID: ( words-:=1; print(("Yak...",new line)));
 
INT muffins := 4, words := 8;
SEMA mouth = LEVEL 1;
 
PAR BEGIN
    WHILE muffins > 0 DO
        DOWN mouth;
        eat;
        UP mouth
    OD,
    WHILE words > 0 DO
        DOWN mouth;
        speak;
        UP mouth
    OD
END