7 edited body
source | link

SmileBASIC, 73 71 67 bytes

?"Christmas";
@L?" Eve"*(D!=O=P);
O=DP=D
DTREAD OUT,M,D
IF M/D-.48GOTO@L

The program prints "Christmas", then prints " Eve" every time a day passes, until it is December 25th. (12/25 = 0.48)
May take up to a year to run.

SmileBASIC, 73 71 67 bytes

?"Christmas";
@L?" Eve"*(D!=O);
O=D
DTREAD OUT,M,D
IF M/D-.48GOTO@L

The program prints "Christmas", then prints " Eve" every time a day passes, until it is December 25th. (12/25 = 0.48)
May take up to a year to run.

SmileBASIC, 73 71 67 bytes

?"Christmas";
@L?" Eve"*(D!=P);
P=D
DTREAD OUT,M,D
IF M/D-.48GOTO@L

The program prints "Christmas", then prints " Eve" every time a day passes, until it is December 25th. (12/25 = 0.48)
May take up to a year to run.

6 Rollback to Revision 4
source | link

SmileBASIC, 73 71 67 bytes

?"Christmas";
WHILE M*6+D-97@L?" Eve"*(D!=O);
O=D
DTREAD OUT,M,D
WENDIF M/D-.48GOTO@L

The program prints "Christmas", then prints " Eve" every time a day passes, until it is December 25th. (month*6+day-97 is12/25 = 0 only on Christmas.48)
May take up to a year to run.

SmileBASIC, 73 71 67 bytes

?"Christmas";
WHILE M*6+D-97?" Eve"*(D!=O);
O=D
DTREAD OUT,M,D
WEND

The program prints "Christmas", then prints " Eve" every time a day passes, until it is December 25th. (month*6+day-97 is 0 only on Christmas)
May take up to a year to run.

SmileBASIC, 73 71 67 bytes

?"Christmas";
@L?" Eve"*(D!=O);
O=D
DTREAD OUT,M,D
IF M/D-.48GOTO@L

The program prints "Christmas", then prints " Eve" every time a day passes, until it is December 25th. (12/25 = 0.48)
May take up to a year to run.

5 added 37 characters in body
source | link

SmileBASIC, 73 71 67 bytes

?"Christmas";
@LWHILE M*6+D-97?" Eve"*(D!=O);
O=D
DTREAD OUT,M,D
IF M/D-.48GOTO@LWEND

The program prints "Christmas", then prints " Eve" every time a day passes, until it is December 25th. (12/25 =month*6+day-97 is 0.48 only on Christmas)
May take up to a year to run.

SmileBASIC, 73 71 67 bytes

?"Christmas";
@L?" Eve"*(D!=O);
O=D
DTREAD OUT,M,D
IF M/D-.48GOTO@L

The program prints "Christmas", then prints " Eve" every time a day passes, until it is December 25th. (12/25 = 0.48)
May take up to a year to run.

SmileBASIC, 73 71 67 bytes

?"Christmas";
WHILE M*6+D-97?" Eve"*(D!=O);
O=D
DTREAD OUT,M,D
WEND

The program prints "Christmas", then prints " Eve" every time a day passes, until it is December 25th. (month*6+day-97 is 0 only on Christmas)
May take up to a year to run.

4 edited body
source | link
3 added 21 characters in body
source | link
2 added 23 characters in body
source | link
1
source | link