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
[Caml-list] view types in ocaml?
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2003-01-21 (12:54)
From: Yaron M. Minsky <yminsky@C...>
Subject: Re: [Caml-list] view types in ocaml?
Speaking of suggestions for toplevel improvements, I've got a couple:

- don't print really long strings.
        The mechanism for ensuring that overly long things don't get
        printed to the screen apparently doesn't work for strings.  The
        result is that if you do anything with a large string (say,
        allocate a 100K buffer), every character gets printed to the
        screen.  (and if that buffer is mostly zeros, each buffer
        character is printed as '\000', taking 4 characters.  Argh!)
- don't print let-bound values
        If I type an expression, such "let x = foobar a b c", the value
        of x is dumped to the screen.  This is contrary to the behavior
        of most language interpreters (see python or matlab for
        examples.)  It means you have no way of supressing the printing
        of the values you generate, which is quite inconvenient. 
        Perhaps the type should always be printed (although maybe not),
        but printing the value every time make no sense.


On Mon, 2003-01-20 at 20:14, Ed L Cashin wrote:
> Hi.  I like ocamlbrowser well enough, but is there a way to view type
> info right from the interactive ocaml prompt.  Here's what I'm
> thinking of (which won't work, of course).
>           Objective Caml version 3.06
>   # #load "unix.cma";;
>   # Unix.LargeFile.lseek;;
>   - : Unix.file_descr -> int64 -> Unix.seek_command -> int64 = <fun>
>   # Unix.LargeFile.stats;;
>   type stats = {
>     st_dev : int;
>     st_ino : int;
>     st_kind : Unix.file_kind;
>     st_perm : Unix.file_perm;
>     st_nlink : int;
>     st_uid : int;
>     st_gid : int;
>     st_rdev : int;
>     st_size : int64;
>     st_atime : float;
>     st_mtime : float;
>     st_ctime : float;
>   } 

To unsubscribe, mail Archives:
Bug reports: FAQ:
Beginner's list: