-- ΠΠ°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΎΠΊΡΡΠ°Π½Π°, Π΅Ρ ΠΈΠΌΡ "myprog.exe",
-- ΠΈ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½Π° Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³ c:\myfiles
-- ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²Π²ΠΎΠ΄ΠΈΡ: myprog myfile.dat 12345 "the end"
cmd = command_line()
-- cmd Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ:
{"C:\MYFILES\MYPROG.EXE",
"C:\MYFILES\MYPROG.EXE", -- Π·Π°ΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Ρ ΠΌΠ΅ΡΡΠ°
"myfile.dat",
"12345",
"the end"
}
-- ΠΠ°ΠΌΠ΅ΡΡΡΠ΅, ΡΡΠΎ Π²ΡΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΠΎΡΡΠ°Π»ΠΈΡΡ ΡΠ΅ΠΌΠΈ ΠΆΠ΅, ΡΡΠΎ ΠΈ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ 1,
-- ΠΈΡΠΊΠ»ΡΡΠ°Ρ ΠΏΠ΅ΡΠ²ΡΠ΅ Π΄Π²Π°. ΠΡΠΎΡΠΎΠΉ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΠ²ΡΠΎΡΡΠ΅Ρ ΠΏΠ΅ΡΠ²ΡΠΉ,
-- ΠΈ ΡΠ»ΡΠΆΠΈΡ ΠΏΡΠΎΡΡΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠΉ Π½ΡΠΌΠ΅ΡΠ°ΡΠΈΡ
-- ΠΎΡΡΠ°Π»ΡΠ½ΡΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ², Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΈΠΌΠ΅Π΅Ρ Π²Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°
-- ΡΠΎΡΠΌΡ .exe, ΠΈΠ»ΠΈ Π½Π΅Ρ.
Π‘ΠΌ. ΡΠ°ΠΊΠΆΠ΅:
getenv
compare
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
i = compare(x1, x2)
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅:
ΠΡΠ΄Π°ΡΡ 0, Π΅ΡΠ»ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ x1 ΠΈ x2 ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½Ρ, 1, Π΅ΡΠ»ΠΈ x1 Π±ΠΎΠ»ΡΡΠ΅ ΡΠ΅ΠΌ x2, -1, Π΅ΡΠ»ΠΈ x1 ΠΌΠ΅Π½ΡΡΠ΅ ΡΠ΅ΠΌ x2. Π‘ΡΠΈΡΠ°Π΅ΡΡΡ, ΡΡΠΎ Π°ΡΠΎΠΌΡ ΠΌΠ΅Π½ΡΡΠ΅ ΡΡΠ΄ΠΎΠ². Π ΡΠ΄Ρ ΡΡΠ°Π²Π½ΠΈΠ²Π°ΡΡΡΡ ΠΏΠΎΡΠ»Π΅ΠΌΠ΅Π½ΡΠ½ΠΎ, Π½Π°ΡΠΈΠ½Π°Ρ Ρ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°, Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ°, ΠΏΠΎΠΊΠ° Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΡΠ°Π·Π»ΠΈΡΠΈΠ΅.
ΠΡΠΈΠΌΠ΅Ρ 1:
x = compare({1,2,{3,{4}},5}, {2-1,1+1,{3,{4}},6-1})
-- ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½Ρ, x ΡΠ°Π²Π½ΠΎ 0
ΠΡΠΈΠΌΠ΅Ρ 2:
if compare("ABC", "ABCD") < 0 then -- -1
-- ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΠΈΡΡΠΈΠ½Π°: ΡΡΠ΄ ABC ΡΡΠΈΡΠ°Π΅ΡΡΡ "ΠΌΠ΅Π½ΡΡΠΈΠΌ", ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ ΠΊΠΎΡΠΎΡΠ΅
end if
ΠΡΠΈΠΌΠ΅Ρ 3:
x = compare({12345, 99999, -1, 700, 2},
{12345, 99999, -1, 699, 3, 0})
-- x Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ 1, ΡΠ°ΠΊ ΠΊΠ°ΠΊ 700 699
ΠΡΠΈΠΌΠ΅Ρ 4:
x = compare('a', "a")
-- x Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π½ΠΎ -1, ΡΠ°ΠΊ ΠΊΠ°ΠΊ 'a' ΡΠ²Π»ΡΠ΅ΡΡΡ Π°ΡΠΎΠΌΠΎΠΌ,
-- Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ "a" ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠ΄ΠΎΠΌ Π΄Π»ΠΈΠ½Ρ 1
Π‘ΠΌ. ΡΠ°ΠΊΠΆΠ΅:
equal, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π° ΡΡΠ΄Π°Ρ
cos
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
x2 = cos(x1)
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅:
ΠΡΡΠΈΡΠ»ΡΠ΅Ρ ΠΈ Π²ΡΠ΄Π°ΡΡ ΠΊΠΎΡΠΈΠ½ΡΡ x1, Π³Π΄Π΅ x1 Π²ΡΡΠ°ΠΆΠ΅Π½ΠΎ Π² ΡΠ°Π΄ΠΈΠ°Π½Π°Ρ .
ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ:
ΠΠ°Π½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΠ° ΠΊ Π°ΡΠΎΠΌΠ°ΠΌ ΠΈΠ»ΠΈ ΠΊΠΎ Π²ΡΠ΅ΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ ΡΡΠ΄Π°.
ΠΡΠΈΠΌΠ΅Ρ:
x = cos({.5, .6, .7})
-- x ΡΠ°Π²Π½ΠΎ {0.8775826, 0.8253356, 0.7648422}
Π‘ΠΌ. ΡΠ°ΠΊΠΆΠ΅:
sin, tan, log, sqrt
crash_file
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
include machine.e
crash_file(s)
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅:
ΠΠ°Π΄Π°ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠ΅ Π² Π²ΠΈΠ΄Π΅ ΡΡΠ΄Π° s ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π°, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° Euphoria Π²ΡΠ½ΡΠΆΠ΄Π΅Π½Π° Π°Π²Π°ΡΠΈΠΉΠ½ΠΎ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈΠ·-Π·Π° ΠΎΡΠΈΠ±ΠΊΠΈ, ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½Π½ΠΎΠΉ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΈΠ»ΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ.
ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ:
ΠΠ±ΡΡΠ½ΠΎ Euphoria ΠΏΠ΅ΡΠ°ΡΠ°Π΅Ρ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠΎΠ΄Π΅ "syntax error" ΠΈΠ»ΠΈ "divide by zero" Π½Π° ΡΠΊΡΠ°Π½Π΅, ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π²ΡΠ²ΠΎΠ΄Ρ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² ΡΠ°ΠΉΠ» ex.err, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠ΅Π³Π΄Π° ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅.
ΠΡΠ·ΡΠ²Π°Ρ crash_file(), Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΡΠ°ΠΉΠ»Π° ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°, Π² ΠΊΠΎΡΠΎΡΡΡ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ.
Π ΡΠ΄ s ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΡΡΡΠΌ, Ρ.Π΅. "". Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΈΠ»ΠΈ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡΡ Π½ΠΈ Π½Π° ΡΠΊΡΠ°Π½, Π½ΠΈ Π² ΡΠ°ΠΉΠ». Π ΡΠ΄ s ΠΌΠΎΠΆΠ΅Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅ΡΡ ΡΠΎΡΠΌΡ "NUL" ΠΈΠ»ΠΈ "/dev/null", Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π±ΡΠ΄Π΅Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡΡ Π½Π° ΡΠΊΡΠ°Π½, Π½ΠΎ Π² ΡΠ°ΠΉΠ» ex.err Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΠΈΡΠ°Π½ΠΎ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ·ΡΠ²Π°ΡΡ crash_file() ΡΡΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ, Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ°ΡΡΡΡ Π²Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. Π ΡΠ»ΡΡΠ°Π΅ ΡΠ°ΠΊΠΈΡ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡΠ°ΡΠ½ΡΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ² Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΎΡ ΡΠ°ΠΉΠ», ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ» Π·Π°Π΄Π°Π½ Π² ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ crash_file(), ΡΡΠΎΡΡΠ΅ΠΉ ΠΏΠ΅ΡΠ΅Π΄ ΡΠΎΡΠΊΠΎΠΉ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ ΠΎΡΠΈΠ±ΠΊΠΈ .
ΠΡΠΈΠΌΠ΅Ρ:
crash_file("\\tmp\\mybug")
Π‘ΠΌ. ΡΠ°ΠΊΠΆΠ΅:
abort, crash_message, crash_routine, ΠΎΡΠ»Π°Π΄ΠΊΠ° ΠΈ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
crash_message
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
include machine.e
crash_message(s)
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅:
ΠΠ°Π΄Π°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠ΅ Π² Π²ΠΈΠ΄Π΅ ΡΡΠ΄Π° s, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½ΠΎ Π½Π° ΡΠΊΡΠ°Π½ Π² ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Euphoria Π°Π²Π°ΡΠΈΠΉΠ½ΠΎ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡ Π²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈΠ·-Π·Π° ΠΎΡΠΈΠ±ΠΊΠΈ, ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½Π½ΠΎΠΉ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ.
ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ:
ΠΠ±ΡΡΠ½ΠΎ Euphoria ΠΏΠ΅ΡΠ°ΡΠ°Π΅Ρ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠΊΡΠ°Π½Π΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, "subscript out of bounds" (ΠΈΠ½Π΄Π΅ΠΊΡ Π²Π½Π΅ Π³ΡΠ°Π½ΠΈΡ) ΠΈΠ»ΠΈ "divide by zero" (Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° Π½ΠΎΠ»Ρ), ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π°Ρ Π΅Π³ΠΎ ΡΠ°ΡΠΏΠ΅ΡΠ°ΡΠΊΠΎΠΉ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π² ΡΠ°ΠΉΠ»Π΅ ex.err. ΠΡΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ°Ρ Π±ΡΠ΄ΡΡ ΠΌΠ°Π»ΠΎΠΏΠΎΠ½ΡΡΠ½Ρ Π΄Π»Ρ ΡΠ΅Ρ Π²Π°ΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΠΌΠΈ Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌΠΈ Euphoria. ΠΠΎ Π²ΡΠ·ΡΠ²Π°Ρ crash_message(), Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ, ΠΏΠΎΡΠ²Π»ΡΡΡΠΈΡ ΡΡ Π½Π° ΡΠΊΡΠ°Π½Π΅, ΡΡΠΎΠ±Ρ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π½ΠΎ ΡΡΠ΅ΡΡΡ ΡΡΠΎΠ²Π΅Π½Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ Π²Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΡΠΈ ΡΡΠΎΠΌ Π²ΡΡ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π±ΡΠ΄Π΅Ρ Π΅ΡΡ ΠΈ ΡΠ°ΡΠΏΠ΅ΡΠ°ΡΡΠ²Π°ΡΡΡΡ Π² ΡΠ°ΠΉΠ»Π΅ ex.err, ΡΠ°ΠΊ ΡΡΠΎ Π²Ρ Π½Π΅ ΠΏΠΎΡΠ΅ΡΡΠ΅ΡΠ΅ Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅, ΠΏΠΎΠ»ΡΠ·ΡΡΡΡ ΡΡΠΎΠΉ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ ΠΈ ΠΏΠΎΠ΄ΠΏΡΠ°Π²Π»ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ.
Π ΡΠ΄ s ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ '\n', ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π½ΠΎΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ Π²Π°ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π»Π΅Π³ΠΊΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΈΡΡΠ΅ΡΠΏΡΠ²Π°ΡΡΠ΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠΌ, ΠΏΡΠΈΡΠ΅ΠΌ Π½Π° Π²Π°ΡΠ΅ΠΌ ΡΠΎΠ΄Π½ΠΎΠΌ ΡΠ·ΡΠΊΠ΅, Π° Π½Π΅ Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Euphoria Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠ²ΠΎΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. ΠΠ΅ΡΠ΅Π΄ Π²ΡΠ²ΠΎΠ΄ΠΎΠΌ Π²Π°ΡΠ΅Π³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Euphoria ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡ ΡΠΊΡΠ°Π½ Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ ΠΈ Π½Π°ΡΠ½Π΅Ρ ΠΏΠ΅ΡΠ°ΡΡ Ρ Π²Π΅ΡΡ Π½Π΅ΠΉ ΡΡΡΠΎΠΊΠΈ ΡΠΈΡΡΠΎΠ³ΠΎ ΡΠΊΡΠ°Π½Π°.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ·ΡΠ²Π°ΡΡ crash_message() ΡΡΠΎΠ»ΡΠΊΠΎ ΡΠ°Π· ΠΈΠ· ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΡΠ°ΡΡΠΊΠΎΠ² Π²Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ. ΠΡΠ΄Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΡΠΎ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ ΠΏΠ΅ΡΠ΅Π΄ ΡΠΎΡΠΊΠΎΠΉ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ ΠΎΡΠΈΠ±ΠΊΠΈ.
ΠΡΠΈΠΌΠ΅Ρ:
crash_message("ΠΡΠΎΠΈΠ·ΠΎΡΠ»Π° Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½Π°Ρ ΡΠ°Π½Π΅Π΅ ΠΎΡΠΈΠ±ΠΊΠ°!\n" &
"Π‘Π²ΡΠΆΠΈΡΠ΅ΡΡ Ρ [email protected]\n" &
"ΠΠ΅ ΡΠ΄Π°Π»ΡΠΉΡΠ΅ ΡΠ°ΠΉΠ» \"ex.err\".\n")
Π‘ΠΌ. ΡΠ°ΠΊΠΆΠ΅:
abort, crash_file, crash_routine, ΠΎΡΠ»Π°Π΄ΠΊΠ° ΠΈ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
crash_routine
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
include machine.e
crash_routine(i)
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅:
ΠΠ°Π΄Π°ΡΡ Π½ΠΎΠΌΠ΅Ρ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ, ΠΏΠΎ Π²Π°ΡΠ΅ΠΌΡ Π·Π°ΠΌΡΡΠ»Ρ, Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ Π²ΡΠ·Π²Π°Π½Π° Euphoria Π² ΡΠ»ΡΡΠ°Π΅ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΠΎΡΠΈΠ±ΠΊΠΈ, ΠΈΠ·-Π·Π° ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ°Π±ΠΎΡΠ° Π²Π°ΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΡΠ΅ΡΠ²Π°Π»Π°ΡΡ Π±Ρ Ρ Π°Π²Π°ΡΠΈΠΉΠ½ΡΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠ°ΡΠ° Π°Π²Π°ΡΠΈΠΉΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄ΠΈΠ½ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ ΡΠΈΠΏΠ° object. ΠΡΠΎΡ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π΅Π½ 0 (ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π½Π°Π»ΠΈΡΠΈΡ Π² Π±ΡΠ΄ΡΡΠΈΡ Π²ΡΠΏΡΡΠΊΠ°Ρ Euphoria ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π»ΡΠ½ΡΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ²). ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ·ΡΠ²Π°ΡΡ crash_routine ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π· Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ Π°Π²Π°ΡΠΈΠΉΠ½ΡΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ. Π ΠΌΠΎΠΌΠ΅Π½Ρ, ΠΊΠΎΠ³Π΄Π° Euphoria Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΠ»Π° Π±Ρ ΠΏΡΠ΅ΡΠ²Π°ΡΡ Π²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π±ΡΠ΄Π΅Ρ Π²ΡΠ·Π²Π°Π½Π° ΡΠ° Π²Π°ΡΠ° Π°Π²Π°ΡΠΈΠΉΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π·Π°Π΄Π°Π½Π° Π² ΡΠ°ΠΌΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ crash_routine(), Π° Π·Π°ΡΠ΅ΠΌ Π½Π°ΡΠ½ΡΡΡΡ ΠΎΡΡΠ°Π±ΠΎΡΠΊΠ° Π²ΡΠ΅ΠΉ ΡΠ΅ΠΏΠΎΡΠΊΠΈ Π°Π²Π°ΡΠΈΠΉΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΏΠΎ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊ Π²ΡΠ·Π²Π°Π½Π½ΠΎΠΉ Π² ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ crash_routine(). ΠΠ±ΡΡΠ½ΠΎ ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΈΠ· ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Π½ΡΡ Π°Π²Π°ΡΠΈΠΉΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΡΠ΄Π°Π²Π°ΡΡ 0. ΠΡΠ»ΠΈ Π»ΡΠ±Π°Ρ ΠΈΠ· ΡΡΠ½ΠΊΡΠΈΠΉ ΡΡΠΎΠΉ ΡΠ΅ΠΏΠΎΡΠΊΠΈ Π²ΡΠ΄Π°ΡΡ Π½Π΅-Π½ΡΠ»Π΅Π²ΡΡ Π²Π΅Π»ΠΈΡΠΈΠ½Ρ, ΡΠ΅ΠΏΠΎΡΠΊΠ° Π²ΡΠ·ΠΎΠ²ΠΎΠ² Π±ΡΠ΄Π΅Ρ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ ΠΏΡΠ΅ΡΠ²Π°Π½Π°, Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π·Π°Π²Π΅ΡΡΠ΅Π½Π° Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΎΠ± Π°Π²Π°ΡΠΈΠΉΠ½ΠΎΠΉ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ (Π°Π²ΠΎΡΡΠ΅).
ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ:
ΠΠΏΡΠ΅Π΄Π΅Π»ΡΡ Π°Π²Π°ΡΠΈΠΉΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, Π²Ρ Π΄Π°ΡΡΠ΅ ΡΠ²ΠΎΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΡΠ°Π½Ρ ΠΎΡΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°ΡΡ Π½Π° ΡΠ°ΡΠ°Π»ΡΠ½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ (ΡΠ°ΠΊΠΈΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠ°ΠΊ ΠΈΠ½Π΄Π΅ΠΊΡ Π²Π½Π΅ Π³ΡΠ°Π½ΠΈΡ), Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡΠΈΠ΅ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π΅Ρ ΡΠ°Π±ΠΎΡΡ, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΌ Π΄Π»Ρ Π²Π°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΏΠΈΡΠ°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΡΠΈΡΠΈΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π½Π° Π΄ΠΈΡΠΊ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠΈΠ½ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΡΠ»ΡΡΠΈΠ»ΠΎΡΡ ΠΈ ΡΡΠΎ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π² ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΡΠ΄Π΅Π»Π°ΡΡ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°ΠΊΠΆΠ΅ Π·Π°ΠΏΠΈΡΠ°ΡΡ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ. Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ, ΠΊΠΎΠ³Π΄Π° Π²Π°ΡΠ° Π°Π²Π°ΡΠΈΠΉΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ Π²ΡΠ·Π²Π°Π½Π°, ΡΠ°ΠΉΠ» ex.err ΡΠΆΠ΅ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΠΈΡΠ°Π½. ΠΠ°ΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΠ°ΡΡ ex.err Π΅ΡΡ Π³Π΄Π΅-ΡΠΎ, ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΎΡΠΊΡΡΡΡ Π΅Π³ΠΎ ΠΈ ΠΈΠ·Π²Π»Π΅ΡΡ ΠΈΠ· Π½Π΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅.
ΠΠΎΠΌΠ°Π½Π΄Π° crash_routine() ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ ΠΈΠ»ΠΈ ΡΡΠ°Π½ΡΠ»ΡΡΠΎΡΠΎΠΌ. Π’ΡΠ°Π½ΡΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠΎΠ΄ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΠΈΡΠΎΠΊΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΠΎΡΠΈΠ±ΠΎΠΊ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ Π½Π΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΏΠΎΠ»Π½ΡΡ ΡΠ°ΡΠΏΠ΅ΡΠ°ΡΠΊΡ Π² ex.err, Π½ΠΎ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΡΠΈΠΊΡΠΈΡΡΡΡΡΡ, ΠΈ crash_routine() Π΄Π°Π΅Ρ Π²Π°ΠΌ ΠΏΡΠ΅Π²ΠΎΡΡ ΠΎΠ΄Π½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°ΠΏΠΈΡΠ°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π½Π° Π΄ΠΈΡΠΊ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΉ ΠΎΡΠ»Π°Π΄ΠΊΠ΅.
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡΡ Π²ΡΠ·ΠΎΠ² crash_routine() Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π±ΠΎΠ»Π΅Π΅ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½Π½ΠΎ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ, Π·Π°ΠΊΡΡΠ²Π°Ρ ΡΠ°ΠΉΠ»Ρ, ΠΎΡΠΏΠΈΡΠ°Ρ Π·Π°ΠΏΠ΅ΡΡΡΠ΅ ΡΠ°ΠΉΠ»Ρ, Π²ΡΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Ρ ΡΠ΅ΡΡΡΡΡ ΠΈ Ρ.ΠΏ. ΠΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π³Π»Π°Π²Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΠΈ ΡΠ²ΠΎΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ crash_routine(). Π Π²ΡΠ΅ Π°Π²Π°ΡΠΈΠΉΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π±ΡΠ΄ΡΡ ΠΎΡΡΠ°Π±ΠΎΡΠ°Π½Ρ Euphoria, Π΅ΡΠ»ΠΈ ΠΏΠ΅ΡΠ²Π°Ρ Π²ΡΠ·Π²Π°Π½Π½Π°Ρ (ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π½Π°Π·Π½Π°ΡΠ΅Π½Π½Π°Ρ) ΠΈ Π²ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π²ΡΠ΄Π°Π΄ΡΡ 0.
ΠΠ²Π°ΡΠΈΠΉΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈΠ· ΡΠΎΡΠΊΠΈ ΠΎΡΡΠ°Π½ΠΎΠ²Π°, ΠΈΡΠΏΡΠ°Π²ΠΈΠ² ΠΎΡΠΈΠ±ΠΊΡ. ΠΠΎ Π΄ΡΡΠ³ΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ Π½Π° ΡΠΎ, ΡΡΠΎ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ Π΄Π΅Π»Π°ΡΡ, ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ. ΠΠ½Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΡΡ Π²ΡΠΏΡΡΡ ΠΏΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅, Π½ΠΎ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ ΠΎΡΠΊΠΎΡΡΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ.
ΠΡΠ»ΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ»ΡΡΠΈΡΡΡ Π΄ΡΡΠ³Π°Ρ ΠΎΡΠΈΠ±ΠΊΠ°, ΡΠ½ΠΎΠ²Π° Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΡΠ°ΡΠΏΠ΅ΡΠ°ΡΠΊΠ° ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, Π½ΠΎ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π±ΡΠ΄Π΅Ρ ΡΠΆΠ΅ ex_crash.err, Π° Π½Π΅ ex.err. Π‘ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π·Π°ΠΏΡΠ΅ΡΠ°ΡΡΡΡ Π»ΡΠ±ΡΠ΅ Π½ΠΎΠ²ΡΠ΅ Π²ΡΠ·ΠΎΠ²Ρ Π°Π²ΡΠΈΠΉΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ, Π° Π²Ρ ΠΎΡΡΠ°ΡΡΠ΅ΡΡ Π½Π°Π΅Π΄ΠΈΠ½Π΅ Ρ ex.err ΠΈ ex_crash.err, ΡΡΠΎΠ±Ρ Ρ Π½ΠΈΠΌΠΈ Π² ΡΡΠΊΠ°Ρ ΠΏΠΎΠΏΡΡΠ°ΡΡΡΡ Π½Π°ΠΉΡΠΈ ΠΏΡΠΈΡΠΈΠ½Ρ Π²ΡΠ΅Ρ Π½Π΅ΡΡΠ°ΡΡΠΈΠΉ.
ΠΡΠΈΠΌΠ΅Ρ:
function crash(object x)
-- Π² ΡΠ»ΡΡΠ°Π΅ ΠΏΠΎΠΆΠ°ΡΠ° ...
-- (ΠΏΠΎΠ΄ Linux) ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ e-mail, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π΅ ΡΠ°ΠΉΠ» ex.err
system("mail -s \"crash!\" [email protected] < ex.err > /dev/null", 2)
return 0
end function
crash_routine(routine_id("crash"))
Π‘ΠΌ. ΡΠ°ΠΊΠΆΠ΅:
abort, crash_file, crash_message, ΠΎΡΠ»Π°Π΄ΠΊΠ° ΠΈ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
current_dir
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
include file.e
s = current_dir()
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅:
ΠΡΠ΄Π°ΡΡ ΠΈΠΌΡ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° (Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ, ΠΏΠ°ΠΏΠΊΠΈ, ΡΠΎΠ»Π΄Π΅ΡΠ°).