You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There is no * on column 7.
The IDE can add * on column 7 to ensure compatibility with IDZ.
This is optional.
Our choice
We will use the second syntax because it's more like Cobol.
Single line comment
Use normal Cobol comment
* Date in gregorian format (YYYYMMDD)01Datetypedef strict public.
But if you don't comment the type, the previous comment will be used.
Use multi-line comment
*<< Date in gregorian format (YYYYMMDD)*>>01Datetypedef strict public.
Use multi-line comment and close it on the same line (our choice)
*<< Date in gregorian format (YYYYMMDD) *>>01Datetypedef strict public.
*>> with something on the line
*>> Date in gregorian format (YYYYMMDD)01Datetypedef strict public.
But *>> is used to close a multi-line comment.
Using the same keyword *>> to start and end a comment can be problematic.
Use *<<<
*<<<Date in gregorian format (YYYYMMDD)01Datetypedef strict public.
*<< with something on the line
*<< Date in gregorian format (YYYYMMDD)01Datetypedef strict public.
And change the syntax of Multi-line comment.
A multi-line comment must start with *<< and blank on the rest on the line.
Can be confusing for developers.
Slash
*//Date in gregorian format (YYYYMMDD)01Datetypedef strict public.
There is no * on column 7.
The IDE can add * on column 7 to ensure compatibility with IDZ.
This is optional.
Single line
Use multi-line comment and close it on the same line
*<< Date in gregorian format (YYYYMMDD) *>>01Datetypedef strict public.
Procedure comment
Do we need a special comment for procedure/function parameters?
Comment parameter directly after them
*<<
Description of foo.
*>>declareprocedure foo publicinput param1 type Date*> BirthDate*> uhfujghf hjfdhf
param2 type Person.*> Beneficiary
3 - Comment above parameters
*<<
Description of foo.
*>>declareprocedure foo public* BirthDate uhfujghf hjfdhf input param1 type Date* Beneficiary
param2 type Person.
4 - Swift / NaturalDocs (our choice)
This use a markdown syntax
*<< Description of foo.- parameters:
- param1 : BirthDate uhfujghf hjfdhf
- param2 : Beneficiary
*>>declareprocedure foo publicinput param1 type Date
param2 type Person
5 - Javadoc
*<< Description of foo.
@param param1 : BirthDate uhfujghf hjfdhf
@param param2 : Beneficiary
*>>declareprocedure foo publicinput param1 type Date
param2 type Person
Our choice
Use Swift like comment with markdown support. TODO details all special keyword to support
This will be more or less the same as swift. Expect for throw that will be replacec with something like error
Compilation directive
We want to support compilation directive like this:
#IF DEBUG
*code only compiled when debug modeis activated*
#END-IF
Syntax to use:
#IF
#END-IF
We will make another meeting to details how compilation directive works
Region proposal
How to handle #region like C#?
We want to delimit block of code and associate a comment.
Proposals of syntax
Our new comment system above the region
*<< comment
*>>
#Temp
temporary code
#end-Temp
Our new comment system inside the region
#Temp
*<< comment
*>>
temporary code
#end-Temp
Comment on the same line of the region. But this is not compatible with multiline.
#Temp comment
temporary code
#end-Temp
Generated code
The generated code will simply comment the #region
* #Temp commentairecode temporaire
* #end-Temp
Special regions
2 specials regions must be created for our purpose:
Temp for Temporary
A release must ensure that there is no temporary code.
Provisional
Can be integrated into a release
The text was updated successfully, but these errors were encountered:
Report of Meeting of 2018/04/05
History of Cobol comment in our company
An custom Cobol comment has been developed.
The purpose was to document the
This doc is then exported to a documentation repository.
This doc was also used to produce a Control-flow analysis graph.
This documentation use XML syntax:
*<tag> value
*</tag>
If the end tag is not useful, then the following syntax can be used:
*[tag] value
Example
Available tags
Tags use 3 letters of a french word:
pic X(50)
)indexed by
can not be used (when the same index must be used for 2 tables)indexed by
So we'll only keep [LNG] in generated code
Questions
Proposals for documentation
Here we want to define a special comment syntax to identify comment that need to be extracted.
Multi-line syntax
*<<
and*>>
(our choice)There is no
*
on column 7.The IDE can add
*
on column 7 to ensure compatibility with IDZ.This is optional.
Our choice
We will use the second syntax because it's more like Cobol.
Single line comment
But if you don't comment the type, the previous comment will be used.
*>>
with something on the lineBut
*>>
is used to close a multi-line comment.Using the same keyword
*>>
to start and end a comment can be problematic.*<<<
*<<
with something on the lineAnd change the syntax of Multi-line comment.
A multi-line comment must start with
*<<
and blank on the rest on the line.Can be confusing for developers.
We retain this syntax
Multi-line
There is no
*
on column 7.The IDE can add
*
on column 7 to ensure compatibility with IDZ.This is optional.
Single line
Use multi-line comment and close it on the same line
Procedure comment
Do we need a special comment for procedure/function parameters?
Comment parameter directly after them
3 - Comment above parameters
4 - Swift / NaturalDocs (our choice)
This use a markdown syntax
5 - Javadoc
Our choice
Use Swift like comment with markdown support.
TODO details all special keyword to support
This will be more or less the same as swift. Expect for
throw
that will be replacec with something likeerror
Compilation directive
We want to support compilation directive like this:
Syntax to use:
#IF
#END-IF
We will make another meeting to details how compilation directive works
Region proposal
How to handle #region like C#?
We want to delimit block of code and associate a comment.
Proposals of syntax
Generated code
The generated code will simply comment the #region
Special regions
2 specials regions must be created for our purpose:
The text was updated successfully, but these errors were encountered: