Skip to content

Commit 5d46116

Browse files
author
Jeremie Dimino
committed
get rid of the last bits of camlp4
1 parent 653f3ed commit 5d46116

17 files changed

+228
-173
lines changed

_oasis

Lines changed: 16 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,6 @@ FilesAB: src/lTerm_config.h.ab
3434
# | The library |
3535
# +-------------------------------------------------------------------+
3636

37-
Flag camlp4
38-
Description: camlp4 support
39-
Default: false
40-
4137
Library "lambda-term"
4238
FindlibName: lambda-term
4339
BuildDepends: lwt (>= 2.4.0), lwt.unix, lwt.react, zed (>= 1.2)
@@ -87,131 +83,115 @@ Library "lambda-term"
8783

8884
Executable events
8985
Path: examples
90-
Build$: flag(camlp4)
9186
Install: false
9287
CompiledObject: best
9388
MainIs: events.ml
94-
BuildDepends: lambda-term, lwt.syntax
89+
BuildDepends: lambda-term
9590

9691
Executable colors
9792
Path: examples
98-
Build$: flag(camlp4)
9993
Install: false
10094
CompiledObject: best
10195
MainIs: colors.ml
102-
BuildDepends: lambda-term, lwt.syntax
96+
BuildDepends: lambda-term
10397

10498
Executable colors_256
10599
Path: examples
106-
Build$: flag(camlp4)
107100
Install: false
108101
CompiledObject: best
109102
MainIs: colors_256.ml
110-
BuildDepends: lambda-term, lwt.syntax
103+
BuildDepends: lambda-term
111104

112105
Executable rgb
113106
Path: examples
114-
Build$: flag(camlp4)
115107
Install: false
116108
CompiledObject: best
117109
MainIs: rgb.ml
118-
BuildDepends: lambda-term, lwt.syntax
110+
BuildDepends: lambda-term
119111

120112
Executable move
121113
Path: examples
122-
Build$: flag(camlp4)
123114
Install: false
124115
CompiledObject: best
125116
MainIs: move.ml
126-
BuildDepends: lambda-term, lwt.syntax
117+
BuildDepends: lambda-term
127118

128119
Executable hello
129120
Path: examples
130-
Build$: flag(camlp4)
131121
Install: false
132122
CompiledObject: best
133123
MainIs: hello.ml
134-
BuildDepends: lambda-term, lwt.syntax
124+
BuildDepends: lambda-term
135125

136126
Executable clock
137127
Path: examples
138-
Build$: flag(camlp4)
139128
Install: false
140129
CompiledObject: best
141130
MainIs: clock.ml
142-
BuildDepends: lambda-term, lwt.syntax
131+
BuildDepends: lambda-term
143132

144133
Executable buttons
145134
Path: examples
146-
Build$: flag(camlp4)
147135
Install: false
148136
CompiledObject: best
149137
MainIs: buttons.ml
150-
BuildDepends: lambda-term, lwt.syntax
138+
BuildDepends: lambda-term
151139

152140
Executable checkbuttons
153141
Path: examples
154-
Build$: flag(camlp4)
155142
Install: false
156143
CompiledObject: best
157144
MainIs: checkbuttons.ml
158-
BuildDepends: lambda-term, lwt.syntax
145+
BuildDepends: lambda-term
159146

160147
Executable radiobuttons
161148
Path: examples
162-
Build$: flag(camlp4)
163149
Install: false
164150
CompiledObject: best
165151
MainIs: radiobuttons.ml
166-
BuildDepends: lambda-term, lwt.syntax
152+
BuildDepends: lambda-term
167153

168154
Executable shell
169155
Path: examples
170-
Build$: flag(camlp4)
171156
Install: false
172157
CompiledObject: best
173158
MainIs: shell.ml
174-
BuildDepends: lambda-term, lwt.syntax, str
159+
BuildDepends: lambda-term, str
175160

176161
Executable repl
177162
Path: examples
178-
Build$: flag(camlp4)
179163
Install: false
180164
CompiledObject: best
181165
MainIs: repl.ml
182-
BuildDepends: lambda-term, lwt.syntax
166+
BuildDepends: lambda-term
183167

184168
Executable modal
185169
Path: examples
186-
Build$: flag(camlp4)
187170
Install: false
188171
CompiledObject: best
189172
MainIs: modal.ml
190-
BuildDepends: lambda-term, lwt.syntax
173+
BuildDepends: lambda-term
191174

192175
Executable "read-password"
193176
Path: examples
194-
Build$: flag(camlp4)
195177
Install: false
196178
CompiledObject: best
197179
MainIs: read_password.ml
198-
BuildDepends: lambda-term, lwt.syntax
180+
BuildDepends: lambda-term
199181

200182
Executable "read-yes-no"
201183
Path: examples
202-
Build$: flag(camlp4)
203184
Install: false
204185
CompiledObject: best
205186
MainIs: read_yes_no.ml
206-
BuildDepends: lambda-term, lwt.syntax
187+
BuildDepends: lambda-term
207188

208189
Executable "editor"
209190
Path: examples
210-
Build$: flag(camlp4)
211191
Install: false
212192
CompiledObject: best
213193
MainIs: editor.ml
214-
BuildDepends: lambda-term, lwt.syntax
194+
BuildDepends: lambda-term
215195

216196
# +-------------------------------------------------------------------+
217197
# | Utils |

examples/buttons.ml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
open Lwt
1111
open LTerm_widget
1212

13-
lwt () =
13+
let main () =
1414
let waiter, wakener = wait () in
1515

1616
let vbox = new vbox in
@@ -32,5 +32,8 @@ lwt () =
3232
let frame = new frame in
3333
frame#set vbox;
3434

35-
lwt term = Lazy.force LTerm.stdout in
35+
Lazy.force LTerm.stdout
36+
>>= fun term ->
3637
run term frame waiter
38+
39+
let () = Lwt_main.run (main ())

examples/checkbuttons.ml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
open Lwt
1111
open LTerm_widget
1212

13-
lwt () =
13+
let main () =
1414
let waiter, wakener = wait () in
1515

1616
let vbox = new vbox in
@@ -55,5 +55,8 @@ lwt () =
5555
let frame = new frame in
5656
frame#set vbox;
5757

58-
lwt term = Lazy.force LTerm.stdout in
58+
Lazy.force LTerm.stdout
59+
>>= fun term ->
5960
run term frame waiter
61+
62+
let () = Lwt_main.run (main ())

examples/clock.ml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ let get_time () =
1818
localtime.Unix.tm_min
1919
localtime.Unix.tm_sec
2020

21-
lwt () =
21+
let main () =
2222
let waiter, wakener = wait () in
2323

2424
let vbox = new vbox in
@@ -34,5 +34,8 @@ lwt () =
3434
button#on_click (wakeup wakener);
3535

3636
(* Run in the standard terminal. *)
37-
lwt term = Lazy.force LTerm.stdout in
37+
Lazy.force LTerm.stdout
38+
>>= fun term ->
3839
run term vbox waiter
40+
41+
let () = Lwt_main.run (main ())

examples/colors.ml

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,16 @@ open Lwt
1111
open LTerm_style
1212
open LTerm_text
1313

14-
lwt () =
15-
for_lwt i = 0 to 15 do
16-
LTerm.printls (eval [S(Printf.sprintf "color %d: " i);
17-
B_fg(index i); S"foreground"; E_fg;
18-
S" ";
19-
B_bg(index i); S"background"; E_bg])
20-
done
14+
let () =
15+
let rec loop i =
16+
if i = 16 then
17+
Lwt.return ()
18+
else
19+
LTerm.printls (eval [S(Printf.sprintf "color %d: " i);
20+
B_fg(index i); S"foreground"; E_fg;
21+
S" ";
22+
B_bg(index i); S"background"; E_bg])
23+
>>= fun () ->
24+
loop (i + 1)
25+
in
26+
Lwt_main.run (loop 0)

examples/colors_256.ml

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,14 @@ open Lwt
1111
open LTerm_style
1212
open LTerm_text
1313

14-
lwt () =
15-
for_lwt i = 0 to 255 do
16-
LTerm.printls (eval [S(Printf.sprintf "color %d: " i);
17-
B_fg(index i); S"example"; E_fg])
18-
done
14+
let () =
15+
let rec loop i =
16+
if i = 16 then
17+
Lwt.return ()
18+
else
19+
LTerm.printls (eval [S(Printf.sprintf "color %d: " i);
20+
B_fg(index i); S"example"; E_fg])
21+
>>= fun () ->
22+
loop (i + 1)
23+
in
24+
Lwt_main.run (loop 0)

examples/editor.ml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
open CamomileLibraryDyn.Camomile
1111
open Lwt
1212

13-
lwt () =
13+
let main () =
1414
let waiter, wakener = wait () in
1515

1616
let frame = new LTerm_widget.frame in
@@ -36,5 +36,8 @@ Type C-x C-c to exit.
3636
3737
");
3838

39-
lwt term = Lazy.force LTerm.stdout in
40-
LTerm_widget.run term frame waiter
39+
Lazy.force LTerm.stdout
40+
>>= fun term ->
41+
LTerm_widget.run term frame waiter
42+
43+
let () = Lwt_main.run (main ())

examples/events.ml

Lines changed: 24 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -13,21 +13,29 @@ open Lwt
1313
open LTerm_event
1414

1515
let rec loop term =
16-
lwt ev = LTerm.read_event term in
17-
lwt () = Lwt_io.printl (LTerm_event.to_string ev) in
16+
LTerm.read_event term
17+
>>= fun ev ->
18+
Lwt_io.printl (LTerm_event.to_string ev)
19+
>>= fun () ->
1820
match ev with
19-
| LTerm_event.Key{ LTerm_key.code = LTerm_key.Escape } ->
20-
return ()
21-
| _ ->
22-
loop term
23-
24-
lwt () =
25-
lwt () = Lwt_io.printl "press escape to exit" in
26-
lwt term = Lazy.force LTerm.stdout in
27-
lwt () = LTerm.enable_mouse term in
28-
lwt mode = LTerm.enter_raw_mode term in
29-
try_lwt
21+
| LTerm_event.Key{ LTerm_key.code = LTerm_key.Escape } ->
22+
return ()
23+
| _ ->
3024
loop term
31-
finally
32-
lwt () = LTerm.leave_raw_mode term mode in
33-
LTerm.disable_mouse term
25+
26+
let main () =
27+
Lwt_io.printl "press escape to exit"
28+
>>= fun () ->
29+
Lazy.force LTerm.stdout
30+
>>= fun term ->
31+
LTerm.enable_mouse term
32+
>>= fun () ->
33+
LTerm.enter_raw_mode term
34+
>>= fun mode ->
35+
Lwt.finalize (fun () -> loop term)
36+
(fun () ->
37+
LTerm.leave_raw_mode term mode
38+
>>= fun () ->
39+
LTerm.disable_mouse term)
40+
41+
let () = Lwt_main.run (main ())

examples/hello.ml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
open Lwt_react
1111
open Lwt
1212

13-
lwt () =
13+
let main () =
1414
(* Create a thread waiting for escape to be pressed. *)
1515
let waiter, wakener = wait () in
1616

@@ -23,5 +23,8 @@ lwt () =
2323
| _ -> false);
2424

2525
(* Run. *)
26-
lwt term = Lazy.force LTerm.stdout in
26+
Lazy.force LTerm.stdout
27+
>>= fun term ->
2728
LTerm_widget.run term vbox waiter
29+
30+
let () = Lwt_main.run (main ())

examples/modal.ml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ open Lwt
22
open Lwt_react
33
open LTerm_widget
44

5-
lwt () =
5+
let main () =
66
let do_run, push_layer, pop_layer, exit = prepare_simple_run () in
77

88
let vbox = new vbox in
@@ -56,3 +56,5 @@ lwt () =
5656
change#on_click (push_layer layer2);
5757

5858
do_run frame
59+
60+
let () = Lwt_main.run (main ())

0 commit comments

Comments
 (0)