Time Nick Message 00:27 blaise Hello all.. 00:27 blaise :D 00:27 blaise I don't suppose VanessaE is active, is she? 00:30 diemartin hello blaise 00:30 blaise diemartin: hello.. 00:31 blaise VanessaE: plants_lib and default problem http://pastebin.com/E3E7cNTD 00:43 Ep1cMaN hello everyone. 00:43 Ep1cMaN technic mod cnc machine broken as I cant find which blocks work? 00:45 blaise I can't get the server to load with a lot of the mods... 00:45 blaise technic, plantlife, mesecons 00:46 blaise it's rather disconcerting.. 00:46 blaise I'm afraid to update my production minetest server... 00:47 blaise and it seems like no one has touched the hud mod in quite a while, 00:48 blaise I've tried both mesecons release, and mesecons git.. can't get them to work with minetest-0.4.10 or minetest-0.4.12 00:48 blaise : 00:48 blaise :G 01:05 Xenoth I have an issue compiling Minetest on Linux; do I ask here, or on #minetest-dev? 01:08 blaise here is fine 01:08 Xenoth During compilation, I get this: make[2]: *** No rule to make target '/usr/lib64/libz.so' 01:08 blaise compiling and developing are a bit different.. XD 01:08 blaise yes, you need libz 01:09 blaise Xenoth: what distro do you use? 01:09 blaise if you give me a sec, I'll tell you what contains libz 01:09 blaise :D 01:10 Xenoth blaise: Currently on Ubuntu 15.04. 01:10 Xenoth Thanks. 01:10 Xenoth I was just searching the apt cache for it 01:10 blaise Xenoth: what linux distro do you use? 01:10 blaise SuSE? 01:10 blaise RedHat? 01:10 blaise Slackware? 01:10 Xenoth Ubuntu, 15.04 01:10 * blaise facepalms 01:10 blaise k, just a sec 01:26 kaeza_ Zlib? 01:27 kaeza_ Did you install all dependencies listed in the README? 01:28 Xenoth kaeza_: Yessir 01:29 kaeza_ Xenoth, this may be useful: https://forum.minetest.net/viewtopic.php?id=3837 01:37 Xenoth Thank you, had a few other unsettled dependencies, but it's all working now 02:23 blaise damnit 02:23 blaise did anyone reply to my paste about plants_lib? 02:29 Ep1cMaN is it worth having music using technic mod. Or soes it just become annoying? 02:29 Ep1cMaN does* 02:37 Pilcrow hello all 02:38 kaeza hey 02:39 blaise howdy 02:39 Pilcrow hi kaeza and blaise. how are you today/tonight? 02:40 Pilcrow hey, is Chanku or OldCoder around? is this still going to happen: https://forum.minetest.net/viewtopic.php?f=47&t=12199 02:42 Pilcrow kaeza_: did your internet just cut out? you seem to have changed names... :P 02:43 kaeza_ Mobile connection sucks 02:44 kaeza_ Tethering on mobile connection sucks even more 02:45 Pilcrow kaeza_: ah. that makes sense. at least there's the logs, so you don't have to miss bits of conversation... ;) 03:00 Pilcrow Oh and blaise, I just read the irc log and saw your question about plants_lib. In the debug info you posted, it says "attempt to call field 'get_us_time' (a nil value)" but minetest.get_us_time() has existed since at least 0.4.11 (maybe even 0.4.10)... What version of minetest are you using? 03:05 OldCoder Hi 03:05 OldCoder Pilcrow, are you there? 03:06 OldCoder Pilcrow, PM please; the subject is important to me 03:06 Pilcrow ah, hello OldCoder 03:06 OldCoder PM 03:07 Ep1cMaN does any one know how to setup lava so that privs are required please? 03:17 jordan4ibanez !tell 03:17 MinetestBot jordan4ibanez: Need a nickname... 03:24 jordan4ibanez Hmmm 03:25 jordan4ibanez Time to find out how to get a circular reference 03:29 Wuzzy2 Does Minetest use UDP, TCP or both? 03:57 jordan4ibanez Wuzzy2: http://dev.minetest.net/Network_Protocol 03:57 jordan4ibanez I don 03:57 jordan4ibanez I don't know networking though 03:58 Wuzzy2 ok thx 03:59 jordan4ibanez Did that answer the question? 04:06 * OldCoder worlds are down to relocate from one server to another 04:19 fnrick Hello, does anyone know a good starting modding template for Minetest? I'm looking around for something like boilerplate that has API for minetest already, so if anyone could point me in the right direction to that ,that'd be great! 04:23 jordan4ibanez RealBadAngel: People love your shader thing! https://www.reddit.com/r/Minetest/comments/38gf3g/realbadangels_shaders/ 04:24 jordan4ibanez fnrick: What are you trying to make? 04:25 fnrick Anything simple, I'm in the process of learning modding 04:25 fnrick from making a block to entities 04:25 Pilcrow fnrick: minetest modding is much easier to get started with than most other games, as it has its own built-in API. not only that, the standard minetest_game is composed entirely of mods, so it's a perfect reference! 04:25 Wuzzy2 yes 04:25 fnrick I'm searching around to start my adventure on top of the common modding pack... like premade modding pack that I dont have to reinevent the wheel from scratch 04:26 fnrick Ok 04:26 fnrick I noticed that so I feel like I could do it! 04:27 jordan4ibanez We have a bunch of stuff fnrick: http://dev.minetest.net/minetest.register_node http://dev.minetest.net/minetest.register_entity http://dev.minetest.net/LuaEntitySAO https://github.com/PilzAdam/carts https://github.com/PilzAdam/item_drop https://github.com/PilzAdam/farming_plus https://github.com/jordan4ibanez/Hoppers https://github.com/jordan4ibanez/node-gun https://github.com/minetest/minetest_game/tree/master/mods/ 04:27 jordan4ibanez default 04:28 fnrick oh neat! 04:28 jordan4ibanez Just look through other's people's code if you get stumped, or simply go insane and keep trying stuff even if it crashes the game 04:28 fnrick haha 04:28 jordan4ibanez This is my favorite help doc though https://github.com/minetest/minetest/blob/master/doc/lua_api.txt 04:29 jordan4ibanez I've never read the whole thing, I just search and scan through to see what I can do 04:29 fnrick Wow, quite of bit of content there! 04:30 jordan4ibanez Yes it is, you'll get it though, just make some nodes at first and have fun with it 04:31 Pilcrow fnrick: the easiest example to get started is to look in the games folder and explore minetest_game. it has a 'mods' folder that contains practically everything. if you look in default and edit nodes.lua, you can see how to register your own nodes (blocks). 04:31 jordan4ibanez But, the main thing is, you have to think of an idea 04:31 jordan4ibanez Also, peace out, goodnight, blah 04:31 Pilcrow for example, here's the code for default:stone https://github.com/minetest/minetest_game/blob/master/mods/default/nodes.lua#L147-155 04:33 fnrick ok thanks 04:34 Pilcrow then you can check the minetest dev wiki to figure out what can be changed (it has LOTS of information). http://dev.minetest.net/minetest.register_node 04:36 fnrick Plenty of information! I'm going to mod a new block, wish me luck! 04:36 fnrick Farewell 04:36 Pilcrow good luck! :) 06:42 technomancy Pilcrow: you're back! =) 06:42 technomancy I got a chance to look at hoverbot; it's pretty cool 06:48 Pilcrow thanks technomancy. I'd like to talk, but I really need to get to bed. will you be online tomorrow? :) 06:50 technomancy Pilcrow: probably some of the day, but happy to carry on some conversation in GH issues too 09:02 JamesTait Good morning, people! Happy Friday, and happy World Environment Day! 😃 09:08 * ThatGraemeGuy burns some more fossil fuels to keep warm 09:44 Calinou https://forum.minetest.net/viewtopic.php?f=3&t=9172&p=180878#p180824 09:44 Calinou year of desktop linux! 09:44 Calinou memes! 09:44 Calinou i am better than you! 09:44 Calinou /s 10:03 jin_xi wut? 10:08 Calinou we have yet another person like that, that's what I meant, jin_xi 10:08 Calinou they pretend to know better than you and have the perfect solution; so far, all those people failed 10:09 jin_xi still, there is a point... 10:10 Calinou we have those regularly in the free software community 10:11 Calinou we know how they end up :P 10:42 Jordach "the best way to get a FOSS community moving is to be a troll and say x is better than y" 10:42 Jordach swallow yer feckin pride 11:01 Calinou with Jordach it'd even be year of desktop BSD :) 11:32 Amaz Does anyone have any idea how to make this code work? http://pastie.org/10225013 11:32 Amaz What I'm trying to do is take the groups from an object, add the group door = 1 to them, and then register the door... 12:04 mecatninja now I have bald, naked elvs running aroun in only a leather apron in my minetest test world 12:07 Megaf_ Hi 12:08 technomancy had some ideas about loosening up depends.txt to make it more amenable to a third-party dependency tracker system: https://forum.minetest.net/viewtopic.php?f=5&t=12171&p=180889#p180889 12:08 technomancy any thoughts? 12:27 * Calinou successfully wrote a Go program 12:27 Calinou http://paste.ubuntu.com/11587247/ 12:27 blaaaaargh technomancy, personally, I think it would be wasteful to include URLs and the like, plus prone to error 12:28 exio4 Calinou: a perfect solution? systemd you mean? 12:28 Calinou finds numbers 1-56000 to 1-58000 in 1 second 12:28 Calinou (it's a dumb prime number generator) 12:29 blaaaaargh We already have an official mod repository, so why not consult it to get download locations? 12:30 Calinou the mmdb sucks, it's flawed 12:30 Calinou I'd rather have something npm-like with GUI frontends 12:30 Calinou npm is awesome 12:31 Calinou I wonder if we could use something like bower (preferably something GPL-compatible; npm isn't as it's Artistic 2.0) for our “mpm” (Minetest Package Manager) 12:31 Calinou you could use that mpm to install mods, subgames, texture packs, maps maybe 12:31 exio4 managing dependencies isn't trivial 12:32 exio4 if we rework and get a `package manager`, I'd integrate it with the engine, such that then, libraries, become possible without too much pain 12:32 blaaaaargh Calinou, Indeed, it sucks as of now, but I was referring mainly to the underlying database 12:32 Calinou npm has dependency management 12:32 Calinou so does most package managers today :P 12:33 blaaaaargh Also... 12:33 exio4 Calinou: npm solves it by copying everything into the package 12:33 * blaaaaargh hugs exio4 12:33 Calinou static linking isn't a problem in 2015, it's no longer a taboo :P 12:33 exio4 Calinou: that's amazing, nice, cute, as long as vulnerabilities weren't found, or bugs weren't fixed 12:33 * exio4 hugs blaaaaargh 12:33 exio4 Calinou: static linking isn't the problem 12:33 blaaaaargh Dis kb sux 12:34 exio4 Calinou: I am talking about the way to solve dependencies on `npm` 12:34 exio4 it's not about saying "oh, anything with certain APIs will work" 12:34 exio4 it's more like "here have a bundle with the version X.Y.Z of this dependency!" 12:34 exio4 if X.Y.Z+1 happened to fix a bug and 4 0day vulns, sad 12:35 exio4 Calinou: static linking is a low-level detail, fwiw 12:35 exio4 Calinou: you don't even `link` things with node 12:36 Amaz Does anyone have any ideas about my question? :) Should I re-paste it? 12:38 kaeza Amaz use groups.door=1 minetest.override_item("foo", {groups=groups}) 12:38 Amaz Thanks :) 12:39 kaeza ...or something like that... can't code here ;( 12:39 exio4 {groups={door=1}} ? 12:40 kaeza exio4, no 12:40 kaeza That would override the groups with oly doors discarding the rest 12:40 kaeza Only* 12:41 kaeza He wants to add a group if I understood correctly 12:42 exio4 oh 12:42 exio4 add 12:43 Amaz Yep :) 12:44 Amaz That works brilliantly kaeza! Thanks! 12:45 kaeza Sure :) 12:53 kaeza Hey, go looks actually readable. Contrary to the bf that is haskell :D 12:56 blaise moin 12:56 blaise anyone know anything about this? http://pastebin.com/E3E7cNTD 12:57 Calinou http://dl.hugo.pro/benchmarks/prime/ 12:57 Calinou Python benchmark available, PyPy-compliant 12:57 blaise Calinou: nice. 12:58 Calinou pypy main.py & sleep 1; killall pypy 12:58 Calinou you can benchmark it like that 13:00 rubenwardy blaise, you need to update your Minetest version 13:00 rubenwardy nevermind 13:00 rubenwardy I was reading from this: https://github.com/minetest/minetest/blame/master/doc/lua_api.txt#L1668 13:01 rubenwardy But it's been modified since get_us_time() was added. What version are you using, anyway> 13:01 blaise I tried that, XD 13:01 rubenwardy ? 13:01 rubenwardy Ok then. 13:01 blaise 0.4.12 13:01 blaise in fact, I keep everything rather gitish 13:01 rubenwardy The only possible situation I can think of is that your computer is poccessed 13:01 blaise @B^D 13:01 blaise posessed? 13:02 rubenwardy lol yes 13:02 kaeza Possessed 13:02 blaise hehe 13:02 rubenwardy or you live in a particularly high neutrino area 13:02 blaise Possessied 13:02 blaise rubenwardy: considering the recent solar activity, that's a distinct possibility.. XD 13:03 rubenwardy hmmm. Are you also using the latest plantslib? 13:03 blaise indeederly so 13:03 blaise every day I do a git pull 13:03 blaise nothing has been updated.. 13:05 blaise rubenwardy: is this you? http://git-wt-commit.rubyforge.org/git-wtf 13:06 kaeza blaise are you sure you are not running the wrong 'minetest'? 13:06 technomancy Calinou: yes, the reason npm can use its "bundle everything" strategy is that JS modules can just be nested in a way that you can carry around a private internal version of a lib 13:06 kaeza Also did you run 'make' after pulling? 13:06 technomancy lua libraries can do the same thing, but minetest mods cannot afaik 13:07 kaeza (It happened to me once) 13:07 technomancy anyway, just because we can't do it that way doesn't mean it's not worth doing 13:07 technomancy where's the "official" mod repository btw? 13:07 technomancy I've been playing with MT for a couple weeks now and have never seen it 13:08 blaise kaeza: yes, and I always make clean and remake after every pull 13:08 kaeza technomancy https://forum.minetest.net/mmdb/ 13:09 kaeza blaise, no idea then 13:09 technomancy kaeza: thanks 13:10 technomancy does it to subgames too? 13:10 kaeza Not AFAIK 13:12 blaise actually, if you're playing locally, and you place your mods in ~/.minetest/mods/ 13:12 blaise then yes 13:12 blaise they can be available to all subgames.. and used if enabled 13:13 blaise but that magic wont work in worthless operating systems like windows 13:13 blaise XD 13:13 rubenwardy blaise: I didn't write that, no. Why? 13:14 blaise rubenwardy: just curious.. 13:14 technomancy well maybe if there's a centralized repo that works well and has a good API then adding URLs to depends.txt doesn't make sense 13:15 rubenwardy It's by "William": http://git-wt-commit.rubyforge.org/ 13:15 rubenwardy MMDB is broken at the moment :( It should be fixed soon 13:15 rubenwardy I also said that 6 months ago 13:16 technomancy rubenwardy: is it usually stable enough to use to build automated tooling? 13:16 kaeza Lol 13:17 rubenwardy You can't current add, edit or comment on anything. It's works as an API though, you can get what's there 13:17 rubenwardy AFAIK 13:18 kaeza If all else fails, try a forum spider 13:19 exio4 kaeza: Go looks readable because it's just the same stuff with a crappy type system, not offering a lot of new stuff 13:19 exio4 kaeza: if it was for concurrency, I'd look for erlang, not go 13:20 exio4 parallelism isn't Go's thing, either 13:20 technomancy lol go's type system 13:20 exio4 ^ technomancy said the words 13:20 kaeza :< 13:21 technomancy exio4: "Go has the potential to be the next C." / "You mean it could hold back progress in programming for decades?" / "Yeah, exactly." 13:21 exio4 if you say Go is static typed, that it has a type system, it's an insult to real programming languages :D 13:21 exio4 technomancy: lol 13:21 exio4 technomancy: C was pretty good though, just check when it was used as first! 13:22 technomancy true, it's hardly a fair comparison. 13:22 exio4 technomancy: people believed C was god's language.. and well, we're here 13:23 exio4 anyway, Go is static typed as much as Java, IIRC, no? 13:24 exio4 (basically dynamic typed with annotations) 13:24 technomancy Java has generics, but yeah they are close. 13:24 technomancy they both have null >_< 13:25 exio4 Java's generics are so well implemented you could say they aren't generics 13:25 Calinou Lua has 5500 “points” in the prime benchmark, LuaJIT 22000 13:25 Calinou (points = highest prime reached in 1 second) 13:25 exio4 which prime benchmark? 13:25 Calinou I'll put a table up soon 13:25 Calinou http://dl.hugo.pro/benchmarks/prime/ 13:25 Calinou the Lua port is available 13:26 Calinou ports welcome: Java, Scala, Haskell (!), Ruby, Rust, … 13:26 Calinou any modern language 13:26 blaise hrmm 13:26 Calinou even C# 13:26 Calinou but please keep in mind: keep your generator dumb, don't use any smart checks, follow existing style 13:27 exio4 does it have to be idiomatic code 13:27 exio4 or `optimized` code? 13:27 Calinou look at the current code 13:27 exio4 Calinou: I mean, a loop isn't idiomatic in Haskell 13:27 Calinou I don't know about FP stuff, do whatever is the fastest 13:27 Calinou but don't waste time overoptimizing 13:27 exio4 will write both 13:27 Calinou yeah, in doubt write both 13:27 Calinou thanks :) 13:28 Calinou I might include both 13:28 exio4 Calinou: do you have `ghc`, by the way? 13:28 Calinou installing it 13:29 technomancy for alioth at least it becomes a competition of "which language has the FFI system that has the lowest overhead to call out to C?" which is pretty useless 13:29 Calinou how many Haskell compilers are there? are there JIT interpreters? 13:29 Calinou technomancy, my benchmark does show obvious patterns, that you can usually find in the real world 13:29 Calinou less is more 13:30 exio4 Calinou: the `standard` compiler is GHC, there are others out there, with different targets 13:30 exio4 GHC is the `state-of-art` compiler in HAskell, though, with 20+ years of engineering on it :P 13:30 technomancy Calinou: I worry that focusing on primes would penalize languages that don't have unboxed numerics, which doesn't really matter for application-level coding 13:31 exio4 technomancy: shush! 13:31 exio4 I was going to make sure the code would use unboxed integers :( 13:32 technomancy anyway, what I like to say is there's no such thing as a fast programming language, only fast programs 13:32 exio4 ^ that too 13:32 exio4 programming languages have implementations too 13:32 exio4 they are not a thing by themselves 13:33 technomancy it can be fun to game though as long as you don't take it too seriously =) 13:35 exio4 I have a problem with the code 13:36 exio4 while nb_test < nb ; 13:36 exio4 shouldn't that print be "outside"? 13:36 exio4 it seems it'd be print things too many times 13:37 Calinou technomancy, I'll put a disclaimer obviously 13:37 Calinou LuaJIT appears quite slower than PyPy, despite LuaJIT generally being faster in real applications 13:38 exio4 I mean, it also doesn't show just primes 13:38 Calinou exio4, did you test one of the Python/Lua/Go programs? those seem fine to me 13:38 exio4 yes, I tested the lua program 13:38 exio4 and it generated a number whose last digit is five 13:38 Calinou the Lua one might be wrong 13:38 technomancy Calinou: using ints in luajit? 13:39 Calinou nope, I target 5.1+ 13:39 exio4 so it's heavily biased :P 13:39 Calinou exio4, send me a fixed version of the Lua one if you know how to do it :P 13:39 technomancy Calinou: well that would explain the speed difference 13:39 Calinou I can make a 5.3 version if needed 13:39 technomancy try pypy with floats =P 13:39 exio4 the Go code looks also wrong 13:40 exio4 Calinou: what are the first five numbers out of the go program? 13:40 exio4 3,5,7,49,49 13:41 exio4 lua ^ 13:43 Calinou 11,17,23,27,29 13:43 Calinou some numbers are missed? 13:43 exio4 27 isn't prime 13:43 Calinou and 27 isn't prime indeed 13:43 exio4 27 is 3^3 13:43 Calinou 13 is prime and not in list 13:44 exio4 I wouldn't mind primes missing, but the benchmark is just generating random numbers, which is testing how the compiler optimizes loops 13:44 Calinou do you have pointers on how to fix the Go/Lua ones? 13:45 exio4 I'd split the code first 13:46 exio4 also, printing numbers means the bottleneck may become the console 13:46 exio4 because the console is slow 13:47 technomancy especially if you add erlang to the mix 13:48 exio4 Calinou: did you try splitting the isPrime condition to a different function, and try to fix it standalone? 13:50 exio4 the smaller the function, the easier it is to fix it :) 13:51 Calinou in Go, should I use functions like_this or likeThis? 13:52 exio4 I don't know, I guess underscores are idiomatic there 13:52 Calinou looks like it should be likeThis… 13:52 Calinou https://golang.org/doc/effective_go.html#functions 13:59 exio4 Calinou: I wrote the non-idiomatic version of a prime number generator, takes a number as argument, -1 means `keep generating`, n specifies the max value, http://dpaste.com/0289NVX 14:01 Calinou quite short, but looks cryptic to me 14:01 Calinou I'm still working on Go one 14:01 Calinou starting to get the hang of Go :P 14:02 exio4 Calinou: yes, that isn't idiomatic 14:05 exio4 an idiomatic version would be something like http://dpaste.com/01BRM98 14:06 exio4 (the main difference is that the `idiomatic` one generates (a relatively-cheap yet not free) lazy list with elements, instead of "naively" going through the values 14:07 exio4 Calinou: try both on your computer, if you have some time 14:07 exio4 the non idiomatic version does hella extra work 14:08 Calinou is Haskell always that short and cryptic? 14:10 exio4 it's not cryptic :P 14:10 technomancy this one even has type annotations; those are optional 14:10 exio4 I wrote that type annotation for unboxing reasons 14:10 technomancy ah nice 14:10 CWz is it me or minecraft devs got sloppy after being purchased by microsoft? 14:11 rubenwardy example? 14:11 Calinou they were always sloppy, I guess 14:11 technomancy CWz: they weren't sloppy before? 14:11 exio4 technomancy: it'd use Integer 14:11 CWz there like 3 bug fix version releases in a row 14:12 Halamix2 http://dpaste.com/00QA7PM ? 14:12 Calinou thanks Halamix2 14:12 Calinou will test 14:12 AnotherBrick does anyone know how to contact GunshipPenguin, owner of two (or more servers) ? 14:12 rubenwardy If you build a shrine, he'll be summoned 14:13 rubenwardy !fmu GunshipPenguin 14:13 rubenwardy !fmusr GunshipPenguin 14:13 rubenwardy !help 14:13 MinetestBot https://github.com/sfan5/minetestbot-modules/blob/master/COMMANDS.md 14:13 exio4 Calinou: prime :: Int -> Bool means pretty much "prime has type Int to Bool"; then, all fn list means that the predicate `fn` must be True on `all` elements of list 14:13 rubenwardy heh, it's been removed 14:13 AnotherBrick !seen GunshipPenguin 14:13 MinetestBot AnotherBrick: Sorry, I haven't seen gunshippenguin around. 14:14 sfan5 rubenwardy: find forum user? 14:14 CWz I heard yesterday that Hungry game server was griefed 14:14 exio4 (\x -> n `mod` x /= 0) is a lambda / anonymous function, takes a y as parameter an says thatthe modulo of n % x is distinct to zero 14:14 AnotherBrick yeah 14:14 AnotherBrick that's why I'm looking for him 14:14 CWz Probably hipster trolls 14:15 exio4 2:[3,5..s] is a list that has the values 2, 3, 5, 7, ... until s 14:15 exio4 s is defined as the ceil of the square root of the number n 14:16 exio4 loop, instead, basically defines a local variable xs, if z is -1, it'll start from x, to "infinite" (x, x+1, x+2, ... x+n ...) 14:16 Calinou Halamix2, 130000 in 1 second, impressive 14:16 exio4 if it is not, it'll be a list from x to z, [x, x+1, x+2, ..., z-2, z-1, z] 14:16 Calinou I guess it's a corner case because Rust isn't that fast usually 14:16 rubenwardy !ffu GunshipPenguin 14:16 technomancy it's not? 14:16 rubenwardy ~ffu GunshipPenguin 14:17 exio4 Calinou: unboxed integers, it's also kinda fast 14:17 exio4 it has unboxed closures dammit! they must be fast! :p 14:17 Calinou btw: https://attractivechaos.github.io/plb/ 14:17 Calinou doesn't have Rust 14:17 rubenwardy https://forum.minetest.net/memberlist.php?mode=viewprofile&u=9079 14:17 rubenwardy AnotherBrick ^^ 14:17 rubenwardy AnotherBrick ^ ^ 14:18 AnotherBrick yay 14:18 AnotherBrick thx 14:18 exio4 the equivalent of loop in Haskell is either forever $ for IO actions and/or an infinite list when it comes to values 14:19 exio4 Rust mandates TCO, right? 14:19 Calinou Total Cost of Ownership? ;) 14:19 est31 no tail something optimisation 14:20 est31 so that you can replace loops with recursion 14:20 est31 and have no memory penalty 14:20 est31 nor perf penalty 14:21 rubenwardy > let 14:21 Calinou dank meme indeed, rubenwardy 14:21 Calinou 14:21 rubenwardy Well, not as bad as "otherwise! 14:21 rubenwardy * "overwise" 14:22 exio4 otherwise is just defined as True, it's for cosmetic reasons 14:22 rubenwardy in haskel? 14:22 exio4 some people call it `else` 14:22 exio4 yes rubenwardy 14:22 rubenwardy oh, that would make sence 14:22 rubenwardy *sense 14:22 exio4 guards take arbitrary expressions 14:22 rubenwardy Like NULL = 0 14:23 exio4 f | C1 = E1 | C2 = E2 | ... 14:23 exio4 Cn may be an arbitrary expression, that includes constants like `True` 14:30 exio4 Calinou: one thing, would you consider this http://dl.hugo.pro/benchmarks/prime/lua/init.lua code easy to understand if you didn't know the semantics of `while`, assignment and %? 14:31 exio4 while nb_test < 2 do, while that condition is true do this thing? while that condition is false? 14:31 exio4 %? is that modulo? integer division? 14:33 exio4 nb_test = nb_test + 1, does it changes the value up there? or.. what? 14:33 exio4 Calinou: TCO is Tail Call Optimization 14:33 exio4 Calinou: basically recursion of the form `return f(x)` gets optimized to a `jump` to f 14:35 exio4 implementing FSM is a nice usecase 14:39 est31 FSM? Arr, god is no program! 14:43 Calinou exio4, probably not 14:46 exio4 Calinou: the same goes for any language out there 14:46 exio4 Calinou: now that you know what a while loop means, understanding it becomes `trivial` (relatively), yet unknown concepts are still hard! 14:49 exio4 any language concept* 15:08 Calinou OK, my Go program is fixed thanks to palige 15:08 Calinou 70000 in 1 second 15:08 Calinou not bad 15:10 Halamix2 :) 15:11 exio4 Calinou: may you benchmark mine? also, console! 15:11 exio4 text output is a bottleneck 15:12 Calinou exio4, I use this: ./binary & sleep 1; kill binary 15:12 Calinou seems to be appropriate 15:12 exio4 uh, sleep 1 is not accurate 15:12 exio4 do it within the program, too 15:13 exio4 generate primes until 1000000 15:13 Calinou yeah that's doable too 15:13 Calinou and time it 15:13 Calinou I'd rather have something “higher is better” though 15:16 exio4 use 1/seconds for generating N primes as the score 15:16 exio4 still, you have to account the console output 15:16 exio4 console output is extremely slow 15:20 blaise wow 15:21 blaise so the plants_lib issue I was having went away when I installed VanessaEs HDX textures 15:21 blaise lmao 15:21 blaise isn't that awesome? 15:21 exio4 Calinou: also, running the benchmark 20 or 50 times, and take the average + least + max time 15:22 exio4 that's.. weird blaise 15:56 Myrl-chan Hi! 15:57 Myrl-chan I'll try to run minetest on a P4 with a VIA chipset. 16:05 blaise Myrl-chan: oh yeah? 16:06 Myrl-chan I wanna see how this works. 16:06 Myrl-chan I'll be really amazed. 16:38 Myrl-chan How do I get out of minimal development test..? 16:39 est31 you mean you want to use minetest_game? 16:39 Myrl-chan Yes. 16:39 est31 how have you obtained the engine? 16:39 Myrl-chan Through my package manager. If I understand you correctly. 16:40 Myrl-chan I pressed this button that looks like 3 axes 16:40 est31 yes 16:40 Myrl-chan And now I'm in minimal development test and I can't get out. 16:40 est31 thats minimal development test 16:40 est31 if minetest_game is installed then there is another button left to it 16:41 Myrl-chan Doesn't seem so. 16:41 est31 so you say before you wasnt in minimal development test? 16:41 Myrl-chan Yes. 16:41 est31 are you inside the singleplayer tab? 16:42 Myrl-chan Yes 16:42 est31 no buttons there? 16:43 est31 only the button with the arrows? 16:43 Myrl-chan Yeah 16:43 est31 is there a button that looks like this https://raw.githubusercontent.com/minetest/minetest/master/textures/base/pack/logo.png 16:44 Myrl-chan Nope. 16:44 Myrl-chan I guess I'll recompile it. 16:44 est31 are there games inside your "games" folder? 16:45 est31 or only minimal 16:46 Myrl-chan Only minimal. 16:46 est31 then you have to install minetest game 16:47 est31 you know how to use git? 16:48 est31 if not thats no issue 16:48 est31 just download minetest game here: https://github.com/minetest/minetest_game/archive/master.zip 16:48 Myrl-chan Yeah, I know how to use git. 16:48 Myrl-chan It isn't playable on a VIA chipset though, I think 10 FPS or so. 16:49 Myrl-chan I'll definitely be looking in this once I get a better computer though. 16:49 Myrl-chan Thanks for the support, est31. 16:52 VanessaE est31: he was in that "limbo" state when no game at all is selected. 16:53 Myrl-chan VanessaE: Yeah. 16:53 Myrl-chan I think that's it. 16:53 VanessaE a fresh install with no user preferences will put the user into that state. click the only game that's installed, and you're "stuck" there because there's no route back into "limbo" 16:53 Myrl-chan I pressed the "new game" and it had an error message. 16:54 VanessaE that's a bug for sure - the engine should auto-select a game if it's in that state. 16:54 VanessaE should be made to* 16:54 Myrl-chan Yep. 17:08 CWz oh look shadowbot is back. 17:14 * blaise hugs VanessaE 17:16 VanessaE hi 17:17 CWz VanessaE: Shadowninja is back maybe he can save inchra. probably not though if recall correctly reclaiming domains that have gone expired cost more then renewal 17:17 VanessaE CWz: that's already been fixed. 17:17 CWz inchra.net is back? 17:18 VanessaE yes 17:31 ShadowNinja CWz: It costs the same -- unless your registrar is cheating you or something. 18:15 bobomb if a node is replaced by set_node, is after_destruct() called on the old node? 18:25 VanessaE yes 18:25 VanessaE because removing a node is equal to setting it to air 19:22 bobomb is on_dig the same as on_destruct? 19:22 bobomb or is it only if a player digs the node, not if other operations remove it? 19:22 bobomb or is it not even about destroying the node, more like punching it? 19:23 VanessaE + 19:23 VanessaE oops 19:23 VanessaE it's only for when a player digs a node yeah 19:24 VanessaE a mod just doing a set_node() call won't trigger that 19:24 VanessaE (but should trigger on_destruct) 19:24 bobomb i see. thanks. 19:24 Calinou prime number generator in LuaJIT: highest number 55889 in 1 second! 19:24 Calinou this makes it close to Rust 19:24 VanessaE test for 10+ seconds 19:25 VanessaE a 1-second test isn't enough to get above margin of error. 19:27 bobomb to compare results wouldn't you compare the times it takes to get to a certain prime, not the prime you get to in a certain time? 19:27 Calinou both can be done, I think 19:27 Calinou it's just a bit simpler this way, and this way you get an “higher is better” result 19:27 Calinou instead of lower is better 19:28 bobomb if a node is registered with "drop" that replaces what it would have become in the inventory otherwise? 19:28 VanessaE yep 19:28 VanessaE but only when it's dug 19:29 bobomb of course. what's the best way to make a node drop nothing or not be in the inventory? 19:29 VanessaE that's how stone with iron gives you an iron lump on-dig, for example 19:29 bobomb right 19:29 bobomb drop = "" ? 19:30 VanessaE set, drop = "" I think 19:30 bobomb ok 19:30 VanessaE better to have it drop something that's all but useless though 19:30 Calinou when are commas mandatory in Lua? I don't get it :/ 19:30 VanessaE Calinou: because they're part of a table? 19:30 Calinou is that the only reason? 19:31 VanessaE that's the only thing they're used for afaik 19:31 kahrl between function arguments too 19:31 VanessaE oh yes 19:31 VanessaE duh :P 19:31 VanessaE Calinou: the real question is, what else would you use as a delimiter? 19:32 Calinou whitespace ( ͡° ͜ʖ ͡°) 19:32 Calinou 19:32 VanessaE newline isn't good enough because you can (and should be able to) concat between lines too 19:32 Calinou yeah, right 19:32 Calinou I'd prefer ; over , though 19:32 Calinou just like != over ~= 19:32 VanessaE actually, doesn't ; work also? 19:33 VanessaE I could swear I've seen someone using ; for table delim 19:34 VanessaE hm, only as a statement separator like in C. 19:35 VanessaE that aside, I agree that != is better than ~= 19:35 VanessaE (to me, ~= reads as "approximately equal") 19:40 Calinou same 19:40 Calinou if only languages were actually Unicode-compliant 19:41 Calinou we could write if string ≠ “Quote” 19:41 Calinou :3 19:41 Calinou imagine people wondering how to type ≠19:41 VanessaE lol 19:42 bobomb when you use table.insert in lua, what is the best way to get the key of that insert? 19:42 VanessaE that's easy.. compose, =, / --> ≠19:42 VanessaE :) 19:42 Calinou Shift + AltGr + ) here 19:42 VanessaE bobomb: it always inserts at the end of the table if you don't specify otherwise 19:42 VanessaE so #tablename will give you the index of last item in the table 19:43 VanessaE (assuming you're not working with sparse tables) 19:43 bobomb oh. is that why #tablename doesn't work when the keys are strings? 19:43 VanessaE yep 19:43 bobomb is that what sparse table means? 19:43 VanessaE not exactly 19:44 VanessaE a sparse table is one where you might have 1=foo, and then 4=bar, 5=baz and then 8=blah 19:44 VanessaE (with no 2, 3, 6, or 7) 19:44 VanessaE # just doesn't work with string-keyed tables 19:45 bobomb got it. thanks 19:45 VanessaE (for that, btw, use table.getn() ) 19:51 bobomb is there a chance that a table could have another insert done to it from another operation between the time that insert is done #table is called? 19:51 Calinou preliminary results of the prime generator: http://paste.ubuntu.com/11595216/ 19:51 Calinou Go is the fastest 19:51 bobomb why can't table.insert just return the new id 19:52 Calinou I have a C one around, but it'd be cheating since it uses GMP and a table :P 19:52 VanessaE bobomb: because it never needs to. it always inserts at the end of the table unless you explicitly give it an index location 19:52 bobomb i need more faith 19:53 VanessaE so you can use table.getn() or # as needed if you're not using a sparse table, and if you supplied an index, you already know where it went. 19:54 VanessaE nothing is going to add to or otherwise modify the table unless you coded it to do that, or you're running another mod that accesses the same table. 19:54 VanessaE (and the latter case is quite rare. I think only moreblocks+stairsplus is the only major project that relies on that) 19:57 bobomb ok. new question. does lua support this sort of thing modname.tablename[id].list[1] 19:59 VanessaE it should 20:00 VanessaE never tried burying references that deep before 20:00 VanessaE as long as every element in tablename[] has at least as many sub-elements as you call for in any one list[] argument 20:01 bobomb so setting table[k] = nil should only be done with string-keyed tables or it will create a sparse table? 20:01 bobomb otherwise use table.remove? 20:01 VanessaE i.e. if you ask for tablename[5].list[4] should exist if tablename[3].list[4] does for example. 20:02 kaeza greetings 20:02 VanessaE you can set foo[bar] = nil if you want, but it can mess up your table size expectations 20:02 VanessaE hey kaeza 20:02 VanessaE eh, that previous sentence came out weird but whatever 20:03 VanessaE bobomb: bottom line is, if you rely on the size of a table for something, and there's any chance your code will do tablename[foo] = nil where foo is not the last element in the table, use table.getn() to measure its size. 20:03 VanessaE or if the table uses string keys 20:04 VanessaE otherwise, # should be safe. 20:04 bobomb is there a built in lua function for finding a key given a value in a table? 20:04 bobomb can't find one 20:04 VanessaE not that I can recall. 20:05 VanessaE you'll have to manually traverse the table. 20:05 kaeza bobomb, easily done with a `pairs` loop, but there isn't one built-in 20:05 bobomb why i like string indexes 20:05 VanessaE string, number... use whatever indexing makes the most sense in your project :) 20:06 VanessaE plants_lib uses a position hash for its main block cache table indexes, for example. 20:06 bobomb finding i much prefer a table of cells to be built like cell_list[minetest.pos_to_string(pos)] = true to table.insert(cell_list, pos) 20:06 VanessaE and numeric indexes for the entries in those tables. 20:07 kaeza bobomb, if you can also use `hash_node_position` in that case 20:07 bobomb oh reading on that. 20:07 kaeza it returns a unique 48 bit number given a pos 20:08 VanessaE (by that I mean, blockcache[2517435].entry[1], blockcache[2517435].entry[2], blockcache[83463820].entry[1], blockcache[83463820].entry[2], etc) 20:08 kaeza (assuming you want whole nodes and not fractional positions) 20:08 bobomb yes. is it faster than pos_to_string? 20:08 bobomb and smaller i guess 20:09 kaeza probably, but you'd be better to profile if you care about performance 20:09 bobomb profile? 20:10 kaeza "time" it 20:11 bobomb oh i see. yes i will. 20:13 * blaise is back 20:24 Calinou http://dl.hugo.pro/benchmarks/ 20:30 blaise hey, uhrm 20:30 blaise has the recipe for a nuclear reactor changed? 20:33 s-l-teichmann Calinou: You should not use println() in your Go version. println() writes to stderr not stdout, its for debugging and bootstrapping http://golang.org/pkg/builtin/#println Better use Printf from the fmt package. Something like http://play.golang.org/p/ord0ljimEu 20:37 Calinou s-l-teichmann, was not aware, thanks 21:09 rjs232323 is nodeupdate function predefined natively by minetest ? 21:09 rjs232323 I see people using it, but I'm not sure what is its for 21:28 blaise hey, uhrm 21:28 blaise anyone here used the quary? 21:28 blaise the HV Quary? 21:29 blaise where is the output? 21:29 VanessaE the output comes out the top, using pipeworks tubes 21:30 VanessaE rjs232323: nodeupdate is used to force falling/attached nodes to fall if they didn't yet (e.g. sand, gravel, apples) and I think it forces a lighting update too 21:30 VanessaE it is defined in one of minetest's builtin/ lua files. 21:34 blaise cool 21:35 blaise so it fills it's hold, and then purges? if I'm reading the lua properly? 21:35 VanessaE yep, to a degree 21:35 VanessaE it's supposed to purge periodically as well 21:35 VanessaE (or I thought it did) 21:35 blaise and if not, we have popout syndrom? 21:36 VanessaE I don't remember. it probably just stops digging 21:36 blaise D: 21:53 blaise meh, I need the anchor mod 21:54 blaise :G 21:56 blaise holy crap! 21:56 blaise it's included in technic now? 21:56 blaise awesome sauce! 21:58 rjs232323 VanessaE: i see 21:58 rjs232323 I'm still suck in meta:set_string and get_string 21:58 rjs232323 there is a strange behavior with it 22:00 rjs232323 everytime I assign something to a position, it overwrite previous values on the different position... bug? 22:07 blaise VanessaE: are we able to use teleporting tubes to fuel the reactor core yet? 22:07 blaise or, any tubes? 22:10 rjs232323 http://pastebin.com/hThwsUnx Here's my finding with this strnage bug 22:10 VanessaE blaise: I don't recall. 23:23 blaise it's really too bad this never made it to github.. https://forum.minetest.net/viewtopic.php?f=11&t=4587 23:28 kaeza rjs232323, get_meta(name) ? 23:29 Niebieski I wonder if anyone has bought Minecraft and plays Minetest. 23:29 NekoGloop I play minetest occasionally 23:29 Niebieski Do you play Minecraft ? 23:30 kaeza rjs232323, what are you trying to do? 23:30 est31 blaise, I can upload it to github if you want 23:30 NekoGloop yes I play minecraft 23:31 Niebieski Why do you play Minetest then ? 23:31 kaeza rjs232323, also, you're using a colon instead of a dot in the minetest.get_meta call (it must be a period) 23:32 kaeza (line 39 in your paste) 23:32 blaise I also have minecraft 23:32 blaise and I chose minetest instead 23:32 blaise it's better 23:33 blaise I can't even play minecraft on more than half my machines 23:33 blaise it runs better, it has better graphics 23:33 blaise minetest, that is.. 23:33 blaise minecraft is a thing of the past 23:34 blaise I think it's the java that hurts it the most 23:34 blaise minetest is coded in ANSI C, if I'm not mistaken.. 23:34 est31 c++ 23:34 Niebieski C++. 23:35 est31 using stdlib, no boost nor irrlicht (for basic things like containers) 23:35 blaise not to mention, I dont condone the use of microsoft products. 23:39 rickmcfarley I played minetest before buying Minecraft, but I haven't even touched Minecraft since Microsoft bought Mojang. since then I avoid any proprietary game 23:41 Niebieski is it because you hate MS or you think that MS going to ruin it ? 23:42 rickmcfarley I hate ms 23:42 blaise Niebieski: I'm going with both 23:42 blaise option a, and option b 23:42 ADFENO Could someone point me to the so called "intllib" cited by various "depends.txt" documents found in various mods for Minetest? 23:42 rickmcfarley It taught me to distrust even nonfree games 23:42 rickmcfarley games used to be my software freedom compromise 23:42 kaeza ADFENO, https://github.com/kaeza/minetest-inrllib 23:43 kaeza eh wrong link 23:43 blaise kaeza: what are that? 23:43 kaeza https://github.com/kaeza/minetest-intllib 23:44 kaeza blaise, what is what? 23:44 ADFENO Oh, thank you very much. :D 23:44 kaeza yw 23:45 Niebieski I don't think that MS going to risk on Minecraft, they will let the developers continue their work freely. 23:47 rjs232323 Kaeza: Ah? I tho I see everyone using colon when calling meta get meta 23:47 rjs232323 Would that explain why it behaves strangely? 23:48 kaeza rjs232323, `minetest.get_meta`, not `meta:get_meta` 23:48 rjs232323 minetest:get_meta(name); 23:48 rjs232323 this is what I'm using 23:48 kaeza no 23:48 kaeza use a dot there 23:48 rjs232323 could you explain the difference between minetest:get_meta and minetest.get_meta? 23:48 rjs232323 is it a referencing thing? 23:48 kaeza in Lua, a call `foo:bar(asdf)` is syntactic sugar for `foo.bar(foo, asdf)` 23:49 rjs232323 ah 23:49 kaeza so you're basically calling `minetest.get_meta(minetest, ...) 23:49 kaeza +` 23:49 kaeza it's Lua's way to implement OO 23:50 rjs232323 ok 23:50 rjs232323 strange 23:51 kaeza you'll get used to it :) 23:51 rjs232323 I will have to change my script to dot 23:51 rjs232323 I have to cook 23:51 rjs232323 i'll be back 23:51 rjs232323 I appricate your insight, that might be the issue after all 23:51 kaeza also, you're using `name`; maybe you meant `pos` ? 23:57 est31 blaise, why would be github better than a zip file? 23:57 est31 I mean, I know its easier to update once you have a git origin