Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add isMajorScale and isMinorScale functions #45

Closed
wants to merge 2 commits into from

Conversation

jdrieghe
Copy link
Member

@jdrieghe jdrieghe commented Nov 13, 2018

Added

  • isMajorScale function
  • isMinorScale function

Suggestion

Since major is the ionian and minor is the aeolian mode, should we abstract an isMode function that allows you to pass a scale and a mode?
That would require us to change the current isMode function to something like isModal, which describes better what it does imho.


Closes #3
Closes #18

@geoffreydhuyvetters
Copy link
Member

geoffreydhuyvetters commented Nov 14, 2018

So, a general helper isModal to check whether it is one of the modals and an isMode to check if it is a specific mode? Am I correct?

I was wondering if we need to cover the 3 minor forms (natural, harmonic, melodic) with the isMinor check.

@jdrieghe
Copy link
Member Author

I don't think we need the isModal since it's just an alias for isDiatonicScale

@geoffreydhuyvetters
Copy link
Member

So every mode is diatonic and every diatonic scale is a mode? Wow.

@jdrieghe
Copy link
Member Author

With the restrictions on the diatonic scale (2 half, 5 whole steps, the half steps should be either 2 or 3 full steps away from each other) there are only 7 possible options and they line up with the 7 modes.

@geoffreydhuyvetters
Copy link
Member

Proving my point about learning music while writing JavaScript here 👌

@jdrieghe
Copy link
Member Author

Closing this one as part of our cleanup efforts

@jdrieghe jdrieghe closed this Sep 30, 2022
@jdrieghe jdrieghe deleted the add-ismajor-and-isminor-scale-functions branch September 30, 2022 09:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

isMajorScale isMinorScale
2 participants