Times are UTC Toggle Colours
06:02:21 *** Alberth has joined #openttdcoop.devzone 06:04:35 <DevZone> Project road-hog build #742-push: SUCCESS in 35 sec: https://jenkins.openttdcoop.org/job/road-hog/742/ 08:25:35 *** LSky` has joined #openttdcoop.devzone 09:00:30 *** frosch123 has joined #openttdcoop.devzone 10:48:30 *** LSky`` has joined #openttdcoop.devzone 10:49:20 *** LSky` has quit IRC 10:49:20 *** DevZone has quit IRC 10:49:20 *** dihedral has quit IRC 10:49:20 *** michi_cc has quit IRC 10:49:20 *** Taede has quit IRC 10:52:04 *** Taede has joined #openttdcoop.devzone 10:52:24 *** michi_cc has joined #openttdcoop.devzone 10:52:31 *** dihedral has joined #openttdcoop.devzone 10:53:51 <Alberth> Hacking NML expressions to make them read-only, so 'reduce' can be cached, and objects can be shared (hopefully) 10:54:08 <Alberth> https://devs.openttd.org/~alberth/diffs/expr_readonly.patch is what I have so far (unfinished) 10:55:14 <Alberth> https://paste.openttdcoop.org/ptz1ffrui the core of the hack 10:56:51 <Alberth> https://paste.openttdcoop.org/pdwfandto my problem, action2 is also an expression in one or so case 10:58:06 <Alberth> what would be a direction? 10:59:32 <frosch123> multiple inheritage :p 11:00:38 <Alberth> it does indeed, which makes that class also have the RO protection 11:01:01 <Alberth> one way is to make action2 read-only, but that seems a large step 11:02:01 <frosch123> i do not quite see the problem in your backtrace 11:04:05 <Alberth> https://paste.openttdcoop.org/pfh9tryqz 11:04:43 <frosch123> yes, but isn't that constant assignment in the constructor? 11:05:43 <Alberth> sure, but it needs self.set_value('var_num', var_num) there, you cannot assign anything anywhere 11:06:12 <Alberth> due to the expression.Expression inheritance 11:07:08 <Alberth> but it's initialization in the base class, which means you need 'self.set_value()' from every derived class, or add it to the base class 11:08:02 <frosch123> how about some is_shareable method? 11:08:14 <Alberth> if you don't, there is an expression object which is not RO 11:09:22 <frosch123> anyway, where are Expressions actually shared? 11:09:27 <frosch123> resp. where could they? 11:09:48 <Alberth> hmm, is_sharable is an idea 11:10:04 <Alberth> currently I am just enforce RO access after creation 11:10:11 <Alberth> so they are not shared at all 11:10:51 <Alberth> biggest benefit imho is with reduce where you can return self, and cache reduction results, so you don't need actually build the entire tree again 11:11:26 <Alberth> one step further could be to make factory functions that track objects they create 11:17:19 <Alberth> this varaction2var looks so much like variable in expression wrt to members 11:25:53 <Alberth> hmm, makes me wonder whether these expressions should be merged 11:28:46 <frosch123> they are on different levels in the compilation pipe 11:29:00 <frosch123> not all variables become varact2, some also become actiond 11:29:41 <Alberth> yeah, but have expressions in general, and then rewrite to either actiond or action2 11:30:06 <Alberth> rather than having action2 and actiond separately rewriting their expressions 11:31:39 <Alberth> and it may already be there mostly, as expressions have "is_supported_by _action{2,D}" methods irc 11:32:09 <Alberth> this varaction2 is an exception 11:32:25 *** Supercheese has quit IRC 11:32:58 *** Supercheese has joined #openttdcoop.devzone 11:32:58 <Alberth> varaction2 also has its own optimizations, by the look of it 12:44:35 *** DevZone has joined #openttdcoop.devzone 13:11:59 <DevZone> Project Squirrel2Doxygen build #4-push: SUCCESS in 5.4 sec: https://jenkins.openttdcoop.org/job/squirrel2doxygen/4/ 13:56:03 *** gelignite has joined #openttdcoop.devzone 15:31:40 <DevZone> Project Squirrel2Doxygen build #5-push: SUCCESS in 2.5 sec: https://jenkins.openttdcoop.org/job/squirrel2doxygen/5/ 18:57:47 <DevZone> Project World Airliner Set build #1176-push: SUCCESS in 3 min 39 sec: https://jenkins.openttdcoop.org/job/worldairlinersset/1176/ 19:26:19 *** Alberth has left #openttdcoop.devzone 20:08:45 <DevZone> Project road-hog build #746-push: SUCCESS in 29 sec: https://jenkins.openttdcoop.org/job/road-hog/746/ 20:49:31 *** frosch123 has quit IRC 21:41:32 *** Supercheese has quit IRC 22:08:26 *** gelignite has quit IRC 22:43:16 *** LSky`` has quit IRC