Chronos is one of the many Smalltalk-related blogs syndicated on Planet Smalltalk
χρόνος

Discussion of the Essence# programming language, and related issues and technologies.

Blog Timezone: America/Los_Angeles [Winter: -0800 hhmm | Summer: -0700 hhmm] 
Your local time:  
Showing posts with label holidays. Show all posts
Showing posts with label holidays. Show all posts

2009-03-12

2009 US Holidays

Most of the listed "holidays" will actually be business days, although some will not. The US Federal Holidays (on which most US Government offices will close, along with all Federally-chartered banks) are highlighted in bold. Generally, each business decides on its own which of these days (if any) will be non-business days (and for which employees):


Thu, 01 Jan 2009: NewYearsDay
Thu, 08 Jan 2009: JacksonDay
Mon, 19 Jan 2009: MartinLutherKingDay
Tue, 20 Jan 2009: InaugurationDay
Mon, 02 Feb 2009: GroundhogDay
Thu, 12 Feb 2009: LincolnsBirthday
Sat, 14 Feb 2009: ValentinesDay
Mon, 16 Feb 2009: WashingtonsBirthday
Tue, 17 Mar 2009: StPatricksDay
Wed, 01 Apr 2009: AprilFoolsDay
Fri, 10 Apr 2009: GoodFriday
Sun, 12 Apr 2009: Easter
Wed, 22 Apr 2009: EarthDay
Wed, 22 Apr 2009: AdministrativeAssistantsDay
Fri, 24 Apr 2009: ArborDay
Sun, 10 May 2009: MothersDay
Mon, 25 May 2009: MemorialDay
Sun, 14 Jun 2009: FlagDay
Sun, 21 Jun 2009: FathersDay
Sat, 04 Jul 2009: IndependenceDay
Sun, 26 Jul 2009: ParentsDay
Mon, 07 Sep 2009: LaborDay
Sun, 13 Sep 2009: GrandParentsDay
Mon, 12 Oct 2009: ColumbusDay
Sat, 24 Oct 2009: UnitedNationsDay
Sat, 31 Oct 2009: Halloween
Wed, 11 Nov 2009: VeteransDay
Thu, 26 Nov 2009: Thanksgiving
Fri, 27 Nov 2009: DayAfterThanksgiving
Thu, 24 Dec 2009: ChristmasEve
Fri, 25 Dec 2009: Christmas
Thu, 31 Dec 2009: NewYearsEve

The above list was generated by the Chronos Date/Time Library, using the following "do it":

| list |
list := SortedCollection sortBlock: [:a :b | a value < b value].
SemanticDatePolicy unitedStates
nominalAnnualEventOccurenceDatesInYear: 2009 do:
[:semanticKey :date | list add: semanticKey->date].
Transcript cr.
list do:
[:assoc |
Transcript
cr; show: (assoc value printStringUsing: #rfc2822);
show: ':'; tab; show: assoc key]


2007-12-31

2008 US Holidays

Most of the listed "holidays" will actually be business days, although some will not. The US Federal Holidays (on which most US Government offices will close, along with all Federally-chartered banks) are highlighted in bold. Generally, each business decides on its own which of these days (if any) will be non-business days (and for which employees):


Tue, 01 Jan 2008: NewYearsDay
Tue, 08 Jan 2008: JacksonDay
Mon, 21 Jan 2008: MartinLutherKingDay
Sat, 02 Feb 2008: GroundhogDay
Tue, 12 Feb 2008: LincolnsBirthday
Thu, 14 Feb 2008: ValentinesDay
Mon, 18 Feb 2008: WashingtonsBirthday
Mon, 17 Mar 2008: StPatricksDay
Fri, 21 Mar 2008: GoodFriday
Sun, 23 Mar 2008: Easter
Tue, 01 Apr 2008: AprilFoolsDay
Tue, 22 Apr 2008: EarthDay
Wed, 23 Apr 2008: AdministrativeAssistantsDay
Fri, 25 Apr 2008: ArborDay
Sun, 11 May 2008: MothersDay
Mon, 26 May 2008: MemorialDay
Sat, 14 Jun 2008: FlagDay
Sun, 15 Jun 2008: FathersDay
Fri, 04 Jul 2008: IndependenceDay
Sun, 27 Jul 2008: ParentsDay
Mon, 01 Sep 2008: LaborDay
Sun, 07 Sep 2008: GrandParentsDay
Mon, 13 Oct 2008: ColumbusDay
Fri, 24 Oct 2008: UnitedNationsDay
Fri, 31 Oct 2008: Halloween
Tue, 04 Nov 2008: ElectionDay
Tue, 11 Nov 2008: VeteransDay
Thu, 27 Nov 2008: Thanksgiving
Fri, 28 Nov 2008: DayAfterThanksgiving
Wed, 24 Dec 2008: ChristmasEve
Thu, 25 Dec 2008: Christmas
Wed, 31 Dec 2008: NewYearsEve

The above list was generated by the Chronos Date/Time Library, using the following "do it":

| list |
list := SortedCollection sortBlock: [:a :b | a value < b value].
SemanticDatePolicy unitedStates
nominalAnnualEventOccurenceDatesInYear: 2008 do:
[:semanticKey :date | list add: semanticKey->date].
Transcript cr.
list do:
[:assoc |
Transcript
cr; show: (assoc value printStringUsing: #rfc2822);
show: ':'; tab; show: assoc key]


Happy (Gregorian) New Year! (2008)

Timepoint now showInCommonWorldTimezones


Tue, 01 Jan 2008 13:55:54 +1300 (NZDT: Pacific/Auckland | New Zealand Time)
Tue, 01 Jan 2008 11:55:54 +1100 (EST: Australia/Sydney | AUS Eastern Time)
Tue, 01 Jan 2008 09:55:54 +0900 (JST: Asia/Tokyo | Tokyo Time)
Tue, 01 Jan 2008 09:55:54 +0900 (WST: Australia/Perth | W. Australia Time)
Tue, 01 Jan 2008 08:55:54 +0800 (HKT: Asia/Hong_Kong)
Tue, 01 Jan 2008 06:25:54 +0530 (IST: Asia/Calcutta | India Time)
Tue, 01 Jan 2008 03:55:54 +0300 (MSK: Europe/Moscow | Russian Time)
Tue, 01 Jan 2008 02:55:54 +0200 (IST: Asia/Jerusalem | Israel Time)
Tue, 01 Jan 2008 01:55:54 +0100 (CET: Europe/Amsterdam)
Tue, 01 Jan 2008 00:55:54 +0000 (GMT: Europe/London | London Time)
Tue, 01 Jan 2008 00:55:54 +0000 (UT: Universal Time)
Mon, 31 Dec 2007 22:55:54 -0200 (BRST: America/Sao_Paulo | E. South America Time)
Mon, 31 Dec 2007 21:55:54 -0300 (ART: America/Argentina/Buenos_Aires)
Mon, 31 Dec 2007 19:55:54 -0500 (EST: America/New_York | Eastern Time)
Mon, 31 Dec 2007 18:55:54 -0600 (CST: America/Chicago | Central Time)
Mon, 31 Dec 2007 17:55:54 -0700 (MST: America/Denver | Mountain Time)
Mon, 31 Dec 2007 16:55:54 -0800 (PST: America/Los_Angeles | Pacific Time)
Mon, 31 Dec 2007 14:55:54 -1000 (HST: Pacific/Honolulu | Hawaiian Time)


2007-12-25

Merry Christmas! (in Various Calendars)

Timepoint now showInAllCalendars
Local time is America/Los_Angeles ("Pacific Standard Time")—8 hours west of Universal Time


2007-12-25 AD @ 9:00:15 am -0800 [Gregorian]
0164-15-14 BE @ 9:00:15 am -0800 [Bahai]
1724-04-15 AM @ 9:00:15 am -0800 [Coptic]
2000-04-15 ZH @ 9:00:15 am -0800 [Ethiopic]
5768-10-16 AM @ 9:00:15 am -0800 [Hebrew]
1929-10-04 AS @ 9:00:15 am -0800 [Indian Civil]
1428-12-15 AH @ 9:00:15 am -0800 [Islamic (Fatimid)]
2007-12-12 AD @ 9:00:15 am -0800 [Julian]
2760-12-12 AUC @ 9:00:15 am -0800 [Julian (Imperial)]
1386-10-04 AP @ 9:00:15 am -0800 [Persian]
6244-01-04 SY @ 9:00:15 am -0800 [Solarian]
2007-359 @ 9:00:15 am -0800 [Gregorian-ordinal date]
2007-W52-2 @ 9:00:15 am -0800 [ISO]
J.D. 2454459 @ 9:00:15 am -0800 [Julian Day]
39074:17:00:15.077734 days:hh:mm:ss.s.. since 1901-01-01T00:00:00Z (ST80 epoch)
1198602015 seconds since 1970-01-01T00:00:00Z (Unix epoch)
128430756150777340 100-nanosecond ticks since 1601-01-01T00:00:00Z (MS WIndows epoch)
Christmas


2007-02-13

Chronos Roadmap

Current Task: Implement iCal Recurrence Rules

Planned Tasks/Enhancements/Features:


  • Implement full support for "Business Day Conventions," including addition/subtraction of business days (supplementing the already-supported "business days between dates" functionality.) Business date conventions specify the business rule for adjusting dates so that they don't fall on holidays, such as "next business day," "preceding business day," "nearest business day, "next business day in same month--adjusting to previous business day if necessary," "previous business day in same month--adjusting to next business day if necessary"

  • Implement multiple timescales (e.g., UT0, UT1, UTC, TAI, apparent
    solar...) Will at least implement UT1 and UTC--but the architecture will be extensible.

  • Complete all documentation.

  • Implement the Chinese Calendar.

  • Implement the Astronomical Hijri (Islamic) Calendar.

  • Implement conformance to the IANA Time Zone Registry Specification




2007-01-02

US Holidays 2007

Here are the "holidays" that will be observed in the United States during 2007. The list was generated by the Chronos Date/Time Library.

Most of the listed "holidays" will actually be business days, although some will not. The US Federal Holidays (on which most US Government offices will close, along with all Federally-chartered banks) are highlighted in bold. Generally, each business decides on its own which of these days (if any) will be non-business days (and for which employees):

Mon, 01 Jan 2007: NewYearsDay
Tue, 02 Jan 2007: DayOfMourning-GeraldFord
Mon, 08 Jan 2007: JacksonDay
Mon, 15 Jan 2007: MartinLutherKingDay
Fri, 02 Feb 2007: GroundhogDay
Mon, 12 Feb 2007: LincolnsBirthday
Wed, 14 Feb 2007: ValentinesDay
Mon, 19 Feb 2007: WashingtonsBirthday
Sat, 17 Mar 2007: StPatricksDay
Sun, 01 Apr 2007: AprilFoolsDay
Fri, 06 Apr 2007: GoodFriday
Sun, 08 Apr 2007: Easter
Sun, 22 Apr 2007: EarthDay
Wed, 25 Apr 2007: AdministrativeAssistantsDay
Fri, 27 Apr 2007: ArborDay
Sun, 13 May 2007: MothersDay
Mon, 28 May 2007: MemorialDay
Thu, 14 Jun 2007: FlagDay
Sun, 17 Jun 2007: FathersDay
Wed, 04 Jul 2007: IndependenceDay
Sun, 22 Jul 2007: ParentsDay
Mon, 03 Sep 2007: LaborDay
Sun, 09 Sep 2007: GrandParentsDay
Mon, 08 Oct 2007: ColumbusDay
Wed, 24 Oct 2007: UnitedNationsDay
Wed, 31 Oct 2007: Halloween
Mon, 12 Nov 2007: VeteransDay (observed)
Thu, 22 Nov 2007: Thanksgiving
Fri, 23 Nov 2007: DayAfterThanksgiving
Mon, 24 Dec 2007: ChristmasEve
Tue, 25 Dec 2007: Christmas
Mon, 31 Dec 2007: NewYearsEve


2006-12-31

Happy (Gregorian) New Year

2007-01-01 AD [Gregorian]
0163-16-02 BE [Bahai]
1723-04-23 AM [Coptic]
1999-04-23 ZH [Ethiopic]
5767-10-11 AM [Hebrew]
1928-10-11 AS [Indian Civil]
1427-12-11 AH [Islamic (Fatimid)]
2006-12-19 AD [Julian]
2759-12-19 AUC [Julian (Imperial)]
1385-10-11 AP [Persian]
6243-01-11 SY [Solarian]
2007-001 [Gregorian-ordinal date]
2007-W01-1 [ISO]

Mon, 01 Jan 2007 13:00:00 +1300 (NZDT: Pacific/Auckland | New Zealand Time)
Mon, 01 Jan 2007 11:00:00 +1100 (EST: Australia/Sydney | AUS Eastern Time)
Mon, 01 Jan 2007 09:00:00 +0900 (JST: Asia/Tokyo | Tokyo Time)
Mon, 01 Jan 2007 09:00:00 +0900 (WST: Australia/Perth | W. Australia Time)
Mon, 01 Jan 2007 08:00:00 +0800 (HKT: Asia/Hong_Kong)
Mon, 01 Jan 2007 05:30:00 +0530 (IST: Asia/Calcutta | India Time)
Mon, 01 Jan 2007 03:00:00 +0300 (MSK: Europe/Moscow | Russian Time)
Mon, 01 Jan 2007 02:00:00 +0200 (IST: Asia/Jerusalem | Israel Time)
Mon, 01 Jan 2007 01:00:00 +0100 (CET: Europe/Amsterdam)
Mon, 01 Jan 2007 00:00:00 +0000 (GMT: Europe/London | London Time)
Mon, 01 Jan 2007 00:00:00 +0000 (UT: Universal Time)
Sun, 31 Dec 2006 22:00:00 -0200 (BRST: America/Sao_Paulo | E. South America Time)
Sun, 31 Dec 2006 21:00:00 -0300 (ART: America/Argentina/Buenos_Aires)
Sun, 31 Dec 2006 19:00:00 -0500 (EST: America/New_York | Eastern Time)
Sun, 31 Dec 2006 18:00:00 -0600 (CST: America/Chicago | Central Time)
Sun, 31 Dec 2006 17:00:00 -0700 (MST: America/Denver | Mountain Time)
Sun, 31 Dec 2006 16:00:00 -0800 (PST: America/Los_Angeles | Pacific Time)
Sun, 31 Dec 2006 14:00:00 -1000 (HST: Pacific/Honolulu | Hawaiian Time)


2006-12-24

Merry Christmas

(At the time of this post, it's already Christmas in the Far East)

2006-12-25 AD [Gregorian]
0163-15-14 BE [Bahai]
1723-04-16 AM [Coptic]
1999-04-16 ZH [Ethiopic]
5767-10-04 AM [Hebrew]
1928-10-04 AS [Indian Civil]
1427-12-04 AH [Islamic (Fatimid)]
2006-12-12 AD [Julian]
2759-12-12 AUC [Julian (Imperial)]
1385-10-04 AP [Persian]
6243-01-04 SY [Solarian]
2006-359 [Gregorian-ordinal date]
2006-W52-1 [ISO]
J.D. 2454095 [Julian Day]
Christmas

Mon, 25 Dec 2006 13:00:00 +1300 (NZDT: Pacific/Auckland | New Zealand Time)
Mon, 25 Dec 2006 11:00:00 +1100 (EST: Australia/Sydney | AUS Eastern Time)
Mon, 25 Dec 2006 09:00:00 +0900 (JST: Asia/Tokyo | Tokyo Time)
Mon, 25 Dec 2006 09:00:00 +0900 (WST: Australia/Perth | W. Australia Time)
Mon, 25 Dec 2006 08:00:00 +0800 (HKT: Asia/Hong_Kong)
Mon, 25 Dec 2006 05:30:00 +0530 (IST: Asia/Calcutta | India Time)
Mon, 25 Dec 2006 03:00:00 +0300 (MSK: Europe/Moscow | Russian Time)
Mon, 25 Dec 2006 02:00:00 +0200 (IST: Asia/Jerusalem | Israel Time)
Mon, 25 Dec 2006 01:00:00 +0100 (CET: Europe/Amsterdam)
Mon, 25 Dec 2006 00:00:00 +0000 (GMT: Europe/London | London Time)
Mon, 25 Dec 2006 00:00:00 +0000 (UT: Universal Time)
Sun, 24 Dec 2006 22:00:00 -0200 (BRST: America/Sao_Paulo | E. South America Time)
Sun, 24 Dec 2006 21:00:00 -0300 (ART: America/Argentina/Buenos_Aires)
Sun, 24 Dec 2006 19:00:00 -0500 (EST: America/New_York | Eastern Time)
Sun, 24 Dec 2006 18:00:00 -0600 (CST: America/Chicago | Central Time)
Sun, 24 Dec 2006 17:00:00 -0700 (MST: America/Denver | Mountain Time)
Sun, 24 Dec 2006 16:00:00 -0800 (PST: America/Los_Angeles | Pacific Time)
Sun, 24 Dec 2006 14:00:00 -1000 (HST: Pacific/Honolulu | Hawaiian Time)


2006-01-12

US Federal Holidays for 2006

2006-01-01->#(#NewYearsDay #Sunday)
2006-01-02->#(#NewYearsDay #Monday)
2006-01-16->#(#MartinLutherKingDay #Monday)
2006-02-20->#(#PresidentsDay #Monday)
2006-05-29->#(#MemorialDay #Monday)
2006-07-04->#(#IndependenceDay #Tuesday)
2006-09-04->#(#LaborDay #Monday)
2006-10-09->#(#ColumbusDay #Monday)
2006-11-10->#(#VeteransDay #Friday)
2006-11-11->#(#VeteransDay #Saturday)
2006-11-23->#(#Thanksgiving #Thursday)
2006-12-25->#(#Christmas #Monday)

Note that both the official day of the holiday, and the day it is observed by the US Government, are both listed (if different.)

The Chronos code used to generate the list is given below:


| holidays |
holidays := SortedCollection sortBlock: [:a :b | a key < b key].
(Timeperiod yearStartingAt: (YearMonthDay year: 2006 month: January day: 1)) every: 1 daysDo: [:day |
| date semanticKey |
date := day start.
(date
annualDateSemanticKeyFrom: SemanticDatePolicy unitedStates
satisfies:
[:key |
semanticKey := key.
(SemanticDatePolicy usFederalHolidaySemanticKeys includes: semanticKey)])
ifTrue: [holidays add: date->(Array with: semanticKey with: date dayOfWeekName)]].
Transcript cr.
holidays do: [:holiday | Transcript cr; show: holiday printString]



2005-12-31

Happy New Year

As I write, it's New Year's Day in Asia:

Sun, 1 Jan 2006 09:54:46 +1300 (NZDT: Pacific/Auckland)
Sun, 1 Jan 2006 07:54:46 +1100 (EST: Australia/Sydney)
Sun, 1 Jan 2006 05:54:46 +0900 (JST: Asia/Tokyo)
Sun, 1 Jan 2006 04:54:46 +0800 (WST: Australia/Perth)
Sun, 1 Jan 2006 04:54:46 +0800 (HKT: Asia/Hong_Kong)
Sun, 1 Jan 2006 02:24:46 +0530 (IST: Asia/Calcutta)
Sat, 31 Dec 2005 23:54:46 +0300 (MSK: Europe/Moscow)
Sat, 31 Dec 2005 22:54:46 +0200 (IST: Asia/Jerusalem)
Sat, 31 Dec 2005 21:54:46 +0100 (CET: Europe/Amsterdam)
Sat, 31 Dec 2005 20:54:46 +0000 (GMT: Europe/London)
Sat, 31 Dec 2005 20:54:46 +0000 (UT: Universal Time)
Sat, 31 Dec 2005 18:54:46 -0200 (BRST: America/Sao_Paulo)
Sat, 31 Dec 2005 17:54:46 -0300 (ART: America/Argentina/Buenos_Aires)
Sat, 31 Dec 2005 15:54:46 -0500 (EST: America/New_York)
Sat, 31 Dec 2005 14:54:46 -0600 (CST: America/Chicago)
Sat, 31 Dec 2005 13:54:46 -0700 (MST: America/Denver)
Sat, 31 Dec 2005 12:54:46 -0800 (PST: America/Los_Angeles)
Sat, 31 Dec 2005 10:54:46 -1000 (HST: Pacific/Honolulu)

Of course, it's only New Year's Day according to the Gregorian Calendar (the official global calendar of business, and the basis of legal time in most countries.) But there are other calendars:

2006-01-01 AD [Gregorian]
0162-16-02 BE [Bahai]
1722-04-23 AM [Coptic]
1998-04-23 ZH [Ethiopic]
5766-10-01 AM [Hebrew]
1927-10-11 AS [Indian Civil]
1426-12-01 AH [Islamic (Fatimid)]
2005-12-19 AD [Julian]
2758-12-19 AUC [Julian (Imperial)]
1384-10-11 AP [Persian]
6242-01-12 SY [Solarian]
2006-001 [Gregorian-ordinal date]
2005-W53-7 [ISO]
J.D. 2453737 [Julian Day]
NewYearsDay weekend (Sunday)