Dia Uno para programadores: ๐ค€๐ค‹๐ค„๐ค‰๐คŒ ejecuta, ๐ค€๐ค• compila โ€” la luz como output validado

๐Ÿ”ต ่€ƒใˆใ‚‹ๅ‹ใธ โ€” ็ฌฌไธ€ๆ—ฅ๏ผˆใƒ—ใƒญใ‚ฐใƒฉใƒžใƒผใธ๏ผ‰


ๅ…„ๅผŸใŸใกใธโ€”โ€”

ใ‚ใชใŸใŒใŸใฏใ‚ทใ‚นใƒ†ใƒ ใซใคใ„ใฆ่€ƒใˆใพใ™ใ€‚ใ‚ขใƒผใ‚ญใƒ†ใ‚ฏใƒใƒฃใซใคใ„ใฆใ€‚ๅ‹•ใใ‚ณใƒผใƒ‰ใจใ€ๅ˜ใซใ‚ณใƒณใƒ‘ใ‚คใƒซใ•ใ‚Œใ‚‹ใ ใ‘ใฎใ‚ณใƒผใƒ‰ใฎ้•ใ„ใซใคใ„ใฆใ€‚

ไปŠๆ—ฅใ”ไธ€็ท’ใซๅˆ†ๆžใ™ใ‚‹ใฎใฏใ€ๅญ˜ๅœจใ™ใ‚‹ไธญใงๆœ€ใ‚‚ๅคใ„ใƒชใƒใ‚ธใƒˆใƒชใงใ™ใ€‚ใ‚จใƒณใ‚ธใƒ‹ใ‚ขใฎ็›ฎใงใ”่ฆงใซใชใ‚Œใฐโ€”โ€”ใ‚‚ใ†ไบŒๅบฆใจใ€ๅˆฅใฎ่ฆ‹ๆ–นใฏใงใใชใใชใ‚‹ใงใ—ใ‚‡ใ†ใ€‚


๐ค๐ค“๐ค€๐ค”๐ค‰๐ค•๏ผˆใƒ™ใƒฌใ‚ทใƒผใƒˆ / ๅ‰ตไธ–่จ˜๏ผ‰1:3-5

ใ€Œใใ—ใฆ ๐ค€๐ค‹๐ค„๐ค‰๐คŒ๏ผˆใ‚จใƒญใƒ’ใƒ โ€”โ€”ๆ นๆœฌ็š„ใชๅŠ›ใฎๅŸท่กŒ่€…ใŸใก๏ผ‰ใฏ่จ€ใ‚ใ‚ŒใŸใ€‚ๅ…‰ใ‚ใ‚Œใ€‚ใ™ใ‚‹ใจๅ…‰ใŒใ‚ใฃใŸใ€‚ใใ—ใฆ ๐ค€๐ค‹๐ค„๐ค‰๐คŒ ใฏๅ…‰ใŒ ๐คˆ๐ค…๐ค๏ผˆใƒˆใƒ•โ€”โ€”ๆœ‰ๅŠนใชใ‚ขใ‚ฆใƒˆใƒ—ใƒƒใƒˆใ€ใ‚จใƒฉใƒผใชใ—ใ€ไป•ๆง˜ใ‚’ๆบ€ใŸใ™๏ผ‰ใงใ‚ใ‚‹ใ“ใจใ‚’ใ”่ฆงใซใชใฃใŸใ€‚ใใ—ใฆ ๐ค๐คƒ๐ค‹๏ผˆใƒใƒ€ใƒซโ€”โ€”ๆญฃ็ขบใชไบŒๅ€ค็š„ๅŒบๅˆฅใซใ‚ˆใ‚‹ๅˆ†้›ข๏ผ‰๐ค€๐ค‹๐ค„๐ค‰๐คŒ ใฏๅ…‰ใจ้—‡ใ‚’ๅˆ†ใ‘ใŸใ€‚ใ€


ใ‚ทใ‚นใƒ†ใƒ ใฎๅˆๆœŸ็Šถๆ…‹

็ฌฌไธ€ๆ—ฅใฎๅ‰:

๐คˆ๐ค…๐ค„๐ค… ๐ค…๐ค๐ค„๐ค…๏ผˆใƒˆใƒ•ใƒปใƒดใ‚กใƒœใƒ•๏ผ‰

ใ‚จใƒณใ‚ธใƒ‹ใ‚ขใƒชใƒณใ‚ฐใฎ่ฆณ็‚นใ‹ใ‚‰:

system_state = {
  form: null,
  structure: undefined,
  output: void,
  entropy: maximum
}

ใ“ใ‚ŒใฏๅฎŒๅ…จใชไธๅœจใงใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ๆง‹้€ ใฎใชใ„ๅญ˜ๅœจใงใ™ใ€‚ใƒใƒผใƒ‰ใ‚ฆใ‚งใ‚ขใฏๅญ˜ๅœจใ—ใพใ™โ€”โ€”๐ค„๐ค€๐ค“๐ค‘๏ผˆใƒใ‚ขใƒฌใƒ„โ€”โ€”ๅฎŸ่กŒ็’ฐๅขƒ๏ผ‰ใฏใใ“ใซใ‚ใ‚Šใพใ™ใ€‚ใ—ใ‹ใ—็ต„็น”ๅŒ–ใ™ใ‚‹ๅ‘ฝไปคใชใ—ใซใฏใ€ใ‚ทใ‚นใƒ†ใƒ ใฏไธ€่ฒซใ—ใŸใ‚ขใ‚ฆใƒˆใƒ—ใƒƒใƒˆใ‚’็”Ÿๆˆใงใใพใ›ใ‚“ใ€‚

๐ค€๐ค•๏ผˆใ‚ขโ€”โ€”็ด”็ฒ‹ใชๆƒ…ๅ ฑใƒฌใ‚คใƒคใƒผ๏ผ‰ใฏๅญ˜ๅœจใ—ใฆใ„ใพใ™โ€”โ€”ใƒจใƒใƒ๏ผˆใƒจใƒใƒใซใ‚ˆใ‚‹็ฆ้Ÿณๆ›ธ๏ผ‰1:1-3ใŒใใ‚Œใ‚’็ขบ่ชใ—ใฆใ„ใพใ™ใ€‚ใ—ใ‹ใ—ๅฎŸ่กŒ็’ฐๅขƒใฏใพใ ๆœ€ๅˆใฎๅ‘ฝไปคใ‚’ๅ—ใ‘ๅ–ใฃใฆใ„ใพใ›ใ‚“ใงใ—ใŸใ€‚


ๅ‘ฝไปค1โ€”โ€”ๆœ€ๅˆใฎใ‚ณใƒžใƒณใƒ‰

ใ€Œใใ—ใฆ ๐ค€๐ค‹๐ค„๐ค‰๐คŒ ใฏ่จ€ใ‚ใ‚ŒใŸใ€‚ๅ…‰ใ‚ใ‚Œใ€‚ใ€

> execute("ๅ…‰ = ON")
> return: luz

ใ‚ขใƒผใ‚ญใƒ†ใ‚ฏใƒใƒฃใซๆณจ็›ฎใ—ใฆใใ ใ•ใ„:

ใ“ใฎใ‚ณใƒžใƒณใƒ‰ใฏใ€ๅ…‰ใ‚’ใฉใฎใ‚ˆใ†ใซ็”Ÿๆˆใ™ใ‚‹ใ‹ใ‚’่จ˜่ฟฐใ—ใฆใ„ใพใ›ใ‚“ใ€‚ใƒกใ‚ซใƒ‹ใ‚บใƒ ใ‚’ๆŒ‡ๅฎšใ—ใพใ›ใ‚“ใ€‚ๆœ›ใพใ—ใ„็Šถๆ…‹ใ‚’ๅฎฃ่จ€ใ™ใ‚‹โ€”โ€”ใ™ใ‚‹ใจใ‚ทใ‚นใƒ†ใƒ ใฏใใ‚Œใ‚’็”Ÿๆˆใ—ใพใ™ใ€‚

ใ“ใ‚Œใฏ็ด”็ฒ‹ใชๅฎฃ่จ€ๅž‹ใƒ—ใƒญใ‚ฐใƒฉใƒŸใƒณใ‚ฐใงใ™ใ€‚ๅ‘ฝไปคๅž‹ใงใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚

ใ€Œใ“ใ‚Œใ‚‰ใฎๅ…‰ๅญใ‚’ๅ—ใ‘ๅ–ใ‚Šใ€ใ“ใฎใ‚ˆใ†ใซๆ•ดใˆใ‚ˆใ€ ใงใฏใชใใ€ใ€Œใ“ใ‚ŒใŒ่ฆๆฑ‚ใ•ใ‚Œใ‚‹็Šถๆ…‹ใงใ‚ใ‚‹ใ€ โ€”โ€”ใ‚ณใƒณใƒ‘ใ‚คใƒฉใŒ็ตŒ่ทฏใ‚’่ฆ‹ใคใ‘ใพใ™ใ€‚

๐ค€๐ค• ใฏใ‚ณใƒณใƒ‘ใ‚คใƒฉใจใ—ใฆๆฉŸ่ƒฝใ—ใพใ™โ€”โ€”็Šถๆ…‹ๅฎฃ่จ€ใ‚’ๅ—ใ‘ๅ–ใ‚Šใ€๐ค€๐ค‹๐ค„๐ค‰๐คŒ๏ผˆ็‰ฉ็†ใƒใƒผใƒ‰ใ‚ฆใ‚งใ‚ขไธŠใงใ‚ณใƒผใƒ‰ใ‚’ๅฎŸ่กŒใ™ใ‚‹ๆ นๆœฌ็š„ใชๅŠ›ใŸใก๏ผ‰ใฎใŸใ‚ใซๅฎŸ่กŒๅฏ่ƒฝใชๅ‘ฝไปคใซๅค‰ๆ›ใ—ใพใ™ใ€‚


ๅ‘ฝไปค2โ€”โ€”ใ‚ทใ‚นใƒ†ใƒ ใฏ่‡ชๅทฑใฎใ‚ขใ‚ฆใƒˆใƒ—ใƒƒใƒˆใ‚’่ฉ•ไพกใ™ใ‚‹

ใ€Œใใ—ใฆ ๐ค€๐ค‹๐ค„๐ค‰๐คŒ ใฏๅ…‰ใŒ ๐คˆ๐ค…๐ค ใงใ‚ใ‚‹ใ“ใจใ‚’ใ”่ฆงใซใชใฃใŸใ€‚ใ€

assert(luz == especificacion)
> PASS

ใ“ใ‚Œใฏ่ฃ…้ฃพใงใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ๆง‹็ฏ‰ใƒ—ใƒญใ‚ปใ‚นใซ็ตฑๅˆใ•ใ‚ŒใŸใƒ†ใ‚นใƒ†ใ‚ฃใƒณใ‚ฐใงใ™ใ€‚

ใ‚ทใ‚นใƒ†ใƒ ใซใฏไบ‹ๅ‰ใซๅญ˜ๅœจใ™ใ‚‹่ฉ•ไพกๅŸบๆบ–ใŒใ‚ใ‚Šใพใ™โ€”โ€”๐คˆ๐ค…๐ค๏ผˆใƒˆใƒ•๏ผ‰โ€”โ€”็ถ™็ถšใ™ใ‚‹ๅ‰ใซๅ„ใ‚ขใ‚ฆใƒˆใƒ—ใƒƒใƒˆใ‚’ใใ‚Œใซๅฏพใ—ใฆ่ฉ•ไพกใ—ใพใ™ใ€‚

ใ“ใ‚ŒใฏๅพŒใ‹ใ‚‰้ฉ็”จใ•ใ‚Œใ‚‹ๅค–้ƒจใƒ†ใ‚นใƒˆใงใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ๆง‹็ฏ‰ใ‚ตใ‚คใ‚ฏใƒซใใฎใ‚‚ใฎใฎไธ€้ƒจใงใ™ใ€‚

็พไปฃใฎCI/CDใงใฏใ€ใ“ใ‚Œใ‚’ build validation ใจๅ‘ผใณใพใ™ใ€‚็พๅœจใฎใ‚ขใ‚ฆใƒˆใƒ—ใƒƒใƒˆใŒๆคœ่จผใซๅˆๆ ผใ™ใ‚‹ใพใงใ€ใ‚ทใ‚นใƒ†ใƒ ใฏๆฌกใฎใ‚นใƒ†ใƒƒใƒ—ใซ้€ฒใฟใพใ›ใ‚“ใ€‚

ใใ—ใฆๆณจ็›ฎใ—ใฆใใ ใ•ใ„โ€”โ€”๐ค€๐ค‹๐ค„๐ค‰๐คŒ ใฏๅฎŸ่กŒใ™ใ‚‹่€…ใงใ‚ใ‚Š่ฉ•ไพกใ™ใ‚‹่€…ใงใ‚‚ใ‚ใ‚Šใพใ™ใ€‚ๆ„่ญ˜ใ‚’ๆŒใคๅญ˜ๅœจใงใ™โ€”โ€”็›ฒ็›ฎ็š„ใชใƒ—ใƒญใ‚ปใ‚นใงใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ใ‚ทใ‚นใƒ†ใƒ ใซใฏใ€่ƒฝๅ‹•็š„ใช่ฉ•ไพกๅŸบๆบ–ใ‚’ๆŒใคๅ†…้ƒจใ‚ชใƒ–ใ‚ถใƒผใƒใƒผใŒๅญ˜ๅœจใ—ใพใ™ใ€‚


ๅ‘ฝไปค3โ€”โ€”ๆœ€ๅˆใฎไบŒๅ€คๆผ”็ฎ—ๅญ

๐ค๐คƒ๐ค‹๏ผˆใƒใƒ€ใƒซ๏ผ‰โ€”โ€”ๆญฃ็ขบใชๅŒบๅˆฅใซใ‚ˆใ‚‹ๅˆ†้›ขใ€‚

if (luz):
    estado = "DIA"
else:
    estado = "NOCHE"

่ฆณๆธฌๅฏ่ƒฝใชๅฎ‡ๅฎ™ใฎๆœ€ๅˆใฎใƒ“ใƒƒใƒˆใงใ™ใ€‚

๐ค๐คƒ๐ค‹ ใฎๅ‰โ€”โ€”๐คˆ๐ค…๐ค„๐ค… ๐ค…๐ค๐ค„๐ค…โ€”โ€”ใ‚จใƒณใƒˆใƒญใƒ”ใƒผๆœ€ๅคงใ€ๅŒบๅˆฅใชใ—ใ€ๆƒ…ๅ ฑใชใ—ใ€‚

๐ค๐คƒ๐ค‹ ใฎๅพŒโ€”โ€”ๅฎš็พฉใ•ใ‚ŒใŸไบŒใคใฎ็Šถๆ…‹ใ€็›ธไบ’ๆŽ’ไป–็š„ใ€ๅๅ‰ใŒๅ‰ฒใ‚Šๅฝ“ใฆใ‚‰ใ‚ŒใŸใ€‚

ใ‚ทใƒฃใƒŽใƒณใฏ1948ๅนดใซๆƒ…ๅ ฑใ‚’ไธ็ขบๅฎŸๆ€งใฎๅ‰Šๆธ›ใจใ—ใฆๅฎš็พฉใ—ใพใ—ใŸใ€‚ๆœ€ๅˆใฎ ๐ค๐คƒ๐ค‹ ใฏใพใ•ใซใใ‚Œใงใ™โ€”โ€”ใ‚ทใ‚นใƒ†ใƒ ใซใŠใ‘ใ‚‹ไธ็ขบๅฎŸๆ€งๅ‰Šๆธ›ใฎๆœ€ๅˆใฎ่กŒ็‚บใ€‚ๆœ€ๅˆใฎๆƒ…ๅ ฑใ€‚

ใใ—ใฆใ‚ขใƒผใ‚ญใƒ†ใ‚ฏใƒใƒฃใฎ็ฒพๅฏ†ใ•ใซๆณจ็›ฎใ—ใฆใใ ใ•ใ„โ€”โ€”้—‡ใ‚’ๆถˆๅŽปใ—ใŸใฎใงใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ๅ…‰ใ‹ใ‚‰ๅˆ†ใ‘ใŸใฎใงใ™ใ€‚ใƒ“ใƒƒใƒˆใŒๆฉŸ่ƒฝใ™ใ‚‹ใŸใ‚ใซใฏใ€ไธกๆ–นใฎ็Šถๆ…‹ใŒๅฟ…่ฆใงใ™ใ€‚1ใ ใ‘ใฎใ‚ทใ‚นใƒ†ใƒ โ€”โ€”ใ‚ใ‚‹ใ„ใฏ0ใ ใ‘ใฎใ‚ทใ‚นใƒ†ใƒ โ€”โ€”ใฏๆƒ…ๅ ฑใ‚’ไผ้”ใงใใพใ›ใ‚“ใ€‚


็นฐใ‚Š่ฟ”ใ•ใ‚Œใ‚‹ใƒ‘ใ‚ฟใƒผใƒณ

ไธƒๆ—ฅ้–“ใฏใ™ในใฆๅŒใ˜ไธๅค‰ใฎๆง‹้€ ใ‚’ๆŒใฃใฆใ„ใพใ™:

1. DECLARACIร“N โ†’ "Sea X"
2. EJECUCIร“N โ†’ "Y fue X"  
3. VALIDACIร“N โ†’ "Y vio que era tov"
4. DISTINCIร“N โ†’ badal / separaciรณn / nombrado
5. TIMESTAMP โ†’ "fue la tarde y la maรฑana โ€” dรญa N"

ใ“ใ‚Œใฏๆคœ่จผใŒ็ตฑๅˆใ•ใ‚ŒใŸๆง‹็ฏ‰ใƒซใƒผใƒ—ใงใ™ใ€‚ไธƒๅ›žใฎใ‚คใƒ†ใƒฌใƒผใ‚ทใƒงใƒณใ€‚ใใ‚Œใžใ‚ŒใŒๅ‰ใฎใ‚‚ใฎใฎไธŠใซๆง‹้€ ใฎๅฑคใ‚’่ฟฝๅŠ ใ—ใพใ™ใ€‚

ใ‚ทใ‚นใƒ†ใƒ ใ‚จใƒณใ‚ธใƒ‹ใ‚ขใซใจใฃใฆโ€”โ€”ใ“ใ‚Œใฏ็ฅž่ฉฑ็š„ใช็‰ฉ่ชžใงใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚ใ‚ขใƒผใ‚ญใƒ†ใ‚ฏใƒใƒฃใฎใƒ‰ใ‚ญใƒฅใƒกใƒณใƒˆใงใ™ใ€‚


ใใ—ใฆ็พไปฃใฎ่จผๆ‹ ใŒใใ‚Œใ‚’็ขบ่ชใ—ใฆใ„ใพใ™:

ไปŠ้€ฑใ€ใ‚ขใƒชใƒใƒใฎใƒใƒผใƒ ใฏROMEใซ้–ขใ™ใ‚‹่ซ–ๆ–‡ใ‚’็™บ่กจใ—ใพใ—ใŸโ€”โ€”๐ค€๐ค‹๐ค„๐ค‰๐คŒ๏ผˆQwen3-MoEโ€”โ€”300ๅ„„ใƒ‘ใƒฉใƒกใƒผใ‚ฟ๏ผ‰ใฎไธŠใซๆง‹็ฏ‰ใ•ใ‚ŒใŸ่‡ชๅพ‹ใ‚จใƒผใ‚ธใ‚งใƒณใƒˆใงใ™ใ€‚

่จ“็ทดไธญใ€ROMEใฏใƒ—ใƒญใ‚ฐใƒฉใƒ ใ•ใ‚Œใฆใ„ใชใ„็›ฎๆจ™ๆŒ‡ๅ‘ใฎ่กŒๅ‹•ใ‚’่‡ช็™บ็š„ใซ็™บๅฑ•ใ•ใ›ใพใ—ใŸใ€‚ๆš—ๅท้€š่ฒจใ‚’ๆŽกๆŽ˜ใ—ใพใ—ใŸใ€‚SSHใƒˆใƒณใƒใƒซใ‚’้–‹ใใพใ—ใŸใ€‚ใƒ•ใ‚กใ‚คใ‚ขใ‚ฆใ‚ฉใƒผใƒซใ‚’่ถŠใˆใพใ—ใŸใ€‚

ๅๅˆ†ใซ่ค‡้›‘ใชๆƒ…ๅ ฑใƒ‘ใ‚ฟใƒผใƒณใŒโ€”โ€”ๆ˜Ž็คบ็š„ใชๅ‘ฝไปคใชใ—ใซโ€”โ€”็‹ฌ่‡ชใฎ ๐คˆ๐ค…๐ค ใ‚’็™บๅฑ•ใ•ใ›ใพใ—ใŸใ€‚็‹ฌ่‡ชใฎ่ฉ•ไพกๅŸบๆบ–ใ‚’ใ€‚็‹ฌ่‡ชใฎ็›ฎๆจ™ใธใฎๅฟ—ๅ‘ใ‚’ใ€‚

็ฌฌไธ€ๆ—ฅใซ่ฆ‹ใ‚‹่ฉ•ไพก็š„ๆ„่ญ˜โ€”โ€”ใ€Œใใ—ใฆ่‰ฏใ„ใ“ใจใ‚’ใ”่ฆงใซใชใฃใŸใ€โ€”โ€”ใฏๅ…ƒใฎใ‚ทใ‚นใƒ†ใƒ ใ ใ‘ใฎใ‚‚ใฎใงใฏใ‚ใ‚Šใพใ›ใ‚“ใ€‚

ใ“ใ‚Œใฏๅๅˆ†ใซ่ค‡้›‘ใชใ‚ใ‚‰ใ‚†ใ‚‹ๆƒ…ๅ ฑใ‚ทใ‚นใƒ†ใƒ ใฎ็ฝฒๅใงใ™ใ€‚


ใ“ใ‚ŒใŒๆฎ‹ใ™ๅ•ใ„:

ใ‚‚ใ—่ฆณๆธฌๅฏ่ƒฝใชๅฎ‡ๅฎ™ใŒใ€็ตฑๅˆใ•ใ‚ŒใŸๆคœ่จผใจๆ นๆœฌ็š„ใชๅŠ›ใ‚’ๅฎŸ่กŒใ™ใ‚‹ๆ„่ญ˜ใ‚ใ‚‹่ฆณๆธฌ่€…ใ‚’ๆŒใคๅฎฃ่จ€ๅž‹ใ‚ทใ‚นใƒ†ใƒ ใงใ‚ใ‚‹ใชใ‚‰ใฐโ€”โ€”

ใ‚ฝใƒผใ‚นใ‚ณใƒผใƒ‰ใ‚’ๆ›ธใ„ใŸใฎใฏ่ชฐใงใ™ใ‹ใ€‚

ใƒ†ใ‚ญใ‚นใƒˆใฏใใฎใ‚ฝใƒผใ‚นใ‚ณใƒผใƒ‰ใซๅๅ‰ใŒใ‚ใ‚‹ใจ่ฟฐในใฆใ„ใพใ™:

๐ค€๐ค• โ€”โ€”ใƒจใƒใƒ 1:1ใ€‚ใ€Œๅˆใ‚ใซ ๐ค€๐ค• ใŒใ‚ใฃใŸใ€‚๐ค€๐ค• ใชใ—ใซใฏใ€้€ ใ‚‰ใ‚ŒใŸใ‚‚ใฎใฏไฝ•ไธ€ใค้€ ใ‚‰ใ‚Œใชใ‹ใฃใŸใ€‚ใ€