Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
OCaml 3.12.0+beta1
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Florent Ouchet <florent.ouchet@i...>
Subject: Re: [Caml-list] OCaml 3.12.0+beta1
"Hezekiah M. Carty" <> a écrit :
> The trailing _ in a record match is not required.  It is allowed in
> 3.12, and in combination with an optional warning flag it can be used
> to check for incomplete record matches.  Why is any preprocessing
> needed?  If an application is written to require OCaml 3.12.x or
> later, why would you expect it to compile with an earlier version?

Software development is not your perfect and ideal world. Would you  
buy a brand new car because your current two-month-old car does not  
have seat belt reminders? New warnings are almost the only  
improvements I'm interested in 3.12.

Sometimes you have to support old compiler versions (this choice is  
not yours) and you need a complete confidence in all the thousands  
record pattern matchings of your application, some of them (maybe 30%)  
are intentionally left incomplete in order to keep the code as simple  
as possible.

Without preprocessing scripts, I will not be able to insert extra "_"  
for masking intentionally-left-incomplete pattern matchings. The  
compilation log will be polluted by hundred warnings (false-positive).  
Finally, the catch of the few remaining should-not-be-incomplete  
pattern matchings (true-positive) will be very hard.

Anyway, I'm running out of arguments and the problem is still there...  
I would have wasted less time in having the scripts setup than in  
arguing here.

Florent Ouchet
PhD Student, CIS/VDS Groups
TIMA Laboratory, Grenoble, France