libera/#shirakumo - IRC Chatlog
Search
4:34:55
Colleen
<|3b|> selwyn: any thoughts on using constants like xr:success and xr:error-handle-invalid instead of like :success and :error-handle-invalid ? (and maybe the same for other enums aside from result)
4:38:33
Colleen
<|3b|> ACTION is lazy so dislikes the extra 2 chars, and syntax highlighting could go either way, but particularly for the evolution model of khronos APIs :keywords are pretty annoying :/
4:40:27
Colleen
<|3b|> losing the type info is also somewhat annoying, but since that type info isn't hooked up into the editor and is frequently wrong at runtime anyway, i'm not sure how much weight to put on that
4:41:24
Colleen
<|3b|> ACTION considers doing the same for cl-opengl if i ever get around to making a modernized fork, since that has the same problems
4:48:54
Colleen
<|3b|> though places where that is true implies runtime translation, which is less nice
6:44:39
Colleen
<|3b|> which means you end up with a few versions of enum with same value but different names
6:45:58
Colleen
<|3b|> mostly a problem with return values, since user wants to compare them, and :whatever-foo isn't :whatever-khr isn't :whatever, but (= xr:whatever-foo xr:whatever-khr xr:whatever) could be true
6:46:38
Colleen
<|3b|> and worse, we can't predict which of the 3 :whatever* we get when xr returns 5
6:47:27
Colleen
<|3b|> so we do extra effort to translate 5 to a keyword, possibly adding extra ERRORs if it happened to return a value we don't know about, only for the user to need to do extra work to figure out if that keyword mathes matches the one they are looking for
6:48:00
Colleen
<|3b|> where as if it just returns 5, user code compares that to a constant with the value 5, and it all works
6:50:16
Colleen
<|3b|> as far as type info part, thinking about it more that might actually be just a distraction and not a real concern, since we don't have any static typing (especially for cffi)
6:50:39
Colleen
<|3b|> so putting that type info into CL code just adds an extra runtime check that the foreign API is hopefully already doing
6:51:19
Colleen
<|3b|> and can be wrong (or outdated) on the CL side anyway, adding extra work if user wants to work around it without rebuilding bindings
6:51:44
Colleen
<selwyn> i would be very unhappy if the debugger gave me error: 5 instead of a keyword
6:52:12
Colleen
<|3b|> ACTION has the thought that code using CFFI could add on some static checks with a compiler macro or similar, but that's true with constants too
6:53:00
Colleen
<|3b|> if there is an automatic "turn negative return values into a CL ERROR" thing happening, that part can do the translation
6:53:10
Colleen
<selwyn> maybe the higher level bindings should be responsible for establishing restarts and so on
6:54:04
Colleen
<selwyn> it is not just about errors, if the hmd is not detected or ready it's nice to be informed of that fact directly by the debugger
6:54:05
Colleen
<|3b|> (or semi-automatic, if that turns out expensive and ussers want a with-return-check or whatever macro
6:58:12
Colleen
<|3b|> ACTION wonders if an xr:return-case macro might be able to cover some of that
6:58:44
Colleen
<|3b|> which could do things like declaring higher debug and lower speed in the error path, and binding some locals to the translated name and such
10:54:06
Colleen
<|3b|> if they did share enums (and didn't just declare their own local copy of the valid ones), using numeric constants instead of keywords would also be easier there too
11:00:04
Colleen
<|3b|> yeah, wouldn't do it just for that, but might consider it if i were rewriting it anyway (which i would like to do)
11:00:53
Colleen
<shinmera> In other news I have discovered that there is no standard workflow for getting IK information from a modelling software into an engine :upside down smiley face:
11:48:51
Colleen
<|3b|> decided i wanted easier access to some of the data in the file, so started rewriting the parser :/
11:55:00
Colleen
<selwyn> although the library looks very capable, it would be unwise to rely on something i can't extend or change
11:55:18
Colleen
<selwyn> it would also raise the barrier to entry to trial-vr which i might one day regret
11:56:25
Colleen
<selwyn> its a short enough algorithm that it will hopefully not be too far from actually working
11:59:00
Colleen
<shinmera> Nah, was just getting confused with all the XR talk wondering if I had missed you finishing it.
12:03:00
Colleen
<selwyn> ive taken a vow to work on something related to vr every day even if its only for an hour
12:04:18
Colleen
<selwyn> theres actually very little to do until i learn or add the necessary features to trial