whitequark changed the topic of #solvespace to: SolveSpace--parametric 2d/3d CAD · latest version 2.2 · http://solvespace.com · code at https://github.com/solvespace/solvespace · logs at https://irclog.whitequark.org/solvespace
DocScrutinizer05 has quit [Excess Flood]
DocScrutinizer05 has joined #solvespace
<GitHub> [solvespace] whitequark pushed 1 new commit to 2.x: https://github.com/solvespace/solvespace/commit/82746b61717e2d0cb59eefe848e4dc67a5a0e135
<GitHub> solvespace/2.x 82746b6 whitequark: Fix a crash when adding a symmetric constraint on a line....
<cr1901_modern> whitequark: Off topic, but... ehhh whatever. Do you have time for a stupid OCaml q?
<whitequark> sure
<cr1901_modern> https://github.com/amnh/phylocaml/blob/master/lib/topology.ml#L44-L51 Why is consume in the "recursive-let expression" created as taking two parameters, but inside the let expression, consume is called with three (I think) parameters?
<cr1901_modern> I assume everything inside the parentheses on line 46 becomes a single input to consume
<whitequark> "function x -> y | z" is the same as "fun x -> match x with y | z"
<cr1901_modern> Ahhh, I've never seen "function x ->" syntax before. Just "function |" followed immediately by "something to match against"
<cr1901_modern> So I know "function" has an implied input argument. Didn't know it could be chained together with other inputs
<whitequark> erm, I explained it badly above
<whitequark> "function [stuff]" is the same as "fun x -> match x with [stuff]"
<cr1901_modern> Okay, so the "function" provides the third input argument in consume, and the "acc x" on line 45 provide the first two?
<cr1901_modern> Ahhh I missed this... https://github.com/amnh/phylocaml/blob/master/lib/topology.ml#L151-L152 That has to be the explanation: let exprs can be chained together to create functions with more input args
<travis-ci> solvespace/solvespace#176 (master - 9673225 : whitequark): The build passed.
DocScrutinizer05 has quit [Disconnected by services]
DocScrutinizer05 has joined #solvespace
<travis-ci> solvespace/solvespace#177 (opengl2 - 73c3415 : whitequark): The build was broken.
<travis-ci> solvespace/solvespace#178 (opengl2 - fa5b45b : whitequark): The build was broken.
mumptai has joined #solvespace
<travis-ci> solvespace/solvespace#180 (opengl2 - 4735f47 : whitequark): The build has errored.
miek has left #solvespace [#solvespace]
<travis-ci> solvespace/solvespace#181 (opengl2 - aba45ff : whitequark): The build has errored.
<travis-ci> solvespace/solvespace#182 (opengl2 - c8e2ce1 : whitequark): The build has errored.
<GitHub> [solvespace] lineprinter opened issue #101: Solvespace crashes when trying to 'File > Import...' not .dxf or .dwg file https://github.com/solvespace/solvespace/issues/101
mumptai has quit [Quit: Verlassend]
<GitHub> [solvespace] whitequark opened issue #102: OpenGL 2 renderer https://github.com/solvespace/solvespace/issues/102
<cr1901_modern> Why is there an OpenGL2 separate from compatibility profile?
<cr1901_modern> s/Why//
<cr1901_modern> (I changed my question but didn't remove the Why lol)
<travis-ci> solvespace/solvespace#186 (opengl2 - 635ce1a : whitequark): The build has errored.
<whitequark> cr1901_modern: opengl2 doesn't have profiles
<whitequark> I really meant "OpenGL2 but only the subset of its APIs that are in OpenGL3 core profile and OpenGLES2"
<whitequark> it's complicated as hell
<cr1901_modern> I agree :P. The rule I've personally used is: "OpenGL2 isn't all that useful in practice; just support 3.3 or so and above if OpenGL 1.x isn't important."
<travis-ci> solvespace/solvespace#187 (opengl2 - 10f11d2 : whitequark): The build failed.