User:Ganaram inukshuk

From Xenharmonic Wiki
Jump to navigation Jump to search

I generally go by "Ganaram" or some variant of that (ganaram_inukshuk, gdinuk). (Discord: ganaraminukshuk0; he/they; generally more active on the Xen Discord unless work bogs me down.)

I've heard about microtonality on and off over the years, but what drew me into the topic was two things: HEHEHE I AM A SUPAHSTAR SAGA's video series on 19edo and Patricia Taxxon's song Spiral Staircase.

From a compositional perspective, my goal is to incorporate xenharmonic elements into an otherwise normal-sounding song, though my more ambitious goal is to not use the diatonic (LLLsLLs) scale structure at all.

From a theory perspective, my goal is to better understand xenharmony from a temperament-agnostic perspective. This primarily means edos and MOSses, but extends to MV3 scales and higher.

From a wikian perspective, my goal is to better the wiki itself, at least as it pertains to how mos-related info is displayed. The most immediate way to achieve this is to create and deploy templates for the most commonly displayed mos-related info, as well as wikifying any text present (so it looks like an actual wiki page!) and trying to verify the source or attribution to things taken for granted (because misattribution happens concerningly). I've written a style guide to be applied to all mos pages (see subpages below), but I'm also open to better ideas.

Main mindset

I summarize my main mindset using the following trinity: temperaments, mosses, and edos are not each other.

Temperaments produce mosses, but two different temperaments may produce the same mos. Edos support more than one family of mos, so it's fruitless to shoehorn the notation meant for one mos for a different mos within the same edo. Two temperaments may produce the same JI ratio, but have different qualities in different mosses.

This level of decoupling makes it so I don't let any one temperament, mos, or edo influence how I look at either. Just because a nondiatonic mos has a perfect 5th doesn't mean I should think of it as such, especially if that isn't the generator to begin with.

That said, I focus more on mosses and, secondarily, edos when it comes to this trinity. I prefer to look at scales based in a temperament-agnostic sense, as mosses that are supported by an edo, or different edos. Doing so relieves me of the expectation that a certain interval must necessarily fall within a few cents of a JI ratio and lets me be more explorative with musical scales. This is also less names to memorize, since there are a lot of temperament names, and looking at mosses directly means fewer names to remember.

Other running assumptions and techniques may be found under the methodologies page below.

TO-DO list, major contributions, and wish list

Contributions

Major work on modules and templates in (roughly) chronological order of inception or involvement
Modules and templates New? Description of template or contribution Status or todo
Module:SB tree

Template:SB tree

Yes Creates a Stern-Brocot tree's entries and their depths. Split calculation for mediants into its own module; see Module:Mediants
Module:Scale tree

Template:Scale tree

No Automates the creation of a mos's scale tree and tuning spectrum.

Contributor with CompactStar. (I made it so comments can be entered using one param.)

Replace with Module:MOS tuning spectrum, following new coding conventions.
Module:MOS modes

Template:MOS modes

Yes Displays the modes of a mos. Replace with Module:MOS mode names, following new coding conventions.
Module:MOS intro

Template:MOS intro

Yes Creates a consistent, common introductory paragraph for a mos page's lead section. Possibly rewrite to follow new coding conventions.

Rewording for nonoctave tunings.

Deprecate name fields as they're redundant.

Module:MOS gamut

Template:MOS gamut

Yes Given a notation scheme and assigned mode for a mos for an edo, display the note names. Fallen into disuse.
Module:MOS degrees

Template:MOS degrees

Yes Displays cent values for a mos for up to 5 step ratios. Deprecated.
Module:MOS notation Yes Helper module for displaying mos notation. Fallen into disuse.
Module:MOS intervals

Template:MOS intervals

Yes Displays the interval names of a mos and their cent ranges.

Rewritten to new coding conventions.

Module:MOS mode degrees

Template:MOS mode degrees

Yes Displays the qualities of each scale degree of every mode of a mos. Possibly rewrite to follow new coding conventions.

Split modmos info into its own template; see Template:MODMOS mode degrees.

Module:MOS in EDO

Template:MOS in EDO

Yes Displays and visualizes the mosses that an edo contains.
  • MOS in EDO: shows the mosses created using a particular generator and period.
  • ...allgens: shows all mosses for all generators for a particular period.
  • ...allperiods or MOSes in EDO: shows all mosses for all generators for all periods.
Documentation, usage, option to enter temperaments, option to abridge output.
Module:MOS in EDO allgens

Template:MOS in EDO allgens

Yes
Module:MOS in EDO allperiods

Template:MOS in EDO allperiods

Yes
Template:MOSes in EDO (shortcut template) Yes
Module:Template input parse Yes Helper module for various templates that have large amounts of info to be displayed.
Module:Step vis

Template:Step vis

Yes Step visualization template for MOS(es) in EDO for standalone use. Consider html-based visualization?
Module:EDO intro

Template:EDO intro

Yes (module only) Automation of the EDO intro. Superseded by ED intro.
Module:JI ratio finder Yes Helper module for JI ratios in ED. Superseded by Module:JI ratios. Fallen into disuse, but not officially deprecated.
Module:JI ratios in ED

Template:JI ratios in ED

Yes Creates a table showing the JI ratios approximated by an ED. Fallen into disuse, as JI ratio finder was superseded.
Module:Xenpaper Yes For making links to audio examples to be listened to. Find out the new link for xenpaper.
Module:ED intro

Template:ED intro

Yes Automation of the EDO intro, generalized for other equaves. Wording, code cleanup. Development on hold.
Template:Idiosyncratic terms Yes An alternative to Template:Idiosyncratic when the original's use is infeasible.
Module:Infobox MOS

Template:Infobox MOS

No Code cleanup and additional info.

Moved 8-link infobox to infobox module.

Possibly rewrite to follow new coding conventions.
Module:Infobox No Support for infoboxes with 8 navlinks added.
Module:Keyboard vis

Template:Keyboard vis

Yes Keyboard visualization template for Infobox MOS. No template currently exists. Possibly extend to ternary and quaternary scales.
Template:Mbox No Added the option to show an icon.
Template:Quickstart

Template:Has quickstart

Yes For disambiguating pages meant for theory from pages meant for practice, and for linking between them. ROLLOUT.
Module:MOS No Splitting TAMNAMS-related stuff to its own module.

Redefining the module into a library for all mos-related templates/modules.

Module:TAMNAMS Yes A module that contains the entire TAMNAMS specification as it pertains to mosses and step ratios.

Has lookup functions for names and related mosses.

Template:TAMNAMS use Yes Shows that a scale page uses TAMNAMS.
Module:MOS genchain

Template:MOS genchain

Yes Shows the generator chain of a mos. Dev on hold.
Template:MOS scale properties (former name) Yes Combo template of:
  • Template:TAMNAMS use
  • Template:MOS intervals
  • Template:MOS genchain
  • Template:MOS mode degrees
Documentation, testing, rollout.
Module:MOS data

Template:MOS data

Module:TAMNAMS lookup

Template:TAMNAMS lookup

Yes TAMNAMS name lookup as a standalone template.
Template:TAMNAMS name Yes For writing the paragraph that states a mos's TAMNAMS name and its etymology or reasoning.
Module:MOS interval HE

Template:MOS interval HE

Yes Standalone template for harmonic entropy.

Formerly a part of MOS intervals; added by User:R-4981 but separated due to concerns regarding HE.

Further developments uncertain.
Module:MOS tunings

Template:MOS tunings

Yes Replacement for Template:MOS degrees. Rewrite to follow new coding conventions.
Template:Nutshell Yes See equivalent template on Wikipedia.
Module:JI ratios Yes Module for searching for JI ratios, as well as parsing them from template input.

Replacement for Module:JI ratio finder.

Module:Mediants Yes Standalone template for mediant calculations. To be used for the following modules:
  • Module:SB tree
  • Module:Scale tree
  • Module:JI ratios
Template:Deprecated parameters Yes A module for denoting one or more deprecated parameters in a template.
New templates after this line follow new (personal) coding conventions.
Modules and templates New? Description of template or contribution Status or todo
Template:Navbox

Module:Navbox

Yes A template and module for producing a navbox. Navboxes can be made by directly calling the module's functions or by using a template.
Module:Infobox

Template:Infobox

Yes (template only) Rewrote entire infobox from scratch to support infobox template.
Template:Scalesig

Module:Scalesig

A template that creates and auto-formats a scale signature:
  • Text does not wrap.
  • Equave is enclosed in the appropriate brackets.
Template:MOS name

Module:MOS name

A proposed template that provides the TAMNAMS-recommended name for a mos. The TAMNAMS name provided by Template:MOS intro would be relocated here.
Template:MOS tuning spectrum

Module:MOS tuning spectrum

Proposed replacement for Template:Scale tree.

Input of tuning spectrum entries would be changed back to one field per step ratio.

The original template name would be used a shortcut.

Template:MOS stub A proposed combination template consisting of:
  • Template:Infobox MOS
  • Template:MOS intro
  • Template:MOS intervals
  • Template:MOS tuning spectrum

Such a template would be a subst-template.

Module:Diatonic intervals A proposed module for roughly classifying diatonic intervals (1st, 2nd etc; major, minor, etc) plus intermediate categories; meant for relating mossy intervals to diatonic ones
Module:Sandbox A module solely for testing.
Module:Infobox sandbox

Template:Infobox sandbox

An infobox for testing.
Module:MODMOS mode degrees

Template:MODMOS mode degrees

Module:MOS superset degrees

Template:MOS superset degrees

Like MOS mode degrees, except the scale degrees are in relation to an ancestor mos.

Contributions to add to table (due to mobile device limitations)

Template:Deprecated parameters - For indicating a feature of a template or module-generated template is deprecated, rather than the entire template being deprecated. A warning is provided indicating that template arguments that depend on these features should be saved to avoid data loss.

Wikiprojects

Other contributions

  • Mos page standardization (work-in-progress)
  • MOS recursion and MOS recursion algorithms; tried my best to make the descriptions for MOS recursion apply to all cases (Work-in-progress)
  • Some rewording of the TAMNAMS page for readability and flow. I have a few TAMNAMS-related proposals of my own that aren't quite ready to be called official. See todo list or TAMNAMS subpage.
  • A page for horograms, since it was totally absent (Work-in-progress).
  • Mos family tree page for a tree I independently discovered before realizing Erv Wilson had already described it. Also has to do with mos recursion.

To-do list

  • Rewrite page(s) Under jurisdiction of Project Mospage.
  • Rewrite all octave-equivalent mos pages. This is primarily replacing every scale tree for the corresponding template and rewriting the lead sections to make sense and does not present redundant information already given by one of the templates. To a lesser extent, this also involves trying to confirm temperaments said to be attributed to these mosses, but this step will require additional help. Under jurisdiction of Project Mospage.
    • This is done concurrently with writing a style guide for these pages; see User:Ganaram inukshuk/MOS page standardization guide for a proposed guide.
    • Mosses whose pages have been rewritten to meet the style guide to satisfactory levels (that doesn't mean the pages can't be polished further!):
      • 5L 1s
      • 5L 2s
      • 4L 3s
      • 3L 4s
      • 2L 5s
      • 1L 5s
      • 7L 1s
      • 3L 7s
  • Update templates I've made to current coding style/structure:
    • The template calls a wrapper function, meant to be used with template params as input. Its name should be suggestive of the module's primary use, and is usually the same name as the template.
    • The wrapper function calls the "main function", which has the code that produces the output. Its name is the same as name as with the wrapper function, except it's prefixed by an underscore.
  • Clean up mos recursion page (because I feel bad leaving the algorithms untouched and untested for so long).
    • Replace pseudocode for is-this-scale-a-mos? program with python code; clarify with more examples.
    • Relate mos recursion with the mos family tree.
    • All the recursive algorithms described on that page have time complexities of O(n log n), but the algorithm that generates a Christoffel word (combinatorics-on-words term for the brightest mode of a mos) has a time complexity of O(n). Resolve...?
  • Standardize mosinedo pages. Examples include:

Wish list

  • Composing music with these abstract ideas.

Subpages

These pages contain content that currently don't have an exact place elsewhere on the Wiki, or contains personal notes that otherwise don't have an exact place on the Wiki. I do my best to explain these things as though I magically forgot everything I know about xenharmony, so I consider it a bonus if someone else found this easy to understand.

These pages are descriptions on how I approach various things, such as compositional techniques and how I approach a scale I've never used before.

Sandbox page (for testing things)

Test pages (for proposed rewrites):

Experimental pages (for content considered idiosyncratic, ad-hoc, or otherwise weird):

Test templates:

Other