Posts: 11,590
Threads: 450
Joined: Apr 2013
Trond has put together a tool for converting directly from the Gregorian Calendar to the Tranquility Calendar and vice versa. He say it was quite a bit trickier than he expected, but it works now.
Try it!
http://www.orionsarm.com/xcms.php?r=oa-c...-converter
Posts: 7,322
Threads: 296
Joined: Jan 2013
Cool, I was born on Jun 4th 20a.t. this is totally just a wishlist thing but how hard would it be to have the current tranquillity date displayed on the website? Perhaps in the top right corner of pages, when clicked on it could link to the converter.
OA Wish list:
- DNI
- Internal medical system
- A dormbot, because domestic chores suck!
Posts: 1,573
Threads: 80
Joined: Mar 2013
You're all just young whippersnappers
Darwin 24, 23 BT for me.
Selden
Posts: 16,079
Threads: 732
Joined: Sep 2012
Very nice Thanks Trond!!
Todd
Posts: 137
Threads: 26
Joined: Oct 2016
Lol, you old fogies - I am 15 Hippocrates 30 AT
Posts: 620
Threads: 24
Joined: Mar 2013
11 Jung 10 B.T. here
"I'd much rather see you on my side, than scattered into... atoms." Ming the Merciless, Ruler of the Universe
Posts: 1,437
Threads: 46
Joined: Sep 2016
I was born in the Sixth day of Archimedes of 21 AT.
Posts: 16,079
Threads: 732
Joined: Sep 2012
I can think of several places we might put this link on the website:
a) On the Tranquility Calendar page (obviously).
b) On each of the Topic pages of the timeline.
c) On the Technology Timeline
In addition, I would suggest that we add it to the OA Links and Extras page, either under the Worldbuilding Resources page, or possibly on its own page of OA Calculators - we actually have three OA specific calculators now (date converter, Hawking radiation, and relativity) and it would be good to put them somewhere beyond just the specific pages in the EG that they deal with. On a related note, I've also come across some other useful calculators over the years that could also be added to the Worldbuilding pages.
Any other places this might go?
Todd
Posts: 16,079
Threads: 732
Joined: Sep 2012
(12-09-2016, 01:16 PM)Drashner1 Wrote: I can think of several places we might put this link on the website:
a) On the Tranquility Calendar page (obviously).
b) On each of the Topic pages of the timeline.
c) On the Technology Timeline
In addition, I would suggest that we add it to the OA Links and Extras page, either under the Worldbuilding Resources page, or possibly on its own page of OA Calculators - we actually have three OA specific calculators now (date converter, Hawking radiation, and relativity) and it would be good to put them somewhere beyond just the specific pages in the EG that they deal with. On a related note, I've also come across some other useful calculators over the years that could also be added to the Worldbuilding pages.
EDIT - The above items have now been done.
Any other places this might go?
Todd
Posts: 276
Threads: 17
Joined: Jan 2016
02-09-2017, 10:25 AM
(This post was last modified: 02-09-2017, 10:34 AM by 1of3.)
Hey folks.
I'm currently working on a domain specific language (embedded in Scala) for describing calendars, querying them, creating dates and converting between calendars. Domain specific languages (DSLs) are used for communication between programmers and experts of certain domains. Instead of implementing a single program, you basically create a simple language so the experts can either configure the program themselves or at least understand your configuration.
This is what the Tranquility Calendar would look like.
Quote:object TranquilityCalendar {
import CommonDays._
import PlanetaryWeek._
import MonthsAndYears.{year,years,y,Y}
val month = Cycle from weeks(4) named "month"
def months = month
def m = num(month)(2)
def M = nam(month)("default")
val firstHalfYear = months("Archimedes", "Brahe", "Copernicus", "Darwin", "Einstein", "Faraday", "Galileo", "Hippocrates" )
val aldrin = day named "Aldrin Day"
val secondHalfYear = months( "Imhotep", "Jung", "Kepler", "Lavoisier", "Mendel" )
val armstrong = day named "Armstrong Day"
val standardYear = firstHalfYear + secondHalfYear + armstrong as year
val leapYear = firstHalfYear + aldrin + secondHalfYear + armstrong as year
val tranquilityEra = Era given
(y => WesternCalendar.westernEra.getChild(y + 3) == WesternCalendar.leapYear) have leapYear
tranquilityEra rest standardYear
tranquilityEra setEraNames ( x => Map( "default" -> (if (x>=0) x + " AT" else x + " BT") ) )
val tranquilityCalendar = Calendar(tranquilityEra) setTimeStampZero (year/1 & month/6 & day/25)
tranquilityCalendar addFormat "default" -> df"$y-$m-$d-$h:$min:$s"
}
|