File: french.ml

package info (click to toggle)
cppo 1.8.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 588 kB
  • sloc: ml: 2,133; makefile: 54; sh: 11
file content (34 lines) | stat: -rw-r--r-- 674 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#define soit let
#define fonction function
#define fon fun
#define dans in
#define si if
#define alors then
#define sinon else

#define Liste List
#define Affichef Printf
#define affichef printf

#define separation split
#define tri sort

soit rec separation x = fonction
    y :: l ->
      soit l1, l2 = separation x l dans
      si y < x alors (y :: l1), l2
      sinon l1, (y :: l2)
  | [] ->
      [], []

soit rec tri = fonction
    x :: l ->
      soit l1, l2 = separation x l dans
      tri l1 @ [x] @ tri l2
  | [] ->
      []

soit () =
  soit l = tri [ 5; 3; 7; 1; 7; 4; 99; 22 ] dans
  Liste.iter (fon i -> Affichef.affichef "%i " i) l;
  Affichef.affichef "\n"