# Programmng notation

## Programmng notation

The following text isat the end ofthe paper:

Safe Open-Nested Transactions Through Ownership by Agrawal, Leiserson, and Sukha.

I am not sure to read this.

I have a Ph.D. in Operations Research so I am familiar with the notationused in mathematical proofs, but I am unsure what this is. Could some please name a text that expands on this. It does look like a math proof, butsometimes does not. i have shown this to my colleagues and allI got was blank stares.

What book discussses this further so I may readup on it? Thisis something I see occasionally in computer science research papers. I would liketo know more about it.

The Extends Relation

P

P

P

P

P

P

P

Type Lookup

type

type

type

type

type

Field Lookup

P

P

P

P

P

` field [o1/g1]..[om/gm] 2i cn` cnh f1..ni cn0ho1..mi` field 2 cn0hg1..mi` field 2d cnh f1..ni` class cnh f1..ni . . . { . . . field . . . }(t mnhg1..ki(param){ . . . }) = t ! hg1..ki ! type(param)(t x) = t(t fd) = t(t1 x1, t2, x2, . . . ) = t1, t2, . . .( ) = ()` cn cn00` cn cn0 P ` cn0 cn00` cn cn0` cn cn` cnh f1..ni cn0hg1..mi` cnh f1..ni cn0hg1..mi` class cnh f1..ni extends cn0hg1..mi . . .

Newport_j

6 posts / 0 new
For more complete information about compiler optimizations, see our Optimization Notice.

I'm afraid none of the formatting has come through. Are you referring to a certain set of symbols that are common in computer science, but not in math? If so, can you describe them (presuming they aren't in ASCII)?

I can attach the paper. I am sure that will help. I just do not know howto attach the paper. Is there a way? I had no luck with copy and paste that I used in the last posting.

How can I attach the paper in my reply?

Newport_j

I have tried (and failed) to upload things on the forum, myself. However, I found the paper here:

http://supertech.csail.mit.edu/papers/safe-tech.pdf

What page are you looking at?

I am referring to the notation used on Section B. It is the last section and runs for 6 pages single sided or 3 pages front and back. These pages run to the end of the paper.

I have seen this notation before and i really would like to know where I can read up on it.

Newport_j

The beginning of Appendix B has some Extended Backus Normal (or Naur) Form (EBNF) syntax in it. This is fairly computer-science-y notation -- especially useful in describing grammars for languages. The EBNF in this paper is a bit sloppy, but the general idea is that you have a series of rules that define all legal strings in the language.

Wikipedia has a couple of good pages:

http://en.wikipedia.org/wiki/Backus%E2%80%93Naur_Form

and

http://en.wikipedia.org/wiki/Extended_Backus%E2%80%93Naur_Form

Niklaus Wirth wrote an influencial paper defining a consistent EBNF (if you or your university has access to ACM):

http://portal.acm.org/citation.cfm?doid=359863.359883

Also, any book on compilers or automatawill start by talking about language grammar representations.

---

After reading the Wikipedia articles, the specifics being used in this article appear to be:

* Bold symbols are literals.
* means zero or more instances of "symbol"
* (symbol+) means one or more instances of "symbol"

Using the asterisk and plus symbols to mean "zero or more" and "one or more" respectively, is popular because it's the sort of notation used in RFC documents and most popular regular expression programming syntaxes.