The Orion's Arm Universe Project Forums





Tranquillity Calendar Converter Tool
#1
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
Reply
#2
Cool, I was born on Jun 4th 20a.t. Smile 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:
  1. DNI
  2. Internal medical system
  3. A dormbot, because domestic chores suck!
Reply
#3
You're all just young whippersnappers Wink

Darwin 24, 23 BT for me.
Selden
Reply
#4
Very niceSmile Thanks Trond!!

Todd
Reply
#5
Lol, you old fogies - I am 15 Hippocrates 30 AT
Reply
#6
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
Reply
#7
I was born in the Sixth day of Archimedes of 21 AT. Big Grin
Reply
#8
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?

ToddSmile
Reply
#9
(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?

ToddSmile
Reply
#10
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"

}
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)