ΠΠΎΠΌΠΎΠ³ΠΈΡΠ΅ ΡΠ΅ΡΠΈΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΌ! β 953 ΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ° 6 ΠΊΠ»Π°ΡΡ ΠΠΈΠ»Π΅Π½ΠΊΠΈΠ½. β Π Π°ΠΌΠ±Π»Π΅Ρ/ΠΊΠ»Π°ΡΡ
ΠΠΎΠΌΠΎΠ³ΠΈΡΠ΅ ΡΠ΅ΡΠΈΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΌ! β 953 ΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ° 6 ΠΊΠ»Π°ΡΡ ΠΠΈΠ»Π΅Π½ΠΊΠΈΠ½. β Π Π°ΠΌΠ±Π»Π΅Ρ/ΠΊΠ»Π°ΡΡΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ
Π¨ΠΊΠΎΠ»Π°
ΠΠΎΠ΄ΡΠΊΠ°ΠΆΠΈΡΠ΅, ΠΊΠ°ΠΊ Π±ΠΎΡΠΎΡΡΡΡ Ρ Π³ΡΡΠ±ΡΠΌ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΎΠ΄Π½ΠΎΠΊΠ»Π°ΡΡΠ½ΠΈΠΊΠΎΠ² ΠΊ ΠΌΠΎΠ΅ΠΌΡ ΡΠ΅Π±Π΅Π½ΠΊΡ?
ΠΠΎΠ²ΠΎΡΡΠΈ
ΠΠΎΠ΄Π΅Π»ΠΈΡΠ΅ΡΡ, ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Ρ ΠΏΠΎΡΡΠ°ΡΠΈΠ»ΠΈ Π½Π° ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΡ ΡΠ΅Π±Π΅Π½ΠΊΠ° ΠΊ ΡΡΠ΅Π±Π½ΠΎΠΌΡ Π³ΠΎΠ΄Ρ?
Π¨ΠΊΠΎΠ»Π°
ΠΠ±ΡΡΡΠ½ΠΈΡΠ΅, ΡΡΠΎ ΠΏΡΠ°Π²Π΄Π°, ΡΡΠΎ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΠΈ ΡΠ΅ΠΏΠ΅ΡΡ Π±ΡΠ΄ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΎ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΠΈ ΡΡΠΏΠ΅Π²Π°Π΅ΠΌΠΎΡΡΠΈ Π² ΡΠΊΠΎΠ»Π΅?
Π¨ΠΊΠΎΠ»Π°
ΠΠΎΠ³Π΄Π° Π² 2018 Π³ΠΎΠ΄Ρ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΎ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠΈΠΎΠ΄Π° ΠΠΠ?
ΠΠΎΠ²ΠΎΡΡΠΈ
ΠΡΠ΄Π΅Ρ Π»ΠΈ ΠΊΠ°ΠΊ-ΡΠΎ ΡΠ»ΡΡΡΠ°ΡΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΈΡΠΎΠ³ΠΎΠ²ΡΡ ΡΠΎΡΠΈΠ½Π΅Π½ΠΈΠΉ?
ΠΡΠ·Ρ
ΠΠΎΠ΄ΡΠΊΠ°ΠΆΠΈΡΠ΅, ΠΏΠΎΡΠ΅ΠΌΡ Π·Π°ΠΊΡΡΠ»ΠΈ ΠΏΡΠΈΠ΅ΠΌ Π² ΠΠΎΡΠΊΠΎΠ²ΡΠΊΠΈΠΉ ΠΈΠ½ΡΡΠΈΡΡΡ ΡΠ΅Π»Π΅Π²ΠΈΠ΄Π΅Π½ΠΈΡ ΠΈ ΡΠ°Π΄ΠΈΠΎΠ²Π΅ΡΠ°Π½ΠΈΡ «ΠΡΡΠ°Π½ΠΊΠΈΠ½ΠΎ»?
ΠΠ°ΠΉΠ΄ΠΈΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ:
Π°)Β Β Β Β | -8| — |-5|;
Π±)Β Β Β Β | -10| β |-15|;
Π²)Β Β Β Β |240| : |-80|;
Π΄) Β Β |-2,3| + |3,7|;
Π΅)Β Β Β Β |-4,7| — 1-1,9|;
ΠΆ) Β Β |28,52| : |-2,3|;
Π·)Β Β Β |0,1| β |-10|;
Β
ΠΎΡΠ²Π΅ΡΡ
Π°) | — 8| — | — 5| = 8 — 5 = 3;
Π±) | — 10| β’ | — 15| = 10 β’ 15 = 150;
Π²) |240| : | — 80| = 240 : 80 = 3;
Π³) |-710| + | — 290| = 710 + 290 = 1000; Β
Π΄) |-2,3| + |3,7| = 2,3 + 3,7 = 6;
Π΅) | — 4,7| — | — 1,9| = 4,7 — 1,9 = 2,8;
Π²Π°Ρ ΠΎΡΠ²Π΅Ρ
ΠΠΎΠΆΠ½ΠΎ Π²Π²Π΅ΡΡΠΈ 4000 cΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²
ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ
Π΄Π΅ΠΆΡΡΠ½ΡΠΉ
ΠΠ°ΠΆΠΈΠΌΠ°Ρ ΠΊΠ½ΠΎΠΏΠΊΡ Β«ΠΎΡΠΏΡΠ°Π²ΠΈΡΡΒ», Π²Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅ΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡΒ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΡ
ΠΏΠΎΡ ΠΎΠΆΠΈΠ΅ ΡΠ΅ΠΌΡ
ΠΡΠΈΡ ΠΎΠ»ΠΎΠ³ΠΈΡ
3 ΠΊΠ»Π°ΡΡ
5 ΠΊΠ»Π°ΡΡ
Π Π΅ΠΏΠ΅ΡΠΈΡΠΎΡ
ΠΏΠΎΡ ΠΎΠΆΠΈΠ΅ Π²ΠΎΠΏΡΠΎΡΡ 5
ΠΡΠΈΠ²Π΅ΡΠΈΠΊ! ΠΡΠΎ ΡΠ΅ΡΠΈΠ»? β 411 ΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ° 6 ΠΊΠ»Π°ΡΡ ΠΠΈΠ»Π΅Π½ΠΊΠΈΠ½.
ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠΈΠΊΡΠΎΠΊΠ°Π»ΡΠΊΡΠ»ΡΡΠΎΡΠ° ΠΈ ΡΠ΅Π·ΡΠ»Ρ-
3,281 β 0,57 + 4,356 β 0,278 — 13,758 (ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅…)
ΠΠΠΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ°6 ΠΊΠ»Π°ΡΡΠΠΈΠ»Π΅Π½ΠΊΠΈΠ½ Π.Π―.
678. ΠΠ·ΠΎΠ±ΡΠ°Π·ΠΈΡΠ΅ ΡΡΠΎΡ ΠΊΡΡΠ³, ΠΏΡΠΎΠ²Π΅Π΄ΠΈΡΠ΅ Π΄ΠΈΠ°ΠΌΠ΅ΡΡ, ΡΠ°Π΄ΠΈΡΡ ΠΈ ΡΠΊΠ°ΠΆΠΈΡΠ΅ ΠΈΡ Π΄Π»ΠΈΠ½Ρ. 6 ΠΊΠ»Π°ΡΡ ΠΠΎΡΠ΄ΠΊΠΎΠ²ΠΈΡ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ° ΠΠΠ
678. ΠΠ»ΠΎΡΠ°Π΄Ρ ΠΊΡΡΠ³Π° ΡΠ°Π²Π½Π°:
Π°)Β Β 28,26 ΡΠΌ2;Β Β Β Π±) 113,04 ΡΠΌ2;Β Β Β Π²) 0,5024 Π΄ΠΌ2;Β Β Β Π³) 78,5 ΡΠΌ2.
ΠΠ·ΠΎΠ±ΡΠ°Π·ΠΈΡΠ΅ ΡΡΠΎΡ ΠΊΡΡΠ³, (ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅…)
ΠΠΠΠΠΎΡΠ΄ΠΊΠΎΠ²ΠΈΡ Π.Π.ΠΠ»Π³Π΅Π±ΡΠ°6 ΠΊΠ»Π°ΡΡ
ΠΠΎΠΌΠΎΠ³ΠΈΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ ΡΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ. ΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ° Π±Π°Π·ΠΎΠ²ΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΠΠΠ — 2017. ΠΠ°Ρ.β1. ΠΠ°Π΄.β18. ΠΠΎΠ΄ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΠΌ Π―ΡΠ΅Π½ΠΊΠΎ Π.Π.
Β Β ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉΡΠ΅! ΠΠ΅ΡΠ΅Π΄ Π²ΠΎΠ»Π΅ΠΉΠ±ΠΎΠ»ΡΠ½ΡΠΌ ΡΡΡΠ½ΠΈΡΠΎΠΌ ΠΈΠ·ΠΌΠ΅ΡΠΈΠ»ΠΈ ΡΠΎΡΡ ΠΈΠ³ΡΠΎΠΊΠΎΠ² Π²ΠΎΠ»Π΅ΠΉΠ±ΠΎΠ»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π³ΠΎΡΠΎΠ΄Π° N. ΠΠΊΠ°Π·Π°Π»ΠΎΡΡ, ΡΡΠΎ ΡΠΎΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· (ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅…)
ΠΠΠΠΠΊΠ·Π°ΠΌΠ΅Π½ΡΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ°Π―ΡΠ΅Π½ΠΊΠΎ Π.Π.
16. Π Π°ΡΡΡΠ°Π²ΡΡΠ΅ Π²ΡΠ΅ Π·Π½Π°ΠΊΠΈ ΠΏΡΠ΅ΠΏΠΈΠ½Π°Π½ΠΈΡ: ΡΠΊΠ°ΠΆΠΈΡΠ΅ ΡΠΈΡΡΡ(-Ρ), Π½Π° ΠΌΠ΅ΡΡΠ΅ ΠΊΠΎΡΠΎΡΠΎΠΉ(-ΡΡ )… Π¦ΡΠ±ΡΠ»ΡΠΊΠΎ Π. Π. Π ΡΡΡΠΊΠΈΠΉ ΡΠ·ΡΠΊ ΠΠΠ-2017 ΠΠΠ.
16.
Π Π°ΡΡΡΠ°Π²ΡΡΠ΅ Π²ΡΠ΅ Π·Π½Π°ΠΊΠΈ ΠΏΡΠ΅ΠΏΠΈΠ½Π°Π½ΠΈΡ: ΡΠΊΠ°ΠΆΠΈΡΠ΅ ΡΠΈΡΡΡ(-Ρ), Π½Π° ΠΌΠ΅ΡΡΠ΅ ΠΊΠΎΡΠΎΡΠΎΠΉ(-ΡΡ
)
Π² ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Π°(-Ρ) ΡΡΠΎΡΡΡ Π·Π°ΠΏΡΡΠ°Ρ(-ΡΠ΅). (ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅…)
ΠΠΠΠΠΠΠ ΡΡΡΠΊΠΈΠΉ ΡΠ·ΡΠΊΠ¦ΡΠ±ΡΠ»ΡΠΊΠΎ Π.Π.
ΠΠΠ-2017 Π¦ΡΠ±ΡΠ»ΡΠΊΠΎ Π. Π. Π ΡΡΡΠΊΠΈΠΉ ΡΠ·ΡΠΊ ΠΠΠ. ΠΠ°ΡΠΈΠ°Π½Ρ 13. 18. Π Π°ΡΡΡΠ°Π²ΡΡΠ΅ Π²ΡΠ΅ Π·Π½Π°ΠΊΠΈ ΠΏΡΠ΅ΠΏΠΈΠ½Π°Π½ΠΈΡ: ΡΠΊΠ°ΠΆΠΈΡΠ΅ ΡΠΈΡΡΡ(-Ρ), Π½Π° ΠΌΠ΅ΡΡΠ΅ ΠΊΠΎΡΠΎΡΠΎΠΉ(-ΡΡ )…
18.
Π Π°ΡΡΡΠ°Π²ΡΡΠ΅ Π²ΡΠ΅ Π·Π½Π°ΠΊΠΈ ΠΏΡΠ΅ΠΏΠΈΠ½Π°Π½ΠΈΡ: ΡΠΊΠ°ΠΆΠΈΡΠ΅ ΡΠΈΡΡΡ(-Ρ), Π½Π° ΠΌΠ΅ΡΡΠ΅ ΠΊΠΎΡΠΎΡΠΎΠΉ(-ΡΡ
)
Π² ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Π°(-Ρ) ΡΡΠΎΡΡΡ Π·Π°ΠΏΡΡΠ°Ρ(-ΡΠ΅). (ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅…)
ΠΠΠΠΠΠΠ ΡΡΡΠΊΠΈΠΉ ΡΠ·ΡΠΊΠ¦ΡΠ±ΡΠ»ΡΠΊΠΎ Π.Π.
ΠΠΠ ΡΡΠ΅Π±Π½ΠΈΠΊ ΠΏΠΎ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ΅ 6 ΠΊΠ»Π°ΡΡ ΠΡΠ±Π°ΡΠ΅Π²Π°. 8. ΠΡΠ°Π²ΠΈΠ»ΠΎ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π°Π»Π³Π΅Π±ΡΠ°ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΡΠΌΠΌΡ Π΄Π²ΡΡ ΡΠΈΡΠ΅Π» ΠΠΎΠΌΠ΅Ρ 258
- Π£ΡΠ΅Π±Π½ΠΈΠΊΠΈ
- 6 ΠΊΠ»Π°ΡΡ org/ListItem»>ΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ° π
- ΠΡΠ±Π°ΡΠ΅Π²Π°
- β258
Π°Π²ΡΠΎΡΡ: ΠΡΠ±Π°ΡΠ΅Π²Π°, ΠΠΎΡΠ΄ΠΊΠΎΠ²ΠΈΡ.
ΠΈΠ·Π΄Π°ΡΠ΅Π»ΡΡΡΠ²ΠΎ: «ΠΠ½Π΅ΠΌΠΎΠ·ΠΈΠ½Π°» 2014 Π³ΠΎΠ΄
Π Π°Π·Π΄Π΅Π»:
- ΠΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π΅
- Π‘Π»Π΅Π΄ΡΡΡΠ΅Π΅
1) ΠΠ°ΠΉΠ΄ΠΈΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ (Π·Π°ΠΏΠΈΡΠΈΡΠ΅ ΠΎΡΠ²Π΅Ρ Π² Π²ΠΈΠ΄Π΅ ΡΠ°Π²Π΅Π½ΡΡΠ²Π°):
β6β8β6+8+6+8+6β8β2β11β2+11+11+2β11+2
2) Π ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ
ΡΠ°Π²Π΅Π½ΡΡΠ²Π°Ρ
ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅ Π»Π΅Π²ΡΡ ΡΠ°ΡΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΡΠΌΠΌΡ.
3) Π§ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΎ Π·Π½Π°ΠΊΠ°Ρ
ΡΠ»Π°Π³Π°Π΅ΠΌΡΡ
ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ°? Π²ΡΠΎΡΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ°?
4) Π ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠ°Π²Π½ΠΈΡΠ΅ Π·Π½Π°ΠΊ ΡΡΠΌΠΌΡ ΡΠΎ Π·Π½Π°ΠΊΠ°ΠΌΠΈ ΡΠ»Π°Π³Π°Π΅ΠΌΡΡ
. Π‘Π΄Π΅Π»Π°ΠΉΡΠ΅ Π²ΡΠ²ΠΎΠ΄.
5) ΠΠ»Ρ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ° Π½Π°ΠΉΠ΄ΠΈΡΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΡΠΌΠΌΡ ΠΈ ΡΡΠΌΠΌΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΡΠ»Π°Π³Π°Π΅ΠΌΡΡ
. Π‘ΡΠ°Π²Π½ΠΈΡΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ. Π‘Π΄Π΅Π»Π°ΠΉΡΠ΅ Π²ΡΠ²ΠΎΠ΄.
7) ΠΠΎΡΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ ΡΡΠΎΡΠΌΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ Π·Π½Π°ΠΊΠ° ΡΡΠΌΠΌΡ ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΡΠΌΠΌΡ, Π΅ΡΠ»ΠΈ ΡΠ»Π°Π³Π°Π΅ΠΌΡΠ΅ ΠΈΠΌΠ΅ΡΡ:
Π°) ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠ΅ Π·Π½Π°ΠΊΠΈ;
Π±) ΡΠ°Π·Π½ΡΠ΅ Π·Π½Π°ΠΊΠΈ.
8) ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΡΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π½Π°ΠΉΠ΄ΠΈΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ:
(+16) + (+4)
(+16) + (β4)
(β16) + (β4)
(β16) + (+4)
Β
(+8) + (+2)
(β8) + (β2)
(β8) + (+2)
(+8) + (β2)
Β
7 + 12
7 β 12
β7 + 12
β7 β 12
Β
15 + 11
β15 + 11
β15 β 11
15 β 11
reshalka.com
Π Π΅ΡΠ΅Π½ΠΈΠ΅ 1
β6 β 8 = β14;
+6 + 8 = 14;
β2 β 11 = β13;
+11 + 2 = 13.
Β
β6 + 8 = 2;
+6 β 8 = β2;
β2 + 11 = 9;
β11 + 2 = β9.
Π Π΅ΡΠ΅Π½ΠΈΠ΅ 2
(β6) + (β8) = β14;
(+6) + (+8) = 14;
(β2) + (β11) = β13;
(+11) + (+2) = 13.
Β
(β6) + (+8) = 2;
(+6) + (β8) = β2;
(β2) + (+11) = 9;
(β11) + (+2) = β9.
Π Π΅ΡΠ΅Π½ΠΈΠ΅ 3
Π ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΡΠΎΠ»Π±ΡΠ΅ ΡΠ»Π°Π³Π°Π΅ΠΌΡΠ΅ ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΉ Π·Π½Π°ΠΊ, Π° Π²ΠΎ Π²ΡΠΎΡΠΎΠΌ β ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΡΠΉ.
Π Π΅ΡΠ΅Π½ΠΈΠ΅ 4
ΠΡΠΈ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΡΠΈΡΠ΅Π» ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ;
ΠΏΡΠΈ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ
β ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅;
ΠΏΡΠΈ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΡΠΈΡΠ΅Π» Ρ ΡΠ°Π·Π½ΡΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ Π·Π½Π°ΠΊ ΡΡΠΌΠΌΠ° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π΅Π½ Π·Π½Π°ΠΊΠ° ΡΠ»Π°Π³Π°Π΅ΠΌΠΎΠ³ΠΎ Ρ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΌ.
Π Π΅ΡΠ΅Π½ΠΈΠ΅ 5
|β14| = 14
|β6| + |β8| = 14
|14| = 14
|+6| + |+8| = 14
|β13| = 13
|β2| + |β11| = 13
|13| = 13
|+11| + |+2| = 13
Π Π΅ΡΠ΅Π½ΠΈΠ΅ 6
|2| = 2
|+8| β |β6| = 2
|β2| = 2
|β8| β |+6| = 2
|9| = |9|
|11| β |β2| = 9
|β9| = 9
|β11| β |+2| = 9
Π Π΅ΡΠ΅Π½ΠΈΠ΅ 7
Π°) ΠΠ½Π°ΠΊ ΡΡΠΌΠΌΡ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ Π·Π½Π°ΠΊΠΈ ΡΠ»Π°Π³Π°Π΅ΠΌΡΡ
; ΠΌΠΎΠ΄ΡΠ»Ρ ΡΡΠΌΠΌΡ ΡΠ°Π²Π΅Π½ ΡΡΠΌΠΌΠ΅ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΡΠ»Π°Π³Π°Π΅ΠΌΡΡ
;
Π±) ΠΠ½Π°ΠΊ ΡΡΠΌΠΌΡ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ Π·Π½Π°ΠΊ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΠΏΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ»Π°Π³Π°Π΅ΠΌΠΎΠ³ΠΎ; ΠΌΠΎΠ΄ΡΠ»Ρ ΡΡΠΌΠΌΡ ΡΠ°Π²Π΅Π½ ΡΠ°Π·Π½ΠΎΡΡΠΈ ΠΏΡΠΈ Π²ΡΡΠΈΡΠ°Π½ΠΈΠΈ ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΡΠΈΡΠ»Π° ΠΌΠΎΠ΄ΡΠ»Ρ ΠΌΠ΅Π½ΡΡΠ΅Π³ΠΎ.
Π Π΅ΡΠ΅Π½ΠΈΠ΅ 8
(+16) + (+4) = |16| + |4| = 20
(+16) + (β4) = +(|16| β |β4|) = 12
(β16) + (β4) = β(|β16| + |β4|) = β20
(β16) + (+4) = β(|β16| + |4|) = β12
(+8) + (+2) = |8| + |2| = 10
(β8) + (β2) = β(|β8| + |β2|) = β10
(β8) + (+2) = β(|β8| β |2|) = β6
(+8) + (β2) = β(|+8| β |β2|) = 6
7 + 12 = |7| + |12| = 19
7 β 12 = β(|β12| β |7|) = β5
β7 β 12 = β(|β7| + |β12|) = β19
15 + 11 = |15| + |11| = 26
β15 + 11 = β(|β15| β |11|) = β4
β15 β 11 = β(|β15| + |β11|) = β26
15 β 11 = +(|15| β |β11|) = 4
- ΠΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π΅
- Π‘Π»Π΅Π΄ΡΡΡΠ΅Π΅
ΠΠ°ΡΠ»ΠΈ ΠΎΡΠΈΠ±ΠΊΡ?
ΠΡΠ»ΠΈ ΠΡ Π½Π°ΡΠ»ΠΈ ΠΎΡΠΈΠ±ΠΊΡ, Π½Π΅ΡΠΎΡΠ½ΠΎΡΡΡ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ Π½Π΅ ΡΠΎΠ³Π»Π°ΡΠ½Ρ Ρ ΠΎΡΠ²Π΅ΡΠΎΠΌ, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ° ΡΠΎΠΎΠ±ΡΠΈΡΠ΅ Π½Π°ΠΌ ΠΎΠ± ΡΡΠΎΠΌ
7.
11 ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ (ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ) 7.11 ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ (ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ)- 7.11.1 ΠΡΠΎΡΡΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Ρ
- 7.11.2 ΠΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ
- 7.11.3 Π€ΡΠ½ΠΊΡΠΎΡΡ
|
Π‘ΠΌ. ΡΠ°ΠΊΠΆΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ·ΡΠΊΠΎΠ²ΡΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ: ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ, ΠΏΠ΅ΡΠ²ΠΎΠΊΠ»Π°ΡΡΠ½ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ, ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π² ΠΎΡΠΊΡΡΡΡΡ Π·Π°ΡΠ²Π»Π΅Π½ΠΈΡΡ , Π°ΡΡΠΈΠ±ΡΡΡ, ΡΠ·Π»Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎΡΠΎΠΆΠ΄Π°ΡΡΠΈΠ΅ ΡΡΠ½ΠΊΡΠΎΡΡ.
7.11.1 ΠΡΠΎΡΡΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Ρ
ΠΡΡΡ ΠΊ ΠΌΠΎΠ΄ΡΠ»Ρ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΎΡΠ΅Π½ΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΡΠ»Ρ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠΉ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ-ΠΏΡΡΡ.
ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ( module-expr ) Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΎΡ ΠΆΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ, ΡΡΠΎ ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆ.
ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ( module-expr : Β module-type ) ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ, ΡΡΠΎ ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ΡΠΈΠΏΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ-ΡΠΈΠΏΠ°, ΡΠΎ Π΅ΡΡΡ Π²ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ Π² ΡΠΈΠΏΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ, ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ Π² module-expr, Π° ΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ, Π·Π°Π΄Π°Π½Π½ΡΠΌ Π² ΠΌΠΎΠ΄ΡΠ»ΡΠ½ΠΎΠΌ ΡΠΈΠΏΠ΅. ΠΡΡΠ³ΠΈΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΠΎΠ½ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ, ΡΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ module-expr ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠΈΠΏΠ° module-type. Π¦Π΅Π»ΡΠΉ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΎΡ ΠΆΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ, ΡΡΠΎ ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π²ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, Π½Π΅ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ Π² ΡΠΈΠΏΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ, ΡΠΊΡΡΡΡ ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡΡ Π±ΠΎΠ»Π΅Π΅ Π΄ΠΎΡΡΡΠΏΠ½Ρ.
7.11.2 ΠΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ
Structures struct β¦ end β ΡΡΠΎ Π½Π°Π±ΠΎΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ Π΄Π»Ρ ΠΈΠΌΠ΅Π½Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΈΠΌΠ΅Π½Π° ΡΠΈΠΏΠΎΠ², ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ, ΠΈΠΌΠ΅Π½Π° ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΈ ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠΌΠ΅Π½Π°.
ΠΠ»Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Ρ ΡΡΠ°Π·Π°ΠΌΠΈ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ (Π³Π»Π°Π²Π°Β 10), Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ;; Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΏΠΎΡΠ»Π΅ ΠΈ ΠΏΠ΅ΡΠ΅Π΄ ΠΊΠ°ΠΆΠ΄ΡΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ Π² ΡΡΡΡΠΊΡΡΡΠ΅. ΠΡΠΈ ;; Π½Π΅ ΠΈΠΌΠ΅ΡΡ ΡΠΌΡΡΠ»ΠΎΠ²ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. Π’ΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΡΠ΅Ρ ;; Π΄ΠΎΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ. ΠΡΠΎ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ ΠΏΡΡΡΡ _ = expr, Ρ. Π΅. expr ΡΠ°Π²Π½ΠΎ ΠΎΡΠ΅Π½ΠΈΠ²Π°Π΅ΡΡΡ ΠΏΠΎ Π΅Π³ΠΎ ΠΏΠΎΠ±ΠΎΡΠ½ΡΠΌ ΡΡΡΠ΅ΠΊΡΠ°ΠΌ, Π½ΠΎ Π½Π΅ ΠΏΡΠΈΠ²ΡΠ·Π°Π½ ΠΊ ΠΊΠ°ΠΊΠΎΠΌΡ-Π»ΠΈΠ±ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ. ΠΡΠ»ΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΡΡΡΡΠΊΡΡΡΡ, ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ;; ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΡΡΠΈΡΡ.
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ let [rec] let-binding Β { ΠΈ let-binding } ΡΠ²ΡΠ·ΡΠ²Π°ΡΡ ΠΈΠΌΠ΅Π½Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ let β¦ in β¦ (ΡΠΌ. ΡΠ°Π·Π΄Π΅Π» 7.7.1). ΠΠΌΠ΅Π½Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΏΠΎΡΠ²Π»ΡΡΡΠΈΠ΅ΡΡ Π² Π»Π΅Π²ΡΠ΅ ΡΠ°ΡΡΠΈ ΠΏΡΠΈΠ²ΡΠ·ΠΎΠΊ ΠΏΡΠΈΠ²ΡΠ·Π°Π½Ρ ΠΊ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌ Π² ΠΏΡΠ°Π²ΡΡ ΡΡΠΎΡΠΎΠ½Π°Ρ .
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ external value-name : Β typexpr = Β external-declaration ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΠΈΠΌΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊ Π²Π½Π΅ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ, ΡΠΊΠ°Π·Π°Π½Π½ΡΡ Π² external-declaration (ΡΠΌ. Π³Π»Π°Π²ΡΒ 20).
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΈΠΏΠΎΠ²
ΠΠ°ΠΏΠΈΡΠ°Π½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΡΠΈΠΏΠ° type typedef Β { ΠΈ typedef } ΠΈ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π²Π·Π°ΠΈΠΌΠ½ΠΎ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ ΠΈΠΌΠ΅Π½ ΡΠΈΠΏΠΎΠ².
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ
ΠΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ constr-decl ΠΈΠ»ΠΈ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ constr-name = Β constr.
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ²
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ ΠΊΠ»Π°ΡΡΠΎΠΌ class-binding Β { ΠΈ class-binding } ΠΈ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π²Π·Π°ΠΈΠΌΠ½ΠΎ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ ΠΊΠ»Π°ΡΡΠΎΠ². ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ 7.9.3.
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΈΠΏΠΎΠ² ΠΊΠ»Π°ΡΡΠΎΠ²
ΠΠ°ΠΏΠΈΡΠ°Π½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΡΠΈΠΏ ΠΊΠ»Π°ΡΡΠ° classtype-def Β { ΠΈ classtype-def } ΠΈ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²Π·Π°ΠΈΠΌΠ½ΠΎ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ ΠΈΠΌΠ΅Π½ ΡΠΈΠΏΠΎΠ² ΠΊΠ»Π°ΡΡΠΎΠ².
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ
ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΡΠΎΡΠΌΠ° Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΠΌΠΎΠ΄ΡΠ»Ρ: ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠΌΡ_ΠΌΠΎΠ΄ΡΠ»Ρ = Β ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΎΡΠ΅Π½ΠΈΠ²Π°Π΅Ρ ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΠΏΡΠΈΠ²ΡΠ·ΡΠ²Π°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΊ ΠΈΠΌΠ΅Π½ΠΈ ΠΈΠΌΡ-ΠΌΠΎΠ΄ΡΠ»Ρ.
ΠΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ
ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠΌΡ-ΠΌΠΎΠ΄ΡΠ»Ρ : ΡΠΈΠΏ-ΠΌΠΎΠ΄ΡΠ»Ρ = Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅-ΠΌΠΎΠ΄ΡΠ»Ρ
Π²ΠΌΠ΅ΡΡΠΎ
ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠΌΡ-ΠΌΠΎΠ΄ΡΠ»Ρ = ( Β Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅-ΠΌΠΎΠ΄ΡΠ»Ρ : Β ΡΠΈΠΏ-ΠΌΠΎΠ΄ΡΠ»Ρ ).
ΠΡΡΠ³ΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠΉ ΡΠΎΡΠΌΠΎΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ
ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠΌΡ-ΠΌΠΎΠ΄ΡΠ»Ρ ( ΠΈΠΌΡ 1 : ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ 1 ) β¦ ( Β ΠΈΠΌΡ n : Β ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ n ) = Β Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ
ΡΡΠΎ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ
ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠΌΡ-ΠΌΠΎΠ΄ΡΠ»Ρ = ΡΡΠ½ΠΊΡΠΎΡ ( ΠΈΠΌΡ 1 : ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ 1 ) -> β¦ -> Β module-expr
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΈΠΏΠΎΠ² ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ
ΠΠ°ΠΏΠΈΡΠ°Π½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠΈΠΏΠ° ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ modtype-name = Β module-type. ΠΠ½ ΡΠ²ΡΠ·ΡΠ²Π°Π΅Ρ ΠΈΠΌΡ modtype-name Ρ ΡΠΈΠΏΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½Π½ΡΠΌ ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ.
ΠΡΠΊΡΡΡΠΈΠ΅ ΠΏΡΡΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ
ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ open module-path Π² ΡΡΡΡΠΊΡΡΡΠ΅ Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΈ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΏΡΠΈΠ²ΡΠ·ΠΎΠΊ. ΠΡΠΎ ΠΏΡΠΎΡΡΠΎ Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½Π½ΡΠΉ ΠΏΡΡΠΈ ΠΊ ΠΌΠΎΠ΄ΡΠ»Ρ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΡΡΠ»Π°ΡΡΡΡ ΠΏΠΎ ΠΈΡ ΠΏΡΠΎΡΡΡΠΌ ΠΈΠΌΠ΅Π½Π°ΠΌ ΠΈΠΌΡ Π²ΠΌΠ΅ΡΡΠΎ ΠΏΡΡΠΈ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΊ ΠΏΡΡΠΈ ΠΊ ΠΌΠΎΠ΄ΡΠ»Ρ. ΠΈΠΌΡ. ΠΠ±ΡΠ΅ΠΌ open ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡΡ.
ΠΠΊΠ»ΡΡΠ°Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π΄ΡΡΠ³ΠΎΠΉ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ
ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² ΡΡΡΡΠΊΡΡΡΡ ΡΠ΅ΡΠΊΡΠΏΠΎΡΡΠ° Π² ΡΠ΅ΠΊΡΡΠ°Ρ ΡΡΡΡΠΊΡΡΡΠ° Π²ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡΡ, ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½Π½ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ S ΠΏΡΠΈΠ²ΡΠ·Π°Π½ ΠΊ ΠΌΠΎΠ΄ΡΠ»Ρ
ΡΠΈΠΏ ΡΡΡΡΠΊΡΡΡΡ t = int let x = 2 end
Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ
struct include S let y = (x + 1 : t) end
ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Ρ
ΡΠΈΠΏ ΡΡΡΡΠΊΡΡΡΡ t = S.t ΠΏΡΡΡΡ x = S.x ΠΏΡΡΡΡ y = (x + 1 : t) end
Π Π°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ open ΠΈ include Π² ΡΠΎΠΌ, ΡΡΠΎ open ΠΏΡΠΎΡΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΊΠΎΡΠΎΡΠΊΠΈΠ΅ ΠΈΠΌΠ΅Π½Π° Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΡΡΡΡΠΊΡΡΡΠ°, Π±Π΅Π· ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ -Π»ΠΈΠ±ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΡΡΡΠΊΡΡΡΡ, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ include ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Π²ΠΊΠ»ΡΡΠ΅Π½Π½Π°Ρ ΡΡΡΡΠΊΡΡΡΠ°.
7.11.3 Π€ΡΠ½ΠΊΡΠΎΡΡ
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΎΡΠ°
Π€ΡΠ½ΠΊΡΠΎΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ( ΠΈΠΌΡ-ΠΌΠΎΠ΄ΡΠ»Ρ : Β ΡΠΈΠΏ-ΠΌΠΎΠ΄ΡΠ»Ρ ) -> module-expr Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΡΠ½ΠΊΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠΎΠ΄ΡΠ»ΠΈ ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ-ΡΠΈΠΏ 1 , ΠΏΡΠΈΠ²ΡΠ·ΡΠ²Π°Π΅Ρ ΠΈΠΌΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΊ ΡΡΠΈΠΌ ΠΌΠΎΠ΄ΡΠ»ΡΠΌ, ΠΎΡΠ΅Π½ΠΈΠ²Π°Π΅Ρ ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Π΅ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ². ΠΠΈΠΊΠ°ΠΊΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ Π½Π° ΡΠΈΠΏ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ ΡΡΠ½ΠΊΡΠΎΡΠ°; Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, ΡΡΠ½ΠΊΡΠΎΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠ½ΠΊΡΠΎΡ ΠΊΠ°ΠΊ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ (ΡΡΠ½ΠΊΡΠΎΡ Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ°).
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Functor
ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ module-expr 1 ( Β module-expr 2 ) ΠΎΡΠ΅Π½ΠΈΠ²Π°Π΅Ρ ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ 1 Π² ΡΡΠ½ΠΊΡΠΎΡ ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ 2 Π² ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅Ρ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΊΠΎ Π²ΡΠΎΡΠΎΠΌΡ. Π’ΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ-expr 2 ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΠΈΠΏΡ, ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠΌΡ Π΄Π»Ρ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΡΡΠ½ΠΊΡΠΎΡΠ° module-expr 1 .
ΠΠΎΠ΄ΡΠ»ΡΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ (ΠΌΠΎΠ΄ΡΠ»ΡΠ½ΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ)
ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ (ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ)
|
ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ²Π»ΡΡΡΡΡ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠΎΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΠΌΠΎΠ΄ΡΠ»Ρ. Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ: ΠΎΠ½ΠΈ ΠΎΡΠ΅Π½ΠΈΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΡΠ»ΠΈ, ΡΡΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π΄Π»Ρ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΉ, Π²ΡΡΠ°ΠΆΠ΅Π½Π½ΡΡ Π² ΡΠΈΠΏΠ°Ρ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ.
ΠΌΠΎΠ΄ΡΠ»Ρ-ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ | ::= | ΠΌΠΎΠ΄ΡΠ»Ρ-ΠΏΡΡΡ |
Β | | | struct { ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Β [;;] } ΠΊΠΎΠ½Π΅Ρ |
Β | | | ΡΡΠ½ΠΊΡΠΎΡ ( ΠΈΠΌΡ-ΠΌΠΎΠ΄ΡΠ»Ρ : ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ ) -> ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ |
Β | | | ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ( Β ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ) |
Β | | | ( ΠΌΠΎΠ΄ΡΠ»Ρ-ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ) |
Β | | | ( ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ : ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ ) |
ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ | ::= | let [rec] let-binding Β { ΠΈ let-binding } |
Β | | | external ΠΈΠΌΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΡ : Β typeexpr = Β external-declaration |
Β | | | ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠΈΠΏΠ° |
Β | | | ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ |
Β | | | ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ° |
Β | | | ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠΈΠΏΠ° ΠΊΠ»Π°ΡΡΠ° |
Β | | | ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠΌΡ-ΠΌΠΎΠ΄ΡΠ»Ρ Β { ( ΠΈΠΌΡ-ΠΌΠΎΠ΄ΡΠ»Ρ : Β ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ ) } [ : ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ ] = Β ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ |
Β | | | ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠΌΡ-ΡΠΈΠΏΠ°-ΠΌΠΎΠ΄ΡΠ»Ρ = Β ΡΠΈΠΏ-ΠΌΠΎΠ΄ΡΠ»Ρ |
Β | | | ΠΎΡΠΊΡΡΡΡΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ-ΠΏΡΡΡ |
Β | | | Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΌΠΎΠ΄ΡΠ»Ρ-ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ |
|
ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΡΡ ΠΊ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΎΡΠ΅Π½ΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΡΠ»Ρ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠΉ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ-ΠΏΡΡΡ .
ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ( ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ) Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΎΡ ΠΆΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ, ΡΡΠΎ ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ .
ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ( ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ : Β ΠΌΠΎΠ΄ΡΠ»Ρ-ΡΠΈΠΏ ) ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ, ΡΡΠΎ ΡΠΈΠΏ module-expr ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ΡΠΈΠΏΠΎΠΌ module-type , ΡΠΎ Π΅ΡΡΡ Π²ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ Π² ΠΌΠΎΠ΄ΡΠ»Π΅ ΡΠΈΠΏΠ° , ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ Π² module-expr , ΠΈ ΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π·Π°Π΄Π°Π½Π½ΡΠΌ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ Π² ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠΈΠΏΠ° . ΠΡΡΠ³ΠΈΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΠΎΠ½ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ, ΡΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ module-expr ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΠΈΠΏΠ° module-type . Π¦Π΅Π»ΡΠΉ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°Π²Π½ΠΎ ΡΠΎΠΌΡ ΠΆΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ, ΡΡΠΎ ΠΈ module-expr , Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π²ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, Π½Π΅ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ Π² ΠΌΠΎΠ΄ΡΠ»Π΅ ΡΠΈΠΏΠ° , ΡΠΊΡΡΡΡ ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡΡ Π±ΠΎΠ»Π΅Π΅ Π΄ΠΎΡΡΡΠΏΠ½Ρ.
|
Π‘ΡΡΡΠΊΡΡΡΡ struct … end ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ Π½Π°Π±ΠΎΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ Π΄Π»Ρ ΠΈΠΌΠ΅Π½Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΈΠΌΠ΅Π½Π° ΡΠΈΠΏΠΎΠ², ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ, ΠΈΠΌΠ΅Π½Π° ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΈ ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠΌΠ΅Π½Π°. ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΎΡΠ΅Π½ΠΈΠ²Π°ΡΡΡΡ Π² ΡΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΎΠ½ΠΈ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ Π² ΡΡΡΡΠΊΡΡΡΠ΅. ΠΠ±ΡΠ΅ΠΌ ΠΏΡΠΈΠ²ΡΠ·ΠΎΠΊ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡΡΡ Π΄ΠΎ ΠΊΠΎΠ½ΡΠ° ΡΡΡΡΠΊΡΡΡΡ. ΠΠ°ΠΊ ΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΡΡΠ»Π°ΡΡΡΡ Π½Π° ΠΈΠΌΠ΅Π½Π°, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΡΠ°Π½Π½ΠΈΠΌΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡΠΌΠΈ Π² ΡΠΎΠΌ ΠΆΠ΅ ΡΠΎΡΡΠ°Π².
ΠΠ»Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Ρ ΡΡΠ°Π·Π°ΠΌΠΈ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ (Π³Π»Π°Π²Π°Β 9) ΠΈ Ρ Caml Light, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ;; Π΄ΠΎΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π² ΡΡΡΡΠΊΡΡΡΠ΅. ;; Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ ΡΠΌΡΡΠ»ΠΎΠ²ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. Π’Π°ΠΊΠΆΠ΅ Π΄Π»Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ, ;; expr Π΄ΠΎΠΏΡΡΠΊΠ°Π΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΏΡΡΡΡ _ = expr , ΡΠΎ Π΅ΡΡΡ ΠΎΡΠ΅Π½ΠΈΡΠ΅ expr Π΄Π»Ρ Π΅Π³ΠΎ ΠΏΠΎΠ±ΠΎΡΠ½ΡΡ ΡΡΡΠ΅ΠΊΡΠΎΠ².
|
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ let [rec] let-binding Β { and let-binding } ΡΠ²ΡΠ·ΡΠ²Π°ΡΡ ΠΈΠΌΠ΅Π½Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ let. .. in… (ΡΠΌ. ΡΠ°Π·Π΄Π΅Π» 6.7.1). ΠΠΌΠ΅Π½Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΏΠΎΡΠ²Π»ΡΡΡΠΈΠ΅ΡΡ Π² Π»Π΅Π²ΡΠ΅ ΡΠ°ΡΡΠΈ ΠΏΡΠΈΠ²ΡΠ·ΠΎΠΊ ΠΏΡΠΈΠ²ΡΠ·Π°Π½Ρ ΠΊ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌ Π² ΠΏΡΠ°Π²ΡΡ ΡΡΠΎΡΠΎΠ½Π°Ρ .
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ external ΠΈΠΌΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΡ : Β typeexpr = Β Π²Π½Π΅ΡΠ½Π΅Π΅ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΠΈΠΌΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊ Π²Π½Π΅ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ, ΡΠΊΠ°Π·Π°Π½Π½ΡΡ Π² external-declaration (ΡΠΌ. Π³Π»Π°Π²Ρ 18).
|
ΠΠ°ΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΡΠΈΠΏΠ° type typedef Β { ΠΈ typedef } ΠΈ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π²Π·Π°ΠΈΠΌΠ½ΠΎ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ ΠΈΠΌΠ΅Π½ ΡΠΈΠΏΠΎΠ².
|
ΠΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ constr-decl ΠΈΠ»ΠΈ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ constr-name = Β constr .
|
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΏΠΈΡΠ΅ΡΡΡ class class-binding Β { ΠΈ class-binding } ΠΈ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π²Π·Π°ΠΈΠΌΠ½ΠΎ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ ΠΊΠ»Π°ΡΡΠΎΠ². ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π² ΡΠ°Π·Π΄Π΅Π»Π΅Β 6.9..3.
|
ΠΠ°ΠΏΠΈΡΠ°Π½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΡΠΈΠΏ ΠΊΠ»Π°ΡΡΠ° classtype-def Β { ΠΈ classtype-def } ΠΈ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²Π·Π°ΠΈΠΌΠ½ΠΎ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ ΠΈΠΌΠ΅Π½ ΡΠΈΠΏΠΎΠ² ΠΊΠ»Π°ΡΡΠΎΠ². ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΈΠΏΠΎΠ² ΠΊΠ»Π°ΡΡΠΎΠ² Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΠ°Π½Ρ Π² ΡΠ°Π·Π΄Π΅Π»Β 6.9.5.
|
ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΡΠΎΡΠΌΠ° Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΠΌΠΎΠ΄ΡΠ»Ρ: ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠΌΡ ΠΌΠΎΠ΄ΡΠ»Ρ = Β ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ , ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠ΅Π½ΠΈΠ²Π°Π΅Ρ ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠ²ΡΠ·ΡΠ²Π°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π½Π° ΠΈΠΌΡ ΠΈΠΌΡ ΠΌΠΎΠ΄ΡΠ»Ρ .
ΠΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ
ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠΌΡ-ΠΌΠΎΠ΄ΡΠ»Ρ : ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ = ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅
Π²ΠΌΠ΅ΡΡΠΎΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠΌΡ-ΠΌΠΎΠ΄ΡΠ»Ρ = ( Β ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ : Β ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠΈΠΏΠ° ).
ΠΡΡΠ³ΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΎΠΉ ΡΠΎΡΠΌΠΎΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠΌΡ ΠΌΠΎΠ΄ΡΠ»Ρ ( ΠΈΠΌΡ 1 : ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ 1 ) … ( Β ΠΈΠΌΡ n : Β ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ n ) = Β ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅
ΡΡΠΎ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠΌΡ-ΠΌΠΎΠ΄ΡΠ»Ρ = ΡΡΠ½ΠΊΡΠΎΡ ( Β ΠΈΠΌΡ 1 : Β ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ 1 ) -> … -> Β ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅
|
ΠΠ°ΠΏΠΈΡΠ°Π½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠΈΠΏΠ° ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠΌΡ-ΡΠΈΠΏΠ°-ΠΌΠΎΠ΄ΡΠ»Ρ = Β ΡΠΈΠΏ-ΠΌΠΎΠ΄ΡΠ»Ρ . ΠΠ½ ΡΠ²ΡΠ·ΡΠ²Π°Π΅Ρ ΠΈΠΌΡ modtype-name Ρ ΡΠΈΠΏΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½Π½ΡΠΌ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ .
|
ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ open module-path Π² ΡΡΡΡΠΊΡΡΡΠ΅ Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΈ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΏΡΠΈΠ²ΡΠ·ΠΎΠΊ. ΠΡΠΎ ΠΏΡΠΎΡΡΠΎ Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½Π½ΡΠΉ , ΠΏΡΡΡ ΠΊ ΠΌΠΎΠ΄ΡΠ»Ρ , Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΡΡΠ»Π°ΡΡΡΡ ΠΏΠΎ ΠΈΡ ΠΏΡΠΎΡΡΡΠΌ ΠΈΠΌΠ΅Π½Π°ΠΌ ΠΈΠΌΡ Π²ΠΌΠ΅ΡΡΠΎ ΠΏΡΡΠΈ Π΄ΠΎΡΡΡΠΏΠ° ΠΌΠΎΠ΄ΡΠ»Ρ-ΠΏΡΡΡ . ΠΈΠΌΡ . ΠΠ±ΡΠ΅ΠΌ open ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡΡ.
|
ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² ΡΡΡΡΠΊΡΡΡΡ ΡΠ΅ΡΠΊΡΠΏΠΎΡΡΠ° Π² ΡΠ΅ΠΊΡΡΠ°Ρ ΡΡΡΡΠΊΡΡΡΠ° Π²ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡΡ, ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½Π½ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ . ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ S ΠΏΡΠΈΠ²ΡΠ·Π°Π½ ΠΊ ΠΌΠΎΠ΄ΡΠ»Ρ
ΡΠΈΠΏ ΡΡΡΡΠΊΡΡΡΡ t = int let x = 2 endΠ²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ
struct include S let y = (x + 1 : t) endΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ΄ΡΠ»Ρ
ΡΠΈΠΏ ΡΡΡΡΠΊΡΡΡΡ t = int ΠΏΡΡΡΡ x = 2 ΠΏΡΡΡΡ y = (x + 1 : t) endΠ Π°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ open ΠΈ include Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ open ΠΏΡΠΎΡΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΊΠΎΡΠΎΡΠΊΠΈΠ΅ ΠΈΠΌΠ΅Π½Π° Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΡΡΡΡΠΊΡΡΡΠ°, Π±Π΅Π· ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ -Π»ΠΈΠ±ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΡΡΡΠΊΡΡΡΡ, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ include ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Π²ΠΊΠ»ΡΡΠ΅Π½Π½Π°Ρ ΡΡΡΡΠΊΡΡΡΠ°.
|
|
Π€ΡΠ½ΠΊΡΠΎΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ( ΠΈΠΌΡ-ΠΌΠΎΠ΄ΡΠ»Ρ : Β ΡΠΈΠΏ-ΠΌΠΎΠ΄ΡΠ»Ρ ) -> ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΡΠ½ΠΊΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠΎΠ΄ΡΠ»ΠΈ ΡΠΈΠΏ ΠΌΠΎΠ΄ΡΠ»Ρ-ΡΠΈΠΏ 1 , ΠΏΡΠΈΠ²ΡΠ·ΡΠ²Π°Π΅Ρ ΠΈΠΌΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΊ ΡΡΠΈΠΌ ΠΌΠΎΠ΄ΡΠ»ΡΠΌ, ΠΎΡΠ΅Π½ΠΈΠ²Π°Π΅Ρ ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Π΅ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ². ΠΠΈΠΊΠ°ΠΊΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ Π½Π° ΡΠΈΠΏ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ ΡΡΠ½ΠΊΡΠΎΡΠ°; Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, ΡΡΠ½ΠΊΡΠΎΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠ½ΠΊΡΠΎΡ ΠΊΠ°ΠΊ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ (ΡΡΠ½ΠΊΡΠΎΡ Β«Π²ΡΡΡΠ΅Π³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ°Β»).
|
ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ 1 ( Β ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ 2 ) ΠΎΡΠ΅Π½ΠΈΠ²Π°Π΅Ρ ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ 1 Π² ΡΡΠ½ΠΊΡΠΎΡ ΠΈ ΠΌΠΎΠ΄ΡΠ»Ρ-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ 2 Π² ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅Ρ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΊΠΎ Π²ΡΠΎΡΠΎΠΌΡ.