From RM@RSRE Fri Apr 18 07:36:11 1986 Via: rlxa ; 18 Apr 1986 07:35:34-WET From: Ruaridh Macdonald (on UK.MOD.RSRE) To: Z Date: Fri, 18 Apr 86 08:34 GMT Subject: Z Forum Issue 4 Acknowledge-To: RM@RSRE Message-Id: <18 APR 1986 08:34:48 RM@RSRE> Status: R 18th April 1986 Z FORUM Volume 1 Issue 4 --------------- ------- ---------------- Today's Topic ------------- Word Processing Z While there is only one item in this issue of the forum, I felt it was worth sending out before Wednesday's Z Users' Meeting at Oxford. RM. --------------------------------------------------------------------------- From: Anthony Hall Date: Thu, 17 Apr 86 18:56:51 gmt Word-Processing Z Sending Z Texts over Mail The Aspect project is a distributed project (Systems Designers, ICL, MARI, Universities of York and Newcastle). Since it decided to produce a Z specification of its public tool interface, Z has become the main medium of communication on the research side of the project, so it has been essential to have word processable and electronically mailable form for Z. Our approach to the problem is very similar to that described by Bernard Sufrin (in fact I'm not quite sure why it's not exactly the same!). We all use Unix so our text processing is nroff/troff. The standard way of doing mathematics in this environment is neqn, which is a macro processor for mathematical text. So what we have done is defined a set of macros for neqn. For example union would be defined [X] .ZC _$sor$_: $ps$ X x $ps$ X $fx$ $ps$ X .ZM $forall$ s$sub$1,s$sub$2 : $pss$ X $dot$ s$sub$1 $sor$ s$sub$2 = { x:X $bar$ x $mem$ s$sub$1 $or$ x $mem$ s$sub$2 } .ZE The differences from the Oxford method are almost trivial: 1. We use $ as a delimiter - but we could easily change that. In fact neqn allows you to specify the delimiter and that could be a useful facility in general, perhaps. 2. We tend to use mnemonics for the Z symbols, but again could add the Oxford symbolic forms. I think we'd be happy to move over to the Oxford symbols if there was some sort of consensus that they should be used. (It's amazing how quickly one gets used to the mnemonics - more than one person has reported not noticing that a document he was reading had not been processed!) Incidentally, if you are wondering what is mnemonic about "sor" for union it stands for "set or" so I'm told. 3. Sub and superscripting is a general facility, not confined to the digits and not needing definition in advance for each subscript. This does look like an advantage. The symbols .ZC, .ZM, .ZE (and .ZS) are not neqn macros but nroff macros to produce constant or schema boxes. We do need one home-grown preprocessor to do that bit properly. The great advantage of the neqn approach is that it is possible to have lots of different definitions for the neqn macros (they are simple textual substitutions) adapted to different devices. So the same document can easily be printed on whatever quality device one has available. We are reasonably happy with this approach to the problem, and it and the Oxford approach seem so similar that we ought to be able to devise a common standard. We would certainly like to consider some form of standardisation for the Ascii "names" for the symbols. Do other people think this would be worthwhile? ***************************** END OF Z FORUM *****************************