Rapira (Рапира) – Soviet programming language interpreter
1–10 of 71 posts
Re: Rapira (Рапира) – Soviet programming language interpreter
#2 FUNC FACT (N);
NAME: R;
1 -> P;
FOR I FROM 1 TO N ::
R * I -> R
ALL
RES: R
KNC;
FOR N FROM 0 TO 6 ::
? "FACT(", N, ") = ", FACT(N)
ALL;Re: Rapira (Рапира) – Soviet programming language interpreter
#3It feels like Pascal in Cyrillic. Autotranslation, with a little manual correction, but I can't fix КНЦ (autotranlated to KNC): FUNC FACT (N); NAME: R; 1 -> P; FOR I FROM 1 TO N :: R * I -> R ALL RES: R KNC; FOR N FROM 0 TO 6 :: ? "FACT(", N, ") = ", FACT(N) ALL;
Re: Rapira (Рапира) – Soviet programming language interpreter
#4It feels like Pascal in Cyrillic. Autotranslation, with a little manual correction, but I can't fix КНЦ (autotranlated to KNC): FUNC FACT (N); NAME: R; 1 -> P; FOR I FROM 1 TO N :: R * I -> R ALL RES: R KNC; FOR N FROM 0 TO 6 :: ? "FACT(", N, ") = ", FACT(N) ALL;
Also, «ВСЕ» feels like «ВСЁ» in this context, I’d translate that as “that’s all”.
Re: Rapira (Рапира) – Soviet programming language interpreter
#5It feels like Pascal in Cyrillic. Autotranslation, with a little manual correction, but I can't fix КНЦ (autotranlated to KNC): FUNC FACT (N); NAME: R; 1 -> P; FOR I FROM 1 TO N :: R * I -> R ALL RES: R KNC; FOR N FROM 0 TO 6 :: ? "FACT(", N, ") = ", FACT(N) ALL;
Re: Rapira (Рапира) – Soviet programming language interpreter
#6It feels like Pascal in Cyrillic. Autotranslation, with a little manual correction, but I can't fix КНЦ (autotranlated to KNC): FUNC FACT (N); NAME: R; 1 -> P; FOR I FROM 1 TO N :: R * I -> R ALL RES: R KNC; FOR N FROM 0 TO 6 :: ? "FACT(", N, ") = ", FACT(N) ALL;
1. "ИМЕНА" is plural, so instead of "NAME:" it's a bit more appropriate to use "NAMES:". Probably should be "VARIABLES" or "VARS" in modern context.
2. You've got few typos mixing "R" and "P". Should be "R" everywhere.
3. Instead of "ALL" you should use "DONE".
4. Instead of "KNC" you should use "END".
So it would look like this:
FUNC FACT (N);
NAMES: R;
1 -> R;
FOR I FROM 1 TO N ::
R * I -> R
DONE
RES: R
END;
FOR N FROM 0 TO 6 ::
? "FACT(", N, ") = ", FACT(N)
DONE;Re: Rapira (Рапира) – Soviet programming language interpreter
#7It feels like Pascal in Cyrillic. Autotranslation, with a little manual correction, but I can't fix КНЦ (autotranlated to KNC): FUNC FACT (N); NAME: R; 1 -> P; FOR I FROM 1 TO N :: R * I -> R ALL RES: R KNC; FOR N FROM 0 TO 6 :: ? "FACT(", N, ") = ", FACT(N) ALL;
[flagged]
> Don't post generated comments or AI-edited comments. HN is for conversation between humans.
Re: Rapira (Рапира) – Soviet programming language interpreter
#8This is a pretty cool historical artifact.
Does anyone use "native language" programming languages in education or day to day?
Re: Rapira (Рапира) – Soviet programming language interpreter
#9Re: Rapira (Рапира) – Soviet programming language interpreter
#10It feels like Pascal in Cyrillic. Autotranslation, with a little manual correction, but I can't fix КНЦ (autotranlated to KNC): FUNC FACT (N); NAME: R; 1 -> P; FOR I FROM 1 TO N :: R * I -> R ALL RES: R KNC; FOR N FROM 0 TO 6 :: ? "FACT(", N, ") = ", FACT(N) ALL;
replace cyrillic w/ russian and it'd be ok.
КНЦ = end (конец in russian is end). However, in bulgarian in means 'thread' (as in sewing thread) and it has lots its meaning of end, aside from 'from needle to thread' expression where it means from the tip of the needle to the end of the thread.
Also 'ALL' (и все = it's over/that's all), which should be 'end' as in begin/end in pascal.
The main point still stands - it's Pascal.