Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0003805OCamlOCaml generalpublic2005-10-07 17:182013-07-24 11:50
Reporteradministrator 
Assigned To 
PrioritynormalSeverityminorReproducibilityalways
StatusacknowledgedResolutionopen 
PlatformOSOS Version
Product Version 
Target Version4.01.1+devFixed in Version 
Summary0003805: misc. camlp4 + doc
DescriptionHi,

I would like to report several problems and feature requests.


Camlp4 problems:

- ocaml accepts lower case module type names, pa_o doesn't
  (module type s = sig end;;)

- toplevel with revised syntax:

    # module type A = sig module type S = 'a; end;
    module type A = sig module type S; end

  The toplevel answer is not a legal signature. The pretty
  printer pr_r.cmo does not have this problem.

- MLast.loc_of_with_constr is missing

- Lexing.pos_fname is empty in camlp4 ast's

- For "let a b c = 2 in 5" the camlp4 ast contains several
  MLast.ExFun's. They carry a IMHO nonsensical location.


Documentation problems:

- wrong grammar rule for type parameters in with constraints
  meta symbol type-parameters should probably be type-params

- no variance annotations for class type parameters

- grammar permits infix symbols in as patterns like
  object inherit b as ( ++++ ) end

- the grammar lacks productions to obtain the following

    object val a : 'a :> 'b = 5 end
    object val a :> 'b = 5 end
    struct 5;; end

  (The last one is particularly surprising: the reference manual
  does not permit any program that performs any computation. ;-)


Feature requests:

- please install pcaml.cmo



Maybe missing feature:

- it seems to be impossible to specify exception sharing in a signature


Bye,

Hendrik

TagsNo tags attached.
Attached Files

- Relationships

-  Notes
(0003044)
administrator (administrator)
2005-10-12 17:09
edited on: 2012-07-11 16:59

Camlp4 issues + documentation problems (first one fixed) + 2 feature requests

(0008060)
doligez (administrator)
2012-09-11 13:46

Status of this PR as of 4.00.1+dev:

Camlp4:
1. fixed
2. still present (module type A = sig module type S = 'a; end;)
3. is about camlp5
4. fixed
5. is about camlp5

Documentation:
1. fixed
2. fixed
3. still present (object inherit b as (++) end)
4. a. still present
   b. still present
   c. fixed

Features wishes:
1. is about camlp5
2. is still interesting (specify exception sharing in a signature)
(0009846)
doligez (administrator)
2013-07-24 11:50

Documentation point 3 was fixed in the great grammar cleanup of 4.01.

Remains:
- Camlp4 point 2 (module type A = sig module type S = 'a; end;)
- Feature wish 2 (specify exception sharing in a signature)

- Issue History
Date Modified Username Field Change
2005-11-18 10:14 administrator New Issue
2005-12-15 14:39 doligez Summary => misc. camlp4 + doc
2005-12-15 14:39 doligez Description Updated
2012-07-11 16:59 doligez Note Edited: 0003044 View Revisions
2012-07-11 16:59 doligez Target Version => 4.01.0+dev
2012-07-31 13:37 doligez Target Version 4.01.0+dev => 4.00.1+dev
2012-09-11 13:46 doligez Note Added: 0008060
2012-09-11 13:46 doligez Target Version 4.00.1+dev => 4.00.2+dev
2013-07-02 16:09 doligez Target Version 4.00.2+dev => 4.01.0+dev
2013-07-24 11:50 doligez Note Added: 0009846
2013-07-24 11:50 doligez Target Version 4.01.0+dev => 4.01.1+dev


Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker