Search found 54 matches

by augustk
Sun May 01, 2016 3:05 pm
Forum: Oberon Language
Topic: Oberon Report Update 2016-05-01
Replies: 33
Views: 110148

Oberon Report Update 2016-05-01

The Oberon Report has been updated again. The changes are: 1. The three grammar productions TypeDeclaration = identdef "=" StrucType. StrucType = ArrayType | RecordType | PointerType | ProcedureType. type = qualident | StrucType. have been reduced to TypeDeclaration = identdef "=" type. type = quali...
by augustk
Thu Mar 17, 2016 9:36 am
Forum: Oberon Language
Topic: Oberon Report update
Replies: 3
Views: 14038

Re: Oberon Report update

In section 4, do the removal of the scope rule amendments affect the language in any way? Or did Niklaus simply find them superfluous? In section 8.2.4, am I correct in assuming that the set inclusion operators were removed because they do typically not correspond to primitive CPU instructions and t...
by augustk
Wed Mar 18, 2015 4:10 pm
Forum: Oberon Language
Topic: Extended CASE Statement (Revision 22.2.2015)
Replies: 8
Views: 32480

Re: Extended CASE Statement (Revision 22.2.2015)

Luckily, Niklaus Wirth just changed the grammar (revision 18.3.2015) from

Code: Select all

CaseLabelList = LabelRange {"," LabelRange} | qualident.
label = integer | string.
to

Code: Select all

CaseLabelList = LabelRange {"," LabelRange}.
label = integer | string | qualident.
by augustk
Wed Mar 18, 2015 11:42 am
Forum: Oberon Language
Topic: Extended CASE Statement (Revision 22.2.2015)
Replies: 8
Views: 32480

Re: Extended CASE Statement (Revision 22.2.2015)

What update are you thinking of? As far as I can see the existing syntax is sufficient. The productions CaseLabelList and label have changed from CaseLabelList = LabelRange {"," LabelRange}. label = integer | string | ident. to CaseLabelList = LabelRange {"," LabelRange} | qualident. label = intege...
by augustk
Wed Mar 18, 2015 11:22 am
Forum: Oberon Language
Topic: Extended CASE Statement (Revision 22.2.2015)
Replies: 8
Views: 32480

Re: Extended CASE Statement (Revision 22.2.2015)

The Language Report does not prescribe what the behaviour should be if no label matches the value - that is left to be decided by the implementer. To me that seems like a very dangerous approach. It's not at all clear that an unmatched value results in undefined behaviour. A programmer may rely on ...
by augustk
Mon Mar 16, 2015 8:41 pm
Forum: Oberon Language
Topic: Extended CASE Statement (Revision 22.2.2015)
Replies: 8
Views: 32480

Re: Extended CASE Statement (Revision 22.2.2015)

Also, the syntax of the CASE statement in the appendix has not been updated accordingly.
by augustk
Mon Mar 16, 2015 8:39 pm
Forum: Oberon Language
Topic: Extended CASE Statement (Revision 22.2.2015)
Replies: 8
Views: 32480

Re: Extended CASE Statement (Revision 22.2.2015)

As far as I understand when the CASE expression is INTEGER or CHAR the program is halted if no label matches the value. That doesn't seem to be the case in your example.
by augustk
Sat Apr 12, 2014 3:28 pm
Forum: Oberon Language
Topic: Updated Oberon Language Report (Revision 1.10.2013)
Replies: 21
Views: 81105

Re: Updated Oberon Language Report (Revision 1.10.2013)

The last sentence of the the first paragraph of section 10.1 has also changed from However, if a value parameter is of a scalar type, it represents a local variable to which the value of the actual expression is initially assigned. to However, if a value parameter is of a basic type, it represents a...
by augustk
Thu Mar 13, 2014 1:25 pm
Forum: Oberon Language
Topic: Updated Oberon Language Report (Revision 1.10.2013)
Replies: 21
Views: 81105

Re: Updated Oberon Language Report (Revision 1.10.2013)

The sets of integers between 0 and an implementation-dependent limit.
Thanks, dsar. This makes sense as the size of the other basic types (except BYTE) is unspecified.
by augustk
Wed Mar 12, 2014 10:53 am
Forum: Oberon Language
Topic: Updated Oberon Language Report (Revision 1.10.2013)
Replies: 21
Views: 81105

Re: Updated Oberon Language Report (Revision 1.10.2013)

In yesterday's update SYSTEM procedures supported by the RISC processor was also added.