test with several issues

quercia@u-bourgogne.fr
Sat, 11 Nov 1995 14:08:02 +0100

From: quercia@u-bourgogne.fr
Date: Sat, 11 Nov 1995 14:08:02 +0100
Message-Id: <9511111308.AA94394@satie.u-bourgogne.fr>
To: caml-list@margaux.inria.fr
Subject: test with several issues

I apologize for my poor english. Please, if you can read french skip the
30 following lines.

------------------------------ "English" text --------------------------------

*match* together with *when* enables to code nicely a test with several issues :

match 0 with
_ when {condition-1} -> {action-1}
| _ when {condition-2} -> {action-2}
...
| _ -> {default action}

This replaces the construct :

if {condition-1} then {action-1}
else if {condition-2} then {action-2}
...
else {default action}

wich seems to me less readable. Annoyingly, one has to provide a value to
the match (0 here), but that value won't really be used.
Could you support my demand to INRIA so that the next releases of Caml-light
and Caml-special-light provide a nicer construct :

select
when {condition-1} -> {action-1}
when {condition-2} -> {action-2}
...
otherwise -> {default action}

like for example in PL/1 and in Rexx ?

------------------------------ texte Francais --------------------------------

*match* associe avec *when* permet de coder elegament un test a plusieurs
cas :

match 0 with
_ when {condition-1} -> {action-1}
| _ when {condition-2} -> {action-2}
...
| _ -> {action par defaut}

Ceci remplace la construction :

if {condition-1} then {action-1}
else if {condition-2} then {action-2}
...
else {action par defaut}

qui me semble moins lisible. L'ennui est qu'il faut donner une
valeur a tester a match (ici 0) alors qu'on n'en fera rien.
Voulez-vous appuyer ma demande a l'INRIA pour que les prochaines versions
de Caml-light et Caml-special-light autorisent une construction encore plus
claire :

select
when {condition-1} -> {action-1}
when {condition-2} -> {action-2}
...
otherwise -> {action par defaut}

qu'on peut trouver par exemple en PL/1 et en Rexx ?

------------------------------------------------------------------------------
Michel Quercia,
Laboratoire d'informatique du lycee Carnot
16 bd Thiers
21000 Dijon
France
e-mail = quercia@u-bourgogne.fr
------------------------------------------------------------------------------