Протель - Protel

Протель «Процедураға бағытталған түрді қолдану тілі» дегенді білдіреді. Бұл арқылы құрылған бағдарламалау тілі Nortel желілері сияқты телекоммуникациялық коммутация жүйелерінде қолданылады DMS-100.[1][2] Protel-2 - Protel-дің объектіге бағытталған нұсқасы.[3][4]

PROTEL тілдері сандық телефония қажеттіліктерін қанағаттандыру үшін жасалған және оның негізі болып табылады DMS-100 PROTEL коммутациялық жүйелер желісі - бұл қатты негізделген, блоктарға негізделген, оған негізделген PASCAL және ALGOL 68 айнымалы тағайындаудың солдан оңға қарай стилімен, айнымалы өлшемді массивтермен және кеңейтілетін құрылымдармен. PROTEL дизайнерлері сыртқы компиляцияны қосу және тілде қол жетімді деректер құрылымын кеңейту арқылы күннің PASCAL мәнін айтарлықтай кеңейтті.[3]

Айнымалылар және тағайындау

Айнымалылар Паскаль тіліне ұқсас түрде жарияланады.

  • VAR MYVAR: INT;

Мән беру үшін:

  • 5 -> MYVAR;

Ескерту: '->' диграфы ауызекі тілде газинта оператор (өйткені жоғарыдағы мысалда 5 кіреді (=газинта) MYVAR).

'FOO' жолдық айнымалысын жариялау үшін:

  • VAR FOO IS DESC [1..10] CHAR;

Ескерту: PROTEL 1-ден массивтерге жүгінеді.

Процедуралар

  • PROC myprocname ( аргументтер тізімі ) БАСТАЛАДЫ ... код ... СОҢЫ

Ескерту: Блоктың ауқымы BEGIN және END арқылы анықталады.

Функциялар

  • FUNC myfuncname ( аргументтер тізімі ) ҚАЙТАРУ БАСТАЛДЫ ... код ... СОҢЫ

Құрылымдар

КЕСТЕ - бұл негізгі құрылым. Ол Паскаль тілінен шыққан тілдерге ұқсас түрде жарияланып, қолданылады.

Одақтар

OVERLAY - бұл кәсіподақтың негізгі құрылымы. Ол Паскаль тілінен шыққан тілдерге ұқсас түрде жарияланып, қолданылады.

АЙМАҚТАР

Аудандар - бұл КЕСТЕЛЕР мен ОВЕРЛАЙЛАРҒА жіберуге болатын жад блоктары. Олар байтпен жарияланады және әдетте болашақта кеңейтуге мүмкіндік беретін үлкен көлемде жарияланады. Бұл DMS бағдарламалық жасақтамасын қайта іске қосуды қажет етпестен жаңартуға деген ниетпен байланысты. PROTEL модульдік сипаты салыстырмалы түрде кішкене код бөліктерін жүктемеге ауыстыруға мүмкіндік береді; егер AREAs ақылды түрде жоспарланған болса, бұл модульдердің жадта орналасуына әсер етпес еді, осылайша қайта қосылудан аулақ болды.

МОДУЛЬДЕР

Файлдар әдетте MODULE декларациясынан басталады: модуль компиляция бірлігі.

  • МОДУЛЬ mymodulename;

Ағынды басқару

Ауыстыру операторы С-тегідей емес.

Әдебиеттер тізімі

  1. ^ Кришна, Сандип Сахай, Брайан Николсон, С. (2003). Ғаламдық IT аутсорсинг: бағдарламалық жасақтаманы шекаралар арқылы дамыту. Кембридж: Кембридж университетінің баспасы. б.7. ISBN  978-0521816045.
  2. ^ Телезис (3), 1989 Жоқ немесе бос | тақырып = (Көмектесіңдер)
  3. ^ а б «Модульдік теру тәжірибесі: PROTEL», ICSE '81 Бағдарламалық жасақтама бойынша 5-ші халықаралық конференция материалдары
  4. ^ Дини, П .; Ботаба, Р .; Логриппо, Л., редакция. (1997). Телекоммуникациялық желілердегі өзара әрекеттесу IV. Амстердам: IOS Press. б. 23. ISBN  978-9051993479.