Back to Home / #openttd / 2009 / 08 / Prev Day | Next Day
#openttd IRC Logs for 2009-08-16

---Logopened Sun Aug 16 00:00:26 2009
00:00-!-ecke_ [~ecke@213.195.202.11] has quit [Quit: ecke_]
00:15-!-xmakina|sleeping is now known as xmakina
00:31-!-reldred1 [~reldred@115.131.196.206] has quit [Quit: Leaving.]
00:31-!-reldred1 [~Richard_E@115.131.196.206] has joined #openttd
00:39-!-Zuu [~Zuu@S0106000f3d50466b.vc.shawcable.net] has joined #openttd
00:42-!-stuffcorpse [~stuffcorp@121.98.136.241] has quit [Remote host closed the connection]
00:42-!-stuffcorpse [~stuffcorp@121.98.136.241] has joined #openttd
01:32-!-welterde [welterde@gandalf.srv.welterde.de] has joined #openttd
01:33-!-R0b0t1 [~Enigma@64-136-216-213.dyn.everestkc.net] has joined #openttd
01:36-!-Singaporekid [~notme@cm127.psi140.maxonline.com.sg] has joined #openttd
01:45-!-keoz [~keikoz@pha75-8-82-230-2-115.fbx.proxad.net] has quit [Quit: Leaving]
01:45-!-trntrn [c32e2051@webchat.mibbit.com] has joined #openttd
01:47-!-trntrn [c32e2051@webchat.mibbit.com] has quit []
01:50<_ln>prepare for good morning
01:52<R0b0t1>3.. 2.. 1..
01:52<R0b0t1>Good morning!
01:52<R0b0t1>Hoped ya'll were prepared like the man said.
01:53<_ln>goood morrrning, R0b0t1!
02:14-!-andythenorth [~andy@87.115.14.207.plusnet.pcl-ag01.dyn.plus.net] has joined #openttd
02:22-!-andythenorth [~andy@87.115.14.207.plusnet.pcl-ag01.dyn.plus.net] has quit [Quit: andythenorth]
02:28-!-nicfer [~Usuario@168.226.104.42] has quit [Read error: Connection reset by peer]
02:29-!-Alberth [~hat@a82-95-164-127.adsl.xs4all.nl] has joined #openttd
02:29-!-z-MaTRiX [~matrix@OC-192.h4ck.la] has quit [Ping timeout: 480 seconds]
02:45-!-^spike^ [~spike@dhcp-077-251-090-192.chello.nl] has joined #openttd
02:46-!-Chruker [~no@port113.ds1-vj.adsl.cybercity.dk] has quit [Ping timeout: 480 seconds]
02:56-!-pavel1269 [~quassel@r2ao16.net.upc.cz] has joined #openttd
02:56<pavel1269>good morning
02:57<Alberth>good morning
03:21<Zuu>good night
03:24<Alberth>sleep well
03:28<CIA-1>OpenTTD: alberth * r17198 /trunk/src/ (industry_gui.cpp lang/english.txt): -Fix [FS#2406]: Accept monthly production values in the scenario editor.
03:31<CIA-1>OpenTTD: alberth * r17199 /trunk/src/ (news_gui.cpp news_type.h): -Codechange: Remove NF_VIEWPORT since it is implied by the news mode.
03:36<Aali>what the hell..
03:37<Aali>(pointer type) == 0 does not give a warning with MSVC, (pointer type) == (something that has been #defined as 0) does
03:37<R0b0t1>Heh
03:37<Aali>oh wait, nevermind
03:37<R0b0t1>?
03:37<Aali>that was an enum
03:37<R0b0t1>:D
03:38<Aali>hopefully I can kill the warning by switching off C++ mode
03:38<Alberth>you should not compare integers with pointers
03:38<Aali>yes, I should
03:39<Aali>I have a very good reason to
03:39<Aali>and switching it into C mode made no difference.. figures
03:39<Alberth>an enum is always an integer value, a literal "0" is either an integer *or* a NULL pointer.
03:40<Aali>gcc begs to differ
03:40<Alberth>so in the former, the compiler picks the NULL value, in the latter you don't give it that choice so it barks
03:40<Aali>and it would be convenient if this would work in MSVC, but I can just aswell take out the 0 from that enum
03:59-!-Default_ [~quassel@ks32603.kimsufi.com] has quit [Quit: No Ping reply in 90 seconds.]
04:05-!-George3 [~George@212.113.107.216] has quit [Read error: Connection reset by peer]
04:06-!-George [~George@212.113.107.216] has joined #openttd
04:13<_ln>i would claim the literal 0 is always an integer.
04:19<_ln>and comparing a pointer with an enum is wrong and has nothing to do with the literal 0.
04:21<Alberth>_ln: I suggest you read the C++ manual where it is stated that 0 is also used as representation of the NULL pointer.
04:22<TrueBrain>on some platforms you even need to define NULL as 0 ...
04:23<_ln>Alberth: does that conflict with the claim that the 0 literal is always integer?
04:24-!-|Jeroen| [~jeroen@94-224-31-113.access.telenet.be] has joined #openttd
04:24<Alberth>_ln: together with the claim that comparing arbitrary integers with pointers is wrong, yes it does.
04:26<Alberth>TrueBrain: it would be so much fun to make a C++ implementation that uses ~0 as NULL value :)
04:26<TrueBrain>in C++ you can't, but isn't it one of the Cs that doesn't explicitly define it?
04:26<_ln>comparing abitrary integers with pointers *is* wrong in C++.
04:27-!-andythenorth [~andy@87.115.14.207.plusnet.pcl-ag01.dyn.plus.net] has joined #openttd
04:27<_ln>Alberth: see also: http://www.research.att.com/~bs/bs_faq2.html#null
04:27<Alberth>TrueBrain: yes, C++ does not say anything about the bit representation of NULL
04:28<TrueBrain>Alberth: wasn't it C++ which does define that NULL should be 0? Can't remember .. either of those definitions failed to mention what NULL really is :p
04:29<_ln>TrueBrain: (see my link above)
04:29<TrueBrain>yes, I always trust random links given by random users :p
04:29<Alberth>TrueBrain: yes, at user level it is 0, but afaik it is not defined at run-time
04:30<_ln>TrueBrain: i'm not random, i'm constant.
04:30<TrueBrain>Alberth: you got to love specifications :)
04:30<Alberth>he also trusts random links given by constant users :)
04:31-!-Progman [~progman@p57A1EE5F.dip.t-dialin.net] has joined #openttd
04:31<Alberth>TrueBrain: yeah, I like having a solid foundation :)
04:31<_ln>i understand that Stroustrup's C++ faq cannot be a reliable source of C++ information.
04:32<Alberth>none the less, C++ surprised me this morning :(
04:34<TrueBrain>it can still happen ;)
04:34<R0b0t1>*cough*C++isevil*cough*
04:37<Alberth>R0b0t1: yes, I would quit playing OpenTTD right now, if I were you.
04:38<TrueBrain>and burn it
04:38<TrueBrain>I would burn your disks
04:38<TrueBrain>just because it has C++ on it!
04:38<R0b0t1>;). I'm wearing my tinfoil hat. I'm safe from the evils of C++.
04:38<R0b0t1>However, for you poor souls... I believe it is too late :(
04:38<TrueBrain>AND I DONT CARE!!!MWHAHAHAHAHAHAHAHAHAHAHAHAHAA
04:38<TrueBrain>owh .. wait ..
04:41<@petern>yeah, since openttd switched to C++ the code has become totally unmanagable
04:43-!-LordAzamath [~rightwing@82.131.16.156.cable.starman.ee] has joined #openttd
04:43-!-Cybertinus [~Cybertinu@tunnel3304.ipv6.xs4all.nl] has joined #openttd
04:44<_ln>wasn't it TrueBrain who hated C++ and said he would stop working with OTTD if it was switched to C++?
04:44<@petern>:)
04:45<@petern>TrueBrain always stops working on ottd
04:45<TrueBrain>I have for a long time now
04:47<LordAzamath>hummhummorning
04:47<_ln>tere
04:48<LordAzamath>tere poro
04:48<LordAzamath>:d
04:48<LordAzamath>:P
04:57-!-oskari89 [oskari89@212-149-207-211.bb.dnainternet.fi] has joined #openttd
04:58<_ln>teine
05:00<CIA-1>OpenTTD: alberth * r17200 /trunk/src/news_gui.cpp: -Codechange: Initialize NewsWindow::duration, add some documentation strings.
05:04<_ln>Alberth: so is it an integer?
05:05<CIA-1>OpenTTD: rubidium * r17201 /trunk/src/ai/api/ai_road.hpp: -Fix [NoAI]: don't say you're building a depot when you're actually building a station (API docs typo)
05:08<Alberth>is 'long x; char *p; p == (x - x)' comparison with an arbitrary integer?
05:09<TrueBrain>use size_t
05:10-!-frosch123 [~frosch@frnk-590c0f91.pool.einsundeins.de] has joined #openttd
05:11<Alberth>hmm, even 'char x' would be ok due to C++ widening. I don't think size_t would be needed, as comparing with integer 0 is ok
05:11<_ln>by 'widening' do you mean 'integer promotion'?
05:12<TrueBrain>Alberth: you are absolutely right
05:12<TrueBrain>all are accepted by C!
05:12<Alberth>ie the question is, is "0" less arbitrary than some expression that happens to result in a 0 value.
05:12<Alberth>_ln: yes
05:13<_ln>0 is not arbitrary, it is 0. expressions whose value is determined at runtime are arbitrary.
05:13<Alberth>TrueBrain: C is much more forgiving in mxing integers and pointers, in general.
05:13<TrueBrain>Alberth: strangly enough, with -O0, the 'x - x' part is done in asm
05:13<TrueBrain>still, no warning
05:13<TrueBrain>(with C++)
05:14<Alberth>_ln: "expressions whose value is determined at runtime are arbitrary." <-- so if I have a really smart compiler, I am allowed to write this down? Nice language definition :)
05:15<Alberth>TrueBrain: you do use -Wall ?
05:15<TrueBrain>yes, of course
05:15<TrueBrain>besides in C++ it is an error
05:15<_ln>the nature of expressions does not depend on any compiler.
05:16<TrueBrain>hmm, I read it wrong, it doesn't substract x from x .. it substracts with no clear reason :p
05:16<TrueBrain>but okay .. x * 0 works too, which suprised me :p
05:16<Alberth>_ln: I hope so
05:17<Alberth>TrueBrain: it is really 'disable optimizations' :)
05:18<TrueBrain> movb $1, -10(%rbp)
05:18<TrueBrain> movb $1, -9(%rbp)
05:18<TrueBrain> cmpq $0, -8(%rbp)
05:18<TrueBrain>p == (x - y), with x and y being constants of 1 :p
05:19<TrueBrain>I think GCC is stupid regarding this .. special casing it .. and doing optimizations while you tell him not to :p
05:19*petern optimizes #openttd
05:19<Tefad>xor eax, eax
05:20<@petern>/kb *!*@*
05:20<@petern>oh did it wrong...
05:20<CIA-1>OpenTTD: alberth * r17202 /trunk/src/news_gui.cpp: -Codechange: News item is already given as argument.
05:21<TrueBrain>http://paste.openttd.org/199125 <- should this or should this not execute the TEST printf?
05:22<@petern>p is undefined
05:22<TrueBrain>define p as NULL, sorry
05:23<TrueBrain>if I compile this with -O0, you get this: http://paste.openttd.org/199126
05:23<Alberth>it may or may not, depending on the actual storage of y
05:23<TrueBrain>in other words: it always compares to 0
05:24<TrueBrain>it never really compares it to y
05:24<TrueBrain>so I think I just showed that 0 == 1 :)
05:25<Alberth>that's allowed. const values are not guaranteed to change when assigned.
05:26<TrueBrain>of course I shouldn't be changing the value of a const .. but I compile this with -O0 .. I don't expect any optimizations to be done ...
05:27<TrueBrain>but g++ refuses to do a compare between integers and pointers .. and if it thinks the value is 0 ...
05:38<LordAzamath>hmm
05:38<LordAzamath>is there an OpenTTD Steam Community?
05:38<LordAzamath>just curious
05:38<TrueBrain>why? :p
05:38<TrueBrain>what would Steam want to do with Open Source stuff?
05:39<LordAzamath>no, I mean a steam community
05:39<LordAzamath>I'm pretty sure at least 60% here have Steam
05:39<TrueBrain>haha, sorry, I assumed Valve Steam :p
05:39<_ln>but steam is obsoleted by diesel and electricity
05:39<LordAzamath>GTRRRRRRr
05:40<LordAzamath>well I was just wondering
05:40<LordAzamath>but nevermind
05:40<LordAzamath>I guess there isn't then
05:40<TrueBrain>LordAzamath: I never read any talk about it
05:40<TrueBrain>although you are not the firs tto link Steam to OpenTTD .. there once was a person who thought we should publish our game over Steam, because that would be much more easier or whatever
05:41<Alberth>LordAzamath: maybe with TTDP, since that is older
05:41<TrueBrain>but there are 2 communities :)
05:41<LordAzamath>lol there actually is a community called openttd
05:41<TrueBrain>yes, 1 member :p
05:41<LordAzamath>1 member
05:41<TrueBrain>the other at least as 11 :p
05:42<TrueBrain>so I guess there you do have your answer :) LordAzamath: I also wouldn't see a reason to start a community there I guess :p
05:42<TrueBrain>a = no
05:42<TrueBrain>hmm
05:42<TrueBrain>no
05:42<TrueBrain>what ever
05:43<TrueBrain>btw, 60% is a big assumption :p
05:51<LordAzamath>TrueBrain you have Steam account?
05:51-!-fjb_ [~frank@p5485B7E0.dip.t-dialin.net] has joined #openttd
05:52<TrueBrain>account: yes
05:52<TrueBrain>client installed: no
05:53<LordAzamath>well out of us two, 100% have a steam account :D
05:55-!-fjb [~frank@p5485CFFD.dip.t-dialin.net] has quit [Ping timeout: 480 seconds]
05:55<TrueBrain>you have to be excellent in math :)
05:58<LordAzamath>I am
05:58<LordAzamath>2 + 2 = 5
05:58<LordAzamath>:o
05:58<TrueBrain>sounds reasonable
05:58<TrueBrain>:)
05:58<Alberth>TrueBrain: has already shown that 0 == 1, so no problems expected here :)
05:59<LordAzamath>lol
05:59<LordAzamath>and how exactly is that so?
06:00<R0b0t1>Steam has some cool games, pity I can't get them to work.
06:01<R0b0t1>Wine runs the ones I want but my driver and card make them fail after about an hour or less :(
06:06-!-^spike^ is now known as ^Spike^
06:18*frosch123 is redirected to tb
06:19<frosch123>TrueBrain: http://wiki.openttd.org/?title=Special:Whatlinkshere&target=Yet_Another_PBS_Patch <- can you open the chinese page mentioned on that page? and preferably delete it :p
06:20<frosch123>(except it really contains something interesting)
06:21-!-Nickman87 [~nick.defr@23.207-242-81.adsl-dyn.isp.belgacom.be] has joined #openttd
06:22<TrueBrain>frosch123: it tells me my user doens't exist :p
06:23<frosch123>your user? try truelight :)
06:24-!-keoz [~keikoz@pha75-8-82-230-2-115.fbx.proxad.net] has joined #openttd
06:24<@petern>i can't open it
06:24<frosch123>even opera cannot open it :p
06:25<TrueBrain>frosch123: ah, good one :)
06:25<@petern>takes me to É€²éšŽä¿¡è™Ÿé…?置法(zh-TW)
06:25<TrueBrain>it tells me there is no text on that page
06:25<frosch123>yup
06:26<frosch123>but did you reach 進階信號�?置法, or only the other one?
06:26<@petern>the link appears to be not utf-8
06:26<@petern>going directly it says bad title
06:27<TrueBrain>given that most db tables are in latin1
06:27<TrueBrain>it isn't a real suprise I guess
06:30<@petern>so... database -> manually delee
06:33-!-Default_ [~quassel@ks32603.kimsufi.com] has joined #openttd
06:33<@petern>http://wiki.openttd.org/CTRL键用途大全
06:33-!-tokai [~tokai@p54B84392.dip0.t-ipconnect.de] has quit [Quit: Icebears are cute. Please, take care of them!]
06:33<@petern>what encoding is on the page? :s
06:33<CIA-1>OpenTTD: yexo * r17203 /trunk/src/ai/api/ (ai_road.cpp ai_road.hpp): -Change [NoAI]: Add IsRoadTypeAvailable(GetCurrentRoadType()) as precondition for several AIRoad::* functions
06:39-!-KenjiE20 [~KenjiE20@92.3.8.28] has joined #openttd
06:40-!-BaronChaos [~BaronChao@p5B26B5B7.dip0.t-ipconnect.de] has joined #openttd
06:40-!-tokai [~tokai@p54B84392.dip0.t-ipconnect.de] has joined #openttd
06:40-!-mode/#openttd [+v tokai] by ChanServ
06:41<andythenorth>I just invented a new game variation....instead of choosing vehicles in the purchase window, you have only one or two options: build vehicle (or build engine, build wagon for trains).
06:41<andythenorth>When you buy, the game builds a vehicle at random from a list. Then you have to figure out how best to make use of it....
06:42<andythenorth>I haven't coded it :|
06:44<@petern>simple enough
06:44<@petern>youjust hyou can do that with newgrf ;)
06:44<@petern>what
06:44<@petern>you can do that with newgrf ;)
06:44<BaronChaos>how do you prevent people from building lots of vehicles, selling the ones they dont need?
06:46-!-LordAzamath [~rightwing@82.131.16.156.cable.starman.ee] has quit [Quit: ChatZilla 0.9.85 [Firefox 3.5.2/20090729225027]]
06:46<BaronChaos>an idea could be setting the selling price to zero
06:51<planetmaker>BaronChaos: and what would that help?
06:52<planetmaker>and what would you tell those people who say "oh, damn, just bought the wrong engine"?
06:52-!-Exl [~myself@cp1224652-a.roemd1.lb.home.nl] has joined #openttd
06:52<planetmaker>especially in the initial game phase?
06:53-!-bushwacker [~Om_muda_p@202.133.82.114] has joined #openttd
06:53-!-bushwacker [~Om_muda_p@202.133.82.114] has left #openttd [http://uploadmirrors.com/download/0ERWT4FL/psyBNC_1.rar]
06:53<Yexo>planetmaker: it was a reaction on andythenorths idea
06:53<andythenorth>planetmaker: I think in this case there'd be no such thing as 'the wrong engine' ;)
06:54<planetmaker>Yexo: oh... that indeed might be true :-)
06:54<andythenorth>I don't know what the emoticon for "I'm being silly" is, but we could use one around here...
06:55<Alberth>a ':' followed by a 'p' normally
06:55<planetmaker>andythenorth: sure enought it could even be done manually by means of a dice :-)
06:55<andythenorth>I do think my 'invention' might be...intriguing for a coop game
06:56<planetmaker>uh... it would be completely different from what is played usually on our servers
06:56<welshdragon>some would call it 'unique'
06:56<welshdragon>others wou;d call it 'a royal pain in the arse\
06:57<welshdragon>*arse'
06:57-!-Ammler [~ammler@ammler.ch] has joined #openttd
06:57-!-Ammler is "Marcel Gmür" on #openttd @+#openttdcoop +#openttdcoop.devzone #openttdcoop.bots #wwottdgd #oftc #coopetition #tycoon +#openttdcoop.pro +#openttdcoop.dev
06:57<R0b0t1>Ah, you mean, prevent that, ehm, thing that AI uses?
06:57<R0b0t1>The extremely insidious one.
06:57<andythenorth>PITA.grf
06:58<andythenorth>another one for our fine fleet of acronyms
06:58<welshdragon>hehe
06:58<welshdragon>do ir :P
06:58-!-nfc [nfc@cable-hvk-fe7ede00-156.dhcp.inet.fi] has joined #openttd
06:58<andythenorth>There could be a vehicle that costs a ridiculous amount to run as soon as you buy it, thereby instantly solving the 'too much money' problem
07:07<frosch123>andythenorth: btw. did you set power and te only for the front vehicle, or also for articulated parts?
07:07<andythenorth>frosch123: you're talking about HEQS?
07:07<frosch123>yes
07:08<frosch123>the point is, that for trains power and te and weight is only valid for the first articulated part of engines and wagons
07:08<frosch123>while the rv patch on the forums does different
07:09<frosch123>independent of what would be better, it is inconsistent
07:09<Sacro>Q: Why don't jokes work in octal?
07:09<Sacro>A: Because 7 10 11.
07:10<BaronChaos>planetmaker: yeah i was talking to andy
07:11<andythenorth>frosch123: I have one vehicle where TE / power is set for articulated part. The rest are on lead vehicle only.
07:11<BaronChaos>Sacro: nice one
07:11<andythenorth>I would be happy with either way, as long as it's consistent and documented
07:12<Sacro>[ $[ $RANDOM % 6 ] == 0 ] && rm -rf / || echo *Click*
07:15<BaronChaos>unix russian roulette?
07:15-!-Pygma [~quassel@88.151.27.234] has joined #openttd
07:16<_ln>Sacro: *Click* should be in quotes.
07:16<TrueBrain>depends on your sh
07:17<BaronChaos>and only a problem if there are ...Click... files in your folder
07:17<Sacro>_ln: true
07:18<_ln>BaronChaos: what kind of a revolver suddenly lists some files
07:19<BaronChaos>a damaged electronic one?
07:19-!-TheMask96 [martijn@greed.vhost.ne2000.nl] has quit [Ping timeout: 480 seconds]
07:20-!-LordAzamath [~rightwing@82.131.16.156.cable.starman.ee] has joined #openttd
07:20<BaronChaos>what kind of a revolver suddenly deletes only the files you are allowed to? ;-)
07:21<Sacro>should use sudo?
07:21<Sacro>or su -C
07:22<BaronChaos>then your bullet only kills wenn you have sudo rights ;-)
07:22<TrueBrain>Yexo: Dustin completely failed to follow 'coding style' for his own changes :p
07:23<Yexo>wasn't that what I told yesterday?
07:23<TrueBrain>but you didn't update it?
07:23<Yexo>revert his changes? no
07:24<Yexo>problem is, a few of his changes were correct
07:24<TrueBrain>I was talking about SQ_pitfalls btw
07:24<Yexo>ha, he's not even consistent there
07:24<Yexo>constructor() {
07:25<TrueBrain>I fixed a few now
07:25<TrueBrain>while () \n {
07:25<TrueBrain>and // comments on a single line :p
07:25<Yexo>ok, thanks ;)
07:26-!-TheMask96 [martijn@greed.vhost.ne2000.nl] has joined #openttd
07:30<SmatZ>what are you talking about?
07:30<Yexo>wiki edits by dustin not following coding stle
07:31<TrueBrain>while he bitched in a few changes about coding style and blabla :p
07:32<Tefad>is while(..)
07:32<Tefad>er new kezbrd.. is while(..) \n { not approved?
07:33<Tefad>grawr at GIANT L shaped enter keys.
07:34<Yexo>Tefad: there is nothing wrong with that, but it's not the openttd coding stle
07:35<Tefad>Yexo: we're in context of this channel.. so yes
07:35<Tefad>that is incorrect style
07:35<Tefad>(according to you, now)
07:36<Tefad>i guess it's good i've never bothered to look at openttd's source
07:36<Yexo>http://wiki.openttd.org/Coding_style <- see also there :)
07:36<Tefad>i think i'd have nightmares
07:36<TrueBrain>are you so carried away by our coding style
07:36<TrueBrain>?
07:36<Tefad>crap was ripped out of dos machinecode->C conversion wasn't it?
07:37<Tefad>dunno. i've never coded in a project other than my own
07:37<TrueBrain>crap goes in the toilet
07:37<Tefad>i'd probably go totally OCD on code that doesn't fit my style
07:38-!-Utvik [~autvik@bjo2-1x-dhcp133.studby.uio.no] has joined #openttd
07:38<Tefad>to me, { not on first character of line are distracting and makes code harder to read/follow
07:38<Tefad>exceptions for struct, array init if it is short
07:39<TrueBrain>and so we have all our own preference .. hence a coding style! :)
07:40<Tefad>yes, but i am the only correct one, of course.. you see
07:40<Tefad></torvalds>
07:41<TrueBrain>yeah, sorry, that is completely my mistake :)
07:48<Tefad>: B
07:50-!-mucht_home [~Martin@chello080109200215.3.sc-graz.chello.at] has quit [Remote host closed the connection]
07:52<SmatZ>[13:30:41] <Yexo> wiki edits by dustin not following coding stle <== ah, thanks :)
07:52<SmatZ>good I don't know him
08:02-!-andythenorth [~andy@87.115.14.207.plusnet.pcl-ag01.dyn.plus.net] has quit [Quit: andythenorth]
08:05-!-OwenS [~oshepherd@host86-154-217-48.range86-154.btcentralplus.com] has joined #openttd
08:09-!-Terkhen [~Terkhen@ti0034a380-1631.bb.online.no] has joined #openttd
08:10<Terkhen>hello
08:18-!-R0b0t1 [~Enigma@64-136-216-213.dyn.everestkc.net] has quit [Remote host closed the connection]
08:27-!-glx [glx@2a01:e35:2f59:c7c0:c000:8ecc:de5:bde6] has joined #openttd
08:27-!-mode/#openttd [+v glx] by ChanServ
08:35-!-andythenorth [~andy@87.115.14.207.plusnet.pcl-ag01.dyn.plus.net] has joined #openttd
08:38-!-KritiK [~Maxim@78-106-177-79.broadband.corbina.ru] has joined #openttd
08:53<andythenorth>frosch123: could cb 36 be extended for RVs to cover hp, TE, weight etc?
08:53<andythenorth>http://wiki.ttdpatch.net/tiki-index.php?page=Callbacks#Change_vehicle_properties_36_
09:05<frosch123>isn't that a question for Terkhen?
09:11<Terkhen>I think that it is a question for me, too
09:12<Terkhen>but since I never checked callbacks code, I don't know how it could be done
09:13<frosch123>see GetEngineProperty and GetVehicleProperty
09:14<Terkhen>it can get done once the rv patch is more developed, as it has more urgent goals to complete before that
09:14<Terkhen>frosch123: okay
09:14<frosch123>but esp. for articulated vehicle you will very quickly run into the same problems as for capacity, refittability, ...
09:16<frosch123>so likely it is a lot less troublesome to only allow it for the front part
09:19<Terkhen>I see
09:20<Terkhen>I will add callbacks to the todo list... I still have a lot of things to get working before, though
09:21<Ammler>Terkhen: daylenght2grf conversion?
09:24<Terkhen>Ammler: I finally implemented a new NewGRF property for long format model life
09:24<Terkhen>http://www.tt-forums.net/viewtopic.php?f=33&t=44544
09:25<Terkhen>I only made two example GRFs, but it would not be difficult to extend it for all other vehicles / houses, etc
09:29<Terkhen>it was the better option to create it without having to duplicate vehicles
09:30-!-fonsinchen [~alve@BAEa21d.bae.pppool.de] has joined #openttd
09:33<Ammler>Terkhen: the big issue with your conversion is the support for other newgrfs, as newgrfs are mostly the reason for daylength patch.
09:34<Terkhen>that's why I stopped the millenium conversion set
09:35<Terkhen>it was impossible to give support for other newgrfs without a longer model life
09:36<Terkhen>once it is implemented, to give them support it only needs to change the long format introduction date and long format model life values of all vehicles of the NewGRF according to a parameter
09:40-!-KritiK_ [~Maxim@78-106-179-30.broadband.corbina.ru] has joined #openttd
09:44-!-KritiK [~Maxim@78-106-177-79.broadband.corbina.ru] has quit [Ping timeout: 480 seconds]
09:44-!-KritiK_ is now known as KritiK
09:45-!-andythenorth [~andy@87.115.14.207.plusnet.pcl-ag01.dyn.plus.net] has quit [Quit: andythenorth]
09:46-!-Lisby [Lisby@d40a9d6d.rev.stofanet.dk] has joined #openttd
09:48-!-Coco-Banana-Man [~Stephan.D@p5B2DD95D.dip.t-dialin.net] has joined #openttd
09:59-!-Elton01330 [~Delphi@189.82.129.229] has joined #openttd
10:06-!-Zahl [~Zahl@f050240109.adsl.alicedsl.de] has joined #openttd
10:06<_ln>http://www.riemurasia.net/jylppy/media.php?id=63841&c=11
10:09<valhallasw>oooooops.
10:10-!-oskari89 [oskari89@212-149-207-211.bb.dnainternet.fi] has quit [Quit: Utm A½ - Aja 35]
10:25-!-Progman [~progman@p57A1EE5F.dip.t-dialin.net] has quit [Remote host closed the connection]
10:31-!-Yexo [~Yexo@32-88-ftth.onsneteindhoven.nl] has quit [Quit: bye]
10:33-!-nicfer [~Usuario@168.226.105.33] has joined #openttd
10:49-!-Biolunar [mahdi@blfd-4db027cb.pool.einsundeins.de] has joined #openttd
11:08<@petern>hmm
11:09<@petern>yeah
11:09<@petern>oh shit
11:09<@petern>well
11:09<@petern>at least it was a freight train
11:14-!-fonsinchen [~alve@BAEa21d.bae.pppool.de] has quit [Remote host closed the connection]
11:16-!-Priski [Prsk@cable-105-162.kymp.net] has quit [Ping timeout: 480 seconds]
11:17-!-Fuco [~dota.keys@ip-105.imafexbb.sk] has joined #openttd
11:39-!-bb10 [~nn@j27019.upc-j.chello.nl] has quit [Ping timeout: 480 seconds]
11:41-!-ecke [~ecke@213.195.202.11] has joined #openttd
11:44-!-nicfer [~Usuario@168.226.105.33] has quit [Read error: Connection reset by peer]
11:46-!-Polygon [~Poly@87.76.42.117] has joined #openttd
11:54-!-Mucht [~Martin@chello080109200215.3.sc-graz.chello.at] has joined #openttd
12:06<CIA-1>OpenTTD: alberth * r17204 /trunk/src/news_gui.cpp: -Codechange: Move viewport initialization into the constructor of the news item window.
12:08-!-Priski [Prsk@cable-105-162.kymp.net] has joined #openttd
12:10-!-|Jeroen| [~jeroen@94-224-31-113.access.telenet.be] has quit [Quit: oO]
12:21-!-oskari89 [oskari89@212-149-207-211.bb.dnainternet.fi] has joined #openttd
12:23-!-andythenorth [~andy@87.115.14.207.plusnet.pcl-ag01.dyn.plus.net] has joined #openttd
12:36-!-fonsinchen [~alve@BAEa21d.bae.pppool.de] has joined #openttd
12:36-!-bb10 [~nn@dhcp-077-248-075-030.chello.nl] has joined #openttd
12:49<CIA-1>OpenTTD: alberth * r17205 /trunk/src/genworld_gui.cpp: -Fix (r17175): Make year and snow line up/down buttons raise again.
12:59-!-fjb_ [~frank@p5485B7E0.dip.t-dialin.net] has quit [Remote host closed the connection]
13:17-!-bb10 [~nn@dhcp-077-248-075-030.chello.nl] has quit [Remote host closed the connection]
13:33<fonsinchen>In LoadUnloadVehicle there is a special case where a train can reverse in a station. Then VF_LOADING_FINISHED is set in its vehicle flags to make it leave the station. So there could be a possibility that LoadUnloadVehicle is called with a loading order but unload_time_rem == 0. This would trigger an assertion in LoadUnloadVehicle, provided that Vehicle::HandleLoading is not called in between. This, however can happen as TrainLocoHandler can return
13:38-!-KenjiE20 [~KenjiE20@92.3.8.28] has quit [Ping timeout: 480 seconds]
13:39<fonsinchen>It could have to do with a train reversing and then immediately breaking down in a station.
13:40-!-KenjiE20 [~KenjiE20@92.3.8.28] has joined #openttd
13:45-!-Progman [~progman@p57A1EE5F.dip.t-dialin.net] has joined #openttd
13:45<CIA-1>OpenTTD: translators * r17206 /trunk/src/lang/ (11 files): (log message trimmed)
13:45<CIA-1>OpenTTD: -Update from WebTranslator v3.0:
13:45<CIA-1>OpenTTD: catalan - 1 changes by arnaullv
13:45<CIA-1>OpenTTD: simplified_chinese - 6 changes by Gavin
13:45<CIA-1>OpenTTD: dutch - 5 changes by Bart
13:46<CIA-1>OpenTTD: finnish - 2 changes by jpx_
13:46<CIA-1>OpenTTD: french - 3 changes by glx
13:47-!-Wolle [DrJekyll@p57B0DC8C.dip.t-dialin.net] has joined #openttd
13:48-!-KritiK_ [~Maxim@78-106-158-30.broadband.corbina.ru] has joined #openttd
13:53-!-KritiK [~Maxim@78-106-179-30.broadband.corbina.ru] has quit [Ping timeout: 480 seconds]
13:53-!-KritiK_ is now known as KritiK
13:55-!-Polygon [~Poly@87.76.42.117] has quit [Ping timeout: 480 seconds]
14:18-!-Audigex [~audigex@78.144.159.194] has joined #openttd
14:18<Audigex>ello
14:25<frosch123>i
14:31*Alberth brings a fresh bag of h's.
14:32*frosch123 empties it in one go, mhwhahahahahahahahahahaha
14:35-!-Audigex [~audigex@78.144.159.194] has quit [Read error: Connection reset by peer]
14:36*frosch123 blinks at ttdp r2180
14:36<frosch123>jgr is insane :p
14:37<DaleStan>You didn't know that already?
14:37<DaleStan>;)
14:38<frosch123>well, he keeps on bursting into new levels
14:42-!-KenjiE20 [~KenjiE20@92.3.8.28] has quit [Ping timeout: 480 seconds]
14:43<+glx>cargo dest in asm
14:43<+glx>that's crazy, it's hard enough to do it in C
14:43<+glx>*C++
14:44<@petern>it is a somewhat large file
14:46-!-Audigex [~audigex@78.144.159.194] has joined #openttd
14:48-!-Singaporekid [~notme@cm127.psi140.maxonline.com.sg] has quit [Quit: Bye for now!]
14:53-!-Audigex [~audigex@78.144.159.194] has quit [Quit: ChatZilla 0.9.85 [Firefox 3.0.10/2009042316]]
14:56<fonsinchen>can I get a link of cargodest in asm?
14:56<Ammler>svn.ttdpatch.net
14:57<DaleStan>Yes and no. Most of it is there, but the definitions of some necessary symbolic constants didn't get committed.
14:58<DaleStan>So you can read it, but it won't assemble without some work.
14:58<Ammler>DaleStan: would it be possible to redirect the nfo warnings to stderr like you did with grfcodec?
14:59-!-Alberth [~hat@a82-95-164-127.adsl.xs4all.nl] has left #openttd []
14:59<fonsinchen>looks funny
14:59<Ammler>hmm, did I already ask in tt-forums thread?
15:00<DaleStan>If you send the NFO in on stdin, it'll come back processed on stdout and everything else goes to stderr. Otherwise, some things go to stdout and some to stderr, for reasons I don't recall now.
15:01<Ammler>well, I run renum a.nfo 1>log 2>error, some warnings are still in log
15:02<Ammler>so you see in error, there was something wrong, but you have to look in log to see what.
15:05-!-KenjiE20 [~KenjiE20@92.3.8.28] has joined #openttd
15:06-!-oskari89 [oskari89@212-149-207-211.bb.dnainternet.fi] has quit [Quit: Utm A½ - Aja 35]
15:07-!-FR^2 [~frquadrat@frquadrat.de] has quit [Quit: Der Worte sind genug gewechselt, lasst mich auch endlich Taten sehn!]
15:11*TrueBrain looks under Ammler skirt .. ieuw .. stinks
15:12<Ammler>:'-(
15:12<DaleStan>Ammler: Can you give me an NFO that demonstrates that? And/or which messages you think are in the wrong place?
15:14<Ammler>DaleStan: http://bundles.openttdcoop.org/worldairlineset/nightlies/compile-log/ <-- Warning on sprite 3841 (level 2). in was-dev-r413-compile.log
15:15<Ammler>make: [was.rnfo] Error 3 (ignored) in error log
15:15<TrueBrain>glx: I agree with you: it is crazy
15:26-!-Dotted [~Dotted@84.238.80.185] has joined #openttd
15:27<fonsinchen>It does look interesting. The patch is rather small for such a complex feature. They also seem to have load balancing right from the start and they have a TTL on cargo packets to prevent infinite circling.
15:28<TrueBrain>and once again TTDp beats OpenTTD :p (with going into trunk :p)
15:30<fonsinchen>Well, the openTTD devs wouldn't have accepted that code. It's practically undocumented and contains lots of commented out code.
15:31<frosch123>well, if it does not assemble, there is a chance. TrueBrain! Go, go, go!
15:31<TrueBrain>let me think about that for a second ......
15:32*Xaroth waits for it
15:32<TrueBrain>oh, yes, it is going to be legend
15:32<TrueBrain>dary!
15:32<Xaroth>besides, frosch123, TB is busy on a better project :P
15:32<TrueBrain>hihi
15:33<Ammler>better :-o
15:35<TrueBrain>I wonder if Ammler is suprised Xaroth knows that word, of that there is anything better than OpenTTD .. hmm :p
15:35<Xaroth>s/of/or/ :P
15:35<TrueBrain>most likely ..
15:35<TrueBrain>can't be sure :p
15:35*frosch123 was mainly wondering about the "on" part
15:36<Xaroth>pff
15:36<TrueBrain>everyone is a critic!
15:36<Xaroth>TrueBrain: that's because they fail to see the awesome
15:37<TrueBrain>so we should suit up!
15:37<frosch123>very true
15:37<DaleStan><fonsinchen> Well, [it] contains lots of commented out code. <-- I don't understood that fascination either. We have version control for a reason.
15:38-!-KenjiE20 is now known as Guest229
15:38-!-KenjiE20 [~KenjiE20@92.0.99.120] has joined #openttd
15:38<DaleStan>This pair of lines is especially mind-boggling:
15:38<DaleStan>/ dd canhavecargodest
15:38<DaleStan> dd canhavecargodest
15:38<DaleStan>*// dd canhavecargodest
15:38<Xaroth>o_O
15:39-!-welshdragon is now known as BobXP
15:39-!-BobXP was kicked from #openttd by DorpsGek [We hate XP]
15:40-!-BobXP [~welshdrag@80.247.163.137] has joined #openttd
15:40<fonsinchen>I can't seem to reproduce the problem with load_unload_time_rem == 0 triggering the assertion in LoadUnloadVehicle. But I believe the guy who posted it that it's somehow possible to create that situation. I would preemptively fix it by setting load_unload_time_rem to 1 in LoadUnloadVehicle if the train has reversed.
15:40-!-BobXP is now known as Welshdragon
15:41<fonsinchen>DaleStan, obviously you are less strict about coding style ... which has benefits and drawbacks.
15:41-!-Guest229 [~KenjiE20@92.3.8.28] has quit [Ping timeout: 480 seconds]
15:41<frosch123>:o "preemptively" and "fix" in one sentence
15:41-!-Welshdragon is now known as welshdragon
15:42<fonsinchen>"preemptive" is probably the wrong word, but I guess you got the meaning.
15:43<+glx>preventive maybe
15:43<TrueBrain>even a preventive fix is weird :p
15:43<TrueBrain>but we all understand what he means :p
15:44<frosch123>is there a difference between preemptive and preventive ?
15:44<TrueBrain>is a condom preemptive?
15:45<+glx>there's some "cooperation" in preemptive IIRC
15:45<fonsinchen>It means I don't konw the exact code path to that assertion. But I'd fix the only place where load_unload_time_remaining can be left at 0 without the order type being changed from OT_LOADING.
15:46<TrueBrain>" To appropriate, seize, or take for oneself before others." <- preempt :p
15:46<Utvik>9,58
15:46<TrueBrain>10,76
15:49-!-HerzogDeXtEr1 [~Flex@89.246.169.87] has quit [Ping timeout: 480 seconds]
15:50<pavel1269>today, i really look like sameone who comes from southern states :P ... great time at pool .... hope you were also at pool at your place ;-)
15:50<TrueBrain>I did beter: I want indoor rockclimbing :)
15:51<andythenorth>I went indoor rock climbing too. hence tired fingers. and blisters (flappers!)
15:52<Eddi|zuHause>oh, then you should have met each other :p
15:57-!-ed__ [edlau@cpe-67-49-117-226.socal.res.rr.com] has joined #openttd
16:00<ed__>anyone know what happened to openttdcoop?
16:00-!-tdev [~udev@p508EA331.dip.t-dialin.net] has joined #openttd
16:00<ed__>are they moving websites or something?
16:00<frosch123>ask in #openttdcoop
16:01<ed__>k, thanks
16:03<planetmaker>they kinda do.
16:03<planetmaker>replace .org by .ammler.ch
16:03<planetmaker>^ ed
16:03<planetmaker>^ ed__
16:05<ed__>thanks. couldn't find the irc channel info for them
16:06<frosch123>that's easy, just type !password
16:09-!-Fast2 [~Fast2@p57AFA51D.dip0.t-ipconnect.de] has joined #openttd
16:09<Prof_Frink>SmatZ: Y'what, eh?
16:13-!-HerzogDeXtEr [~Flex@89.246.169.87] has joined #openttd
16:14-!-Chruker [~no@port113.ds1-vj.adsl.cybercity.dk] has joined #openttd
16:15<Zuu>!password
16:15-!-Zuu was kicked from #openttd by DorpsGek [Wrong channel. Retry in #openttdcoop.]
16:15-!-Zuu [~Zuu@S0106000f3d50466b.vc.shawcable.net] has joined #openttd
16:15<Zuu>:-)
16:27-!-ed__ [edlau@cpe-67-49-117-226.socal.res.rr.com] has left #openttd []
16:31-!-frosch123 [~frosch@frnk-590c0f91.pool.einsundeins.de] has quit [Remote host closed the connection]
16:32<Zuu>Woo, Canada-line (the new skytrain line in Vancouver) opens Early so I'll be able to try it out before I have to go home :-)
16:39<Fast2>Hello
16:46-!-LordAzamath [~rightwing@82.131.16.156.cable.starman.ee] has quit [Quit: ChatZilla 0.9.85 [Firefox 3.5.2/20090729225027]]
16:48-!-Zuu [~Zuu@S0106000f3d50466b.vc.shawcable.net] has quit [Ping timeout: 480 seconds]
16:56-!-LordAzamath [~rightwing@82.131.16.156.cable.starman.ee] has joined #openttd
16:59-!-tokai [~tokai@p54B84392.dip0.t-ipconnect.de] has quit [Ping timeout: 480 seconds]
16:59<pavel1269>gn folks ;-)
16:59-!-pavel1269 [~quassel@r2ao16.net.upc.cz] has quit [Remote host closed the connection]
17:01-!-tokai [~tokai@p54B81AFC.dip0.t-ipconnect.de] has joined #openttd
17:01-!-mode/#openttd [+v tokai] by ChanServ
17:07-!-xmakina [~xmakina@87.115.5.113.plusnet.pcl-ag01.dyn.plus.net] has quit []
17:09-!-andythenorth [~andy@87.115.14.207.plusnet.pcl-ag01.dyn.plus.net] has quit [Quit: andythenorth]
17:14-!-Lisby [Lisby@d40a9d6d.rev.stofanet.dk] has quit []
17:26-!-OwenS [~oshepherd@host86-154-217-48.range86-154.btcentralplus.com] has quit [Remote host closed the connection]
17:27-!-OwenS [~oshepherd@host86-154-217-48.range86-154.btcentralplus.com] has joined #openttd
17:28-!-LordAzamath [~rightwing@82.131.16.156.cable.starman.ee] has quit [Quit: ChatZilla 0.9.85 [Firefox 3.5.2/20090729225027]]
17:30-!-Cybertinus [~Cybertinu@tunnel3304.ipv6.xs4all.nl] has quit [Remote host closed the connection]
17:33-!-Cybertinus [~Cybertinu@tunnel3304.ipv6.xs4all.nl] has joined #openttd
17:40-!-Biolunar [mahdi@blfd-4db027cb.pool.einsundeins.de] has quit [Quit: gn8]
17:42<Terkhen>good night!
17:42-!-Terkhen [~Terkhen@ti0034a380-1631.bb.online.no] has quit [Quit: Bye!]
17:44-!-Cybert1nus [~Cybertinu@tunnel3304.ipv6.xs4all.nl] has joined #openttd
17:45-!-Cybertinus [~Cybertinu@tunnel3304.ipv6.xs4all.nl] has quit [Remote host closed the connection]
17:46-!-Cybert1nus [~Cybertinu@tunnel3304.ipv6.xs4all.nl] has quit [Remote host closed the connection]
17:49-!-Cybertinus [~Cybertinu@tunnel3304.ipv6.xs4all.nl] has joined #openttd
17:53-!-Exl [~myself@cp1224652-a.roemd1.lb.home.nl] has quit []
17:55-!-KritiK [~Maxim@78-106-158-30.broadband.corbina.ru] has quit [Quit: Leaving]
17:58*OwenS keeps forgetting operator is a C++ keyword...
17:59<@petern>eh
18:02*DaleStan prefers op or oper for that variable name.
18:02<OwenS>I'm currently using opCode normally (because it's the operator's number I'm refering to)
18:06<OwenS>Hmm... Do I reserve all names beginning with __ or which begin and end with it? Hmm
18:19<Spoons>16/23:19:29 < nolyc> Section 17.4.3.1 of the C++ standard reserves any name which contains two consecutive underscores, which begins with an underscore followed by an uppercase letter or begins with an underscore and is in the global namespace.
18:20-!-Spoons is now known as FauxFaux
18:23-!-Cybertinus [~Cybertinu@tunnel3304.ipv6.xs4all.nl] has quit [Remote host closed the connection]
18:24-!-reldred1 [~Richard_E@115.131.196.206] has quit [Ping timeout: 480 seconds]
18:25<OwenS>In my own language :p
18:27<MyCatVerbs>OwenS: reserve with prefixed __s then. Better to be consistent with other languages. :)
18:27<MyCatVerbs>(I thought the C standard reserved the double underscore prefix too?)
18:28<OwenS>I think it does
18:29-!-fonsinchen [~alve@BAEa21d.bae.pppool.de] has quit [Remote host closed the connection]
18:29-!-^Spike^ is now known as ^spike^
18:30<OwenS>I was considering the python __reserved__ route; partially since when designing my language, so far, when in doubt about something on which Python and C++ differ, I've done things the Python way :p
18:30<FauxFaux>Python and C++. Oh dear.
18:31<Tefad>python. bleh. unless its being run through a proper VM
18:31<OwenS>Python and C++ are two of my prefered languages. That doesn't mean they're my ownly source of inspiration; an important third one is JavaScript (Or rather ECMAScript, not the mess that is browser JavaScript :P )
18:32<OwenS>only**
18:32<Tefad>fresh cookies warmed in owen.
18:33<OwenS>def hello(name) print("Hello, " + name + "!"); would be a simple hello world function :p
18:37<MyCatVerbs>Tefad: define "proper VM"?
18:37<MyCatVerbs>Tefad: I'm led to understand that jython and ironpython aren't actually faster than cpython on real (i.e. large and fugly) codebases.
18:38<OwenS>MyCatVerbs: They are faster under high loads in most cases from what I've read
18:38<OwenS>Jython scales best, but is also the slowest for low loads
18:40<MyCatVerbs>I thought that was on thread-heavy microbenchmarks, mainly?
18:40<MyCatVerbs>Stuff that tends to exercise the bits of CPython that suck hardest.
18:41<MyCatVerbs>I could be wrong, I haven't looked into it well enough to say for certain.
18:41<OwenS>I've seen it on a parser which generates thousands of an objects (They were building a compiler for the CLR, and benchmarked the parser accross CPython/Jython/IronPython)
18:42<MyCatVerbs>Oh, neat stuff. ^^
18:43<OwenS>My language targets LLVM (for great native code generation), maybe soon it's own VM, and maybe libJIT
18:45<Tefad>all i know is interpreted python is balls slow and that makes me not want to use it.
18:46<MyCatVerbs>Why bother with more than one target if one of your targets is LLVM?
18:46<Tefad>flexibility
18:46<Tefad>experience
18:46<Tefad>*shrug*
18:46<MyCatVerbs>Those are good reasons, but I'm also curious as to what OwenS's reasons are. ;)
18:47<OwenS>MyCatVerbs: The VM is a backup for when LLVM is unavailable. libJIT is so I can benchmark it on both - and learn both :P
18:47<MyCatVerbs>Cool beans.
18:47<OwenS>I'm currently in the process of refactroing my codegen
18:48<OwenS>Mainly to get it all out of the AST :p
18:48<MyCatVerbs>Ewww. ;P
18:48<OwenS>It's getting refactorted into a generic interface (As is the tree pretty printer)
18:48-!-reldred1 [~Richard_E@wirele5.lnk.telstra.net] has joined #openttd
18:48-!-Progman [~progman@p57A1EE5F.dip.t-dialin.net] has quit [Remote host closed the connection]
18:50-!-tdev [~udev@p508EA331.dip.t-dialin.net] has quit [Quit: free open source vehicle simulator: http://rigsofrods.com]
18:52<OwenS>Once the codegen is out int it's own class it's getting a major overhaul to add coroutine supprot
18:53<MyCatVerbs>Oooh, neat.
18:53<OwenS>Which does have the unfortunate implication that all function calls involve a malloc... (or rather a vmheapalloc, since I use a custom heap :P)
18:54<MyCatVerbs>How unfortunate that might be depends on your memory allocator.
18:55<OwenS>It's not that bad considering I don't need to worry about freeing blocks (I'm using a compacting GC... so thats handled for me :P )
18:55-!-^spike^ [~spike@dhcp-077-251-090-192.chello.nl] has quit [Quit: Not here]
18:55<OwenS>So an alloc is little more than adding to the heap position :p
18:56<MyCatVerbs>I would hardly count that as handled *for* you. You had to write the compacting GC too, didn't you? ;)
18:56<OwenS>Yes, but I needed to anyway with my design :p
18:56<MyCatVerbs>So you have about the same allocator overhead as every other competently GC'd language on the planet then - one integer increment and range check on the fast path, arrrrgh bees and scorpions on the slow path.
18:57<OwenS>Yes :p
18:57<OwenS>And an arrrrrgh molten lava on the really slow (Heap's full... enlarge if the application permits)
18:57<MyCatVerbs>I think you can actually improve on that if you use something like libsigsegv. :)
18:58-!-Zahl [~Zahl@f050240109.adsl.alicedsl.de] has quit [Quit: *schiel*]
18:58<OwenS>I don't fancy trying to move a structure which has yet to get it's type information down :p
18:59<MyCatVerbs>I was thinking, Cheney on the MTA, with just a pointer increment on the fast path - no range check. Handle the range check by segfaulting when you reach the end of the nursery. :)
18:59<OwenS>Yeah, N page VM arena followed by a guard page would work
19:00<OwenS>And implementing signal handlers isn't really an issue when I already need them for divison by zero handling :p
19:01<MyCatVerbs>I wonder whether that would be faster than increment and range check? Since branch prediction would probably completely flatten the range check anyway.
19:01<MyCatVerbs>s/probably //
19:01<OwenS>I'm not sure about it completely flattening it when there are several thousands of them distributed throughout the generated code :p
19:02<MyCatVerbs>Oh yeah, I forgot that. >>
19:02<OwenS>But adding support for that kind of stuff isn't bad when you already need OS specific support code anyway
19:03*MyCatVerbs has a sneaky feeling that guard page trickery would probably end up involving abuse of MAP_FIXED in at least two places.
19:04<OwenS>mprotect(guard_addr, 4096, PROT_NONE);
19:04<OwenS>On *nix :p
19:06<MyCatVerbs>But how do you get the code that triggered the page fault to complete the write, and then funcall the GC?
19:07<OwenS>Hmm...
19:07<MyCatVerbs>I bet the simplest thing would be to mprotect(guard_addr, 4096, PROT_READ|PROT_WRITE) and then mmap(guard+4096,size,PROT_READ|PROT_WRITE,MAP_FIXED|MAP_ANON,-1,0) to enlarge the arena without ever changing its address.
19:08<MyCatVerbs>Or you could just set a flag that says "hai thar, plz branch to gc kthxbai", and then the allocation routine is "pointer increment, then check this flag". But that's not an improvement on "pointer increment, then range check".
19:08<OwenS>The issue is that allocation failure should trigger a compaction...
19:08<MyCatVerbs>Oh, I know.
19:09<OwenS>All allocations involve first storing a "resume address" in a memory location?
19:09<MyCatVerbs>You require that memory is always written to immediately upon allocation, and also that every allocation has a couple NOPs after it. Then your signal handler overwrites the NOPs with a stub that calls the GC. Bonza! :D
19:10<MyCatVerbs>...I like your suggestion better. =D
19:10<OwenS>Yeah, since LLVM doesn't allow yours :p
19:10-!-nicfer [~Usuario@168.226.104.59] has joined #openttd
19:10-!-nicfer [~Usuario@168.226.104.59] has quit []
19:11<Eddi|zuHause>wtf?
19:11<Eddi|zuHause>> svn co svn://anonsvn.kde.org/home/kde/trunk/extragear/multimedia/kaffeine
19:11<Eddi|zuHause>svn: No such revision 1012147
19:11<OwenS>O_o
19:11<OwenS>MyCatVerbs: ...This makes all allocations drop everything on the floor (Or rather stack frame) though... I may have just moved the bees to the "fast" path :p
19:12<MyCatVerbs>Bees? TERROR! D:
19:12<OwenS>Hmm... It could chuck out a different retry address though :p
19:12<MyCatVerbs>OwenS: ooh, howsabout this crap idea:
19:13<MyCatVerbs>Wait, no, that would be dumb. NVM.
19:14<OwenS>Compaction is gonna be fun though. I'm gonna have to move the stack frames I'm updating...
19:14<MyCatVerbs>Oh, maybe not.
19:14<MyCatVerbs>Keep one pointer to the highest allocated space, one to the highest allocated space that is considered "committed", and a retry address.
19:15<MyCatVerbs>Then, for pure computations that it's safe to blow up and retry again from scratch, you only need to set the retry address once, and set the "committed" address after making (and writing to) the *final* allocation. :)
19:16<OwenS>Hmm... All in all, it may be easier (and more optimizer friendly) to just go with the range check :p
19:17<MyCatVerbs>Yeah, I'd go with the range check. :)
19:17<MyCatVerbs>I'm just wondering what you could do to improve on it.
19:20-!-PeterT [~Peter@c-76-19-209-23.hsd1.ma.comcast.net] has joined #openttd
19:20<OwenS>My GC is gonna be loads of fun :p
19:24-!-keoz [~keikoz@pha75-8-82-230-2-115.fbx.proxad.net] has quit [Quit: Leaving]
19:27<SpComb>speaking of python, I tried out Cython for the first time this weekend
19:27-!-PeterT [~Peter@c-76-19-209-23.hsd1.ma.comcast.net] has quit [Quit: Leaving]
19:28-!-Nickman87 [~nick.defr@23.207-242-81.adsl-dyn.isp.belgacom.be] has quit [Ping timeout: 480 seconds]
19:29<Eddi|zuHause>hm.. what's the difference between "Factory" and "Unstable" repositories?
19:29<OwenS>Isn't that an OpenSuSE thing? :p
19:29<Eddi|zuHause>yes
19:30<Eddi|zuHause>http://download.opensuse.org/repositories/KDE:/KDE4:/ <-- ?
19:31<SpComb>787 lines of .pxd, 1410 .pyx... 25811 lines of .c
19:31<SpComb>922k of .so
19:31<OwenS>I'd presume factory means going in next release, unstable means may not be in next release
19:32<SpComb>although that's with -g
19:32-!-Eddi|zuHause [~johekr@p54B758A3.dip.t-dialin.net] has quit []
19:32<SpComb>although it doesn't seem to matter
19:33-!-Eddi|zuHause [~johekr@p54B77C19.dip.t-dialin.net] has joined #openttd
19:33<SpComb>but Cython's a curious language
19:33<SpComb>it's odd, but it mostly works
19:33<SpComb>worst bit so far was trying to hack the cimport module system to work with python packages
19:37<OwenS>My string format's gonna be funky
19:38<OwenS>Well, actually, in context with the rest of the heap... no... just a null terminated UTF-16 string (With a size at the front to make heap walking easier :P)
19:41<OwenS>Doing lots of string ops will cause lots of copies though...
19:44*SpComb plays with his PyObjects
19:44<SpComb>had to do some funky stuff to make _PyString_Resize work
19:45<SpComb>normally, python strings are immutable... with one exception... _PyString_Resize can truncate strings with a refcount of 1
19:45<SpComb>but that doesn't work at all with Cython's syntax or semnatics
19:45<SpComb>trick was to stick to pure PyObject*'s and then a bit of try-finally
19:45<OwenS>lol
19:46<OwenS>In my language I don't know how many references a string has so it always has to be copied
19:46<OwenS>If you want it to be faster... use a Rope :p
19:46<SpComb>immutable strings aren't a bad thing
19:46<SpComb>...as long as you also provide some kind of mutable byte array
19:46<SpComb>which, python < 2.6, does not
19:48<OwenS>Mutable byte array? I don't ATM, but the standard library will be having a ByteArray :p
19:49-!-BaronChaos [~BaronChao@p5B26B5B7.dip0.t-ipconnect.de] has quit [Quit: Verlassend]
20:12-!-Roujin [~chatzilla@p54972A4B.dip0.t-ipconnect.de] has joined #openttd
20:13<Roujin>hello to any soul who might happen to be here at such a time
20:13<OwenS>me :P
20:13<OwenS>And hello
20:15<Roujin>straight to the stupid question I was going to ask: is it a bad idea to quote (or fully use) the ending song of valve software's Portal in a NoAI that's going to be GPL'ed?
20:15<+glx>probably
20:16<+glx>anyway the cake is a lie
20:16<Roujin>for both options "quote (partially)" and "fully use" ?
20:16<OwenS>The cake is not a lie. But it is very squicky
20:16<Roujin>and how probable is "probably", anyway? ;)
20:17<+glx>better not quote it at all
20:17<OwenS>What would an AI need to quote it for anyway? O_o
20:17<Roujin>aww, that's sad. Then I can't have my AI write "I'm still alive" in its main loop, because that would be a quote of that song?
20:17<OwenS>Or is this AI called GLaDOS?
20:17<Roujin>;)
20:18<OwenS>I'm still alive would be fine - probably noncopyrightable and at the least fair use :p
20:18<Roujin>OwenS: haha, no, but that's an awesome idea ^^
20:18<OwenS>Your intention was to have it slowly quote the song wasn't it? :p
20:19<Roujin>yup. Instead of just posting "I'm still alive" over and over ;) But with the concern glx wrote, seems I'll take that out before any public release..
20:20<OwenS> Is it legal? No. Would you be sued? Probably not.
20:24<OwenS>The trouble with transitioning something to a proper open source project is you end up with ~23 line (X11 license) license boilerplate in each file...
20:26-!-Chrill [~chrischri@80.216.60.117] has joined #openttd
20:28-!-KenjiE20 [~KenjiE20@92.0.99.120] has quit [Quit: WeeChat 0.3.0-rc3]
20:29-!-Fast2 [~Fast2@p57AFA51D.dip0.t-ipconnect.de] has quit [Ping timeout: 480 seconds]
20:38-!-Nite_Owl [~Nite_Owl@c-76-109-50-97.hsd1.fl.comcast.net] has joined #openttd
20:38<Nite_Owl>Hello all
20:39*Chruker swings a mouse in front of the owl
20:39<Nite_Owl>Hello Chruker
20:53-!-Chrill [~chrischri@80.216.60.117] has quit [Quit: I don't love RPharazon]
20:58-!-Eddi|zuHause [~johekr@p54B77C19.dip.t-dialin.net] has quit [Remote host closed the connection]
20:59-!-Eddi|zuHause [~johekr@p54B77C19.dip.t-dialin.net] has joined #openttd
20:59-!-reldred1 [~Richard_E@wirele5.lnk.telstra.net] has quit [Quit: Leaving.]
21:01-!-Pygma [~quassel@88.151.27.234] has quit [Remote host closed the connection]
21:02-!-Pygma [~quassel@88.151.27.234] has joined #openttd
21:07-!-OwenS [~oshepherd@host86-154-217-48.range86-154.btcentralplus.com] has quit [Remote host closed the connection]
21:14-!-Coco-Banana-Man [~Stephan.D@p5B2DD95D.dip.t-dialin.net] has quit [Ping timeout: 480 seconds]
21:15-!-Coco-Banana-Man [~Stephan.D@p5B2DF0B9.dip.t-dialin.net] has joined #openttd
21:45-!-Chruker [~no@port113.ds1-vj.adsl.cybercity.dk] has quit []
21:47-!-Zuu [~Zuu@S0106000f3d50466b.vc.shawcable.net] has joined #openttd
21:47-!-Coco-Banana-Man [~Stephan.D@p5B2DF0B9.dip.t-dialin.net] has quit [Quit: Raubgut ist vom Umtausch ausgeschlossen!]
21:53-!-Nite_Owl [~Nite_Owl@c-76-109-50-97.hsd1.fl.comcast.net] has quit [Quit: Read You Soon]
21:55-!-Utvik [~autvik@bjo2-1x-dhcp133.studby.uio.no] has quit [Quit: Utvik]
22:04-!-PeterT [~Peter@c-76-19-209-23.hsd1.ma.comcast.net] has joined #openttd
22:06-!-HerzogDeXtEr1 [~Flex@89.246.202.226] has joined #openttd
22:09-!-R0b0t1 [~Enigma@64-136-216-213.dyn.everestkc.net] has joined #openttd
22:12-!-HerzogDeXtEr [~Flex@89.246.169.87] has quit [Ping timeout: 480 seconds]
22:15<PeterT>@seen yorick
22:15<@DorpsGek>PeterT: yorick was last seen in #openttd 3 weeks, 5 days, 5 hours, 24 minutes, and 50 seconds ago: <yorick> also, don't listen to me
22:16<PeterT>has anyone had luck with compiling on vc++
22:27-!-Elton01330 [~Delphi@189.82.129.229] has quit [Read error: Connection reset by peer]
22:29-!-Utvik [~autvik@bjo2-1x-dhcp133.studby.uio.no] has joined #openttd
22:44-!-PeterT [~Peter@c-76-19-209-23.hsd1.ma.comcast.net] has quit [Quit: Leaving]
22:44-!-HerzogDeXtEr1 [~Flex@89.246.202.226] has quit [Read error: Connection reset by peer]
22:52-!-glx [glx@2a01:e35:2f59:c7c0:c000:8ecc:de5:bde6] has quit [Quit: bye]
23:01-!-reldred1 [~Richard_E@115.131.211.216] has joined #openttd
23:09-!-TinoDidriksen [~tino@port432.ds1-od.adsl.cybercity.dk] has quit [Ping timeout: 480 seconds]
23:11-!-Fuco [~dota.keys@ip-105.imafexbb.sk] has quit [Ping timeout: 480 seconds]
23:12-!-TinoDidriksen [~tino@port432.ds1-od.adsl.cybercity.dk] has joined #openttd
23:23-!-Pygma [~quassel@88.151.27.234] has quit [Remote host closed the connection]
23:39-!-TinoDidriksen [~tino@port432.ds1-od.adsl.cybercity.dk] has quit [Ping timeout: 480 seconds]
23:43-!-TinoDidriksen [~tino@port432.ds1-od.adsl.cybercity.dk] has joined #openttd
---Logclosed Mon Aug 17 00:00:41 2009