2013-08-13 15 views
6

leggevo basi della linguaggio di programmazione Perl e mi sono imbattuto nel seguente dichiarazioneChe cosa significa Y2K compatibile?

Perl is Y2K compliant. 

non riesce quasi mai quello che significava anche dopo un certo Googling. È una sorta di standard stabilito. se sì allora da chi? Qualsiasi informazione è apprezzata.

+5

Non solo è conforme a Perl Y2K, è conforme a Y2038. :) –

risposta

11

Per coloro che stavano programmando alla fine degli anni '90, Y2K era di importanza cruciale. Letteralmente: Y2K = Year 2000.

Il software che non era conforme a Y2K includeva, ovviamente, il software che memorizzava i numeri dell'anno come 2 cifre (spesso per risparmiare spazio di archiviazione) e quindi avrebbe equiparato all'anno 2000 al 1900. Tuttavia alcuni prodotti software, per altri motivi, non erano conformi a Y2K perché hanno eseguito calcoli di date errate per le date del 21 ° e dei secoli successivi.

In quest'ultima categoria, avevo un prodotto che stavo mantenendo nel momento in cui ho dovuto correggere perché non riconosceva l'anno 2000 come anno bisestile. Poiché quel software gestiva un sistema di controllo automatico in un impianto di produzione, avrebbe danneggiato alcuni componenti costosi se non fosse stato fissato prima della fine di febbraio 2000.

C'erano alcune previsioni apocalittiche che accadevano cose molto brutte 1 gennaio 2000 a causa di problemi software dovuti alla non conformità Y2K e molte persone hanno "trattenuto il respiro" a mezzanotte del 31 dicembre 1999 per tale motivo. Dopo il fatto, molte persone hanno affermato che le previsioni erano state esagerate. Secondo me, ci sono stati pochi problemi perché molti programmatori hanno lavorato molto duramente e lunghe ore alla fine degli anni '90 specificamente per affrontare la minaccia dei problemi Y2K, e non lo avrebbero fatto se non ci fossero stati problemi legittimi su esiti potenzialmente molto cattivi.

7

alle voci di Wikipedia Y2k, Year 2000 problem, spiega abbastanza buona:

Nel 1997, il British Standards Institute (BSI) ha sviluppato uno standard, DISC PD2000-1, che definisce "requisiti di conformità Anno 2000 "come quattro regole:

  • Nessuna data valida causerà un'interruzione delle operazioni.
  • Il calcolo delle durate tra, o la sequenza di, coppie di date sarà corretto se alcune date sono in secoli diversi.
  • In tutte le interfacce e in tutto lo storage, il secolo deve essere univoca, sia specificato, o calcolabile da un algoritmo
  • Anno 2000 deve essere riconosciuto come un anno bisestile

Perl significa essere conforme a Y2K che la gestione della data incorporata segue queste regole.