freenode/#clim - IRC Chatlog
Search
15:41:33
loke
After I get spacing right, the next step is to make the font rendering engine properly customisable.
15:45:33
loke
I also need to figure out how to interact with Harfbuzz so that I can get advanced font shaping. I know nothing about those API's
15:58:06
beach
I will go visit my family mid may, and I have a talk to give to a company in Gothenburg.
16:07:39
beach
The person in charge of invited speakers is not technically trained, and when she finally got around to asking a software person about it, he came back to her immediately with a very enthusiastic and positive response.
16:09:24
loke
What do you use to create a presentation? Last time I did one, I used Beamer, which graphs and diagrams and all made using LaTeX. Looked pretty damn good, I'd say.
16:09:31
jackdaniel
templated C++ with javascript snippets interpreted as strings with an external library;-)
16:11:00
loke
I kinda enjoyed spending the extra time making all the figures using Tikz. Takes longer, of course, but the style ends up matcing better, and having to think about what you do makes the message better...
16:14:47
beach
A large part of the talk is about clearing up misunderstandings about languages, and those misunderstandings make people avoid certain great choices.
16:16:13
jackdaniel
are there optionally static-typed languages? for instance some variables and code paths have a type associated at compile time
16:17:03
loke
jackdaniel: Or do you mean that you can declare a variable to statically typed, and then that is enforced?
16:18:15
loke
Haskell is statically typed, but it has optional type declarations (otherwise it uses inference)
16:18:20
jackdaniel
so the compiler ensures, that all calls to the function having first argument being integer must have known this argument
16:19:02
jackdaniel
no, type inference improves performance. I think about something allowing me to put constraints on my code
16:19:50
loke
If you declare an argument to be integer, and you try to call that function with something else (and the compiler can prove that the argument will be non-integer) it will give a diagnostic.
16:20:24
loke
No. But if you define (defun foo (x) (declare (x number) (1+ x))) and later call the function like so: (foo "bar"), sbcl will give you a warning.
16:26:20
fittestbits
beach - seems like the presentation needs a conclusion - maybe just repeat a list of things to consider?
16:26:40
fittestbits
Also, I think the section on risk was interesting - not something I've seen elsewhere.
16:27:33
jackdaniel
fittestbits: did you manage to resolve your issue with changes in mirroring code?
16:28:41
beach
fittestbits: Yes, it may be an old version. I'll work on it a bit when I get back from ELS. Thanks.
16:29:34
beach
fittestbits: Risk analysis is the very lesson to take away from this talk. It is rarely applied in practice in industry today, unfortunately.
16:31:04
fittestbits
I now generate the repaint event when mezzano generates an activation event. This solved the problem I was having. I need to do more testing before I release, but it's looking better.
16:36:44
loke
Wohoo... I found a good example using Harfbuzz to do shaping... I will try to use this technique in CLIM: https://github.com/lxnt/ex-sdl-freetype-harfbuzz/blob/master/ex-sdl-freetype-harfbuzz.c
16:37:11
loke
This will be slower though, as character can't be cached in the X server anymore... If I get this to work, it'll be an optional mode.
16:38:55
jackdaniel
loke: we'd want to support arbitrary rotations, but we are allowed to only do horizontal draw-text
16:39:28
loke
jackdaniel: Rotations is fine. When rendering text with freetype you can apply an arbitrary affine transform.
16:39:56
loke
I believe there is an affine trasnform built uinto the text-style in CLIM? (or some other contaxt object?(
16:40:33
loke
If so, I can just pull the transformation matrix out of the text-style and apply it to the freetype rendering function.
16:46:42
loke
I want to get everything else working correctly first, and then I'll try applying transofrmations.