Automatic commit of irc logs
[ipdf/documents.git] / irc / #ipdf.log
index e88900a..681db75 100644 (file)
 22:17 <@matches> He has some books but they are mostly about economics
 22:18 <@matches> Would have been nice if he'd written something that says "I have invented floating point" but I guess not
 22:18 <@matches> That's only really of historical interest but it'd be nice
+--- Day changed Tue Apr 22 2014
+01:17 <@matches> Urgh looking at the git diff
+01:17 <@matches> I really have not accomplished much
+01:30 <@matches> Oooh, motsugo finally got to a number of intervals where long double is better than double
+11:56 < sulix> So it turns out that I've broken the open-source GL drivers.
+11:56 < sulix> They don't support one of the features ("primitive restart") we need when in compatibility mode.
+11:56 < sulix> So I guess now I've got to rewrite everything to use OpenGL 3.
+14:47 <@matches> ?
+14:48 <@matches> I should probably look more carefully at what the OpenGL stuff is doing nowdays
+14:49 <@matches> Downgrading to OpenGL 3 sounds drastic
+14:50 <@matches> Wait 3 is the OK one, 4 is the new one
+14:50 <@matches> 1 is the ancient one
+14:52 <@matches> I see pointer arithmetic...
+14:53 <@matches> banana would be furious
+14:53 <@matches> should be using std::super_ptr_unsegfaultable_arith
+14:53 <@matches> (I am not a fan of the smart pointers)
+14:55 <@matches> *indexData = 0xFFFFFFFF; // Primitive restart.
+14:55 <@matches> I do not know what is going on here :S
+14:58 <@matches> Ahh I get it now
+14:58 <@matches> Reading commit messages turns out to be useful
+15:04 <@matches> git blame for view.cpp reveals that I still own the opening braces on some things
+15:05 <@matches> That's about it :P
+15:06 <@matches> I'm going to keep looking at rounding errors and maybe have a better thing than calculating pi
+15:06 <@matches> As a bench mark
+15:07 <@matches> I might look at Paranoia
+15:07 <@matches> Although it was originally in BASIC
+15:07 <@matches> And ~7000 lines
+15:07 <@matches> With almost no whitespace characters
+15:07 <@matches> And totally no indents
+15:08 <@matches> I sometimes get the feeling people used to be smarter than we are now...
+15:08 <@matches> Then I remember that those people are ultimately responsible for the tools we use now
+15:15 < sulix> Speaking of tools we use now, I think I've just got the debug font code to not only randomly corrupt a varible, but also cause valgrind to crash.
+15:18 < sulix> Okay, we need to fix that makefile at some point.
+15:38 <@matches> make clean?
+15:41 <@matches> It's not actually swapping out main.cpp
+15:41 <@matches> It just doesn't have main.o in the link objects and has main in the $(BIN) target and the testers in the tests/% target
+15:42 <@matches> I guess that is swapping out main but MAIN is not being changed
+15:42 <@matches> derp
+15:45 <@matches> I think I fixed it?
+15:45 < sulix> Ah. Well, you've got a merge conflict to look forward to.
+15:45 <@matches> Not if I just NEVER COMMIT IT
+15:46 <@matches> I'm going to call your fix being right and mine being a horrible hack
+15:46 <@matches> Ok I pullsd some changes to graphics stuff, is that it or is there more?
+15:46 < sulix> I haven't fixed it, I've just gone and bu(gg|ff)ered up the font stuff.
+15:47 <@matches> So it's not meant to render unless something changes? But the debug font stuff is changing so it needs to keep rendering?
+15:48 <@matches> I see a lot of "Flushing Debug Font arrays"
+15:48 < sulix> The debug font stuff is separate from the whole view system.
+15:48 <@matches> That makes sense
+15:48 < sulix> It's just trying to fill up a buffer of quads with individual characters in it and then draws them when the buffer gets full.
+15:49 < sulix> One more step on the path of getting rid of all of the OpenGL 1.1 stuff.
+15:50 <@matches> Haha
+15:50 <@matches> git stash seems to think I modified graphicsbuffer.h and screen.h
+15:51 <@matches> git diff seems to think everything is identical
+15:51 <@matches> I'm just going to git reset the things I didn't actually change...
+15:52 < sulix> I do that far too often.
+15:52 <@matches> Oh there is a comment "//test" for testing the Makefile
+15:53 <@matches> And a comment "This isn't the Screen class?" where you copy/pasted the screen class description for the GraphicsBuffer class
+15:53 <@matches> I don't think they need to be preserved
+15:54 < sulix> Yeah, I should have got rid of that screen class bit by now.
+15:55 <@matches> Have a 2 line commit
+15:55 < sulix> The best kind.
+15:55 <@matches> I really need to cut back on the new line creep
+15:56 <@matches> It's like I can't add a line by itself without putting in extra whitespace 
+15:57 <@matches> Uh oh we've ran out of coffee here
+15:58 <@matches> I'm slightly scared by how much the graphics code has increased since I last actually understood how it worked...
+15:59 <@matches> Can you change those *vertexData to *(vertexData++) or is that considered even uglier
+16:03 < sulix> I thought of that, but given how much pointer arithmetic debugging I was going to do, I wanted it to be really obvious when the pointer was being incremented.
+16:03 < sulix> The plan is to have a nice AppendFloat() function or similar that will do this eventually.
+16:05 < sulix> Hmm: "Buffer usage warning: Analysis of buffer object 2 (bound to GL_ARRAY_BUFFER_ARB) usage indicates that the GPU is the primary producer and consumer of data for this buffer object. The usage hint supplied with this buffer object, GL_STATIC_DRAW, is inconsistent with this usage pattern. Try using GL_STREAM_COPY_ARB, GL_STATIC_COPY_ARB or GL_DYNAMIC_COPY_ARB instead.
+16:06 < sulix> Thanks nVidia.
+16:06 < sulix> Now if only we were using OpenGL 4.4 which got rid of buffer usage hints entirely.
+16:29 <@matches> Also I think you forgot the naming scheme :P
+16:30 <@matches> vertex_data
+16:31 <@matches> I will go back to pretending to be doing a literature review
+16:32 <@matches> Instead I will probably plot some graphs
+16:48 <@matches> So
+16:48 <@matches> If you look up "Handbook of Floating Point Arithmetic" on google (which lots of things like to reference these days)
+16:48 <@matches> You can download the entire thing
+16:48 <@matches> I was prepared to pay like $20 for it on amazon
+16:49 <@matches> Oh amazon doesn't sell actual books anymore though does it?
+16:49 <@matches> No they do have it
+16:50 <@matches> For $100...
+16:50 <@matches> I think I'll just stick with my free pdf thanks
+16:55 <@matches> "Handbook" being 579 pages...
+17:04 <@matches> I think if a textbook is citing blog posts we can probably get away with it
+17:05 <@matches> Oh my god I love this textbook
+17:05 < sulix> I was watching a conference talk last night when the presenter just said: "this technique is described on this guys blog. Here's a link."
+17:05 <@matches> "Table 1.1 gives the results obtained by compiling Program 1.1 and running on a Pentium4, using the GNU Compiler Collection and the Linux system"
+17:06 <@matches> [Complete C code for Program 1.1 follows]
+17:06 <@matches> None of this "Pseudo code" crap
+17:07 < sulix> Clearly we should get an extra 10% for every line of pointer arithmetic in our theses.
+17:07 <@matches> There'
+17:07 <@matches> s a problem here
+17:07 <@matches> How do I not make the entire literature review just paraphrased from this one text book
+17:08 <@matches> Mr Gullible and the Chaotic Bank Society!
+17:08 <@matches> It has stories!
+17:08 <@matches> Parents should read this textbook to their children
+17:09 < sulix> I'm pretty certain I know someone with a data structures and algorithms picture book...
+17:09 <@matches> That reminds me of a children's book I wrote about multithreading
+17:10 <@matches> I should probably scan it one day
+17:10 < sulix> Did it begin "Once upa timeon...
+17:10 <@matches> I think it did actually
+17:10 <@matches> Once upon a time there was a process who had a lot of work to do...
+17:11 <@matches> "I should probably scan it one day" - Why not TODAY!
+17:11  * matches goes searching
+17:16 <@matches> It is no where to be found
+17:16 <@matches> I distinctly remember going to throw it out and deciding not to, but not where it actually went
+17:27 <@matches> So maybe compiling a bunch of HFPA's examples using our Real type is a good way to make benchmarks
+17:27 <@matches> I don't know
+17:27 <@matches> My part of the project seems to move further and further away from the document formats thing
+17:27 <@matches> Maybe I'll try and compile the GPU Paranoia
+17:28 <@matches> Hah
+17:34 <@matches> It seems like whatever Mathematica does is what we should do
+17:35 <@matches> I wonder if wolfram is open about how Mathematica actually works
+17:35 <@matches> I don't think they are
+17:35 <@matches> The CQM lecturer for physics found a bug in Mathematica's number representation once that she showed us
+17:35 <@matches> Apparently she reported it years ago and it's still there
+17:36 <@matches> This segued nicely into why we should learn fortran
+--- Day changed Wed Apr 23 2014
+14:00 <@matches> IEEE's float encoding is inconvenient
+14:01 <@matches> The mantissa is like, reversed
+14:01 <@matches> b_{23-i} * 2^{-i}
+14:19 <@matches> And the implicit extra 1 except when it isn't is a pain in the ass as well
+14:19 <@matches> It's like
+14:19 <@matches> I can't just copy the right bits I have to think
+14:19 <@matches> What is this
+14:19 <@matches> Mental effort
+14:19 <@matches> Blargh
+14:20 <@matches> I should have just stuck with the 8 bit floats with their 2 sign bits
+14:20 <@matches> The hydra float
+15:17 <@matches> Wow you get really different representations with an IEEE encoding of the bits
+15:17 <@matches> ...
+15:17 <@matches> I think I liked just treating the two parts as integers in the order they were stored better
+15:18 <@matches> I have to call pow(3) and a floating point division for every '1' in the mantissa to get it to agree with IEEE
+15:19 <@matches> Unless I'm missing some obvious trick
+15:20 <@matches> But in IEEE the mantissa is not an integer
+15:37 <@matches> Ooookkk
+15:38 <@matches> You're precision doesn't disappear as fast when you do it that way
+15:38 <@matches> Your
+15:38 <@matches> Whatever
+--- Day changed Thu Apr 24 2014
+14:40 -!- You're now known as notmatches
+14:40 -!- You're now known as matches
+14:41 <@matches> Ok, less spammy channel time
+14:41 -!- mode/#ipdf [+b m:matches!*@*] by matches
+14:41 <@matches> Spam
+14:41 <@matches> Dammit
+14:42 -!- mode/#ipdf [-o matches] by matches
+14:42 < matches> Spam
+14:43 < matches> Yay
+14:43 < matches> ... this will all appear in the next git commit won't it -_-
+14:52 -!- You're now known as notmatches
+14:52 -!- You're now known as matches
+--- Day changed Sat Apr 26 2014
+00:45 -!- mode/#ipdf [+o matches] by OperServ
+00:46 <@matches> Incoming "at least it is self consistent in its wrongness" floating point conversion
+00:48 -!- mode/#ipdf [-o matches] by matches
+00:48 < matches> Still can't talk
+00:48 < matches> Excellent
+--- Day changed Sun Apr 27 2014
+17:10 < sulix> I finally got ipdf working on my laptop again by porting everything to OpenGL 3.1.
+17:10 < sulix> I'm so sorry about how ugly the code now is, by the way.
+18:04 -!- mode/#ipdf [+o matches] by OperServ
+18:04 -!- Pommers [[email protected]] has joined #ipdf
+18:05 < Pommers> You know what a really good feature for a PDF reader would be? The ability to have it completely borderless without menus, so you just see the page!
+18:05 -!- Pommers [[email protected]] has left #ipdf []
+18:06 <@matches> Wat
+18:06 <@matches> Well we've got that
+18:06 <@matches> We just can't read pdfs
+18:07 <@matches> Did you get much done not going to the cleanup?
+18:07 <@matches> I managed to transfer some dust from one location to another location, and then the wind blew it back in my face
+18:08 <@matches> Then I looked at Frames' proposal and despaired at how much it is actually complete and has words in it
+18:08 <@matches> I think he's onto something with his plan of actually writing things
+18:14 -!- matches changed the topic of #ipdf to: ipdf the pdf doesn't stand for pdf
+18:14 -!- matches changed the topic of #ipdf to: ipdf the pdf doesn't stand for pdf but the df stands for df
+18:14 -!- matches changed the topic of #ipdf to: Sort of
+18:15 <@matches> I need a script to auto mute me...
+18:15 < sulix> I spent basically all of today on that one commit.
+18:15 -!- mode/#ipdf [-o matches] by matches
+18:15 -!- mode/#ipdf [+o matches] by OperServ
+18:15 < sulix> Whether or not that was more useful than the cleanup remains to be seen.
+18:16 <@matches> I should look at it I guess :P
+18:16 < sulix> It compiles*
+18:16 < sulix> *but has lots of warnings.
+18:16 <@matches> It can't be worse than my tester that converts floats to floats
+18:17 < sulix> I'm pretty certain it can be and is worse.
+18:17 <@matches> However I've realised I kind of actually do need to be able to do that
+18:17 <@matches> Woah 3k+ lines
+18:17 <@matches> * 4k+ lines
+18:18 < sulix> Most of it was autogenerated, but still...
+18:18  * matches weeps for OpenGL 1
+18:18 < sulix> You don't realise how much you miss it until it's gone...
+18:19 <@matches> So what does all this stuff actually do
+18:19 <@matches> Because I could see rectangles and things just fine without it
+18:19 < sulix> Exactly the same thing as before but it works on my laptop now.
+18:19 <@matches> I see a shader program, that's obviously good
+18:20 <@matches> Actually I see code for a shader but no shader yet
+18:20 < sulix> The shaders are all #defines, I'm afraid.
+18:22 <@matches> What was wrong with your laptop?
+18:23 < sulix> It doesn't support the OpenGL compatibility mode, so --- as I was using the OpenGL 3.1 feature of "primitive restart", I had to code the entire thing in OpenGL 3.1
+18:23 < sulix> On the bright side, this paves the way for doing things like getting the GPU to use doubles.
+18:26 <@matches> Ooh
+18:27 < sulix> (also halves)
+18:27 < sulix> (halfs?)
+18:27 <@matches> Do GPUs use IEEE floats? I had a reference that seemed to be complaining they didn't
+18:27 <@matches> Although it was circa 2007
+18:28 < sulix> I don't think that there's a requirement that they internally use them, but they do read and write them.
+18:28 < sulix> A bit like how x86 processors use(d) 80 bit reals internally and rounded when reading/writing to memory.
+18:28 <@matches> Do halves have a different mantissa encoding
+18:29 <@matches> The examples given on wikipedia seem wrong
+18:30 < sulix> I think this is the canonical description: http://www.opengl.org/registry/specs/NV/half_float.txt
+18:33 <@matches> That would be before IEEE specified half (binary16) but its the same summation for the mantissa anyway
+18:33 <@matches> binary16 is (briefly) in the 2008 revised 754
+18:34 <@matches> So I think wikipedia is giving a wrong example, but I'm not confident enough to go and change wikipedia
+18:35 <@matches> Also I just realised my conversion of the mantissa to a Real is horrible
+18:35 <@matches> Oh well, it can get fixed later
+18:36 <@matches> Hopefully I can finish my fluid mechanics assignment quick enough to actually work on my progress report / proposal / thing
+18:36 <@matches> (Hah)
+18:36 -!- mode/#ipdf [-o matches] by matches
+18:37 < sulix> Yeah, I'm going to see how much Lit review I can write for tomorrow. :/
+--- Day changed Mon Apr 28 2014
+22:06 -!- mode/#ipdf [+o matches] by OperServ
+22:10 <@matches> Must find motivation to work on Lit Review at 10pm...
+--- Day changed Tue Apr 29 2014
+10:06 <@matches> Must find motivation to work on Lit Review at 10am...
+--- Day changed Wed Apr 30 2014
+13:04 <@matches> I wanted to rasterise a vector image so I could compare them at the same scale ("These look the same!") and zoomed ("This one looks crappier!)
+13:04 <@matches> But because vector graphics editor/viewers don't use pixels as units but they do when they export to a bitmap, it's difficult to actually get them to look the same
+13:04 <@matches> Before scaling
+13:05 <@matches> I guess a screenshot tool might be the best way
+13:06 <@matches> I don't know if I need to do this really
+13:07 <@matches> I guess Mechanical and Chemical engineers marking this will probably benefit from having an example
+13:07 <@matches> Doesn't everyone know the difference between vector and raster graphics
+13:07 <@matches> Where was that paper that had tux vector and rasterised
+13:10 <@matches> Ah, worth2003xr.pdf
+13:11 <@matches> If it's in a paper I guess it can go in a Lit Review
+13:11 <@matches> At least until I have something better
+13:15 <@matches> Kind of ironic that the image I am using was actually scanned first as a bitmap and then converted to vector using Trace Bitmap
+13:57 <@matches> Ah, it's actually impossible to get it to be exactly the same, because even taking a screenshot on my own screen it will then be different depending on the display of whoever reads the digital pdf
+13:57 <@matches> Oh well
+13:58 <@matches> I suppose "It looks shittier" will have to suffice without trying to make them look exactly the same before scaling
+13:59 <@matches> I have spent WAY too long making this example
+13:59 <@matches> I could have just gone "See \cite{worth2003xr.pdf}"
+16:00 <@matches> So it might be worth talking about dpi in pdf viewers and how it SUCKS
+20:17 -!- mode/#ipdf [-o matches] by matches
+21:14 -!- mode/#ipdf [+o matches] by OperServ
+21:46 <@matches> I have perpetrated XML on the codebase
+21:47 <@matches> I have grand visions of our code supporting SVGs
+21:47 <@matches> I also have grand visions of actually doing a Literature Review
+21:50  * sulix git pull's with some trepidation.
+21:52 < sulix> Never heard of pugixml before but it looks okay.
+21:55 <@matches> The W3C XML specification is pretty terrifying
+21:56 <@matches> I will feel more like I've satisfied the "Document Formats" part of the Literature Review if I say some things about it
+21:57 <@matches> Well SVG in particular
+21:57 <@matches> SVG defines a "minimum" precision of IEEE binary32 
+21:58 <@matches> But there's a specification for "High Quality" viewers that have to use binary64
+21:58 <@matches> That's probably the only real thing relevant directly to our problem
+--- Day changed Thu May 01 2014
+01:23 <@matches> It's May 1st
+01:23 <@matches> This means we can no longer say "The Literature Review is due Next Month"
+01:23 <@matches> IT'S DUE THIS MONTH
+01:23  * matches freaks out
+01:23 <@matches> ... but after sleep
+01:25 <@matches> Page 12 of my Literature Review by the way
+01:25 <@matches> Is the only page I like
+16:34 <@matches> The C version of paranoia compiled for me
+16:34 <@matches> Not terribly exciting (I have an IEEE 754 compatible processor! Amazing)
+22:17 <@matches> W Kahan's website is a very interesting if slightly difficult read
+22:24 <@matches> He appears to have written this 80 page pdf in a day
+22:27 <@matches> It kind of reads like one of those religious propaganda pamphlets
+22:27 <@matches> "Java is the Work of Satan"
+22:27 <@matches> "Kernighan-Ritcie C floating-point semantics are the light"
+22:28 <@matches> But every so often he has a graph or example that makes him seem less crazy
+22:34 <@matches> "And now Java forbits you to mention or use extra-precise long double arithmetic, though IEEE Standard 754 recommends its use and over 95% of computers on desktops have it built into their hardware. You paid for it, but Java denies you its benefits."
+22:34 <@matches> Java has long double now right?
+22:34 <@matches> Although that JOP I was looking at was just 32 bit
+22:36 <@matches> Ah, java.lang.math.BigDecimal
+22:37 <@matches> "But be careful with division, because it will throw exceptions if it's like 1/3, then it will be Non-terminating decimal expansion."
+22:37 <@matches> That sounds horrifying
+22:40 -!- mode/#ipdf [-o matches] by matches
+--- Day changed Sat May 03 2014
+22:01 < sulix> My crazy idea to you would be to research p-adic number representations.
+22:01 < sulix> It's been a while, but they were mentioned a couple of times in pure maths units and seemed interesting/crazy and I can't remember much about them.
+22:28 -!- mode/#ipdf [+o matches] by OperServ
+22:29 <@matches> I will look at them, the "just use a float but with more bits until you run out of memory" doesn't seem a very well thought out approach
+22:29 <@matches> Maybe someone actually cares enough to research better ways
+22:29 <@matches> I mean, something's wrong with an idea when you can write "1/3" and have a runtime exception (re: Java BigNumber)
+22:30 <@matches> I plan to write some nasty things about Java based on Kahan's rants so as to gloss over the fact that it has BigNumber built into it and forstall the inevitable "Why didn't you use Java!"
+22:31 < sulix> I think we want to truncate to whatever the most accurate you can see at the given zoom level.
+22:31 <@matches> Yeah
+22:32 <@matches> It annoys me that XML and HTML specs don't have a PDF version
+22:32 < sulix> I've been printing to pdf for some of those things.
+22:33 <@matches> None of the links to different sections would work though
+22:35 <@matches> Specifications are thrilling
+22:35 <@matches> "How to read this specification"
+22:35 <@matches> "This specification should be read like all other specifications"
+22:35 <@matches> Oh wait
+22:35 <@matches> It actually gets better
+22:35 <@matches> Is that...
+22:35 <@matches> Humour!
+22:36 <@matches> I thought that wasn't allowed!
+22:36 <@matches> "First it should be read cover-to-cover, multiple times. Then, it should be read backwards at least once. Then it should be read by picking random sections from the contents list and following all the cross references"
+22:37 <@matches> As much as I love the idea of reading 626 pages of specification backwards...
+--- Day changed Tue May 06 2014
+00:39 <@matches> http://szmoore.net/ipdf/sam/rate-my-litreview.py
+00:39 <@matches> Tim will be thrilled!
+00:40 <@matches> I'm probably going to really regret making that
+00:41 <@matches> The regret is rising to the surface
+00:41 <@matches> It's an example of an interactive document format
+00:41 <@matches> The pixels or perish guy would approve
+00:43 <@matches> So much regret
+00:43 -!- mode/#ipdf [-o matches] by matches
+23:37 -!- mode/#ipdf [+o matches] by OperServ
+23:38 <@matches> So, I have this book called "Computer Graphics" that is pretty amazing
+23:38 <@matches> Funnily enough it has all the algorithms in it
+23:38 <@matches> For computer graphics
+23:38 <@matches> Probably should have been reading it ages ago but I thought we were worrying more about precision
+23:38 <@matches> I don't even know anymore
+23:39 <@matches> Have to read 500pg textbook on graphics, 500pg textbook on floating point numbers, 500pg PDF/PostScript standards...
+23:39 <@matches> Too many pages
+23:39 <@matches> Anyway it has a section on Octrees
+23:39 <@matches> But don't worry
+23:39 <@matches> It mentions Quad trees
+23:39 <@matches> It also actually mentions fractals
+23:39 <@matches> As a thing
+23:40 <@matches> In other news, extending the document we have at the moment to allow anything other than rectangles will be interesting
+23:41 <@matches> Did you do this on purpose? :P
+--- Day changed Wed May 07 2014
+12:32 <@matches> We need to do something about all the warnings generated by the magic OpenGL 3 stuff
+12:32 <@matches> It's making it hard to sport warnings that I actually care about
+12:33 <@matches> Like: You forgot to return a value in this function :S
+13:52 <@matches> Gah I did it again
+13:52 <@matches> auto is dangerous
+13:53 <@matches> Possibly because it's buggy
+13:53 <@matches> I can't actually see any compiler warnings at all
+17:39 <@matches> So you can almost maybe see a difference between beziers calculated using floats and doubles
+17:40 <@matches> If you squint
+17:40 <@matches> And view them on different monitors
+17:41 <@matches> Ah there we go
+17:41 <@matches> I successfully broke it
+17:42 <@matches> When you round to pixel positions it doesn't make a difference
+17:43 <@matches> But on the other hand if you calculate beziers using really big numbers they look wierd :P
+17:43 <@matches> That's important
+17:43 <@matches> Because if you have an arbitrary infinite document you might be at coordinate positions that are really big
+17:43 <@matches> Captain Obvious strikes again
+17:45 <@matches> I think I will make a video of a circle moving towards infinity
+17:45 <@matches> This probably won't help the literature view much but it's too tempting to resist
+17:46 <@matches> I gave up trying to deal with our document format so I currently just generate vector<pair<T, T> > and then map that to a bitmap :P
+--- Day changed Thu May 08 2014
+10:57 <@matches> So circle was a terrible example
+10:57 <@matches> It stays as a circle
+10:58 <@matches> Hopefully the first curve I tried wasn't just a bug
+12:31 <@matches> I think it was a bug
+13:35 <@matches> There are bezier things in ipdf/code/src/tests now
+13:57 < sulix> I am very confused. 
+13:57 < sulix> It generates bitmaps of circles in varying shades of red?
+13:58  * sulix decides to actually read the code.
+14:03 < sulix> Ah: I see what it's doing now.
+14:16 <@matches> Your first comment was pretty accurate :S
+14:17 <@matches> I was trying to obtain some amazing animation of a circle that hopelessly collapsed or exploded or something
+14:19 < sulix> I'm slightly terrified that it's generating a vector of points.
+14:19 < sulix> On the other hand, it looks like the rest of the world is realising what a mistake making OpenGL 3 terrifying was.
+14:19 <@matches> Yeah that's a bit lazy
+14:19 <@matches> Although, is returning a vector optimisable?
+14:20 < sulix> In C++11 it is.
+14:20 < sulix> (But not C++98)
+14:20 <@matches> C++11 is growing on me
+14:20 < sulix> Yeah: I've found the same thing.
+14:21 < sulix> I'm a bit scared about what that means, though.
+14:21 < sulix> Maybe one day I'll think boost was a good thing, and then I'll truly be lost.
+14:21 <@matches> Hahaha
+14:21 <@matches> The lambdas remind me of Javascript :S
+14:22 < sulix> I think lambdas are one of those things that are good for you in moderation, but poisonous in large quantities.
+14:22 <@matches> Probably
+14:23 < sulix> I won't be around on Monday, btw, so I'll miss the meeting.
+14:23 < sulix> (Also I'm missing out on Codejam, sadly)
+14:23 <@matches> No!
+14:23 <@matches> (To both of those things)
+14:24 <@matches> Oh god that means I need to make double the progress
+14:25 < sulix> I spoke to Tim, he said that it might be worth cancelling the meeting altogether.
+14:26 <@matches> Haha
+14:26 <@matches> I'm not sure if I should take that as a good or bad sign
+14:27 <@matches> I'm not going great with the literature review
+14:28 < sulix> I rated a bit of it.
+14:28 < sulix> (Though there wasn't a submit button, and it took me a few goes to get through the Turing test)
+14:28 <@matches> Page 20?
+14:28 <@matches> Haha
+14:28 <@matches> The turing test defaults to the accepted answer though!
+14:28 <@matches> You have to actually change it to get it wrong
+14:29 < sulix> Yeah, I thought it was a trick question.
+14:29 <@matches> Maybe I'll give Tim a slightly less joke-worthy version of Rate My LitReview when the draft is done
+14:29 <@matches> ... when hell has frozen over...
+14:29 <@matches> Whichever comes first
+14:31 < sulix> You should read James Mickens' USENIX articles: mkdir -p vogl/vogl_build/bin/release64 && cd $_                                                                                                                                                                                  
+14:31 < sulix> cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_X64=On ../../..                                                                                                                                                                         
+14:31 < sulix> make -j 10
+14:31 < sulix> (Also I should paste the right thing in)
+14:31 < sulix> http://research.microsoft.com/en-us/people/mickens/
+14:32 <@matches> Ah yes, I will read those at some point
+14:32  * matches downloads the first one, telling himself he will not read it until working on the lit review
+14:33  * matches reads it anyway
+14:33  * sulix feels guilty about not doing lit review at the moment, too.
+14:40 <@matches> Have you heard of /read Computer Graphics by Hearn and Baker?
+14:40 <@matches> I have the ancient "In the dawn before OpenGL 1.0" version
+14:41 <@matches> There is a section mentioning "GL"
+14:41 <@matches> I don't think they use GPU anywhere, they call them "Display Rasterisers" or something
+14:42 <@matches> Display Processor
+14:43 <@matches> A Display Processing Unit is a Display Processor for a Random Scan (vector) display system
+14:43 <@matches> Input devices are interesting too
+14:44 <@matches> "Input Dials"
+14:44 <@matches> A box of variable resistors basically
+14:45 <@matches> Working with computers in the 70s/80s would have been interesting although probably just as horrible as it is today
+14:45 <@matches> But at least it would have been less "webby"
+14:46 <@matches> Where "How do I centre a div" is a deep philosophical question
+14:48 <@matches> I should probably obtain / read a newer edition of this if I want to put it in my lit review?
+14:48 <@matches> Although it is referrring to the same papers we had about Bressenheim
+15:14 <@matches> Oh my god they mention precision!
+--- Log closed Thu May 08 17:04:49 2014
+--- Log opened Thu May 08 18:56:39 2014
+18:56 -!- matches [[email protected]] has joined #ipdf
+18:56 -!- Irssi: #ipdf: Total of 2 nicks [0 ops, 0 halfops, 0 voices, 2 normal]
+18:56 -!- Irssi: Join to #ipdf was synced in 3 secs
+19:55 < matches> Bresenham made a tutorial on rasterisation
+19:56 -!- mode/#ipdf [+o matches] by OperServ
+19:56 <@matches> Bresenham has a nice tutorial about rasterising
+19:56 <@matches> Ties in with the "Since mankind came down from the trees" angle
+19:57 <@matches> "Needlepoint or counted cross-stitch, such as that popularised by the image on a box of Whitman Sampler chocolates..."
+19:57 <@matches> I'm not sure how to relate the rasterisation stuff to the precision stuff
+19:58 <@matches> You have to make a pretty big rounding error to end up in the wrong pixel
+19:59 <@matches> Hearn and Baker mention rounding errors as being one reason why you don't want to use floats and then round them when rasterising things
+19:59 <@matches> The (bigger) reason being that floating point operations are expensive
+20:00 <@matches> They say pixels could move from the line in the DDA algorithm for long lines... I wonder how long they mean... 1e38 pixels? :P
+20:02 <@matches> I want to actually make a drawing of things that look different due to rounding errors dammit!
+20:03 <@matches> None of this "here is a sentence or two of handwaving"
+20:04 <@matches> Maybe rounding errors were a problem on computers with 8 bit floats and terrible resolution displays :P
+20:04 <@matches> Except the worse your resolution the less you'd notice rounding errors
+20:04 <@matches> Well the more you'd notice them, the less they'd happen?
+20:04 <@matches> I don't know
+20:05 -!- mode/#ipdf [-o matches] by matches
+20:30 < sulix> These were recommended: http://www.amazon.com/Forman-S.-Acton/e/B001IYTXGY/?_encoding=UTF8&tag=mollrock-20&linkCode=ur2&qid=1358713701&camp=1789&sr=8-3&creative=390957
+20:30 < sulix> (By a blog post, which turned out not to be about floating point precision, but does mention it: http://mollyrocket.com/casey/stream_0009.html )
+21:21 < matches> I'll look at them at some point
+21:22 -!- mode/#ipdf [+o matches] by OperServ
+21:22 <@matches> I'll look at them at some point
+21:22 <@matches> I sort of got bogged down explaining how lines are drawn :S
+21:22 <@matches> Graphics is complicated dammit
+21:22 <@matches> I'll probably get more done if I just write about everything no matter how irrelevant
+21:23 <@matches> Sooner or later I'll actually write something important and the rest can be appendicised
+21:23 <@matches> Hopefully
+21:25 <@matches> Oh dear, I have located some primitive form of blog
+21:26 <@matches> Well, it talks about things, so I'll reference it...
+21:26 <@matches> "The good-looking textured light-sourced bouncy fun smart and stretchy page"
+21:26 <@matches> It's generally best to not go up a directory from the page you are looking at
+--- Day changed Sun May 18 2014
+15:47 <@matches> So things are due soonish
+15:47 <@matches> :S
+20:09 <@matches> Are you alive, because I don't think I'm alive
+20:10 -!- Irssi: #ipdf: Total of 2 nicks [1 ops, 0 halfops, 0 voices, 1 normal]
+20:11 <@matches> I'm feeling pretty guilty about all that work I didn't do last week...
+20:47  * sulix agrees entirely.
+22:11 <@matches> I give up
+22:11 <@matches> I will just have to face disappointment O'clock tomorrow
+22:22 < sulix> I still have to put more work in before I feel I even deserve disappointment, I think... :/
+22:23 < sulix> I made the mistake of deleting the irrelevant bits from my lit review, and now there's almost nothing left!
+--- Day changed Mon May 19 2014
+08:03 < sulix> At the risk of causing terror: is your final Lit review due on Friday too?
+08:05  * sulix has discovered that his is, and is currently trying to work out how to type in the foetal position.
+09:59 <@matches> Yeah it's due on Friday
+09:59 <@matches> Today is not off to a good start
+10:00 <@matches> I missed an 8am lab but I can't blame the 2 buses I missed because I actually forgot about it
+10:00 <@matches> Then I missed the 2 buses
+10:00 < sulix> Ouch.
+10:00 <@matches> I think missing my tutorial this afternoon is a bad idea but on the other hand... lit review
+10:02 < sulix> I'm frantically writing irrelevant stuff now.
+10:03 < sulix> I'm a little concerned about my entire section on "Document Formats" basically only referencing some specs and "Pixels or Perish".
+10:03 <@matches> That's what I do
+10:03 < sulix> Whereas I have like 20 references for graphics papers that are almost totally irrelevant.
+10:04 <@matches> I have a reference for shading on a vector display
+10:04 <@matches> That's pretty irrelevant
+10:04 < sulix> I've started referencing data structures that are "kinda similar I guess" to the Quadtree, as well. :/
+10:05 <@matches> I ham fisted it in with the paper about embedding 3d figures in documents
+10:05 <@matches> Like "in the 70s even though people had algorithms for things they still drew the diagrams by hand!"
+10:05 < sulix> Peasants!
+10:06 <@matches> My section on number representations is pretty shite
+10:06 <@matches> I still haven't finished floats
+10:06 < sulix> Mine is currently under construction, as it were.
+10:06 <@matches> And the whole point is supposed to be that floats are not good enough
+10:07 < sulix> I've got a terrible thing about floats, but have started talking about arb. precision floats now.
+10:07 <@matches> All I know about the alternatives are that they are basically still floats
+10:07 <@matches> But with more bits...
+10:07 < sulix> I also have some maths I made up that is maybe wrong.
+10:07 <@matches> Will you be here in time for doom O'clock?
+10:08 <@matches> *cough* I meant eleven
+10:08 < sulix> We can but hope.
+10:08 < sulix> I'm sort-of counting on the meeting not happening until 11:20 or so. :/
+10:09 <@matches> I'll show him Rate My Lit Review
+10:09 <@matches> That'll distract attention from the lack of Lit Review
+10:09 <@matches> I'm also assuming no one is ever going to read these IRC logs
+10:09 < sulix> We can but hope.
+10:10 < sulix> I'm feeling dirty because I've just referenced the java standard library.
+10:10 < sulix> Out damnéd 
+10:10 < sulix> java.math.BigDecimal.
+10:15 <@matches> I was going to reference that at some point
+10:16 <@matches> I feel like you've made more progress than I have been
+10:17 <@matches> Possibly the decision to sleep last night was a poor one
+10:26 < sulix> Having done the opposite: it wasn't.
+10:30 <@matches> Argh I just got the icedove reminder for the meeting
+10:32 <@matches> So I washed out my Guild (TM) Keep Cup (TM) this morning and now my tea tastes like detergent
+16:37 <@matches> We didn't get the random asking about photoshop in here
+16:37 <@matches> I feel left out
+22:49 <@matches> sjy in #ucc mentioned Knuth's Metafontbook in regards to rendering fonts at infinite precision
+22:49 <@matches> Yet another thing to get around to reading :S
+22:49 <@matches> Before Friday :S
+22:50 <@matches> Wednesday I guess if we meet Tim's deadline for a draft :P
+23:08 <@matches> I guess I was meaning to reference the TeX book at *some* point
+23:08 <@matches> So many things
+23:08 <@matches> Oh dear it's 11pm already
+23:08 <@matches> :-(
+23:09 <@matches> Ok, so 
+23:09 <@matches> Metafont seems to basically be symbolic ways to define fonts
+23:10 <@matches> Also Beziers
+23:10 <@matches> All the beziers
+23:10 <@matches> Good
+23:11 <@matches> I was on the right track when I said Beziers were really important
+23:11 <@matches> Knuth is so detailed
+23:12 <@matches> Now I feel guilty about my cartesian line
+23:12 <@matches> That I didn't reference Rene Descartes La Geometrie 1637
+23:12 <@matches> I'm a monster
+23:15 <@matches> I think instead of thinking of things as either interpreted or dom-y like Hayes does, the best way is to think about "What is in the document (eg: DOM)" and "How it is drawn" and you can either have your format care about both things or just one but obviously the most useful formats allow for both
+23:16 <@matches> Actually scratch that
+23:16 <@matches> I don't know anymore
+23:16 <@matches> It's too philosophical
+23:16  * matches goes back to floating point nubers
+23:18 <@matches> So I wonder how much of PostScript is a shameless rip off of METAFONT
+23:18 <@matches> It's not like you have to give credit when you are trying to sell something
+--- Day changed Tue May 20 2014
+09:29 <@matches> So it's quite easy to do a 
+09:29 <@matches> "fractal" in SVG/Javascript
+09:29 <@matches> Where easy does not necessarily mean it isn't horrifying
+09:30 <@matches> Aaand there goes all my RAM
+21:43 <@matches> Casually slipping in a footnote directing the reader to rabbitgame.net in my lit review...
+21:43 <@matches> So my webby documents section is probably my least shitly written, or maybe that's just because it has pointless pretty pictures in it
+21:44 <@matches> It is basically
+21:44 <@matches> "Here are the w3c standards"
+21:44 <@matches> "Here are some pretty pictures made with SVGs, can't you just see the DOM leaching out of them?"
+21:44 <@matches> :S
+21:45 <@matches> I'm not sure how well I am treading the line between actually reviewing literature and just giving examples of things
+--- Day changed Wed May 21 2014
+12:09 <@matches> PDF is a mess of a "standard"
+12:09 <@matches> As are all useful things I suppose
+12:09 <@matches> As far as I can work out
+12:09 <@matches> It is not a DOM but a graph
+12:10 <@matches> However, it is also PostScript-y
+12:10 <@matches> But they deal with "interactivity"
+12:10 <@matches> By including XHTML
+12:10 <@matches> And having an "action dictionary" which is literally just a string of javascript
+12:11 <@matches> I just
+12:11 <@matches> Can't even begin to understand how it all works
+12:12 <@matches> But yeah, not really "Crippled Postscript" so much as "Everything including the kitchen sink except for a few bits of Postscript"
+12:13 <@matches> So the Postscript part of it is no longer turing complete, but I don't think you can pretend something in which you can stick arbitrary Javascript isn't turing complete :S
+12:13 <@matches> Oh and even though they have XHTML-ish stuff their Javascript API is totally different to W3Cs
+12:13 <@matches> Hooray
+12:14 <@matches> I suppose the fact that nothing except Adobe products seem to actually use Javascript/XHTML stuff is telling us something about this approach
+12:15 <@matches> I reckon the ideal standard
+12:15 <@matches> Would probably be the DOM but with the "we actually care about efficiency" parts of PDF
+12:18 <@matches> The interactivity of web pages combined with the actually professional looking type setting of PDF
+12:18 <@matches> Or just plain text files
+12:19 <@matches> Plain text files are an underapreciated Document Format
+12:23 <@matches> Ah, I think it sort of makes sense now
+12:23 <@matches> PDF uses what is essentially PostScript to construct this graph thing
+12:24 <@matches> And the graph thing can have elements in it that are just "Make this part of the graph the equivelant DOM from this XHTML"
+12:25 <@matches> And it can also have elements that are "Execute this Javascript to dynamically change this graph"
+12:25 <@matches> But the normal elements are just like PostScript as it would be sent to a printer to show the thing statically
+12:26 <@matches> So when it's rendered it is interpreting the Postscripty bits and when its being interacted with it is updating the Postscripty bits
+12:26 <@matches> I *think*
+12:26 <@matches> This is different from the webby standards which don't really specify how things are actually drawn
+12:27 <@matches> No wait it's not
+12:27 <@matches> Argh I don't know
+12:27 <@matches> You can't classify this shit
+12:27 <@matches> Document Goes In -> Pixels Come Out
+12:28  * matches despairs
+12:49 < sulix> You will find (slightly) less despair if you relegate javascript to the footnote where it belongs. :P
+13:07 < sulix> Hmm... the HTML 2 spec looks like it almost got properly IETF standardised. Might just reference that.
+13:12 < sulix> Oh, they obsoleted it and replaced it with a "Just look at w3c" standard...
+13:17 <@matches> But PDF isn't just flattened PostScript
+13:17 <@matches> It is like, everything
+13:17 <@matches> All merged into one horrifying standard
+13:18 <@matches> Oh well
+13:18 <@matches> I made my shape example in PostScript by removing the alpha
+13:18 <@matches> I'm not sure whether there's any point in including it as a figure
+13:18 <@matches> Most of the PostScript file is taken up by the header
+13:19 < sulix> Holy balls, I just looked up the CSS spec. There are like 200 of them.
+13:19 <@matches> Yeah I just used CSS2
+13:19 <@matches> The others are like
+13:19 <@matches> Colours
+13:19 <@matches> Or something
+13:20 < sulix> That's what I'm using, too. 
+13:20 < sulix> The tired and tested "what gets top result on google" method of paper selection.
+13:20 <@matches> Closer examination reveals that most of the PostScript header is defining commands to be shorter :P
+13:20 <@matches> Amazing
+13:20 <@matches> Cairo probably needs to get referenced somewhere
+13:21 <@matches> If only so I have a way out of my Javascript in PDF section by saying that Cairo doesn't support it
+13:21 <@matches> I desperately need to escape the Javascript
+13:25 < sulix> I think the secret is to use the phrase "rendering model" wherever possible.
+13:51 <@matches> Dammit
+13:51 <@matches> So I have that wierd shape in both SVG and PostScript now
+13:51 <@matches> The SVG version fits beautifully and is wonderfully concise and you can see how SVG works
+13:51 <@matches> The PostScript version is just like, BLARGH WALL OF TEXT
+13:51 <@matches> ALSO WE DON'T HAVE ALPHA
+13:52 <@matches> So I'm not sure whether to cut just the PostScript one or both of them now :S
+13:53 <@matches> PDF looks distinctly not like it is just PostScript the more I think about it
+13:53 <@matches> It's like "We are using the same model as PostScript in that commands go in and pixels come out"
+13:54 <@matches> By that logic SVG is also the same
+13:54 <@matches> I think what I should do is just make an appendix
+13:54 <@matches> "A Shape in 20 Document Formats"
+13:56 <@matches> SVG really is the most concise compared to PS and PDF
+14:53 <@matches> Right I can simplify the god awful mess of PS a bit
+14:54 <@matches> I'm hoping I can just say "Here is the PS reference and here is some PostScript as you can see it is interpreted-ish"
+14:54 <@matches> Cairo appeared to draw each element backwards and reverse it after drawing it
+14:54 <@matches> It is stupid
+14:57 <@matches> Like, why bother doing definitions like m == moveto etc
+14:57 <@matches> If you're just going to stick pointless crap in
+14:57 <@matches> My document is half the size without using single letter definitions
+15:31 < sulix> Welp. The wrath of Tim is upon us...
+15:41 <@matches> I'm choosing to latch onto the "quite good" rather than "some way to go"
+15:45 <@matches> It sort of sounds like "Well at least you gave me a pdf file" :P
+15:48 < sulix> One day, all anyone will use are ipdf files...
+15:50 <@matches> Right, TeX is very different from PostScript I think
+15:50 <@matches> At least, pure tex
+15:50 < sulix> Also, holy mackerel, I might have just found a paper on precision in document formats...
+15:50 <@matches> :O
+15:50 < sulix> It even quotes Kahan
+15:50 <@matches> :OOO
+15:50 < sulix> https://www.tug.org/TUGboat/tb28-3/tb90beebe.pdf
+15:50 <@matches> What is it
+15:50 <@matches> Emergency rewrite of entire lit review
+15:51 < sulix> It's a bit TeX specific, but still.
+15:51 <@matches> That's alright
+15:51 <@matches> It ties in amazingly with my decision to hamfist TeX and Metafont into the lit review
+15:52 <@matches> Although I'm not sure it is wise because it means I have to talk about fonts and things
+15:53 <@matches> I wonder if "Fonts are just bezier curves" is sufficient
+15:53 <@matches> They are always treated seperately to curved paths
+15:53 <@matches> Which is understandable because it's a bit inconvenient if you want text in a document to have to define the paths for each glyph
+15:54 <@matches> Anyway I'm glad my assertion that Beziers are the only curves we care about is proving true
+16:33 <@matches> Are you in a position to retrieve this "envelope"
+16:57 < sulix> Not tonight: I'm going to pick it up tomorrow morning.
+16:58 < sulix> And hopefully replace it with a sparkling, glorious review of literature.
+17:00 <@matches> :(
+17:00 <@matches> I cannot concentrate now
+17:00 <@matches> Because I haven't read the comments, I could be doing everything wrong!
+17:02 <@matches> Admitedly I'm technically "working" right now
+17:27 < sulix> My "Document Format Taxonomy" is almost complete... Just need to add SVG.
+17:28 < sulix> (And close my eyes and assert that Microsoft Word documents are not actually documents or something)
+17:28 <@matches> I am jealous
+17:29 <@matches> I just added PostScript it's not particularly well written
+17:29 < sulix> (I don't have any pretty pictures or code, though)
+17:29 < sulix> I've discovered that, despite having totally different numbers for "implementation limits", the PostScript and PDF specs are (a) talking about the same data types and (b) lying.
+17:32 <@matches> Bahaha
+17:32 < sulix> Do you know where the SVG spec mentions precision?
+17:33 <@matches> Ah, I regret not noting the page number
+17:33 <@matches> But a text search should find it
+17:33 <@matches> It specifically says things
+17:33 <@matches> I am interested in whether or not Javascript is subject to the same requirements
+17:34 < sulix> All I've found is "must be correct within 1px at 1:1 zoom", and "It is suggested that viewers attempt to keep a high degree of accuracy when zooming".
+17:35 <@matches> There's something that is about IEEE floats
+17:35 < sulix> Aaah... and a "High-Quality Viewer" must support at least double precision on coordinate system transforms.
+17:35 < sulix> But "IEEE" does not show up in a search of the spec.
+17:36 <@matches> Ah right
+17:36 <@matches> My brain just inserts IEEE whenever I hear "single" or "double" now
+17:36 <@matches> "An IEEE Double Episode of MasterChef!"
+17:36 <@matches> (Which would probably be infinitely more exciting)
+17:37 < sulix> (Or would it be NaNly more exciting...? :P)
+17:38 <@matches> Speaking of "where things are" are we meant to reference page numbers in standards?
+17:38 <@matches> I guess I'll find out when I read Tim's comments
+17:39 <@matches> Excellent my lab finished 20 minutes early
+17:39 <@matches> And also 40 minutes later than the other demonstrators :S
+17:40 <@matches> Do you want me to pick up your comments and scan them and email them to you? :P
+17:40 < sulix> That'd be great.
+17:40 < sulix> Also probably depressing.
+17:41 < sulix> But great.
+17:41 <@matches> Alright, ETA Transperth + Scanner is probably broken O'clock
+17:42 < sulix> I'll savour the blissful ignorance.
+19:50 <@matches> I don't think scanning is worth it, I'll just spam the feedback into this channel
+19:50 <@matches> First up, David's Lit Review
+19:50 <@matches> There is either "Gool" or "Cool" or possibly "Good" written and underlined on the first page
+19:51 <@matches> The opening paragraph is "A little overdramatic?"
+19:51 <@matches> (Since it's a question, I'd like to voice a "No" opinion here)
+19:51 <@matches> The DOM in a footnote is not defined
+19:52 <@matches> Page 2
+19:52 <@matches> There is a tick
+19:52 <@matches> A question mark in regards to the hyphenated bit in the rendering paragraph
+19:53 <@matches> Say "avoid" instead of lack
+19:53 <@matches> Add what the "basic primitives" actually are
+19:53 <@matches> There appears to be an issue with hyphenated phrases the hyphens are circled
+19:53 <@matches> Another tick!
+19:54 <@matches> Oh, you have a $2^64 - 1$\footnote{} which is unfortunate because it looks like $2^64 - 1^2$
+19:54 <@matches> That footnote (probably others?) would work in the paragraph without being footnote
+19:54 <@matches> Fullstops go after \cite{}
+19:55 <@matches> A tick (in regards to the quadtree diagram)
+19:55 <@matches> The concluding comment
+19:56 <@matches> "OK, Much to do (underline) There doesn't seem to be much scholarly references used. You have enough, but you seem to cite them in the context of their contributions to standards as opposed to how they addressed a research question or open problem"
+19:57 <@matches> And (not even our references lists are safe!)
+19:57 < sulix> Oh dear.
+19:57 <@matches> Where referencing web pages, include the date retrieved
+19:57 <@matches> That's it
+19:57 <@matches> I shall move on to my own for completeness although you might not need to care
+19:58 < sulix> Phew, that's not quite as horrible as it could have been, I guess.
+19:58 <@matches> I also have "Good"
+19:58 <@matches> There are some "I didn't read this bit but it had words that seemed vaguely relevant" ticks in Chapter 1 (Introduction) and 2 (Proposal)
+19:59 <@matches> Sorry Tim if you read this
+19:59 <@matches> But when I mark lab reports for Physics that's usually where I put the ticks :P
+19:59 < sulix> (The secret comes out)
+20:00 <@matches> (In my defence I did spend two hours marking the reports this morning and I am paid for none of them, so...)
+20:01 <@matches> (It's the bits that I scribble all over that are where the marking gets done)
+20:01 <@matches> (I think I've covered myself in case the lawyers of any of my students read this channel now, so I will resume my story...)
+20:02 <@matches> Attention is called to the many glaring instances of [?] and "Refer to Section ?"
+20:02 <@matches> :S
+20:02 <@matches> I should probably define a vector image before comparing it to a raster image
+20:02 <@matches> Incidentally my Fox looks amazing
+20:02 <@matches> On printed paper
+20:03 <@matches> (Tim didn't say that, that's just my modest opinion)
+20:03 <@matches> Ahem.
+20:03 < sulix> Can you see the difference between the vector and bitmap versions easily?
+20:04 <@matches> At the original scale there is, alas, a very slight fuzziness
+20:04 <@matches> But I reckon the markers will be old and blind
+20:04 <@matches> Hmm, I should either be more careful about what I say here or stop logging this channel...
+20:04  * sulix hopes they don't read that.
+20:04 <@matches> Sorry markers
+20:04 <@matches> I worship your power
+20:04 <@matches> Please do not smite me
+20:05 <@matches> The scaled up version is interesting
+20:06 <@matches> It looks a bit like your circle with the blocky non-anti-aliased bit but actually anti-aliased by the pdf viewer
+20:06 < sulix> I guess the scaling would be done by the printer's postscript RIP.
+20:06 <@matches> Yeah I guess
+20:07 < sulix> (Side note: I find the whole idea of Postscript interpreters being called RIPs somewhat fitting)
+20:07 <@matches> The PDF decides not to antialias it and converts it to Postscript and then the postscript interpreter adds its own antialiasing?
+20:07 <@matches> I don't know
+20:07  * sulix joins the "SVG is the least broken format" club.
+20:07 <@matches> It's very tempting to descend into footnote madness with this lit review
+20:07 <@matches> "By the way, this very document is an example of this thing!"
+20:07 <@matches> Etc
+20:08 <@matches> Moving on
+20:08 <@matches> The point of talking about vector displays at all is questioned (at least I think that's what the "Why?" refers to here)
+20:08 <@matches> Or it could be "Why is there yet another ?? in this paragraph" I guess
+20:09 <@matches> But probably the former
+20:09 <@matches> I do not have space to include Bresenham's algorithm
+20:09 <@matches> Oh boy, he's going to love what I did with the SVG and Postscript images...
+20:09 <@matches> But I am glad I do not have to actually explain Bresenham's algorithm because it's actually annoyingly detailed
+20:11 < sulix> All sane descriptions of Bresenham's algorithm end up being cascades of "By symmetry" anyway.
+20:11 <@matches> I need to actually find a reference that applied Wu/Bresenham directly to a non-straight line
+20:11 <@matches> You said Bresenham adapted his algorithm to circles but I don't think I'll bother unless someone adapted them to beziers
+20:12 <@matches> Bresenham's paper on rasterisation techniques basically says "Compute some points close enough together and then just connect them with straight lines"
+20:12 <@matches> But I think things might have advanced since the 1980s
+20:12 < sulix> Well, we can compute points that are closer together and draw more lines, I guess.
+20:13 <@matches> Next, Tim wants an example of a spline
+20:13 <@matches> (Oh boy have I got that covered)
+20:13 <@matches> My mathematics terminology on Beziers is not really great
+20:14 <@matches> Well it's right but confusing maybe
+20:14 <@matches> Or I just need to say "t is a trajectory parameter"
+20:14 <@matches> Haha
+20:15 <@matches> He found one of my "????" that is actually just me typing question marks and not a broken reference
+20:15 <@matches> The *entire* section on shading and compositing has a big question mark
+20:15 <@matches> Oh dear
+20:15 <@matches> I just finished writing the compositing bit
+20:16 <@matches> I hope the question mark means "Why isn't this written" and not "Why is this in here"
+20:16 <@matches> Because it is quite useful for an excuse to say PostScript can't do alpha
+20:17 <@matches> I need to refer to the IM (I really don't think that's a thing) and DOM when citing Hayes
+20:17 <@matches> "I don't think Turing Completeness is essential" (Big cross through the Crippled Interpreted Model)
+20:17 <@matches> Fair enough
+20:17 <@matches> A tick appears
+20:18 <@matches> Predictably in the web based documents part
+20:18 <@matches> I need to explain why Ipython is cool if I want to talk about it
+20:18 <@matches> My entire section on Precision as defined in the various formats is ?
+20:20 <@matches> My still to be completed/started section on Graphics APIs, GPUs and Arbitrary Precision is three question marks and "How's all this going"
+20:20 <@matches> The progress report gets a single tick
+20:20 <@matches> And the references have similar issues
+20:20 <@matches> Well
+20:21 <@matches> I'll take a few minutes to quiver in terror
+20:21 <@matches> But I think if I can just find a way to not sleep and still maintain productivity, I might be able to pull this off
+20:22 <@matches> Interestingly he didn't call me out for just talking about standards
+20:22 <@matches> But now I realise that's because I didn't have all the crap I've just written on standards in there
+20:23 < sulix> It's going to be a long night, but I think we'll manage it.
+20:23 <@matches> Mine will be too long but I don't care
+20:24 <@matches> I'll ask for an extension to prepare a condensed version if I must :P
+20:28 <@matches> It's kind of funny I've been spending more time making my vector image in SVG and PostScript nice than actually writing about either of those standards
+20:50 <@matches> Argh the idea of making my koch snowflake example for PS just got in my head
+20:50 <@matches> Which would be brilliant I guess if the topic was still "Fractal Document Formats"
+20:50 <@matches> It probably would be useful if I could demonstrate precision issues..
+20:50 <@matches> NO
+20:50 <@matches> MUST WRITE 
+20:50 <@matches> WORDS
+20:50 <@matches> NOT PICTURES
+20:51 <@matches> But still it would make the PostScript and SVG sections consistent with each other...
+20:51 <@matches> NO
+20:51 <@matches> Must control urge to put pointless pictures in
+20:51 <@matches> No matter how much it seems like a good idea
+20:51 <@matches> And not pointless
+20:52 <@matches> Help I'm losing this battle
+20:53 <@matches> It is probably actually a better way of making a Koch curve than the hideous Javascript parsing of strings version
+22:50 <@matches> By the way, you can totally have "pre layout" stages in PostScript since you can define your own operators
+22:50 <@matches> Or do I misunderstand your sentence
+22:50 <@matches> Oh well it sounds smart anyway
+22:51 <@matches> In fact it's a lot more concise than my DOM-y section
+22:52 <@matches> I should sign my Lit Review as Captain Obvious
+22:57 < sulix> My current version does have a "PostScript programs typically embody documents which have been type-
+22:57 < sulix> set, though as a turing-complete language, some layout can be performed
+22:57 < sulix> " sentence.
+22:57 < sulix> by the document.
+23:01  * sulix is still a little bit concerned about how he should reference things for their solutions to open problems rather than their contributions to standards.
+23:03 <@matches> I think I am managing to do it
+23:03 <@matches> I will commit something at some point
+23:03 < sulix> I'm hoping that rewriting most of the rendering section with painful discussions of algorithms will do it.
+23:03 <@matches> An example is Porter and Duff Compositing
+23:04 <@matches> Because PostScript doesn't have alpha and I am really hoping that's just because Adobe had moved on to PDF by the time alpha was a thing
+23:04 <@matches> And not because they thought alpha was dumb :P
+23:05 <@matches> So I can relate Porter and Duff's model to the standards that do use it and say how it solves a problem that the standards that don't use it still have
+23:05 <@matches> And then I can sit back in satisfaction
+23:05 <@matches> And realise this says fuck all about precision
+23:06 <@matches> But at least by talking about it, I have eliminated it from the set of things we need to worry about when talking about precision :P
+23:06 < sulix> I've got a section which basically goes through all of the different document formats and looks at what their specs say about precision now.
+23:06 <@matches> Yeah I have that, but it was dot-pointed
+23:06 <@matches> I thought that would be OK actually but it has a question mark here... :S
+23:06 < sulix> Basically most of them say "implementation-defined" anyway.
+23:06 <@matches> Oh right because I was saying random stuff about how Postscript *used* to not have IEEE
+23:07 <@matches> Yeah it is odd that the standards don't actually reference IEEE
+23:07 <@matches> You'd think, since it's a standard...
+23:07 <@matches> Instead they just say "single" or "double" or "it might be single if you're lucky but we don't care really"
+23:08 <@matches> I assume "single" is widely accepted to mean IEEE single
+23:08 < sulix> From my reading of the Postscript spec, it says basically "We've put IEEE here, but ask your printer manufacturer because they could be using anything for all we care."
+23:08 <@matches> Ah I will check that more carefully
+23:08 <@matches> But it sounds about right
+23:08 < sulix> They give "typical limits" for their data types, but specifically do not specify what they are to be implemented as.
+23:08 <@matches> I don't think I have the time to look at what PostScript did historically before IEEE-754 although it would be kind of interesting to know
+23:09 <@matches> PostScript also does a bunch of silly maths because of units
+23:09 < sulix> The idea being that each postscript interpreter could do whatever they liked.
+23:09 <@matches> Cool
+23:09 <@matches> I should know this already :S
+23:09 <@matches> I just included a single character as a figure
+23:10 <@matches> But I want to actually work out how to do it in LaTeX by setting the size of the font appropriately
+23:10 < sulix> The PDF spec says pretty much the same thing, but notes that Adobe's implementation uses "Mostly IEEE singles" but "used to use 16.16 fixed point" and "still uses it for some things"
+23:10 <@matches> I did see that
+23:10 < sulix> TeX using 14.16 fixed point.
+23:10 < sulix> DVI uses "up-to 32bit" signed integers.
+23:11 <@matches> So basically no one actually uses IEEE for anything :P
+23:11 <@matches> Good work
+23:11 <@matches> I shall panic a bit and then try and actually do that work myself
+23:11 < sulix> SVG uses "implementation defined" or "double-precision floating point" "for coordinate transforms" if you want to be certified "High Quality"
+23:12 <@matches> I saw that one
+23:12 <@matches> But I'm skeptical about how this plays with Javascript
+23:12 <@matches> Not for High Quality even, just in general
+23:12 < sulix> Javascript numbers are always IEEE 754 doubles.
+23:13 <@matches> Ah thanks
+23:13 < sulix> (Even their integers are IEEE 754 doubles, which just happen to be integers)
+23:13 <@matches> Yes I have heard this before
+23:13 <@matches> From you probably :P
+23:14 < sulix> I don't have a source for that, and I'm not going to read the ECMAscript spec to find one, though.
+23:16 <@matches> Oh right, Javascript is actually ECMAscript
+23:16 <@matches> I forgot that
+23:17 <@matches> Dammit I am struggling to stay awake here
+23:17 <@matches> I'm not sure whether it's healthier to try to not sleep and give Tim a draft tomorrow and demand he read it in enough time to make last minute changes
+23:18 <@matches> Or sleep and then be more coherant tomorrow
+23:18 <@matches> I guess I'll try and finish a couple more sections
+23:19 < sulix> I'm going to try to finish this tonight.
+23:20  * sulix has another assignment due Friday that needs significant work.
+--- Day changed Thu May 22 2014
+00:47 <@matches> So X just managed to totally shit itself
+00:47 <@matches> Time to see when I last pressed Ctrl-S
+00:48 <@matches> Oh good (I typically press it once per sentence)
+00:48 <@matches> I hope it wasn't one of my SVGs that broke everything
+00:49 <@matches> Making all my figures in SVG
+00:49 <@matches> Lovingly hand written
+00:49 <@matches> I'm not sure that was a good idea
+01:43 <@matches> Heh, converting SVG to PS in Inkscape appears to introduce rounding errors of up to 0.1 of whatever unit PS is using
+01:44 <@matches> 1.25*56
+01:45 <@matches> Disregard I appear to have mistaken this terminal for a calculator
+01:45 <@matches> They do look similar at this hour in the morning
+01:49 < sulix> I'm seriously doubting whether starting to write stuff about how all of the rasterizing algorithms work was a good idea.
+01:49 <@matches> Haha
+01:49 <@matches> I don't really have much rasterising as such
+01:49 <@matches> Straight lines
+01:50 <@matches> Beziers aren't really "rasterising" so much as defining curves
+01:50 <@matches> Then I mention fonts and how they are all bezier-ish
+01:50 < sulix> I've just spent about an hour trying to prove that bresenham's algorithm can be made to not depend on any coordinates outside the screen.
+01:50 <@matches> Then I have a bit on shading that I can't do
+01:50 <@matches> :S
+01:50 <@matches> That's probably not important
+01:50 <@matches> To quote Tim in my thesis regards to actually explaining algorithms
+01:50 < sulix> It turns out that if you clip the endpoints (even correctly), you adjust the slope of the lines slightly.
+01:51 <@matches> "No you don't have space. [...] details should be left to where they are useful"
+01:51 <@matches> Having said that absolutely none of this is "useful"
+01:51 < sulix> To fix it you have to initialize bresenham's "accumulated error" properly.
+01:51 <@matches> That sounds sort of relevant
+01:52 <@matches> Well I just copied some SVG into PostScript and discovered that the coordinates are all reflected :S
+01:52 < sulix> My choices for referencing this is either a textbook I don't have that "apparently mentions this" or a blog post which rants about it a bit.
+01:52 <@matches> Bahaha
+01:53 <@matches> That sounds like work for the final lit review rather than this one
+01:53 < sulix> Still need to work out how to actually work in how my references solved problems rather than contributed to standards or whatever.
+02:05 <@matches> minipage for latex is great by the way
+02:06 <@matches> Like <div> but not awful
+02:40 <@matches> Oh year
+02:40 <@matches> The best spline curve example ever
+02:41 <@matches> Fuck it took about 3 hours to do that
+02:41 <@matches> Dear god
+02:41 <@matches> Ergh remind me to go censor the log before Friday 1am
+02:50 <@matches> I pushed my references changes by the way
+02:51 < sulix> Yay merging!
+02:51 <@matches> Oh I forgot the actual pdfs but whatever
+02:51 <@matches> I am jealous of your actual concise and to the point lit review
+02:51 <@matches> Mine suddenly exploded into figures
+02:51 <@matches> I should stop
+02:51 <@matches> I think I will delete the Shading section
+02:52 <@matches> No wait it would be a gap to take it out now
+02:52 <@matches> Argh
+02:53 <@matches> I will just have to resist the urge to put a diagram in showing how shading works
+02:53 <@matches> All these diagrams will probably kill me
+02:53 < sulix> I'm thinking of scrapping chunks of the Rendering section of mine just so I don't have to finish them and can go to sleep.
+02:54 <@matches> Tim did seem strongly in favour of covering the rendering stuff
+02:54 <@matches> At least referencing the papers and giving the definitions of things if not actually how to render them
+02:55 <@matches> Anyway I think Beziers at least are important
+02:55 <@matches> I'm discovering a few interesting things about SVG
+02:56 <@matches> The path definitions are basically exactly the same as postscript's commands except less stack-y
+02:56 <@matches> But it has relative commands as well
+02:56 <@matches> Which is interesting because if you have a really really long curve defined with relative commands
+02:56 <@matches> Maybe, just maybe, it will actually cause a precision issue
+02:57 <@matches> I doubt it though
+03:00 <@matches> Well good luck, I am going to sleep
+03:01 < sulix> Thanks. I will see what I can say about Béziers.
+03:38  * sulix collapses.
+08:07 <@matches> Nice work
+08:07 <@matches> Mine is too detailed I think
+08:07 <@matches> It's horrible because now I'm committed to following through on that level of detail everywhere
+08:09 <@matches> Removing detail feels like murder
+08:12 <@matches> Would you be offended if I cited your lit review as a "more concise" overview for the bored reader? :P
+14:28 < sulix> So apparently the entire internet is talking about Bézier curves today.
+14:28 < sulix> This would have been really useful, say, yesterday.
+14:30 < sulix> Also this page looks amazing... http://pomax.github.io/bezierinfo/
+14:39 <@matches> Haha
+14:39 <@matches> I think I've got the Beziers covered
+14:39 <@matches> If you could just hop over to ratemylitreview and check me on that...
+14:39 <@matches> :P
+14:42 < sulix> Ratemylitreview has broken some of the equations...
+14:46 <@matches> If I had time I would include a "rate ratemylitreview" field
+14:46 <@matches> I sent an email
+14:46 <@matches> Now to fear the wrath
+14:47 <@matches> Half time
+14:48 <@matches> Haha I'm somewhat regretting choosing such condescending ratings
+14:49 < sulix> I got terrified seeing that email before I realised it was from you.
+14:49 <@matches> Bahaha
+14:49 <@matches> Well I have to give him something
+14:50 < sulix> You should clearly make the ratings be all amazing, like: "Good, Great, Amazing, Truly Spiffing, Superlative and \"Everything in creation has been leading up to this page of my Lit review\""
+14:51 <@matches> You can POST your own ratings but expecting that might be a bit much
+14:51 <@matches> They are emailed to me as text and they are also stored in the database as text
+14:51 <@matches> Not the most objective of systems :S
+14:51 <@matches> I thought the ratings covered all the bases though
+14:52 < sulix> You could always do what the Shakespeare proramming lanugage does. Positive adjectives +1, negative adjectives -1.
+20:18 <@matches> I haven't said half of what I thought I should about floats
+20:18 <@matches> Tim has been scarily silent :P
+20:19 <@matches> I guess I will assume that means everything is FINE
+20:19 <@matches> I finally got my Table of Contents and things to not take up 6 pages
+20:20 <@matches> I have to resist the urge to add some snarky comments to my section on LaTeX
+20:22 <@matches> About how in theory you don't have to worry about where things go but in practice you spend hours doing horrible things like arbitrarily adding vertical space to force something into position because the anchor position doesn't take into account your line spacing and thus isn't where you expect and the next element overlaps things as a result
+20:22 <@matches> Blargh
+20:22 < sulix> Just stumbled upon a mention of numerical precision causing issues with Wu's algorithm in a book.
+20:22 <@matches> Cite it
+20:23 <@matches> Also give it to me to cite if I can stay awake long enough to read it
+20:23 <@matches> You have contributed some good last minute references
+20:23 <@matches> I seem to have contributed Javascript
+20:23 <@matches> I should be ashamed
+20:24 < sulix> It's in Abrash's Black Book, end of Chapter 42 ("Wu'ed in Haste; Fried, Stewed at leasure"(
+20:24 <@matches> Haha
+20:24 <@matches> My venerable graphics book doesn't even have Wu in it :S
+20:25 <@matches> It also doesn't really properly reference people's papers, or I guess you don't need to in a textbook?
+20:26 <@matches> It gives De Casteljau's method without crediting him for example. It does credit Bezier with things though.
+20:26 <@matches> But they clearly didn't have to worry about putting \cite{} after every single statement
+20:27 <@matches> I'm not sure how well my "I couldn't find a reference, have a look at my website" footnotes are going to go down
+20:27 < sulix> Casey from the Jeff & Casey show did a video blog on Bézier curves and interpolation this morning.
+20:28 <@matches> I really should start reading blogs more, but I was in no position to be watching blogs this morning
+20:28 < sulix> He claims that Bézier did not invent the Bézier curve, so why the hell are they named after him.
+20:28 <@matches> Had I known
+20:28 <@matches> Oh he didn't
+20:28 <@matches> I know that
+20:28 <@matches> That's in Metafont
+20:28 < sulix> I should read Metafont.
+20:28 <@matches> They were named after him because he was the first guy that said "These look useful for things"
+20:28 <@matches> However
+20:28 <@matches> I can't find the paper in a peer reviewed journal
+20:29 <@matches> I think it was for Industry (TM)
+20:29 <@matches> And also in French
+20:29 <@matches> I just cited a paper he did write in English about his experiences with Computer Aided Design
+20:29 <@matches> He doesn't define anything, just shows pictures of nice bezier curvey car bodies
+20:30 < sulix> I saw a bunch of french papers by him, but couldn't be bothered trying to work out which ones were useful.
+20:30 <@matches> De Casteljau's paper is also hard to find
+20:30 <@matches> The order of events was
+20:30 <@matches> 1912 - Bernshtein comes up with the basis polynomials for some sort of mathematical fitting
+20:31 <@matches> 1959 - De Casteljau decides to approximate the curves using his algorithm
+20:31 <@matches> (De Casteljau is only an approximation by the way, but it would converge to the true bezier curve)
+20:31 <@matches> 196? - Bezier does stuff
+20:31 <@matches> 1983/4 - Knuth decides to use them for fonts
+20:32 <@matches> Somehow they ended up in PostScript around that time as well
+20:32 <@matches> Now we're stuck with them
+20:34 <@matches> Hmm I hope my Tensor Equation is right there
+20:34 < sulix> Here's that Wu thing, btw: http://www.jagregory.com/abrash-black-book/#notes-on-wu-antialiasing
+20:36 <@matches> I'm struggling to make my floating point section sound sane
+20:36 <@matches> Too many little details
+20:37 <@matches> Like that you can choose different bases
+20:37 <@matches> What even is a number anyway
+20:38 <@matches> I think the proper way to approach it is talking about a number represented by digits and some numbers take infinitely many digits etc
+20:39 <@matches> Then computers can only fit X binary digits in their registers
+20:39 <@matches> A floating point is basically where you have a fixed point mantissa and then shift the location of the fixed point
+20:39 <@matches> Let's try and ignore the implicit leading one...
+20:40 <@matches> It sort of all falls apart when trying to fit IEEE in there
+20:40 <@matches> This thing is too big as well :(
+20:41 <@matches> Page limits are stupid
+20:42 <@matches> I can't remember what it even is but it's definitely less than what I have
+21:06 <@matches> Ah I see, the aliasing of Wu's line isn't perfect
+21:06 <@matches> I think Wu admits that
+21:06 <@matches> Hmm, that is interesting
+21:11 <@matches> Argh that blog is all like "We should use web based documents instead of PDF"
+21:11 <@matches> Pixels or Perish detected
+21:11 <@matches> To be fair it does actually look nice
+21:14 <@matches> The table of contents in the black book are quite amusing
+21:14 <@matches> No! I finished writing about graphics stuff I need to do floating stuff
+21:15 < sulix> It's a brilliant book, but possibly for another day.
+21:16 <@matches> Dammit I guess I do need to produce more figures
+21:16 <@matches> Sigh
+21:17 <@matches> A picture is worth a thousand words and all that
+21:17 <@matches> And therefore takes at least as long as writing a thousand words to make
+21:27 <@matches> The more I look at SVG files the more convinced I am that they are actually the write way to do things
+21:27 <@matches> right
+21:28 <@matches> Despite all that philosophical guff, you can do the same things as postscript in similar ways, but you also have a DOM that isn't terrifying like whatever PDF supposely does
+21:28 <@matches> I guess PDF would be more efficient though
+21:29 < sulix> That's pretty much the conclusion I've come to.
+21:31 <@matches> Unfortunately now I know more about SVG I keep hand editing my figures
+21:32 <@matches> I don't need to use gnuplot's terrible data point markers anymore!
+21:32 <@matches> I am free!
+21:40 <@matches> I particularly like
+21:40 <@matches> That I can make the points have alpha now
+21:40 <@matches> So if you plot overlapping points it is no longer impossible to see them
+21:40 <@matches> Of course we are restricted by the zoom in the pdf viewer...
+21:41 <@matches> This project is too meta
+21:41 <@matches> It is doing my head in
+--- Day changed Fri May 23 2014
+11:22 < sulix> Welp. Submitting this version: http://davidgow.net/stuff/LitReviewDavid.pdf
+11:23 < sulix> (The introduction has only got more over the top, I'm afraid)
+11:48 < sulix> Do you know what is happening/isn't happening RE: Revised project proposals?
+12:03 < sulix> Well: Literature review is submitted.
+12:03 < sulix> (In person to the coordinator, which is a little bit scary)
+--- Day changed Sun May 25 2014
+15:42 <@matches> No meeting tomorrow by the way
+15:43 < sulix> Ah. Cool. I have like 300 things to do.
+15:43 < sulix> Just pushed fixes for all of the compile warnings, btw.
+15:43 <@matches> Cool
+15:44 <@matches> I want to keep editing my Lit Review :S
+15:44 < sulix> I had thought that Float() always returns a "float", but it sometimes returns a double.
+15:44 <@matches> Oh
+15:44 <@matches> Whoops
+15:44 <@matches> Well a double is technically still a float...
+15:44 < sulix> (Also, it turns out OpenGL actualy breaks the C++ spec, and is therefore impossible to use without hacks if you have -Werror enabled)
+15:45 <@matches> Sigh
+15:45 < sulix> It was warning that I was losing precision from float x = Float(blah);
+15:45 <@matches> One of the things I want to put in my lit review is a snarky paragraph about how no one actually obeys standards anyway
+15:46 < sulix> There are points where you get function pointers as void* pointers, but C++ needs to work on systems where code and data are stored in different bits of memory with different size pointers.
+15:46 <@matches> On the other hand no matter how much better I make the lit review no one will read it because I'm being assessed on a conference paper not a dissertation
+15:46 <@matches> Ah
+15:46 < sulix> So casting any data pointer to a function pointer is apparently illegal.
+15:47 <@matches> That's annoying
+15:47 < sulix> Fortunately, gcc doesn't complain if you start the line that does it with "__extension__", so that's what we do.
+15:47 <@matches> Haha
+15:54 <@matches> Ok I am still about 3 days behind on sleep but I guess I should do work
+15:54 <@matches> Bye

UCC git Repository :: git.ucc.asn.au