Conversation with #inferno at Mon Apr 15 13:37:00 2013 on powerman@irc.freenode.net (irc) (13:37:00) #inferno: Topic for #inferno set by mennis at 17:30:16 on 12/28/09 (15:57:27) rogpeppe left the room (quit: Read error: Connection reset by peer). (16:00:08) rogpeppe [~rog@host-92-30-213-223.as13285.net] entered the room. (16:50:47) Gegemon left the room (quit: Quit: Leaving.). (16:58:56) Aram [~aram@chello084112126145.24.11.vie.surfer.at] entered the room. (16:59:00) Aram left the room (quit: Changing host). (16:59:00) Aram [~aram@unaffiliated/aramdune] entered the room. (17:54:17) yshurik left the room (quit: Quit: Leaving.). (18:10:36) yshurik [~Adium@30.162.202.84.customer.cdi.no] entered the room. (21:00:16) qrstuv1 [root@50.122.26.216] entered the room. (21:00:20) leetspete1 left the room (quit: Ping timeout: 255 seconds). (21:01:02) jbrhee1 left the room (quit: Ping timeout: 252 seconds). (21:01:10) leetspete left the room (quit: Ping timeout: 256 seconds). (21:02:08) qrstuv left the room (quit: Ping timeout: 252 seconds). (21:02:29) kabbi [~kabbi@178.121.26.191] entered the room. (21:07:26) jbrhee [~jess@76.91.33.110] entered the room. (21:07:57) kabbi left the room (quit: Remote host closed the connection). (21:08:18) kabbi [~kabbi@178.121.26.191] entered the room. (21:15:10) leetspete [~pete@76.91.33.110] entered the room. (21:45:38) leetspete1 [~none@76.91.33.110] entered the room. (21:55:16) boredomist left the room ("ERC Version 5.3 (IRC client for Emacs)"). (22:15:05) Aram2 [~aram@chello084112126145.24.11.vie.surfer.at] entered the room. (22:15:05) Aram2 left the room (quit: Changing host). (22:15:05) Aram2 [~aram@unaffiliated/aramdune] entered the room. (22:17:23) Aram left the room (quit: Ping timeout: 256 seconds). (23:33:33) qrstuv1 left the room (quit: Ping timeout: 240 seconds). (23:34:05) qrstuv [bootes@50.122.27.230] entered the room. (23:56:55) anth_r [none@adsl-99-40-132-129.dsl.bcvloh.sbcglobal.net] entered the room. (00:29:12) kabbi left the room (quit: Remote host closed the connection). (00:29:40) kabbi [~kabbi@178.121.26.191] entered the room. (00:34:18) kabbi left the room (quit: Ping timeout: 264 seconds). (01:01:45) yshurik left the room (quit: Quit: Leaving.). (01:07:07) KBme left the room (quit: Ping timeout: 264 seconds). (01:09:42) KBme [~KBme@2001:470:cabe:dead:beef:feed:dead:beef] entered the room. (01:17:04) Aram2 left the room (quit: Remote host closed the connection). (02:03:11) dreadlorde1 [~dreadlord@35.16.34.62] entered the room. (02:23:33) dreadlorde1 left the room (quit: Ping timeout: 240 seconds). (03:35:22) qrstuv left the room (quit: Ping timeout: 251 seconds). (03:35:40) qrstuv [bootes@50.122.29.177] entered the room. (04:26:03) jbrhee left the room (quit: Quit: Leaving.). (04:26:38) jbrhee [~jess@76.91.33.110] entered the room. (06:58:21) kabbi [~kabbi@178.121.137.105] entered the room. (07:02:58) kabbi left the room (quit: Remote host closed the connection). (07:03:25) kabbi [~kabbi@178.121.137.105] entered the room. (07:03:25) iamtheric left the room (quit: Read error: Connection reset by peer). (07:03:54) iamtheric [~pi@216.186.199.70] entered the room. (07:07:54) kabbi left the room (quit: Ping timeout: 264 seconds). (07:11:17) KBme left the room (quit: Ping timeout: 245 seconds). (07:22:13) KBme [~KBme@2001:470:cabe:dead:beef:feed:dead:beef] entered the room. (08:35:59) acmeuser [~acmeuser@p5B0E36E4.dip.t-dialin.net] entered the room. (08:36:25) acmeuser left the room. (08:36:38) Gegemon [~ynv@mx1.airis.ru] entered the room. (09:41:57) kabbi [~kabbi@217.21.43.95] entered the room. (10:01:22) yshurik [~Adium@193.69.63.210] entered the room. (10:17:47) kabbi left the room (quit: Remote host closed the connection). (10:18:14) kabbi [~kabbi@217.21.43.95] entered the room. (10:22:51) kabbi left the room (quit: Ping timeout: 276 seconds). (10:45:10) Aram [~aram@chello084112126145.24.11.vie.surfer.at] entered the room. (10:45:10) Aram left the room (quit: Changing host). (10:45:10) Aram [~aram@unaffiliated/aramdune] entered the room. (12:44:23) kabbi [~kabbi@217.21.43.95] entered the room. (12:51:05) kabbi_ [~kabbi@217.21.43.95] entered the room. (12:53:18) kabbi__ [~kabbi@217.21.43.95] entered the room. (12:54:38) kabbi left the room (quit: Ping timeout: 258 seconds). (12:55:23) kabbi [~kabbi@217.21.43.95] entered the room. (12:56:16) kabbi_ left the room (quit: Ping timeout: 246 seconds). (12:57:58) kabbi__ left the room (quit: Read error: Operation timed out). (13:01:25) kabbi_ [~kabbi@217.21.43.95] entered the room. (13:03:54) kabbi__ [~kabbi@217.21.43.95] entered the room. (13:04:40) kabbi left the room (quit: Ping timeout: 246 seconds). (13:06:07) kabbi [~kabbi@217.21.43.95] entered the room. (13:07:23) kabbi_ left the room (quit: Read error: Operation timed out). (13:09:02) kabbi__ left the room (quit: Ping timeout: 252 seconds). (13:10:59) kabbi_ [~kabbi@217.21.43.95] entered the room. (13:11:13) kabbi left the room (quit: Ping timeout: 240 seconds). (13:13:23) kabbi_ left the room (quit: Remote host closed the connection). (16:55:21) Gegemon left the room (quit: Quit: Leaving.). (17:04:06) Aram left the room (quit: Remote host closed the connection). (17:04:19) Aram [~aram@chello084112126145.24.11.vie.surfer.at] entered the room. (17:04:19) Aram left the room (quit: Changing host). (17:04:19) Aram [~aram@unaffiliated/aramdune] entered the room. (17:23:09) yshurik left the room (quit: Quit: Leaving.). (18:05:24) yshurik [~Adium@30.162.202.84.customer.cdi.no] entered the room. (18:27:55) rogpeppe1 [~rog@host-92-30-206-59.as13285.net] entered the room. (18:28:03) rogpeppe left the room (quit: Ping timeout: 245 seconds). (18:36:22) rogpeppe2 [~rog@host-92-30-166-239.as13285.net] entered the room. (18:36:27) iamtheric left the room (quit: Remote host closed the connection). (18:36:50) rogpeppe1 left the room (quit: Ping timeout: 252 seconds). (18:41:19) iamtheric [~pi@216.186.199.70] entered the room. (18:48:19) rogpeppe2 is now known as rogpeppe (18:54:39) rogpeppe left the room (quit: Read error: Operation timed out). (18:55:47) rogpeppe [~rog@host-92-30-209-117.as13285.net] entered the room. (22:02:16) dreadlorde left the room (quit: ). (00:47:11) vsrinivas [U2FsdGVkX1@batman.acm.jhu.edu] entered the room. (00:58:12) dreadlorde [~dreadlord@35.16.45.143] entered the room. (02:05:13) dreadlorde left the room (quit: Ping timeout: 240 seconds). (02:11:35) vsrinivas left the room (quit: Ping timeout: 256 seconds). (02:12:00) vsrinivas [U2FsdGVkX1@batman.acm.jhu.edu] entered the room. (02:16:51) yshurik left the room (quit: Quit: Leaving.). (02:27:12) yshurik [~Adium@30.162.202.84.customer.cdi.no] entered the room. (02:32:30) Aram left the room (quit: Remote host closed the connection). (02:38:47) yshurik left the room (quit: Quit: Leaving.). (04:01:32) rogpeppe left the room (quit: Ping timeout: 255 seconds). (04:01:35) rogpeppe1 [~rog@host-92-30-136-43.as13285.net] entered the room. (04:11:07) iamtheric left the room (quit: Remote host closed the connection). (05:35:10) dreadlorde [~dreadlord@c-68-42-82-10.hsd1.mi.comcast.net] entered the room. (06:08:15) rogpeppe2 [~rog@host-92-23-112-31.as13285.net] entered the room. (06:08:21) rogpeppe1 left the room (quit: Ping timeout: 248 seconds). (09:05:03) Gegemon [~ynv@mx1.airis.ru] entered the room. (10:01:08) yshurik [~Adium@193.69.63.210] entered the room. (11:22:30) rogpeppe2 left the room (quit: Ping timeout: 245 seconds). (12:24:31) rogpeppe2 [~rog@212.183.128.189] entered the room. (12:41:09) dreadlorde left the room (quit: Ping timeout: 256 seconds). (13:13:23) rogpeppe2 is now known as rogpeppe (14:52:52) Aram [~aram@chello084112126145.24.11.vie.surfer.at] entered the room. (14:52:52) Aram left the room (quit: Changing host). (14:52:52) Aram [~aram@unaffiliated/aramdune] entered the room. (15:16:50) yshurik left the room (quit: Ping timeout: 252 seconds). (15:22:10) yshurik [~Adium@193.69.63.210] entered the room. (16:01:59) yshurik1 [~Adium@193.69.63.210] entered the room. (16:04:14) yshurik left the room (quit: Ping timeout: 272 seconds). (17:00:48) Gegemon left the room (quit: Quit: Leaving.). (17:03:21) rogpeppe1 [~rog@host-92-23-120-105.as13285.net] entered the room. (17:07:19) rogpeppe left the room (quit: Ping timeout: 256 seconds). (17:33:40) Aram left the room (quit: Remote host closed the connection). (17:35:09) yshurik1 left the room (quit: Quit: Leaving.). (17:38:46) Aram [~aram@chello084112126145.24.11.vie.surfer.at] entered the room. (17:38:46) Aram left the room (quit: Changing host). (17:38:46) Aram [~aram@unaffiliated/aramdune] entered the room. (17:51:53) yshurik [~Adium@30.162.202.84.customer.cdi.no] entered the room. (18:51:41) teste_ [59b45ff3@gateway/web/freenode/ip.89.180.95.243] entered the room. (18:51:50) teste_: ping (18:52:02) powerman: pong (18:52:48) teste_: hello, kind of new to the whole irc thing (18:53:00) teste_: how does one go about registering an username? (18:54:00) powerman: teste_: usual way. google. read how to do it. do it. :) (18:54:10) teste_: fair enough (19:02:56) teste_: ok got it thanks (19:03:08) teste_: stupid thing was buried in the faqs (19:03:25) teste_: got too much used to a homepage 'sign in' button (19:26:18) teste_ left the room (quit: Ping timeout: 245 seconds). (20:22:55) vsrinivas left the room (quit: Ping timeout: 245 seconds). (20:32:39) vsrinivas [U2FsdGVkX1@batman.acm.jhu.edu] entered the room. (20:53:34) fdd left the room (quit: Ping timeout: 246 seconds). (22:28:53) Aram2 [~aram@chello084112126145.24.11.vie.surfer.at] entered the room. (22:28:54) Aram2 left the room (quit: Changing host). (22:28:54) Aram2 [~aram@unaffiliated/aramdune] entered the room. (22:30:52) Aram left the room (quit: Ping timeout: 245 seconds). (22:43:46) Aram2 is now known as Aram (23:06:21) dreadlorde [~dreadlord@c-68-42-82-10.hsd1.mi.comcast.net] entered the room. (23:15:45) anth_x [~a@adsl-99-40-132-132.dsl.bcvloh.sbcglobal.net] entered the room. (00:05:51) fdd [~fdd@unaffiliated/fdd] entered the room. (02:17:49) yshurik left the room (quit: Quit: Leaving.). (02:34:41) rogpeppe1 left the room (quit: Remote host closed the connection). (02:51:38) Aram left the room (quit: Remote host closed the connection). (03:22:14) Aram [~aram@chello084112126145.24.11.vie.surfer.at] entered the room. (03:22:14) Aram left the room (quit: Changing host). (03:22:14) Aram [~aram@unaffiliated/aramdune] entered the room. (03:30:50) Aram left the room (quit: Ping timeout: 256 seconds). (05:09:26) iamtheric [~pi@216.186.199.70] entered the room. (08:25:24) vsrinivas left the room (quit: Ping timeout: 245 seconds). (08:26:06) vsrinivas [U2FsdGVkX1@batman.acm.jhu.edu] entered the room. (09:52:38) yshurik [~Adium@193.69.63.210] entered the room. (10:25:21) rogpeppe1 [~rog@212.183.128.189] entered the room. (11:04:13) iamtheric left the room (quit: Read error: Connection reset by peer). (11:04:54) iamtheric [~pi@216.186.199.70] entered the room. (12:38:39) rogpeppe1 left the room (quit: Quit: Konversation terminated!). (12:38:43) rogpeppe2 [~rog@212.183.128.189] entered the room. (13:26:49) Aram [~aram@chello084112126145.24.11.vie.surfer.at] entered the room. (13:26:50) Aram left the room (quit: Changing host). (13:26:50) Aram [~aram@unaffiliated/aramdune] entered the room. (14:27:48) rogpeppe2 left the room (quit: Ping timeout: 256 seconds). (14:34:18) rogpeppe2 [~rog@212.183.128.189] entered the room. (16:05:17) yshurik left the room (quit: Quit: Leaving.). (16:35:13) yshurik [~Adium@30.162.202.84.customer.cdi.no] entered the room. (18:16:40) dreadlorde left the room (quit: Ping timeout: 246 seconds). (18:35:34) rogpeppe3 [~rog@212.183.128.68] entered the room. (18:36:05) rogpeppe2 left the room (quit: Ping timeout: 248 seconds). (18:42:53) dreadlorde [dreadlorde@c-68-42-82-10.hsd1.mi.comcast.net] entered the room. (18:44:56) yshurik left the room (quit: Quit: Leaving.). (19:10:02) rogpeppe3 is now known as rogpeppe (20:06:02) yshurik [~Adium@30.162.202.84.customer.cdi.no] entered the room. (20:29:56) dreadlorde left the room (quit: Ping timeout: 260 seconds). (20:45:35) rogpeppe left the room (quit: Ping timeout: 256 seconds). (21:05:49) fdd left the room (quit: Ping timeout: 245 seconds). (22:15:58) yshurik1 [~Adium@30.162.202.84.customer.cdi.no] entered the room. (22:15:58) yshurik left the room (quit: Read error: Connection reset by peer). (22:27:08) quadrocube [~quadrocub@178.120.84.131] entered the room. (23:08:38) anth_r left the room (quit: Read error: Connection reset by peer). (23:19:50) quadrocube left the room (quit: Quit: Leaving). (23:41:30) anth_r [none@adsl-99-40-132-129.dsl.bcvloh.sbcglobal.net] entered the room. (23:44:40) quadrocube [~quadrocub@178.120.84.131] entered the room. (23:54:31) fdd [~fdd@2a02:2f0e:404f:ffff::bc18:4707] entered the room. (23:54:31) fdd left the room (quit: Changing host). (23:54:31) fdd [~fdd@unaffiliated/fdd] entered the room. (00:12:36) yshurik1 left the room (quit: Quit: Leaving.). (00:16:01) quadrocube left the room (quit: Quit: Leaving). (01:52:38) iamtheric left the room (quit: Read error: Connection reset by peer). (01:53:45) iamtheric [~pi@216.186.199.70] entered the room. (03:15:37) Aram left the room (quit: Remote host closed the connection). (08:58:06) rogpeppe [~rog@host-92-30-165-88.as13285.net] entered the room. (09:25:28) Gegemon [~ynv@mx1.airis.ru] entered the room. (09:45:14) rogpeppe1 [~rog@212.183.128.72] entered the room. (09:48:48) rogpeppe left the room (quit: Ping timeout: 264 seconds). (10:03:18) yshurik [~Adium@193.69.63.210] entered the room. (10:28:46) iamtheric left the room (quit: Read error: Connection reset by peer). (10:29:25) iamtheric [~pi@216.186.199.70] entered the room. (11:39:06) rogpeppe1 is now known as rogpeppe (12:55:17) iamtheric left the room (quit: Read error: Connection reset by peer). (12:56:04) iamtheric [~pi@216.186.199.70] entered the room. (16:28:00) Gegemon left the room (quit: Quit: Leaving.). (17:25:16) yshurik left the room (quit: Quit: Leaving.). (17:45:29) yshurik [~Adium@30.162.202.84.customer.cdi.no] entered the room. (20:02:20) tarantulaweb [~tarantula@ip-62-235-243-167.dsl.scarlet.be] entered the room. (20:02:25) tarantulaweb: hello? (20:02:43) tarantulaweb: there is no iso on the page anymore or am I stupid? (20:02:49) tarantulaweb: download page* (20:03:18) qrstuv: why would you want an iso? (20:03:51) qrstuv: use the tgz or mercurial (20:04:24) tarantulaweb: does that create a boot cd though? (20:04:35) tarantulaweb: i wanna install it natively (20:08:17) tarantulaweb: so I can't do that anymore or what? (20:08:38) qrstuv: you're probably confused and are thinking of plan 9 (20:10:05) leetspete1: tarantulaweb: You can run it natively, but you might have a worse time. (20:10:37) tarantulaweb: i thought it clearly says inferno can be run stand a lone? (20:10:48) leetspete1: BLS had a live CD that I think I can dig up if you really want that, but I think for the sake of device drivers, you might be happier having it hosted. (20:10:50) tarantulaweb: is it always just an app? (20:11:13) tarantulaweb: natively it runs faster though right ? (20:11:25) qrstuv: no (20:11:53) qrstuv: and you don't care about speed to begin with (20:12:05) leetspete1: -c1 makes it go faster. ☺ (20:13:11) anth_r: tarantulaweb: you can run it native. it might be marginally faster. (20:13:37) anth_r: but it's almost certainly not worth doing so on a PC (which I assume you're talking about if you're talking about a boot ISO) unless you're going to deploy it that way. (20:13:59) tarantulaweb: hmm (20:14:25) tarantulaweb: whats the best native system (20:14:31) tarantulaweb: to run across all my machines (20:14:43) tarantulaweb: i got old pcs and some powerpc and intel macs (20:14:58) tarantulaweb: pc best one is a dual core (20:15:09) tarantulaweb: with regards to then running inferno on them (20:15:16) tarantulaweb: obv (20:15:42) anth_r: inferno won't run native on your macs anyway. and it won't care about what's below it. (20:15:56) anth_r: we'll run on both OS X and linux on that mac hardware. (20:16:06) tarantulaweb: fair enough (20:16:10) leetspete1: For some reason, Inferno video is crushingly slow on Plan 9, but you can do more fun stuff with the network. (20:16:12) anth_r: or a BSD. whatever you want, really. (20:16:28) tarantulaweb: but if I were to choose a single os to be the host on all what should it be? (20:17:01) anth_r: ugh. if you really nif you really need it to be a single host OS i'd probably look at netbsd. (20:17:07) tarantulaweb: any suggestions ? (20:17:26) tarantulaweb: netbsd huh .. i had a look at that (20:18:00) leetspete1: NetBSD is cool. I'm running it on top of CRUX most places in the house. (20:19:24) leetspete1: I have a solitary, ancient $10 machine running XP that I stuffed Inferno onto in order to be able to access it remotely. (20:21:06) rogpeppe left the room (quit: Ping timeout: 256 seconds). (20:24:27) tarantulaweb: is it easy to get to know inferno (20:25:08) tarantulaweb: and can you give me some examples of things that you find really useful that it does (20:30:50) leetspete1: It's easy if you're cool with being a little hands-on, and if you're ready for everything you know to have been wrong. (20:31:38) tarantulaweb: i love those sorts of things (20:31:45) leetspete1: Excellent! ☺ (20:31:46) tarantulaweb: does it do anything other apps don't? (20:32:29) leetspete1: Well, for example, it's easier to do network-y stuff with it. (20:32:47) leetspete1: It's almost worth running *entirely* for listen(1). ☺ (20:34:07) leetspete1: Limbo's a very good language to use. (20:35:54) anth_r: i use it almost entirely for limbo (but then, i'm mostly building on plan9, not unix) (21:39:05) Fish left the room (quit: Quit: WeeChat 0.4.0). (21:41:04) tarantulaweb: why limbo? (21:41:56) anth_r: first and foremost, the threading model and inter-process communication over channels is wonderful. (21:42:11) anth_r: i also find the syntax really comfortable. (21:43:06) tarantulaweb: what about erlang? (21:44:41) qrstuv: limbo's module syntax is awful without imports (21:45:39) tarantulaweb: ever heard of erlang? (21:47:08) anth_r: qrstuv: maybe, but we *have* import. (21:47:29) anth_r: i quite like the compromise. (21:47:37) anth_r: tarantulaweb: yes, i have. (21:47:38) tarantulaweb: ? (21:47:55) qrstuv: yeah, but it just gives you a flat namespace like c again (21:48:06) tarantulaweb: what do you mean ? (21:48:29) anth_r: tarantulaweb: i mean: yes, i have heard of erlang. (21:48:47) anth_r: qrstuv: right, except with imports. maybe i'm missing what your'e saying. (21:48:53) tarantulaweb: not you .. qrstuv what does he mean "gives you a flat namespace" (22:16:31) powerman: qrstuv: at first I also feel uncomfortable with limbo's import, but later I realize I actually like that (22:16:55) powerman: in other languages we usually import a lot of things by default (22:18:04) qrstuv: it sucks when you have a 2d Draw->Point and your own 3d point (22:18:23) powerman: in limbo I tend to import just one function (sprint) (22:18:51) anth_r: qrstuv: but that's why you don't import most things. (22:19:14) qrstuv: and then you're stuck with the clumsy syntax (22:20:33) powerman: because it used a lot everywhere as least to format error and log messages (22:30:06) anth_r: i don't find the syntax clumsy, and i like that it defaults to being explicit. (22:30:12) anth_r: i guess the first part of that might just be taste. (22:34:18) powerman: limbo syntax isn't concise, but it's really simple. both these characteristics adds to code readability, in different ways of course (22:34:55) powerman: when you keep your code simple, there won't be a lot of it. and in this case simple syntax result in better readability than concise (22:36:12) powerman: when your code is complicated, you can try to hide this fact using clever concise syntax provided by many languages, but… you just hiding complexity, not fight it. and it will hit your back anyway sometime later (22:36:39) tarantulaweb: and may I ask what do you guys program in limbo (22:36:43) tarantulaweb: made anything useful ? (22:37:46) powerman: I do network services used in commercial production system on a cluster of several servers. TCP/RPC things, streaming/processing data like pipes, etc. (22:38:58) qrstuv: p: Draw->Point; (22:38:58) qrstuv: r = p->(Draw->Point).add(q); (22:39:28) qrstuv: you already know that p is a Draw->Point, so why do i have to type it every time i want to access it? (22:39:29) tarantulaweb: cool (22:41:37) powerman: qrstuv: p.add(q) doesn't work? (22:42:19) qrstuv: not if you don't Point: import Draw or whatever (22:42:26) qrstuv: i forget the exact rules (22:42:53) powerman: and you can't import Point because it's already exported? by which module? (22:43:04) qrstuv: http://www.vitanuova.com/inferno/papers/limbo.html (22:43:10) qrstuv: grep for Linear->Vector (22:46:08) powerman: qrstuv: I didn't see any module which export Point adt except Draw (22:46:21) qrstuv: imagine i wanted to define one (22:46:41) powerman: just did it. rename it. :) (22:46:43) qrstuv: like for 3d drawing or for serious mathematics (22:46:49) powerman: name it Point3D (22:47:02) qrstuv: so then you have a flat namespace again (22:47:27) anth_r: it's not a flat namespace - you're just moving things around. (22:51:43) powerman: qrstuv: everything is flat in this sense. you can't create file named "/usr" on any *nix. you can't name your app "limbo" and "mk" or chances are you won't be able to compile it after that. you can't have two independent values in single var. (22:52:18) powerman: just don't do bad things to yourself, especially without very good reason (22:52:40) powerman: and no, I wanna name it "X" and only "X" isn't good reason (22:53:29) qrstuv: dude what (23:15:44) dreadlorde [~dreadlord@c-68-42-82-10.hsd1.mi.comcast.net] entered the room. (23:20:55) rogpeppe [~rog@host-92-30-190-142.as13285.net] entered the room. (23:22:43) dreadlorde left the room (quit: Ping timeout: 264 seconds). (23:25:42) powerman: qrstuv: as for your example, it's wrong: p's type is Draw->Point, which is adt, not module, so "p->" is just wrong, it should be "p." (23:25:42) powerman: next, declaration "p: Draw->Point" isn't enough to start using "p" as is, because there are may be many instances of Draw module loaded, and you didn't define which instance should be used for "p". keeping in mind each instance may have different global vars (i.e. state) and work differently you really need to define it. So, this works: (23:25:42) powerman: p := draw->Point(1,1); (23:25:42) powerman: p = draw->p.add( p ); (23:27:21) tarantulaweb_ [~tarantula@ip-62-235-252-21.dsl.scarlet.be] entered the room. (23:27:55) tarantulaweb left the room (quit: Ping timeout: 245 seconds). (23:27:55) tarantulaweb_ is now known as tarantulaweb (00:34:11) yshurik: Oh! Finally hot discussions on inferno channel (and I missed it) (00:38:20) tarantulaweb left the room (quit: Quit: tarantulaweb). (00:45:15) qrstuv1 [bootes@50.122.28.120] entered the room. (00:45:20) qrstuv left the room (quit: Ping timeout: 252 seconds). (01:10:44) qrstuv1 is now known as qrstuv (01:50:58) yshurik left the room (quit: Quit: Leaving.). (02:30:22) leetspete1: I didn't know about "draw->p.add(p)". That actually makes a lot of sense. (02:30:37) leetspete1: It'll save me importing some stuff I don't care to import, besides. (02:31:40) powerman: there may be some cases when ugly "draw->(Draw->Point)" snippet will be actually needed, but not in this case (02:32:09) leetspete1: That'd just be declarations, right? (02:32:36) leetspete1: It's ugly, but it makes sense. (02:34:25) powerman: when Point adt not imported variable "p" contain data in Data->Point format, and that data can be accessed using just "p" (02:34:25) powerman: but when you try to call some method on "p" you have to define which module handler (of type Draw) should be used (02:34:46) powerman: so you have to use "draw->p" instead of just "p" (02:35:00) qrstuv: but i don't see how that isn't already known from just the variable name (02:35:34) powerman: qrstuv: adt is just a tuple. which module handler should be used to call method on tuple (1,1)? (02:36:12) qrstuv: p: draw->Point answers that question (02:36:16) powerman: Draw->Point is just a description of adt format. It doesn't tied to any module handler. (02:36:47) powerman: nope, sadly. draw->Point and Draw->Point are the same thing (02:37:10) powerman: because adt isn't a value (02:37:49) powerman: you can't access module public/global variables using module type "Draw" - you can access them only using module hanlder "draw" (02:38:10) qrstuv: that's what i said (02:38:16) qrstuv: p: draw->Point; (02:38:24) powerman: but you can access non-variable things like adt types or constant values using both module handler "draw" and module type "Draw" (02:38:38) qrstuv: where draw := load Draw Draw->PATH; or whatever the syntax is (02:39:58) powerman: qrstuv: there is no magic. draw->Point is exactly same as Draw->Point - both are just adt, not tied to any module handler (02:41:12) powerman: and any adt-type variable in your code, no matter did you imported anything or not, are just a tuple - NOT tied to any module handler (02:41:37) powerman: with import you can tie some adt-types to some concrete module handlers (02:42:27) powerman: types, not variables of these types! (02:44:15) powerman: Point: import draw; (02:44:15) powerman: draw := load Draw Draw->PATH; (02:44:15) powerman: draw2 := load Draw Draw->PATH; (02:44:15) powerman: p := Point.new(); # draw used to call Point.new() (02:44:15) powerman: p.add(); # draw used to call Point.add() (02:44:15) powerman: draw2->p.add(); # draw2 used to call Point.add() (02:45:42) powerman: you see, p doesn't really tied to draw or draw2. import just define default module handler to use on variables of type Draw->Point, but variables of that type is just a tuple and doesn't really tied to any handler (04:21:12) tarantulaweb [~tarantula@ip-62-235-252-21.dsl.scarlet.be] entered the room. (05:05:26) tarantulaweb left the room (quit: Ping timeout: 255 seconds). (06:15:12) anth_r left the room (quit: *.net *.split). (06:15:12) anth_x left the room (quit: *.net *.split). (06:20:09) anth_r [none@adsl-99-40-132-129.dsl.bcvloh.sbcglobal.net] entered the room. (06:20:09) anth_x [~a@adsl-99-40-132-132.dsl.bcvloh.sbcglobal.net] entered the room. (09:52:55) acmeuser [~acmeuser@c-88d471d5.73-0015-74657210.cust.bredbandsbolaget.se] entered the room. (09:53:22) acmeuser left the room. (09:59:21) yshurik [~Adium@30.162.202.84.customer.cdi.no] entered the room. (10:09:30) iamtheric left the room (quit: Read error: Connection reset by peer). (10:10:12) iamtheric [~pi@216.186.199.70] entered the room. (11:04:24) rogpeppe left the room (quit: Quit: Konversation terminated!). (12:42:27) rogpeppe [~rog@host-92-30-190-142.as13285.net] entered the room. (14:47:24) Aram [~aram@chello084112126145.24.11.vie.surfer.at] entered the room. (14:47:25) Aram left the room (quit: Changing host). (14:47:25) Aram [~aram@unaffiliated/aramdune] entered the room. (16:00:39) fdd left the room (quit: Quit: cat came back from Berkeley waving flags.). (16:36:16) iamtheric left the room (quit: Read error: Connection reset by peer). (16:36:49) iamtheric [~pi@216.186.199.70] entered the room. (16:45:40) vsrinivas left the room (quit: Ping timeout: 256 seconds). (16:49:32) vsrinivas [U2FsdGVkX1@batman.acm.jhu.edu] entered the room. (16:50:02) Aram: leetspete: is _why's discourse supposed to be almost unreadable? (16:50:12) Aram: or is there something wrong with my browser? (18:45:32) vsrinivas left the room (quit: Ping timeout: 256 seconds). (18:47:49) vsrinivas [U2FsdGVkX1@batman.acm.jhu.edu] entered the room. (20:48:48) vsrinivas left the room (quit: Ping timeout: 256 seconds). (20:54:06) vsrinivas [U2FsdGVkX1@batman.acm.jhu.edu] entered the room. (20:55:02) iamtheric left the room (quit: Read error: Connection reset by peer). (20:55:14) iamtheric [~pi@216.186.199.70] entered the room. (21:06:56) fgudin left the room (quit: Ping timeout: 256 seconds). (21:08:40) fgudin [fgudin@odin.sdf-eu.org] entered the room. (21:15:42) vsrinivas left the room (quit: Ping timeout: 264 seconds). (21:18:01) vsrinivas [U2FsdGVkX1@batman.acm.jhu.edu] entered the room. (21:25:00) leetspete1: Aram: That was the result of a bug or user error or something in someone's conversion of the printer queue. I liked it more than the high-quality ones. (21:25:37) leetspete1: The PDF's more readable. (21:28:02) leetspete1: This version looks like a faded, badly Xerox'd scrawl. (21:42:39) anth_r left the room (quit: Ping timeout: 256 seconds). (21:43:13) anth_x left the room (quit: Ping timeout: 256 seconds). (22:10:02) iamtheric left the room (quit: Read error: Connection reset by peer). (22:10:42) iamtheric [~pi@216.186.199.70] entered the room. (22:40:53) vsrinivas left the room (quit: Ping timeout: 248 seconds). (22:45:30) vsrinivas [U2FsdGVkX1@batman.acm.jhu.edu] entered the room. (23:00:44) anth_x [~a@adsl-99-40-132-132.dsl.bcvloh.sbcglobal.net] entered the room. (23:54:02) anth_r [none@99.40.132.129] entered the room. (01:00:06) fdd [~fdd@2a02:2f0e:401f:ffff::bc18:47b0] entered the room. (01:00:06) fdd left the room (quit: Changing host). (01:00:06) fdd [~fdd@unaffiliated/fdd] entered the room. (01:03:03) Aram left the room (quit: Remote host closed the connection). (02:05:13) yshurik left the room (quit: Quit: Leaving.). (05:21:06) qrstuv left the room (quit: Read error: Operation timed out). (05:23:21) qrstuv [bootes@50.122.28.120] entered the room. (05:51:36) iamtheric left the room (quit: Read error: Connection reset by peer). (05:52:31) iamtheric [~pi@216.186.199.70] entered the room. (08:31:23) qrstuv left the room (quit: Read error: Operation timed out). (08:33:34) qrstuv [root@50.122.28.120] entered the room. (10:18:37) yshurik [~Adium@30.162.202.84.customer.cdi.no] entered the room. (11:18:33) vsrinivas left the room (quit: Ping timeout: 240 seconds). (11:26:36) vsrinivas [U2FsdGVkX1@batman.acm.jhu.edu] entered the room. (11:36:05) Fish [~Fish@ARennes-752-1-27-141.w90-32.abo.wanadoo.fr] entered the room. (11:43:24) powerman left the room (quit: Ping timeout: 264 seconds). (11:43:24) The account has disconnected and you are no longer in this chat. You will automatically rejoin the chat when the account reconnects.