Edge Rewrite
// HTMLRewriter · presentation

This page was redesigned at the edge.

Cloudflare fetched the original article and streamed it through HTMLRewriter to apply an entirely new visual system without rebuilding the source page.

// request.cf · coarse context

A page that knows where it met you.

Only coarse request metadata is shown. This demo does not display or persist visitor IP addresses.

Country
US
Cloudflare location
CMH
Connection
HTTP/2
Language
Not provided

Ray ID: a246aa6dcc602a7e

Jump to content

Rapira

From Wikipedia, the free encyclopedia

Rapira
Part of a Rapira program.
Paradigmsprocedural, structured
Designed byAndrey Ershov
First appeared1982; 44 years ago (1982)
Typing disciplinedynamic
ScopeLexical (static)
PlatformAgat, PDP-11 (clones: Electronika, DVK series); Intel 8080, Zilog Z80
Influenced by
ALGOL, POP-2, SETL

Rapira (Russian: Рапира, rapier) is an educational procedural programming language developed in the Soviet Union.[1] It was implemented on the Agat computer, PDP-11 clones (Electronika, DVK, BK series), and Intel 8080 and Zilog Z80 clones (Korvet). It is interpreted with a dynamic type system and high level constructions. The language originally had a Russian-based set of reserved words (keywords), but English and Romanian were added later. It was considered more elegant and easier to use than Pascal implementations of the time.[according to whom?]

Rapira was used to teach computer programming in Soviet schools. The integrated development environment included a text editor and a debugger.

Sample program:

ПРОЦ СТАРТ()
    ВЫВОД: 'Привет, мир!!!'
КОН ПРОЦ

The same, but using the English lexics [sic, from the article referenced below]:

proc start()
     output: 'Hello, world!!!';
end proc

Rapira's ideology was based on languages such as POP-2 and SETL, with strong influences from ALGOL.

Consequently, for example, Rapira implements a very strong and flexible data structure, named a tuple. In Rapira, these are heterogeneous lists with allowed operations such as indexing, joining, length count, getting of sublist, easy comparison, etc.

References

[edit source]
  1. Baraz, S.; Borovikov, E.V.; Glagoleva, N.G.; Zemtsov, P.A.; Nalimov, E.V.; Tsikoza, V.A. (1987). "Rapira Programming Language". Retrieved 29 July 2026.

Further reading

[edit source]
[edit source]