code logs -> 2007 -> Sat, 03 Mar 2007< code.20070302.log - code.20070304.log >
--- Log opened Sat Mar 03 00:00:51 2007
00:45 Luka [Luka@Nightstar-23839.dsl.bell.ca] has joined #Code
00:46 Luka [Luka@Nightstar-23839.dsl.bell.ca] has left #Code []
01:32
< Janus>
Once you go GIMP, you never go back, apparently.
01:33 * Janus notes how alien and bizarre photoshop feels. Like a greased Scottish man.
01:41 ChalcyGone [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code
01:43 Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout]
01:43 Forj [~Forj@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout]
01:44 Forj [~Forj@Nightstar-869.bitstream.orcon.net.nz] has joined #code
01:44 MyCatVerbs is now known as MyCatSleeps
02:12 ChalcyGone [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout]
02:23 Thaqui [~Thaqui@Nightstar-25354.jetstream.xtra.co.nz] has quit [Quit: This computer has gone to sleep]
02:31
< gnolam>
Janus: ...
02:31
< gnolam>
Just ... .
02:33 * CommanderFrog refreshes everyone's brainmeats with alpha-beta pruning
02:38
< Janus>
gnolam: At least it wasn't the GIMP that handled felt like that.
02:39 * Janus begins to wonder if that was good thing.
02:39
< gnolam>
Handling the GIMP is like fondling a sweaty, hairy, overweight German trucker. :P
02:40
< gnolam>
There are places in its horrid interface you Just Don't Want To Go.
02:43
<@McMartin>
... like, damn near all of it.
02:43
< Janus>
At least it's simple, and good for a quick rump.
02:44
<@McMartin>
... no, "simple" is not the word I'd describe for GIMP.
02:44
<@McMartin>
The only app I can think of with a messier interface is Blender.
02:44 Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code
02:44 mode/#code [+o Chalcedon] by ChanServ
02:45
< gnolam>
*cough* LabVIEW *cough*
02:45
< gnolam>
But yes, the GIMP is the flagship of unusability.
02:45
<@McMartin>
And, at least in v1, a seriously arrogant user base, which is honestly where most of my hostility towards it comes from.
02:46
<@McMartin>
The 12-page guide on drawing lines in GIMP, in particular.
02:46
<@McMartin>
Which spends 11 pages lavishly illustrating the location of the shift key
02:46
< gnolam>
Ah yes. There are never any problems with the GIMP's UI; it's the /users/ who are at fault.
02:46
< gnolam>
Always a great attitude to have.
02:46
< Janus>
Well... it's simpler in that I already know how to work it. It'll take a long time to switch to photoshop, though I'll have to do so at some point.
02:46
<@McMartin>
Because, like, the total absence of a "line" tool is totally expected and it's unreasonable for users to expect that
02:46
< gnolam>
McMartin: and completely fails to take into account that the shift key line drawing is NOT equivalent to a line drawing tool.
02:47
<@McMartin>
Also that at the time GIMP did not have a manual, and so it wasn't like you could look it up.
02:47
< gnolam>
As soon as you're drawing with transparency, you're fucked.
02:48
<@McMartin>
I seem to recall Gimp2 having polyline support.
02:49
< Janus>
GIMP's spline thing always dissappeared whenever I attempted to change the brush it painted with. Which is quite annoying when it took several minutes to make the spline in the first place.
02:49
< gnolam>
And they abysmal layer support? Yech.
02:49
< gnolam>
And don't even /think/ about working in a different color depth.
02:49
<@McMartin>
It's better than Paint Shop Pro's.
02:49
<@McMartin>
That's about all I can say about it.
02:49
< gnolam>
Actually, no.
02:50
< gnolam>
Or, possibly any post v8 PSP. Don't know anything about those.
02:50
<@McMartin>
Ah. I last used PSP in v6.
02:50
< gnolam>
Ah. It was only about that time it started catching up with Photoshop.
02:51 * CommanderFrog upreads
02:52 * Janus finishes colouring in gimp, hazzah~
02:52
<@CommanderFrog>
I would like to take this moment to note that "the flagship of unusability" and "There are places in its horrid interface you Just Don't Want To Go" has in fact been my experience with Photoshop.
02:52
<@McMartin>
Frog: But, by all evidence, this is clearly not the case.
02:52
<@McMartin>
They are the Frisbee of image editing.
02:52
<@CommanderFrog>
Perhaps, in the four years since I have used it, they have fixed these issues!
02:53
<@CommanderFrog>
But since I have never had any problems with the GIMP, and since it is also a fraction of the size of photoshop, costs nothing, and is twice as fast, I will continue using it.
02:53
< gnolam>
Eh, Photoshop's UI isn't good. But it's light years ahead of the GIMP's.
02:53
<@CommanderFrog>
And enjoy being able to actual find things like the gradient editor.
02:53
< gnolam>
... twice as fast? What the hell have you been smoking while using it?
02:53
<@CommanderFrog>
McMartin: and Windows is the Frisbee of PC operating systems.
02:53
<@CommanderFrog>
Popular != good.
02:53
<@McMartin>
... and how did you get the gradient editor to not devour the entire page?
02:54 * McMartin never did work that out.
02:54
<@CommanderFrog>
Entire page of what?
02:54
<@McMartin>
I could not get flood fill to ever respect boundary lines.
02:54
<@McMartin>
It would, instead, wipe out the entire image.
02:54
< gnolam>
On the rare occasions it doesn't crash, the GIMP is slow like /frozen/ molasses.
02:54
<@McMartin>
This was largely the reason I kept PSP6 around when drawing WS.
02:54
<@CommanderFrog>
By boundary lines, do you mean selection lines?
02:54
<@CommanderFrog>
Or edges in the image itself?
02:54
<@McMartin>
No, I mean "I would like to fill in this image I have scanned"
02:55
<@McMartin>
Because I would scan in inked drawings and then fill them with gradients.
02:55
<@CommanderFrog>
Oh.
02:55
< Janus>
You... fill in drawings with the paint bucket?
02:55
<@CommanderFrog>
There's a toggle in the tool options.
02:55
<@McMartin>
Janus: ... yes?
02:55
<@McMartin>
... that is what the paint bucket is for?
02:56
<@CommanderFrog>
You can change it between 'fill (image set-intersection selection)' and 'fill (area set-intersection selection)'
02:56
<@CommanderFrog>
The latter is what you want, and at least on mine is the default setting.
02:56
<@CommanderFrog>
You can also fake it by wand-selecting the area you want to fill, and then filling the selection, which will work on either setting.
02:56
<@McMartin>
And plays merry hell with gradients.
02:57
<@CommanderFrog>
...it does?
02:57
<@CommanderFrog>
How so?
02:57
<@McMartin>
I was using it to fake lighting, so generally what I really wanted was "compute gradient with respect to whole image, but only draw the bits where it's filled.
02:57
<@McMartin>
Which involved some option setting in PSP6.
02:58
<@McMartin>
Otherwise, the, say, upper right of each object is the same color, which isn't usually what you want.
02:58
<@CommanderFrog>
Oh. That's another option.
02:58
<@CommanderFrog>
In the gradient fill tool, IIRC.
02:58
<@McMartin>
Yeah
02:58
< Janus>
... Actually, the paint bucket and magic wand are not very good for colouring. Usually, you'd want your lineart as a layer over your colouring layers, set to Multiply, and use the paint brushes...
02:58
<@CommanderFrog>
You can choose between settings that calculate WRT the selection and settings that calculate WRT the image.
02:59
<@McMartin>
Janus: (a) You assume I have artistic skills, (b) or a pad, (c) this was 16-color grayscale.
02:59
<@CommanderFrog>
Janus: ...yes, what McM said.
02:59
< Janus>
Sorry, my mistake~
02:59
<@CommanderFrog>
If you have a stylus and actually Mad Skillz, yes, you use the lineart as a guide to actual drawing.
03:00
<@McMartin>
My proverbial Skillz barely qualify as Peeved.
03:00
<@CommanderFrog>
If you don't, then gaussian filter followed by careful use of gradientfill is your good friend.
03:00
<@McMartin>
I didn't filter, since I wanted to keep the sharp lines. Then it was 8-bit greyscale work, then a colordrop with error diffusion.
03:01
<@McMartin>
... which actually tended to look better than the 8-bit version.
03:01
<@McMartin>
http://wscholars.comicgenesis.com/d/20020325.html
03:04
<@McMartin>
Though that actually isn't one of the ones where I was trying to have no discernible features, and using fade-to-black rate to distinguish objects from background.
03:05
<@McMartin>
Actually, these days my problem is that drivers for my scanner do not exist.
03:05
<@McMartin>
And the company is willing to sell me a driver disk for more than the scanner actually cost.
03:05
<@McMartin>
So they can die in a fire.
03:06
<@McMartin>
And now, home
03:06 Doctor_Nick [~fdsaf@Nightstar-1992.9-67.se.res.rr.com] has quit [Ping Timeout]
03:06 Doctor_Nick [~fdsaf@Nightstar-1992.9-67.se.res.rr.com] has joined #Code
03:07 Janus is now known as Jan[bathipoo]
03:08 Thaqui [~Thaqui@Nightstar-25354.jetstream.xtra.co.nz] has joined #code
03:22 gnolam [Lenin@Nightstar-13557.8.5.253.se.wasadata.net] has quit [Quit: Z?]
03:23
<@CommanderFrog>
McMartin: well, what I would do is apply gaussian to make sure there are no gaps in the lines, and use that layer as a fill guide.
03:23
<@CommanderFrog>
And then, if I wanted sharp lines, delete that layer and just use the original.
03:37 Clairvoire [~Cerulean@Nightstar-10302.columbus.res.rr.com] has joined #Code
03:37 Frenchfry [~Cerulean@Nightstar-10302.columbus.res.rr.com] has joined #Code
03:39 Jan[bathipoo] [~Cerulean@Nightstar-10302.columbus.res.rr.com] has quit [Ping Timeout]
03:40 Clairvoire [~Cerulean@Nightstar-10302.columbus.res.rr.com] has quit [Ping Timeout]
03:48 Pi [~sysop@Nightstar-6915.hsd1.or.comcast.net] has joined #code
03:48 mode/#code [+o Pi] by ChanServ
04:51 timelady [~romana@Nightstar-14947.lns7.adl2.internode.on.net] has joined #Code
05:16 Vornicus-Latens is now known as Vornicus
05:25 timelady [~romana@Nightstar-14947.lns7.adl2.internode.on.net] has quit [Quit: run away! run away!]
05:25 Frenchfry is now known as Janus
06:01 MyCatSleeps [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has quit [Ping Timeout]
06:02 MyCatSleeps [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has joined #code
06:07
< Doctor_Nick>
Can anyone here recommend a good x86 assembler book?
06:11
<@Vornicus>
woot, that path checking setup is much faster.
06:12
<@Vornicus>
...now I need to figure out the right way to check the various paths.
06:13
<@CommanderFrog>
Doctor_Nick: http://www.arl.wustl.edu/~lockwood/class/cs306/books/artofasm/toc.html
06:14
< Doctor_Nick>
good reference text?
06:14
<@McMartin>
It looks decentg.
06:14
<@McMartin>
I was going to object, but it wasn't the book I thought it was.
06:15
< Doctor_Nick>
does it still come in dead tree format?
06:17
<@McMartin>
Let's see.
06:17
< Doctor_Nick>
mmm
06:17
<@McMartin>
There's a really terrible book with the same name.
06:17
< Doctor_Nick>
this is more high level assembly book
06:17
<@McMartin>
The one involving "HLA" is to be avoided at all costs.
06:18
< Doctor_Nick>
this is it
06:18
<@McMartin>
The online version actually has Chapter 6, though. =P
06:18
<@McMartin>
My dead tree version does not.
06:20
<@CommanderFrog>
I have no idea if it comes in deadtree.
06:20
<@CommanderFrog>
Why do you want a hardcopy?
06:20
< Doctor_Nick>
cause im not paying for it and i want something in my lap i can reference ;)
06:21
<@McMartin>
There is an "updated" hardcopy version.
06:21
<@McMartin>
The "updated" version doesn't actually have real opcodes in it.
06:21
<@McMartin>
It fills me with hatred and rage.
06:21
<@McMartin>
It not teaching x86 assembler; it's teaching Fortran without the formula translation. >_<
06:21
<@CommanderFrog>
...as a rule, if you want deadtree, you'll have to pay for it.
06:24
< Doctor_Nick>
CommanderFrog: Im charging it as a company expense
06:24
<@CommanderFrog>
Oh, I see.
06:24
<@CommanderFrog>
"I'm not paying for it" as in "someone else is", not as in "I'm unwilling to spend money"
06:24
< Doctor_Nick>
yeah
06:25
<@CommanderFrog>
However, if what McM says is still true, the deadtree version is a downgrade.
06:25
< Doctor_Nick>
mmm
06:25
< Doctor_Nick>
what about "Assembly Language for Intel-Based Computers (5th Edition) (Hardcover)
06:25
< Doctor_Nick>
by Kip Irvine (Author)
06:25
<@CommanderFrog>
I would recommend The 68000 Microprocessor, but that's obviously not useful for x86 hacking.
06:26
< Doctor_Nick>
while im at it, do you have any good python or perl books
06:27 * Vornicus learned python via the tutorial in the official documentation.
06:27
<@McMartin>
Perl, the definitive reference is "Programming Perl", and the definitive tutorial is "Learning Perl".
06:27
<@McMartin>
Python is probably best learned via the online tutorials, as "Programming Python" and its relatives are really cookbooks.
06:28
< Doctor_Nick>
k
06:28 * CommanderFrog throttles the urge to recommend Lua instead
06:28
< Doctor_Nick>
i dont know what that is
06:28
<@McMartin>
An entirely different language
06:28
<@McMartin>
If one is not TF, it's mostly only useful for embedding.
06:28
<@CommanderFrog>
A fast, compact, high-level interpreted language suitable for embedding, extending and general use.
06:28
< Doctor_Nick>
i see alot of lua scripts for the PSP
06:28
<@McMartin>
I continue to dispute the "General Use" part of that.
06:29
<@CommanderFrog>
Why?
06:29
<@McMartin>
Also, checking the ToC at Amazon indicates that the Dead Tree version of TAoALP is indeed a downgrade.
06:29
<@McMartin>
Core x86 material is banished to Appendix B.
06:29
< Doctor_Nick>
yeah, i really need more of a reference book
06:29
< Doctor_Nick>
I know the basics of assembly, ive written a few programs
06:29
<@McMartin>
TF: Primarily due to the fact that Perl and Python wrap All of POSIX, and Lua could but does not by default.
06:30
<@McMartin>
Doctor_Nick: Well, there's the official IA32 reference manuals.
06:30
<@CommanderFrog>
Well, it couldn't and still be Lua.
06:30
<@CommanderFrog>
But that's what the libraries are for!
06:30
<@McMartin>
That's where the "General Use" bit falls down.
06:31
<@McMartin>
Also, join me in ;_; ing at http://www.amazon.com/gp/reader/1886411972/ref=sib_dp_pt/105-3983694-6989201#rea der-link
06:31
< Doctor_Nick>
does stuff in lua need to be wrapped like java or
06:31
<@McMartin>
Lua's primary feature is that wrappings to and from C are utterly straightforward.
06:31
<@McMartin>
Java's NI stuff is incredibly complex in comparison.
06:31
<@McMartin>
(Though even it is cleaner than Python's or OCaml's, AIUI.)
06:32
<@CommanderFrog>
...pfft
06:32
<@CommanderFrog>
BLUA: bastardized lua #5
06:32
<@CommanderFrog>
Welcome to my personal lua bastardization - an effort to make lua syntax as bloated and useless like perl's or pythons. There are currently 13 patches, available either as separate or one big un-#ifdefable patch, depending on your needs.
06:32
<@McMartin>
... It should be "KA-BLUA".
06:32
<@CommanderFrog>
...YES
06:33
<@CommanderFrog>
Doctor_Nick: I don't know how Java wraps, but as McM said, one of Lua's main features is that moving between C and Lua (and vice versa) is trivial.
06:33
<@McMartin>
Also, it's hard to call Python's syntax "bloated and useless" when it's the only widely used language that's actually LL(1).
06:33
<@CommanderFrog>
(the others being incredibly tiny size and the fact that it Works On Everything)
06:34
<@CommanderFrog>
(that latter being why it doesn't wrap all of POSIX)
06:34
<@McMartin>
(As long as you have the same headers)
06:34
<@McMartin>
(*shakes fist at the OS X build*)
06:34
<@CommanderFrog>
(...what?)
06:34
<@McMartin>
(Adds "standard" headers that aren't, primarily lua.hpp)
06:35
<@CommanderFrog>
(aah)
06:35
<@CommanderFrog>
(well, barring nonstandard wackiness like that, it will build and run on any ANSI C89 compliant system and on several that aren't)
06:36
< Doctor_Nick>
[my tummy hurts]
06:37
<@CommanderFrog>
And since it is in fact entirely trivial to...sudden, twisted idea.
06:37
<@CommanderFrog>
Oh so twisted.
06:37
<@CommanderFrog>
A program that reads all of sections 2 and 3 of the Manual and automatically generates Lua bindings for them.
06:40 Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has quit [Quit: Jouets de Dieu, jouets de jouets, les jouets de me, na?tre Clair enfant voire.]
06:40 Forjeh [~Forj@Nightstar-869.bitstream.orcon.net.nz] has joined #code
06:42 Forj [~Forj@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout]
06:42
< Doctor_Nick>
drunk people are funny on the internet :D
06:43
<@CommanderFrog>
Anyways. I continue to assert that Lua is suitable for general programming, given the selection of existing libraries and the ease with which new ones can be created.
06:46
< Doctor_Nick>
but lua isnt a good name
06:47
< Doctor_Nick>
it reminds me of an air freshener
06:47
<@CommanderFrog>
And it's certainly much easier to distribute the resulting programs than with Python.
06:47
<@CommanderFrog>
Doctor_Nick: it means "moon".
06:47
< Doctor_Nick>
yeah, in some crazy moon language
06:47
<@CommanderFrog>
Portugese.
06:49 * Vornicus names the Mooninites the official mascot of Lua.
06:52
<@McMartin>
ZOMG TERRAR
06:53
< Doctor_Nick>
what are some more good programming books to make my bookshelf look good ;)
06:54
<@McMartin>
Most of mine are references for specific libraries I use, (OpenGL, Swing, etc.)
06:54
<@CommanderFrog>
You have SICP already, presumably.
06:55
<@Vornicus>
TAoCP
06:55
<@CommanderFrog>
Aah yes
06:55
< Doctor_Nick>
whats SICP
06:55
< Doctor_Nick>
and TAoCP
06:55
<@CommanderFrog>
06:55
<@Vornicus>
Structure and Interpretation of Computer Programs, and The Art or Computer Programming
06:55
<@CommanderFrog>
http://mitpress.mit.edu/sicp/full-text/book/book.html -- SICP
06:55
<@Vornicus>
The bibles of computer science.
06:55
<@CommanderFrog>
TAoCP is I believe hardcopy only.
06:56
< Doctor_Nick>
hard cover = more better :)
07:00 * CommanderFrog fiddles with an algorithm for testing equivalency of Tic-Tac-Toe boards.
07:05
<@Vornicus>
You need to check eight ways of symmetry; the way I did it was to use it as trinary in the various orders, and then choose the minimum, and that's the canonical representation.
07:05
< Doctor_Nick>
Society Of Invasive Cardiovascular Professionals
07:10
<@CommanderFrog>
Vornicus: that is in fact exactly what I was thinking.
07:11
<@CommanderFrog>
Except I choose the maximum.
07:14
<@Vornicus>
Then of course if you're doing any brute force work you have to define improper states - those where there are less Xs than Os, those where there are two more Xs than Os, those where X has won but there are as many Os as Xs, and those where O has won but there are more Xs than Os.
07:16
<@CommanderFrog>
I'm not doing that sort of brute force search.
07:17
<@CommanderFrog>
Each state expands by generating the results of playing at each open point and then pruning equivalent states.
07:18
<@CommanderFrog>
It generates the configured ply depth of nodes using alpha-beta pruning and then picks an action based on a value-estimator function.
07:19
<@Vornicus>
ok
07:20
<@CommanderFrog>
Brute-force search (depth-first, breadth-first, and A*) was last month.
07:20 * Vornicus ponders that the best opening move is /not/ in fact the center.
07:21
<@McMartin>
Corner, IIRC.
07:21
<@McMartin>
Lets you set up double-win traps.
07:21
<@Vornicus>
Indeed.
07:22
<@Vornicus>
The only way to prevent a win against a player who has played corner is to play center. And then once you do that, his best move is opposite corner... which you can only beat by playing edge.
07:22
<@CommanderFrog>
So does center, I believe.
07:22
<@Vornicus>
(neither of these are obvious moves)
07:23
<@McMartin>
Edge becomes obvious once you determine what moves you can not permit X to make.
07:24
<@Vornicus>
Indeed.
07:24
<@Vornicus>
But they're not obvious in the sense of "I will lose next turn if I don't play here"
07:24
<@CommanderFrog>
Which is part of this algorithm.
07:24
<@CommanderFrog>
MiniMax search 4tw.
07:24
<@Vornicus>
Center, hm.
07:26
<@Vornicus>
Okay, to set up a double threat from Center, your opponent has to play edge; then you play far corner, he plays to block that, you play to block him, and then you have double threat via empty corner or that one edge.
07:31 Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Quit: ]
07:32
<@CommanderFrog>
Actually.
07:32
<@CommanderFrog>
You play center. Opponent plays corner.
07:33
<@CommanderFrog>
You play opposite edge. Opponent blocks. You block. Opponent blocks.
07:33
<@CommanderFrog>
...oh, wait.
07:33
<@CommanderFrog>
No.
07:33
<@CommanderFrog>
You're right, that doesn't work.
07:33
<@CommanderFrog>
You set up a double threat, but then he wins on the next turn.
07:36 Forjeh [~Forj@Nightstar-869.bitstream.orcon.net.nz] has quit [Quit: Gone]
07:40 Erik|sleep is now known as ErikMesoy
07:56 You're now known as TheWatcher
08:03 MyCatSleeps [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has quit [Connection reset by peer]
08:04 MyCatSleeps [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has joined #code
08:22 You're now known as TheWatcher[swim]
08:27 Takyoji [~Takyoji@Nightstar-25511.dhcp.roch.mn.charter.com] has joined #code
08:50 Doctor_Nick [~fdsaf@Nightstar-1992.9-67.se.res.rr.com] has quit [Ping Timeout]
09:09 gnolam [Lenin@Nightstar-13557.8.5.253.se.wasadata.net] has joined #Code
09:16 Thaqui [~Thaqui@Nightstar-25354.jetstream.xtra.co.nz] has left #code [Leaving]
10:13 Takyoji [~Takyoji@Nightstar-25511.dhcp.roch.mn.charter.com] has quit [Quit: Leaving]
10:22 TUKEY_34MAN [~info@88.249.175.ns-21710] has joined #Code
10:22 TUKEY_34MAN [~info@88.249.175.ns-21710] has left #Code []
12:38 * Vornicus pokes vaguely at bash, trying to figure out how he wants to do this.
12:40
<@jerith>
?
12:40
<@Vornicus>
I'm trying to figure out what the script that runs my PostScript stuff looks like.
12:41
<@jerith>
Want some help?
12:41
<@Vornicus>
I could use some, yes.
12:41
<@jerith>
Also, I recommend the Advanced Bash Scripting Guide.
12:41
<@Vornicus>
I am good at Bash - I'm just not good at figuring out how I want stuff to behave.
12:42
<@jerith>
Ah.
12:42
<@jerith>
What exactly do you want it to do?
12:42
<@Vornicus>
Well, okay
12:43
<@Vornicus>
I have a directory, and in it are subdirectories, named 1 2 3 4 5 6 7 8 and master
12:45
<@Vornicus>
master contains postscript files. I need to run gs on these files, passing in certain parameters - number tokens and dice need to know what number they show, cities and settlements and roads need to know what color they are; all files need to know what their scale factor is.
12:46
<@Vornicus>
Then these same parameters are used as parts of the path for the output file.
12:46
<@Vornicus>
So a red city for size 4 shows up in 4/city/red/city.png
12:47
<@Vornicus>
so I'm fiddling with it, trying to decide what the script looks like. I think I'm just going to do it the obvious way though.
12:47
<@Vornicus>
Now that i think about it, there /is/ an obvious way.
12:48
<@Vornicus>
Thank you!
12:48
<@Vornicus>
:D
12:48
<@jerith>
for n in 1 2 3 4 5 6 7 8; for m in city foo bar; for c in red green; do ...
12:48
<@jerith>
Something like that?
12:49
<@Vornicus>
yep
13:16
<@Vornicus>
sveet, it works.
13:16 * jerith cheers.
13:21
<@Vornicus>
perfect.
13:21 You're now known as TheWatcher
13:36 * Vornicus tries to figure out shading patterns in PostScript.
13:37
<@Mahal>
wb, TW
13:37
<@Mahal>
(Incidentally Pratchett was involvedin the production)
13:37
<@jerith>
Yay!
13:38
<@jerith>
Always works better that way.
13:38 * Mahal nodnod
13:38
<@Mahal>
(Wrong channel.
13:38
<@Mahal>
Oops.
13:38
<@Mahal>
)
14:24 * Vornicus figures out why his gradient wasn't showing. daah.
14:24
<@jerith>
?
14:24
<@jerith>
Dodgy PS?
14:26
<@Vornicus>
shfill doesn't clear the current path like fill does - so the next fill filled the entire previous path.
14:27
<@Vornicus>
Now if I could figure out why the hell my pip function is putting the pip along the bottom edge of the die instead ofin the right place.
14:28
<@Vornicus>
...oh, oops.
14:28
<@Vornicus>
Extra parameter. >.<
14:35
<@Vornicus>
Victory!
14:37
<@jerith>
Victoly!
14:37 * Vornicus now generates 14 images per size.
14:37
<@Vornicus>
erp, 13. Only 7 terrains
14:38
<@jerith>
Is that a terrain missing or did you miscount?
14:38
<@Vornicus>
I miscounted
14:38
<@Vornicus>
There is an eighth terrain in Seafarers.
14:39
<@jerith>
Ah.
14:39
<@jerith>
You're not doing Seafareres?
14:39
<@Vornicus>
But I'm not making it yet.
14:39
<@jerith>
-e
14:39
<@jerith>
Ah.
14:39
<@jerith>
Indeed.
14:39
<@Vornicus>
I want to get the original in there first before I do Seafarers or C&K.
14:41
<@Vornicus>
http://pastie.caboo.se/44437 <--- But here is the what-pips-do-i-draw part of die.ps. PostScript is abnormally tasty.
14:47
<@Vornicus>
http://vorn.dyndns.org/~vorn/catan/die/ <--- and the pictures of the individual dice.
14:52
<@jerith>
Nice. :-)
15:02
<@Vornicus>
Hokay, what's next.
15:03
< AnnoDomini>
To take over the world.
15:04
<@Vornicus>
Paths and Sites.
15:05 Mahal is now known as MahalBEDD
15:11
<@jerith>
Aww, I just lost my game of Catan. :-/
15:11
<@Vornicus>
awh
15:13
<@jerith>
Hmm...
15:14
<@jerith>
Pioneers (the Catan clone I'm playing) is multiplayer.
15:14
<@jerith>
I'll have to play you sometime, Vorn.
15:14
<@jerith>
(But not right now -- I'm packing to go house sit for a bit.)
15:14
<@Vornicus>
ok
15:14
<@jerith>
pio.sourceforge.net, iirc.
15:15
<@Vornicus>
I haven't found a decent Catan clone on the web - not one with all the fixings.
15:17
<@jerith>
Tell me what that one's missing and between us I'm sure we have sufficient C-fu...
15:19
<@Vornicus>
it's not persistent.
15:20
<@jerith>
Not persistent?
15:20
<@jerith>
Gmaes don't take *that* long...
15:21
<@Vornicus>
One of the biggest problems I've always had is that I can't say "dangit, I have to go, can we continue this game later?"
15:21
<@jerith>
Ah.
15:21
<@Vornicus>
With webgames it's even worse - I accidentally close the window, and it thinks I've forfeit.
15:22
<@jerith>
:-(
15:22
<@Vornicus>
Especially Flash and Java games, which is the vast majority of Settlers webgames.
15:23
<@jerith>
Well, this one's a standalone network-multiplayer GTK app.
15:23
<@Vornicus>
Which means it runs under X11, which is not so good on Mac.
15:24 * jerith nods.
15:26
<@Vornicus>
So, my reasoning is, I will make one that has everything I want in it.
15:27
<@Vornicus>
--- that this also teaches me massive amounts of stuff doesn't hurt.
15:29 * jerith nods.
15:41
<@TheWatcher>
There's no GTK for whateveritis macs have as a native UI?
15:42
<@TheWatcher>
That kinda surprises me
15:42
<@Vornicus>
I haven't seen any programs that use it, if there is.
15:44
<@TheWatcher>
http://developer.imendio.com/projects/gtk-macosx
15:48
<@TheWatcher>
Gah, can anyone recommend a standalong, interactive lua interpreter?
15:48
<@TheWatcher>
*standalone
15:48
<@TheWatcher>
For windows or linux
15:49
<@Vornicus>
This is what got me. I need my precious interactive prompt
15:49
<@TheWatcher>
I really don't want to end up having to reload my wow ui and wait for it to spew errors at me to test some simple table handling code
15:51 Doctor_Nick [~fdsaf@219.163.49.ns-12919] has joined #Code
15:51
<@TheWatcher>
... actually, just doing `emerge lua` appears to have done it
15:53
<@Vornicus>
has made it spew errors at you?
15:54
<@Vornicus>
here's hoping this works.
15:54
<@TheWatcher>
Works fine
15:55
<@TheWatcher>
it'll to interactive interpreting, run a file or run a file and then go interactive
15:55
<@TheWatcher>
*do
15:57
<@Vornicus>
Woot, first time's a charm!
15:59 * Vornicus manages to get a script to run right the first time. amazing.
16:01
<@jerith>
Yay!
16:02
<@Vornicus>
(and with a command pile like "get aload pop moveto lineto stroke", that's vaguely impressive)
16:02
<@jerith>
http://rafb.net/p/62xHua32.html <-- Someone wanted me to do that problem. In pascal or C.
16:02
<@jerith>
http://pastebin.div0.co.za/results/EG73GC641.html <-- So I did the only bit that's even vaguely interesting.
16:03
<@jerith>
(The rest is just reading a file and keeping track of the number of songs there are.
16:03
<@jerith>
)
16:04
<@jerith>
And even keeping track of the songs could just be another loop in the first bit.
16:06
< Doctor_Nick>
and then he died
16:07
< Doctor_Nick>
the end
16:11 Doctor_Nick [~fdsaf@219.163.49.ns-12919] has quit [Quit: ]
16:11 Doctor_Nick [~fdsaf@Nightstar-1992.9-67.se.res.rr.com] has joined #Code
16:17 MyCatSleeps is now known as MyCatVerbs
16:25 GeekSoldier [Rob@Nightstar-3246.pools.arcor-ip.net] has joined #code
16:28
<@CommanderFrog>
...in pascal or C?
16:28
<@CommanderFrog>
Why?
16:28
< MyCatVerbs>
jerith: you should've murdered them and glued porcupines to their corpse for having suggested Pascal.
16:29
<@CommanderFrog>
I actually have a soft spot for Pascal because it was my first compiled language (net3d doesn't count!), but yeah, I wouldn't actually do anything in it.
16:29 * GeekSoldier agrees with CommanderFrog.
16:36 * Vornicus eyes
16:36
<@Vornicus>
that one, I can't /believe/ I got the first time.
16:36
<@CommanderFrog>
Which one?
16:37 * Vornicus is apparently getting /rather good/ at PostScript.
16:37
<@CommanderFrog>
Also.
16:38
<@CommanderFrog>
Vornicus, TheWatcher: the interactive Lua terp is part of the standard package. It should be installed as "lua", or if not, will be in src/lua (built from src/lua.c) after the build.
16:38
<@Vornicus>
http://vorn.dyndns.org/~vorn/catan/master/site.ps
16:39
<@Vornicus>
All the other files it depends on - along with everything else I've done so far - are in there.
16:45
<@CommanderFrog>
So, I'm not sure what these complaints about a lack of interactive prompt are.
16:46
<@Vornicus>
Okay, what next.
16:48
<@Vornicus>
Tokens need text; Roads and Ports need rotation; Resources need... just a lot of work, but the generic harbor resource also needs text.
16:49
< gnolam>
And Warrior needs food badly.
16:49
<@Vornicus>
And Cities are pretty simple.
16:50
<@Vornicus>
Then there's still 13 things I haven't even begun designing yet.
16:51
<@Vornicus>
(nine development cards, longest road, largest army, development card back, resource token back)
16:52
<@Vornicus>
(oh, and Robber. 14)
16:58
< GeekSoldier>
Yay Catan!
16:58
<@TheWatcher>
Hmmm.. is there any simplish way to obtain the checksum for a table in lua?
16:58
<@Vornicus>
Yay Catan!
16:59 * GeekSoldier misses his SoC set...
17:05
<@TheWatcher>
.. wtf
17:05
<@CommanderFrog>
TheWatcher: what do you mean by "the checksum for a table"?
17:05
< MyCatVerbs>
GeekSoldier: System on a Chip set?
17:06
<@TheWatcher>
Why am I getting "unexpected symbol near `#'" when I do "foo = {1, 2, 3, 4, 5}; print(#foo);"?
17:06
<@CommanderFrog>
Aah. The length of the table.
17:06
<@CommanderFrog>
# is the length operator.
17:06
<@TheWatcher>
No
17:06
<@TheWatcher>
that's somethign else
17:07
<@CommanderFrog>
...
17:07
<@TheWatcher>
I was asking about some arbitrary sum of the elements or somethign so I could easly check a table had changed
17:07
<@TheWatcher>
the probelm with # is seperate from that
17:07
<@CommanderFrog>
Aah.
17:07
<@CommanderFrog>
Well, in that case, I'd say: because # was added in Lua 5.1
17:07
<@CommanderFrog>
And WoW is probably using 5.0
17:08
<@TheWatcher>
... so how did oyu find th elength before 5.1?
17:08
<@TheWatcher>
(actually, I think wow is using 5.1, but the interpreter I'm using is using 5.0.2 for some reason)
17:08
<@CommanderFrog>
table.getn()
17:09
<@CommanderFrog>
table.getn (table)
17:09
<@CommanderFrog>
Returns the size of a table, when seen as a list. If the table has an n field with a numeric value, this value is the size of the table. Otherwise, if there was a previous call to table.setn over this table, the respective value is returned. Otherwise, the size is one less the first integer index with a nil value.
17:09
<@CommanderFrog>
Note that this means it is untrustworthy over sparse arrays.
17:10
<@CommanderFrog>
Note that getn doesn't exist in 5.1, having been superceded by the # operator.
17:11
<@CommanderFrog>
So you might want to just upgrade your terp to 5.1 to avoid confusion.
17:11
<@CommanderFrog>
As for checksumming a table...o.O
17:11
<@TheWatcher>
It's not important really, would have just made somehting slightly easier
17:11
<@CommanderFrog>
This needs to detect not only the addition and removal of elements, but also the replacement of elements, right?
17:11
<@CommanderFrog>
So you can't rely on the length alone.
17:12
<@CommanderFrog>
You could do it fairly easily with a shadow table by overloading __index and __newindex, I think.
17:12 * CommanderFrog fiddles
17:12
<@TheWatcher>
I have to be off, I'll bbl
17:12
<@CommanderFrog>
bbiab, landlord.
17:13 You're now known as TheWatcher[afk]
17:28
<@CommanderFrog>
function tablemonitor(T)
17:28
<@CommanderFrog>
local mt = {}
17:28
<@CommanderFrog>
mt.__index = T
17:28
<@CommanderFrog>
mt.dirty = false
17:28
<@CommanderFrog>
17:28
<@CommanderFrog>
function mt:__newindex(key, value)
17:28
<@CommanderFrog>
mt.dirty = true
17:28
<@CommanderFrog>
rawset(T, key, value)
17:28
<@CommanderFrog>
end
17:28
<@CommanderFrog>
17:28
<@CommanderFrog>
setmetatable(mt,mt)
17:28
<@CommanderFrog>
return mt
17:28
<@CommanderFrog>
end
17:29 * Vornicus throws pastie.caboo.se at Frog.
17:29
<@CommanderFrog>
Good point.
17:29
<@CommanderFrog>
Or, rather, it would be a good point if DNS was working.
17:29
<@CommanderFrog>
Oh, there we go.
17:29
<@CommanderFrog>
http://pastie.caboo.se/44460
17:30
<@CommanderFrog>
You use it thus: monitored_table = tablemonitor(unmonitored_table)
17:31
<@CommanderFrog>
Any assignments to monitored_table will then set monitored_table.dirty to true.
17:31
<@CommanderFrog>
You can manually unset it after checking it with monitored_table.dirty = false
17:31
<@CommanderFrog>
(ok, any assignment except to dirty, __index, or __newindex)
17:31
<@CommanderFrog>
(the latter should not be done)
17:37 * Vornicus eyes
17:37
<@Vornicus>
Apparently, the OLPC project uses Python extensively.
17:44
<@CommanderFrog>
OLPC?
17:45
<@CommanderFrog>
(oh hey, a POSIX library for Lua)
17:45
<@Vornicus>
One Laptop Per Child
17:46
<@CommanderFrog>
Aaw. It binds mkfifo, but not popen*
17:47
<@jerith>
MCV: Was for a programming thingy that specified C, C++ or Pascal.
17:51
< Doctor_Nick>
oh
17:51
< Doctor_Nick>
pastie seems very useful
17:51 * jerith grins.
17:51
<@jerith>
I prefer rafb.net.
17:52
< MyCatVerbs>
jerith: C: inappropriate, C++: ick, Pascal: fuck off.
17:52
< MyCatVerbs>
jerith: hoorrrible, by design!
17:53
<@Vornicus>
Pastebins in general are very useful.
17:53 * jerith nods.
17:53
< Doctor_Nick>
do it in cobol dude
17:53
<@jerith>
I've pondered hacking up my own, actually.
17:53
< Doctor_Nick>
it will be hilarious
17:53
<@jerith>
I don't know cobol.
17:53
<@jerith>
I pondered intercal.
17:54
< Doctor_Nick>
that shouldnt stop you!
18:03
< GeekSoldier>
intercal.
18:04
<@jerith>
Yes, intercal.
18:04
< GeekSoldier>
Yay!
18:19 * Vornicus tries to find a decent brown to use.
18:39 You're now known as TheWatcher
18:39 * TheWatcher readsup
18:39
<@TheWatcher>
Awesome TF, thankyou! :)
18:43
<@Vornicus>
Wootence
18:45
<@Vornicus>
59 images from 16 files.
18:46
< Doctor_Nick>
Vornicus: what were you doing?
18:46
<@Vornicus>
if I could find a decent brown, I would have 64 images; then there's several more things I need to do
18:46
<@Vornicus>
Doctor_Nick: I'm making art for my Settlers game.
18:46
<@Vornicus>
In PostScript.
18:47
< Doctor_Nick>
standalone or over the internet?
18:47
<@Vornicus>
Web.
18:47
< Doctor_Nick>
sweet
19:13
<@CommanderFrog>
TheWatcher: you follow what it's doing there?
19:14
<@TheWatcher>
Just about
19:28 ErikMesoy is now known as ErikMesoy|coveredinflamingbunn
19:29 ErikMesoy|coveredinflamingbunn is now known as Erik|coveredinflamingbunnies
19:30
<@TheWatcher>
Hmmm
19:30
< Erik|coveredinflamingbunnies>
I was shot by a flamethrower set to Bunny.
19:30
< GeekSoldier>
Erik.... we don't need to know!
19:30
<@TheWatcher>
Is there a way to do the equivalent of C's continue or perl's next in lua?
19:30
< Erik|coveredinflamingbunnies>
Ok.
19:31
< GeekSoldier>
:)
19:31 Erik|coveredinflamingbunnies is now known as ErikMesoy
19:32
<@CommanderFrog>
TheWatcher: yes, although it took me a bit to figure out how.
19:32
<@CommanderFrog>
You do it with a function closure:
19:32
<@CommanderFrog>
local function loop_body()
19:32
<@CommanderFrog>
-- does stuff
19:33
<@CommanderFrog>
-- "return" is "continue"
19:33
<@CommanderFrog>
end
19:33
<@CommanderFrog>
while condition do loop_body() end
19:36
<@CommanderFrog>
Obviously this works for any flavour of loop.
19:39
<@TheWatcher>
Hmm, shame there's no way to put the body inside th eloop, but thanks
19:39
<@CommanderFrog>
You can, actually.
19:39
<@CommanderFrog>
It's just that this means it re-declares the function on each loop iteration.
19:39
<@CommanderFrog>
Although, I think you could:
19:40
<@CommanderFrog>
while condition do
19:40
<@CommanderFrog>
Wait, no
19:40
<@CommanderFrog>
local loop_body
19:40
<@CommanderFrog>
while condition do
19:40
<@CommanderFrog>
loop_body = loop_body or function() ... code goes here ... end
19:40
<@CommanderFrog>
loop_body()
19:40
<@CommanderFrog>
end
19:41 * CommanderFrog does some tests
19:42
<@CommanderFrog>
You can't make the loop_body local to the loop, because then it gets redeclared on each iteration (or rather, you can, but it's a performance hit)
19:42
<@CommanderFrog>
You can wrap the whole thing in do...end, though.
19:53
< MyCatVerbs>
http://perlfs.sourceforge.net/ <--- AWESOME!!!1!1!111!!
19:54
< GeekSoldier>
me likes the name.
19:54
< MyCatVerbs>
Nice. The CVS repository is empty.
19:54
< GeekSoldier>
interesting.
19:54
<@CommanderFrog>
...perlfs?
19:57
<@Vornicus>
Okay. Brown Get.
19:58
< GeekSoldier>
well, it must be in a very early alpha.
19:58
< MyCatVerbs>
GeekSoldier: I'd phrase it as, "late stages of abandonment," rather than, "early stages of development."
19:58 * GeekSoldier grins.
19:58
< MyCatVerbs>
I think it was started, ran for a bit and then abandoned, all before SourceForge.net even started providing CVS.
19:59
< MyCatVerbs>
Argh, fucking conductors.
19:59 * GeekSoldier hands MyCatVerbs an insulator.
19:59 * MyCatVerbs hates them bastiges who play Tchaikovsky symphonies too damn fast.
20:00
< MyCatVerbs>
GeekSoldier: is it sharp? I wanna stab the git with the baton through the heart with it, if possible.
20:00
< GeekSoldier>
shards from an insulating power transmitting diode. could be rather sharp.
20:00
< GeekSoldier>
enjoy!
20:00
< MyCatVerbs>
Yays on a stick. ^_^
20:01
< MyCatVerbs>
Ahhh, xdialog. Ad-hoc graphical interfacing for shell scripters
20:20
<@Vornicus>
TF, does PostScript come with any fonts installed, or do I have to tell it things?
20:20
<@Vornicus>
GhostScript, rather?
20:21
< MyCatVerbs>
Vornicus: on Arch, there's a "gsfonts" package full of type1 fonts which is a dependancy for the ghostscript package itself.
20:22
< MyCatVerbs>
Vornicus: the URL listed for the package is the main sourceforge page for ghostscript.
20:22
<@Vornicus>
hm
20:22
< MyCatVerbs>
I believe they're part of the GS project, but my distro packages them seperately because a few apps (e.g. xpdf) require gsfonts, but not gs itself.
20:23
<@Vornicus>
well, I seem to have a pile of fonts, but they all have totally unreadable names.
20:23 * gnolam thwacks MyCatVerbs over the head with a rolled-up newspaper.
20:23
< gnolam>
Separately! Separately!
20:23
< ErikMesoy>
<3
20:24
<@Vornicus>
Ah, here we are, an index of fonts.
20:24
< MyCatVerbs>
Ooooh, this box has xpenguins installed! <3
20:25
< MyCatVerbs>
gnolam: I dropped English two and a half years ago, at the first available oppourtunity. ^_^
20:25
< MyCatVerbs>
gnolam: oh and thaaaaank you.
20:25
< MyCatVerbs>
(I do still maintain a machine with a working copy of "spell", of course =D)
20:33
< MyCatVerbs>
http://minnie.tuhs.org/UnixTree/V7/usr/src/cmd/sh/mac.h.html <--- MY EYES! MY EYES! (Try the rest of the files in that directory for extra pain. Unix v7 Bourne shell.)
20:48 McMartin is now known as McMartin[WonderCon]
20:51 Thaqui [~Thaqui@Nightstar-25354.jetstream.xtra.co.nz] has joined #code
20:55 Doctor_Nick [~fdsaf@Nightstar-1992.9-67.se.res.rr.com] has quit [Ping Timeout]
20:56 Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has joined #Code
21:08
<@Raif>
That link is painful.
21:35 AnnoDomini [~farkoff@Nightstar-29186.neoplus.adsl.tpnet.pl] has quit [Killed (NickServ (GHOST command used by AbuDhabi))]
21:35 AnnoDomini [~farkoff@Nightstar-29017.neoplus.adsl.tpnet.pl] has joined #Code
21:36
< AnnoDomini>
Hm. Would anyone perchance be proficient in using Altera MAX+plus to program "EPM 7128 SLC 84-15" circuits?
21:38 Vornicus is now known as Vornicus-Latens
21:48 ErikMesoy is now known as ErikMesoy|sleep
21:50
<@CommanderFrog>
I have never heard of either of those.
22:10 You're now known as TheWatcher[T-2]
22:15 You're now known as TheWatcher[zZzZ]
22:16 Doctor_Nick [~fdsaf@Nightstar-1992.9-67.se.res.rr.com] has joined #Code
22:30 Thaqui [~Thaqui@Nightstar-25354.jetstream.xtra.co.nz] has quit [Quit: This computer has gone to sleep]
--- Log closed Sun Mar 04 00:00:51 2007
code logs -> 2007 -> Sat, 03 Mar 2007< code.20070302.log - code.20070304.log >