home *** CD-ROM | disk | FTP | other *** search
-
- #########
- # ##### ## # ##### #
- ###### # # # # # # # #
- # # # # # # # # #
- # # # # # # # # #
- # ##### # ## ##### ######
-
-
- .... Phonological Programming Language ....
-
- Dr. Frank Roberts Brandon
-
- Version 4.0.0
- 15 April 1991
-
- Copyright (c) 1983,1991
-
-
- General Introduction
-
- This section describes the conditions on distribution,
- support of the language, history, objectives and implementation,
- and gives a script for a quick start in using Fonol. Online, you
- can look in the table of contents (TOC) by typing ?/toc.
-
-
- Fonol Distribution
-
- Fonol is distributed with my blessings. You may give away
- copies to your heart's content so long as you do not charge for
- the copies and so long as you give all the distribution files in
- unmodified form.
-
-
- Fonol Support
-
- I intend to support Fonol as much as is possible with a
- spare time project and I welcome your bug reports and suggestions
- for improvements. When sending in bug reports, please give all
- the details of what happened including the matrix and rules you
- were trying to run. The transcription and batch file features
- will help in this (i.e. send a diskette with a batch file to set
- up the problem if it is at all complex). If you have the source
- code, please don't fix things yourself -- let me centralize the
- versions, OK? I also welcome any help on the documentation so as
- to make sure that it is clear.
-
- Positive reinforcement is naturally also welcome!
-
- My current address is:
-
- Frank R. Brandon
- 3937 Anewby Way
- Fort Worth, TX 76133-6860
-
- (817) 294-0239.
-
-
- Porting Fonol
-
- Porting to other machines that run Pascal or C, especially
- Turbo Pascal, should be fairly transparent since I wrote Fonol
- as generically as possible. I developed this version of Fonol on
- an AT&T 6300 using Turbo Pascal 4.0, a version of Pascal that has
- incorporated many of the low level conveniences of C.
-
-
- Fonol Objectives
-
- Fonol is a programming language that simulates phonological
- rules of the sort described in Chomsky and Halle 'Sound Pattern
- of English' or Schane 'Generative Phonology'. It also
- incorporates the input and output filters (conditions) which came
- into common use about the same time. These filters are currently
- restricted to the identification of a pattern and two actions:
- preventing the successful application of a specific rule or
- blocking (starring) the entire derivation. Some standard
- conventions on rule application are supported. Cycles of several
- types are allowed for and other means of appropriate control are
- also provided. Further extensions, variations, and deviations
- are included from later phonological folklore. (Let me know if
- there is something truly vital missing -- I'll try to add it if I
- can.) Fonol is designed to provide a way of writing phonological
- rules and viewing their effects. It is intended to aid students
- of phonology to grasp the ideas behind phonological rules and to
- help phonologists manage large complex bodies of rules in the
- theory of their choice. Considering how many competing theories
- and partial theories of phonology exist, it may fail in the
- second case, even though I would like to accommodate as many
- theoretical variations as possible. Since an attempt will be made
- to provide for all theories, those who use more restrictive
- theories will simply have to avoid using some features of the
- Fonol language. In any case, it should be useful for students and
- in beginning work on undescribed phonological systems. In some
- cases, Fonol will allow for the same effects as theoretical
- systems it does not directly support. In this case, try using
- what is provided and fixing up or beautifying your rules when you
- put them in paper form. A program written for the IBMs character
- oriented display is not able to directly print the
- typographically complex forms of phonological rules, anyway.
- Computer simulation of phonological rules helps to advance the
- broad generative program as well, in that no amount of
- hand-waving on the part of the rule writer or good will on the
- part of the rule reader will have any effect on the way the
- software interprets what is written. In this sense, it forces the
- clarification of our ideas just as the whole explicit rule
- writing approach was meant to, only without any generosity in
- assumptions. In the 'wins-no-friends' department, it also has
- been beneficial in revealing how many 'radically new' ideas are
- reinventions of the wheel and in raising the question of how we
- select one theory over another of similar descriptive power --
- the problem of notational variants. I personally do not want to
- solve all these problems by myself. For this reason, you will
- find the documentation to be written in an informal style and
- filled with invitations for you to write me with your ideas.
-
-
- Fonol History
-
- Fonol 1.0 was written in Microsoft's MBasic 5.2 under CP/M
- in 1983 while I was employed in the Linguistics Department at
- the Universidade Estadual de Campinas. A paper on it ('A
- Phonological Rule Interpreter for Microcomputers') was eventually
- published in 1985 in the Proceedings of the Eleventh
- International Conference of the Association for Literary and
- Linguistic Computing ["Computers in Literary and Linguistic
- Computing", Slatkine Reprints, Rue des Chaudronniers, 5 - Case
- 765, CH-1211 Geneve 3, Swi tzerland]. Intermediate versions
- through 3.0. were written in my spare time after work while I
- was employed in the Human Factors Technology Group at General
- Dynamics-Fort Worth. There was a hiatus of three years between
- version 3.0. and 3.1.0 due to lack of interest. This dearth of
- stimulus was broken in late 1990 by Dr. Wayne Redenbarger --
- to whom much appreciation! Recent versions from 3.1.0 to 4.0.0
- were funded in part by Aetna Insurance and the Social
- Security Administration, I suppose, since they've been written
- while I've been on disability leave and under treatment. The
- present version is written in Borland's Turbo Pascal 4.0 under
- MS-DOS. The name 'Fonol' was chosen for similarities to Cobol,
- Snobol, Algol, etc. and because, since I was teaching in Brazil
- at the time, it seemed like a good abbreviation of 'Linguagem de
- Programaçäo Fonológica'. I forgot that some people don't speak
- Portuguese.
-
-
- Printing Fonol Documentation
-
- The documentation is currently being maintained in Sprint
- 1.0. Low ASCII (<32) are formatting codes which I use mostly for
- screen printing and for marking words to be used in the help
- index. You should find one line beginning with ^K which is the
- ruler line and various strings beginning with ^B, ^U, or ^D and
- ending with ^N which are the Bold, Underline, and inDexed
- strings. ^_ is the 'soft' carriage return symbol for line breaks
- in paragraphs. ^L is a page break. The IBM high ASCII set (>127)
- may cause problems to your printer -- on my Epson I have to set
- some dip switches to print them, for example. I am trying to
- figure out how to maintain the documentation in a way that anyone
- can print and still not lose formatting.
-
-
- Setting Up On-Line Help
-
- Fonol.exe is distributed with FONOL.DOC and DOC-HELP.exe,
- the program that converts FONOL.DOC to the FH-xxxxx help files
- found in \FONHELP. To set up the on-line help, you should put
- fonol.exe, doc-help.exe, fonol.doc into some convenient
- subdirectory or onto some disk. Log in to that subdirectory or
- disk drive. Now type mkdir fonhelp to put ..\fonhelp into your
- current directory. Then type doc-help and hit return. It will ask
- you if you have done the preceding steps. Just hit return again
- and ..\ fonhelp will be filled with the files used by on-line
- help. This method is used so that consistency is maintained
- between the printed documentation and the on-line documentation.
- If you want to edit FONOL.DOC and make changes which will
- appear when help is invoked you will have to run DOC-HELP with
- FONOL.DOC and the ..\FONHELP subdirectory again. Doc-Help tries
- to lemmatize a bit by removing suspected plurals from words
- read from boldface titles
-
-
- On-line Help
-
- ?
- Displays this information about on-line help. The help
- function allows you to read all the documentation for Fonol from
- within Fonol as described below.
-
- ?!
- Explains the last three system messages in more detail if
- such information is available by bringing up the appropriate
- sections of this documentation. This is a way of supplying hints
- for problems, especially multiple problems, while avoiding too
- much verbosity in the standard error messages.
-
- ?/~
- The tilde (~) is used to represent all special characters.
- This command will show how to enter special characters (see
- Edit).
-
- ?/string
- String is explained. It may be a command letter, a word,
- a section number or some symbol that is used in Fonol. All
- current support may be found on-line: try typing something in, it
- will provide some kind of aid, even if it is only a list of the
- indexed terms most similar to string.
-
- ?/toc
- This command will show the Table of Contents (TOC) of the
- Fonol documentation (Fonol.doc). Section numbers or words or
- symbols in section titles may be looked up with ?/string. Words
- or symbols may reference several sections, so section numbers
- will be less 'verbose'.
-
- Help Messages:
- ** Help Table of Contents Overflow **
- ** Help Index Overflow **
- The last edit of Fonol.doc blew out the limits. This should
- never happen to you unless you decide to fix or customize
- the documentation. Write me.
- * Help Index Not Found *
- Check Location of ..\fonhelp
- Help was invoked, but the \fonhelp subdirectory was not
- found on the current logged drive in the directory
- containing Fonol.exe or no index file was in the
- subdirectory.
- * Missing Files in Help Subdirectory *
- The subdirectory was found with an index file, but it is
- incomplete. Better look it over and perhaps run Doc-help
- again.
- Search Failed In: X1..X5
- Shows the five items in the midst of which the search
- failed. This provides some clues when you are hunting around
- for information.
-
-
- Quick Start in Fonol
-
- If you can't stand reading documentation, then please follow
- this script to get started:
-
- --Type fonol at the A> prompt and hit Return.
-
- --When you see the cursor flashing after the Fnl: prompt then
- enter 'a --> b __d' and hit Return. You will see an error message
- with the Atn: prompt followed by a Rec: prompt with what you
- entered. This means you have an opportunity to recuperate the
- rule or recover from the error.
-
- --Now use the arrows to go into the rule and put a '/'
- between b and the '__'. Take this opportunity to remove any
- single quotes you may have entered. Now hit Return.
-
- --Now type d. You will see your rule and some information
- about space usage.
-
- --Now type '<<cad' and hit Return. If you left out the single
- quotes then you will see your rule apply and yield 'cbd'.
-
- --Now type 'l/swa.max' to load the demo Swahili phonological
- matrix. Type 'm' and hit return to see the matrix (F9 to exit
- again).
-
- --Type l/swa and hit Return and the swa.fon file of rules for
- Swahili will be loaded. Your rule is lost.
-
- --Type d/symbols and hit Return and you will see a list of
- the phonemes, features, and other symbols loaded in.
-
- --Type d/ and hit Return and the rules will be displayed. The
- ][ lines are declarations, mostly abbreviations to provide
- 'syntactic sugar'. The rules with --> are obvious. The ones with
- * are input and output conditions.
-
- --Now when the Fnl: prompt reappears, type << [A# Cl9 + pya
- #] and hit Return. The rules will be applied and those that do
- apply will be printed together with their effects. If you want to
- see a lot of these forms, type 'l/swa.fbf'. This will load and
- run a batch file of derivations. Keep hitting Q if you get bored,
- OK?
-
- --Display the rules with d/ again. Note the numbers? Pick a
- rule at random and from the Fnl: prompt type i/ N where N is the
- number of the rule. Now type '[] this is my comment' and hit
- Return. If you left out the single quotes, then there will be no
- error message, otherwise use backspace or ^g or DEL to delete the
- first one at least and hit Return again. You will still see the
- Ins: prompt. Hit return on an empty line or ESC or ^y and you
- will be back at the Fnl: prompt. Now redisplay the rules. Note wh
- ere your comment went and the way the other rules have been
- renumbered. Now take the number of your rule and type r/
- number. Redisplay the rules and you will see that yours is now
- gone and the numbering is as it was previously.
-
- --You could type 'l/demo.fbf' to see the English, Turkish,
- and Swahili demo rule sets loaded and applied to some forms,
- or...
-
- --Type x/ to exit Fonol; say 'no' to its suggestion that you
- save the edited rules; and now please do familiarize yourself
- with the documentation!
-
-
- Fonol Files Supplied
-
- Fonol.exe
- Fonol.doc
- Doc-Help.exe (Utility that converts Fonol.doc into on-line help
- files which are kept in a subdirectory called
- ..\fonhelp)
- (Sample matrices and rule sets for various languages)
- Swa.Max
- Swa.Fon
- Turk.Max
- Turk.Fon
- SPE-ex.Max (English rules from Sound Pattern of English)
- SPE-ex.Fon
- TestPat.Max (to practice moving columns and rows in the matrix)
- (Sample batch files of base forms)
- Swa.FBF, Turk.FBF, Demo.FBF
-