README

ma Insa

This package contains constants and conversion functions for the paracosm that I created, ma Insa (lit: land inside).

I really created this paracosm by traveling around to different parts of it (or: where things would be if it did exist clearly, etc) then asking and answering two questions:

  • what is there?
  • and what is it like?

For example, let's consider ma telo seli (lit: land of hot water) in the paracosm:

What is there? A hottub. It has a radius of 3 meters. There is a pool deck around it that looks like hard rock, but is actually soft foam. The water is heated to 39 degrees celsius (102 f). The water has a yin-yang style circulation pattern to out around the edges of the tub. The water is unchlorinated. There is seating on the inside of the tub as well as a jaccuzi style air bubble system. The water level is always stable no matter how many people enter the tub, but it can fit at least a dozen people. Leaving it doesn't leave clothes or skin feeling overly wet.
What is it like? Peaceful, the sounds of the air bubbles rising to the surface is a very constant noise, but not something that grates on the ears. The feeling of the heat of the water warms you to the core. The steam of the water meeting the air around it (~80f / ~27c) is very interesting to inhale deeply.

NPC's in the paracosm speak Toki Pona and will not understand other languages unless that is relevant to the scenario in question.

Dates

A date, or tenpo nimi, is a combination of the following information:

  • the year
  • the season
  • the month/cycle
  • the week
  • the day
  • the remainder

Days in ma Insa are 8 material plane hours long. A week is 3 days. A month is 3 weeks. A season is 3 months. A year is four seasons. The arbitrary zero date for ma Insa's time is 10/07/2018 @ 12:00am (UTC) or the unix time 1538870400.

The tool cmd/mainsanow will print the current ma Insa datetime:

$ mainsanow
2018/10/19 05:05:19 suli 0 tawa seli sike poka linja wan suno tu awen 4:05

Documentation

Overview

Package mainsa is a small set of conversion or other useful utility functions for converting plane 432 units to ma Insa units.

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrBeforeEpoch = errors.New("mainsa: time before zero date")
)

Errors

View Source
var YearZero = time.Unix(zeroDateUnix, 0)

YearZero is the arbitrary anchor date from plane 432 to ma Insa year 1 planting season, coming cycle, first week, first day..

Functions

This section is empty.

Types

type Nanpa

type Nanpa int

Nanpa is a generic toki pona number

const (
	Wan Nanpa = 1 + iota
	Tu
	Mute
)

Numbers

func (Nanpa) String

func (i Nanpa) String() string

type Sike

type Sike int

Sike is a set of 3 threads, or a month.

const (
	Kama Sike = 1 + iota
	Poka
	Monsi
)

The three sikes.

func (Sike) String

func (i Sike) String() string

type Tawa

type Tawa int

Tawa is a set of 3 cycles, or a season.

const (
	Kasi Tawa = 1 + iota
	Seli
	Sin
	Lete
)

The four tawas of a year.

func (Tawa) String

func (i Tawa) String() string

type TenpoNimi

type TenpoNimi struct {
	Year      int   // suli
	Season    Tawa  // tawa
	Month     Sike  // sike
	Week      Nanpa // linja
	Day       Nanpa // suno
	Remainder time.Duration
}

TenpoNimi is the name of a given time. The remainder time is given as a time.Duration and should be shown in hour:minute format using time constant "3:04".

func At

func At(t time.Time) (TenpoNimi, error)

At returns the time in ma Insa for a given Go time.

func (TenpoNimi) String

func (tn TenpoNimi) String() string