[BACK]Return to bnf CVS log [TXT][DIR] Up to [local] / OpenXM / src / ox_math / documents

Annotation of OpenXM/src/ox_math/documents/bnf, Revision 1.3

1.3     ! ohara       1: $OpenXM: OpenXM/src/ox_math/documents/bnf,v 1.2 1999/11/02 06:12:00 ohara Exp $
1.1       ohara       2:
                      3: トークンの集合::
1.3     ! ohara       4: トークンは  (  )  , \n の4つか、あるいは「大文字で表された文法記号」である。
        !             5: 「大文字で表された文法記号」の定義は parse.h の TOKEN(...) あるいは T_...
        !             6: による。
1.1       ohara       7:
                      8: 文法規則::
                      9: 省略記法を許すのはフラグが立っているときだけ。
1.2       ohara      10: 開始記号は line である。
1.3     ! ohara      11: トークンの境界は空白で分けてある。
        !            12: -> | {}* は拡張BNFの記号である。
1.1       ohara      13:
                     14: The following BNFs define the grammer of Common Math Objects:
                     15:
1.3     ! ohara      16: line
        !            17:   -> ox \n
        !            18:    | cmo \n
        !            19:    | \n
        !            20:
        !            21: ox
        !            22:   -> ( OX_COMMAND , sm )
        !            23:    | ( OX_DATA , cmo )
        !            24:
        !            25: sm
        !            26:   -> ( SM_COMMAND )
        !            27:
        !            28: cmo
        !            29:   -> ( cmo_null )
        !            30:    | ( cmo_int32 )
        !            31:    | ( cmo_string )
        !            32:    | ( cmo_mathcap )
        !            33:    | ( cmo_list )
        !            34:    | ( cmo_zero )
        !            35:    | ( cmo_zz )
        !            36:    | ( cmo_monomial32 )
        !            37:    | ( cmo_dms_generic )
        !            38:    | ( cmo_ring_by_name )
        !            39:    | ( cmo_distributed_polynomial )
        !            40:    | ( cmo_error2 )
        !            41:
        !            42: cmo_null
        !            43:   -> CMO_NULL
        !            44:
        !            45: cmo_int32
        !            46:   -> CMO_INT32 , INTEGER
        !            47:
        !            48: cmo_string
        !            49:   -> CMO_STRING , INTEGER , STRING
        !            50:    | CMO_STRING , STRING
        !            51:         # 省略記法
        !            52:
        !            53: cmo_mathcap
        !            54:   -> CMO_MATHCAP , cmo
        !            55:
        !            56: cmo_list
        !            57:   -> CMO_LIST , INTEGER  { , cmo }*
        !            58:    | CMO_LIST { , cmo }*
        !            59:         # 省略記法
        !            60:
        !            61: cmo_monomial32
        !            62:   -> CMO_MONOMIAL32 , INTEGER { , INTEGER }* , coef
        !            63:
        !            64: cmo_zz
        !            65:   -> CMO_ZZ , INTEGER { , INTEGER }*
        !            66:    | CMO_ZZ , INTEGER
        !            67:         # 省略記法
        !            68:
        !            69: cmo_zero
        !            70:   -> CMO_ZERO
        !            71:
        !            72: cmo_dms_generic
        !            73:   -> CMO_DMS_GENERIC
        !            74:
        !            75: cmo_ring_by_name
        !            76:   -> CMO_RING_BY_NAME , ( cmo_string )
        !            77:
        !            78: cmo_distributed_polynomial
        !            79:   -> CMO_DISTRIBUTED_POLYNOMIAL , INTEGER , ringdefinition { , monomial }*
        !            80:         # リストの各要素は monomial である. 空リストの場合もOK?
        !            81:    | CMO_DISTRIBUTED_POLYNOMIAL , ringdefinition  { , monomial }*
        !            82:         # 省略記法
        !            83:
        !            84: cmo_error2
        !            85:   -> CMO_ERROR2 , cmo
        !            86:
        !            87: monomial
        !            88:   -> ( cmo_zero )
        !            89:    | ( cmo_monomial32 )
        !            90:
        !            91: ringdefinition
        !            92:   -> ( cmo_dms_generic )
        !            93:    | ( cmo_ring_by_name )
        !            94:
        !            95: coef
        !            96:   -> ( cmo_zz )
        !            97:    | ( cmo_int32 )

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>