This repository was archived by the owner on Oct 28, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 5
A lot of type instablities #5
Copy link
Copy link
Open
Description
I am not joking.
I recommend you to use my SimpleTypeChecker.jl to scan your files, which can capture typing error more easily.
- Declare global variables in
const.jlasconst
white_keys,black_keysshould be declared withconst xxx = .... Otherwise they are inferred as Any because they can be assigned with arbitrary values. This impacts a lot of functions. - Reduce unnecessary use of
.... Mostly of time, there is no necessary to convert an iterator to a Vector, because it supports iterator protocol. findfirstat const.jl:335 returnUnion{Nothing, ...}. All find functions return Union..., it's a good habit to check nothing and prevent usage of aUnion{Nothing}- In
const.jl,const Fingering = SortedDict{Note, Finger}is an abstract type.
Defined it asconst Fingering = SortedDict{Note, Finger, Base.Order.ForwardOrdering} - In
split.jl:77,split_length = ceil(notes_length / threads_num), ceil returns a Floating Number. You need to cast it to a Integer. Because it's reassigned with an Integer in the following code.
If you are unsure of what I have just said, please commit in this issue.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels