00:05:30  * alejandromgquit (Ping timeout: 255 seconds)
00:06:17  * alejandromgjoined
00:52:30  * mctpart
00:54:38  <alejandromg>BTW Loving the new updates. Good job indutny
02:27:24  * mralephquit (Quit: Leaving.)
04:06:39  <indutny_sleeping>alejandromg: thanks
04:07:03  <alejandromg>np
04:21:30  <indutny_sleeping>creationix: yt?
04:21:49  <indutny_sleeping>nick indutny
04:21:52  * indutny_sleepingchanged nick to indutny
04:21:55  <indutny>oops
04:59:28  * bradleymeckjoined
05:31:17  <indutny>bradleymeck: hey man
05:31:26  <bradleymeck>yo
05:31:44  <indutny>bradleymeck: check out debugging cli for candor
05:31:58  <indutny>just pull the master and do make -j 4 ARCH=x64 test
05:32:02  <indutny>you'll get 'cand' binary
05:33:18  <bradleymeck>a full debugger?
05:33:35  <bradleymeck>haha no repl and you have a debugger, thats going to make me chuckle for a while
05:34:34  <indutny>bradleymeck: haha
05:34:44  <indutny>bradleymeck: no, that's like ./node
05:34:47  <indutny>but without repl
05:34:56  <indutny>it'll load script and run it
05:34:57  <bradleymeck>mm doesnt run
05:35:02  <bradleymeck>or sec
05:35:17  <bradleymeck>whats a function to print?
05:35:23  <indutny>bradleymeck: one sec
05:35:26  <indutny>pull latest changes
05:36:03  <indutny>./cand test/functional/basics.can
05:36:13  <bradleymeck>no printing, reading the code
05:36:18  <indutny>yes
05:36:27  <indutny>no prints but you can insert print("anything") in that script
05:36:35  <indutny>it's not a demo
05:36:41  <indutny>just a test
05:36:52  <bradleymeck>oooo, it works!
05:37:06  <indutny>yes ))
05:37:15  <indutny>now people can experiment with code
05:37:15  <indutny>:D
05:37:22  <bradleymeck>im going to have to find some time after the haibu stuff to see if i can setup a terrible repl via a browser
05:37:38  <indutny>repl for what?
05:38:01  <bradleymeck>meh, just let ppl see it run on a vm instead of using candor.js
05:38:12  <indutny>heh
05:38:26  <indutny>I think candor.js is not mature enough
05:38:36  <bradleymeck>probably a waste of an hour but its just 1 hour to make probably
05:38:38  <indutny>actually, I don't think it can transcompile anything so far
05:39:01  <indutny>bradleymeck: but that kind of repl would be good to have
05:39:38  <bradleymeck>indutny does it have a dynamic compilation function and readline function available in this `cand`?
05:40:25  <indutny>bradleymeck: candor itself has API for dynamic compilcation
05:40:30  <indutny>compilatio
05:40:35  <indutny>but no readline
05:40:41  <indutny>and I'm not sure if that possible
05:40:47  <indutny>that `scope` stuff breaks things a little
05:41:00  <bradleymeck>i don't want access to local scope
05:41:08  <indutny>but you will want to access global
05:41:12  <indutny>like print, assert
05:41:26  <indutny>so in your repl you can prepend typed commands with "scope print, assert"
05:41:33  <indutny>that should work
05:41:35  <bradleymeck>indutny, i was just going to prefix stuff with strings for now
05:41:38  <bradleymeck>yea
05:41:50  <indutny>cool!
05:41:58  <indutny>looking forward to see anything
05:42:16  <indutny>I'll try make decrementing array length for now :D
05:42:19  <bradleymeck>going to see if i can use libuv probably tuesday, since its xplatform
05:42:34  <bradleymeck>no negatives in my array indices :(
05:42:47  <bradleymeck>or just resizing?
05:43:08  <indutny>bradleymeck: what do you mean by no negatives?
05:43:15  <indutny>you should be able to use negative indexes
05:44:53  <bradleymeck>negative indices are unhappy when you do a reverse for loop
05:45:38  <indutny>bradleymeck: sorrry, can't understand. can you give an example?
05:45:57  <bradleymeck>indutny im half asleep, but ruby made me hate negative indices
05:46:29  <indutny>ah
05:46:33  <indutny>got ya
05:46:33  <indutny>ok
05:46:42  <indutny>I think candor will support them, sorry
05:46:45  <bradleymeck>had something like for(i=0; ...; i--) and was testing if a sparse array had stuff at indices, -1 had junk
05:46:53  <bradleymeck>made my cry
05:46:59  <bradleymeck>made me*
05:47:17  <indutny>where?
05:47:19  <indutny>in candor?
05:47:22  <bradleymeck>in ruby
05:47:24  <indutny>aah
05:47:25  <indutny>:)
05:48:10  <bradleymeck>i=length not i=0 ... ugg imma go sleep
05:48:30  * bradleymeckquit (Quit: Leaving)
06:52:36  * alejandromgquit (Quit: leaving)
06:53:09  <indutny>yeah, straight-forward repl just landed :)
06:53:18  <indutny>no multi-line stuff so far, but anyway
07:12:07  * phuujoined
07:19:02  <indutny>phuu: hey man
07:19:21  <phuu>indutny: hey
07:20:02  <phuu>how's it going?
07:20:22  <indutny>phuu: fine!
07:20:34  <indutny>phuu: do you still have time and urge to help this project?
07:21:55  <phuu>i do, but I don't think i've got the skills! i want to throw myself into this kind of lower level development (i'm a web guy mostly), but i think i might have gone too deep too early.
07:22:04  <indutny>heh
07:22:06  <indutny>np
07:22:15  <indutny>there're some stuff that you probably can try to do:
07:22:37  <indutny>* improve repl: multiline commands, and other awesomeness
07:22:47  <indutny>* document API (i.e. include/candor.h)
07:23:06  <indutny>if you can help me with that - I'll be really glad
07:24:00  <phuu>yeah great, i'll give it a go, i just might need a bit of assistance in places
07:24:22  <indutny>np
07:24:38  <indutny>just ping me, and if I'm around - I'll definitely give you some advices
07:25:05  <phuu>awesome thanks
07:25:22  <phuu>what environment are you developing it in?
07:26:31  <indutny>phuu: osx/x64
07:26:42  <indutny>phuu: vim
07:26:47  <indutny>not sure what are you asking :)
07:26:54  <phuu>exactly that :)
07:30:12  <phuu>do I need anything extra to get started?
07:30:52  <indutny>phuu: man readline :)
07:31:03  <indutny>phuu: no dependencies are needed
07:31:10  <indutny>phuu: just run make ARCH=x64 test
07:31:21  <indutny>phuu: and you'll get `cand` binary
07:32:56  <phuu>segfault :)
07:33:12  <phuu>i could run that yesterday fine though
07:34:47  <indutny>phuu: hm...
07:34:51  <indutny>phuu: what is your env?
07:35:29  <phuu>same as you
07:36:16  <indutny>odd
07:36:22  <indutny>ah
07:36:27  <indutny>make -B ARCH=x64 teset
07:36:31  <indutny>s/teset/test/g
07:36:53  <phuu>it's working now - i wiped the directory and cloned
07:36:54  <indutny>oh, I'll definitely will need to port it to gyp one day
07:37:01  <indutny>-B does almost he same thing :)
07:37:05  <phuu>hah ok
07:37:09  <indutny>it's for rebuilding everything
07:38:17  <phuu>ah ok. got the repl up but got a parser error. i g2g, thanks for your help
07:38:20  * phuuquit (Quit: phuu)
09:28:21  * phuujoined
09:31:50  * phuuquit (Client Quit)
09:35:01  * phuujoined
09:40:05  * phuu_joined
09:40:05  * phuuquit (Read error: Connection reset by peer)
09:40:05  * phuu_changed nick to phuu
09:40:28  * phuuquit (Client Quit)
09:58:39  * phuujoined
10:00:10  * phuu_joined
10:00:10  * phuuquit (Read error: Connection reset by peer)
10:00:10  * phuu_changed nick to phuu
10:01:06  <indutny>woot
10:01:13  <indutny>candor is faster than v8 on one simple loop
10:01:31  <indutny>that's w/o optimizations, of course
10:01:46  <indutny>if v8 will optimize that loop, it'll beat candor
10:04:40  * phuu_joined
10:04:41  * phuuquit (Read error: Connection reset by peer)
10:04:41  * phuu_changed nick to phuu
10:21:22  * phuuquit (Quit: phuu)
10:27:40  * phuujoined
11:19:22  <indutny>[[B[A[A[A[A[A[A[A[A[A[A[A[D[D[Bdd[C[Cffffff
11:20:43  <indutny>ooops
11:35:41  <indutny>phuu: btw, there're one more thing that candor needs
11:35:50  <indutny>phuu: a lot of .can tests in test/functional
11:36:25  <phuu>indutny: ok, i'll have a look. currently doing on a 2 day hackathon
11:36:46  <phuu>rm "on" :)
11:39:28  * phuu_joined
11:39:28  * phuuquit (Read error: Connection reset by peer)
11:39:28  * phuu_changed nick to phuu
11:40:53  * phuu_joined
11:40:53  * phuuquit (Read error: Connection reset by peer)
11:40:53  * phuu_changed nick to phuu
11:57:09  <indutny>phuu: :)
12:06:13  * phuuquit (Quit: phuu)
12:26:03  * mmalecki[zzz]changed nick to mmalecki
12:29:18  * piscisaureus_joined
12:29:48  * piscisaureus_part
12:37:28  * phuujoined
12:41:38  * piscisaureus__joined
12:42:30  * piscisaureus__part
12:48:29  * phuu_joined
12:48:29  * phuuquit (Read error: Connection reset by peer)
12:48:30  * phuu_changed nick to phuu
13:19:15  <creationix>indutny: morning
13:22:49  <creationix>where is said repl?
13:23:22  <mmalecki>creationix: make -j4 -B ARCH=x64 test
13:23:23  <mmalecki>creates ./cand binary
13:23:29  <mmalecki>creationix: citing indutny :)
13:23:50  <creationix>ahh need to "make cand"
13:28:52  * piscisaureus__joined
13:37:35  <indutny>creationix: morning
13:37:56  <indutny>creationix: a question
13:38:07  <indutny>what if we'll use @var instead of scope var
13:38:15  <indutny>I mean @var for each variable use
13:53:14  <indutny>yeeeah
13:53:18  <indutny>syntax errors landed!!!!
13:53:27  <indutny>no assertion errors now :)
13:53:36  <indutny>creationix: heya?
13:59:09  * piscisaureus__quit (Quit: ~ Trillian Astra - www.trillian.im ~)
14:08:17  <creationix>@var hmm
14:08:22  <creationix>that would be less verbose
14:08:27  <creationix>and make aliasing easier
14:08:34  <creationix>localvar = @scopedvar
14:09:31  <creationix>indutny: you're making good progress
14:09:37  <creationix>sorry I've been too busy to keep up
14:09:45  <creationix>had a terrible headache last night
14:11:18  <creationix>so you want explicit scope of some sort to make the vm faster right?
14:11:54  <creationix>I mean, you don't need anything explicit at all
14:12:08  <creationix>the parser can infer all undefined variables are scoped in
14:12:29  <indutny>yes
14:12:50  <indutny>oh, haven't read all your comments
14:12:52  <indutny>5 minutes
14:17:15  <indutny>finishing multi-line repl
14:17:17  <indutny>mmalecki: sorry
14:21:47  * phuuquit (Quit: phuu)
14:23:51  <indutny>ok, is there anybody around?
14:23:57  <creationix>I'm here
14:24:03  <indutny>creationix: I want explicit scope for other reason
14:24:09  <creationix>ok, just wondering
14:24:09  * phuujoined
14:24:11  <indutny>preventing global leaks and etc
14:24:23  <indutny>because global lookups are hashmap lookumps
14:24:37  <indutny>and that's wrong thing about js (to my mind)
14:24:40  <creationix>what happens if you scope in a variable that's not there?
14:24:55  <indutny>creationix: global one will be used
14:25:01  <indutny>creationix: but you'll do this explicitely
14:25:44  <indutny>creationix: so may be remove `scope` keyword and just prepend all variables that should be looked up in outer scopes with @
14:26:15  <indutny>creationix: that won't cut our features, but remove all that verbosity and unexpected behaviour
14:26:33  <creationix>yeah, same behavior, but different syntax
14:27:27  <indutny>cool
14:27:30  <indutny>will implement today
14:27:31  <indutny>:)
14:27:35  <indutny>checkout multiline repl
14:27:38  <indutny>just pushed update
14:27:38  <creationix>but if I typo a variable @speeledWrong it will just be nil after looking all the way to the root scope?
14:27:55  <indutny>yeah
14:28:02  <indutny>that's the price to pay
14:28:15  <indutny>hm...
14:28:31  <indutny>gtg to the groceries
14:28:33  <creationix>ok
14:28:34  <indutny>ttyl
14:28:53  <indutny>if you have time, can you please make repl leave multiline mode on ctrl+c
14:29:02  <indutny>now it'll quit
14:29:46  * indutnychanged nick to indutny_away
14:29:47  * phuuquit (Read error: Connection reset by peer)
14:30:07  * phuujoined
14:33:03  <indutny_away>I love that 'cand' executable is just 350kb
14:33:37  * indutny_awayis away
14:58:48  * alejandromgjoined
15:36:00  * alejandromgquit (Ping timeout: 245 seconds)
15:38:04  * alejandromgjoined
16:01:05  * alejandromgquit (Ping timeout: 260 seconds)
16:52:15  * alejandromgjoined
16:55:42  * alejandromgquit (Read error: Connection reset by peer)
17:30:25  <indutny_away>50% completion of @var stuff
17:33:56  * phuuquit (Read error: Connection reset by peer)
17:34:19  * phuujoined
17:39:27  * phuu_joined
17:39:27  * phuuquit (Read error: Connection reset by peer)
17:39:27  * phuu_changed nick to phuu
19:10:52  <indutny_away>creationix: whoa! https://github.com/indutny/candor/commit/018fc9ef17885f5fbdad450bb68395d8fd263e0e
19:10:55  <indutny_away>brb
19:11:01  <indutny_away>creationix: can you please test it? /cc phuu
19:11:10  <indutny_away>I mean tests are passing
19:11:10  * phuuquit (Quit: phuu)
19:11:16  <indutny_away>but you can use repl, and other
19:11:22  <indutny_away>br
19:11:24  <indutny_away>brb
19:11:27  <indutny_away>going to take a shower
19:27:18  <indutny_away>back
19:31:10  <indutny_away>anyone around?
19:31:13  * indutny_awaychanged nick to indutny
19:31:15  <mmalecki>I am
19:31:20  <indutny>mmalecki: great
19:31:26  <indutny>what do you think about @ syntax?
19:31:31  <mmalecki>(kind of, working on the you know what thing)
19:31:38  <indutny>ah
19:31:40  <indutny>ok then
19:31:41  <indutny>ttyl
19:31:49  <mmalecki>indutny: no no, I'm tired anyway :)
19:32:01  <mmalecki>indutny: you mean, instead of `scope var`, we'd have `@var`?
19:32:50  <indutny>yes
19:32:56  <indutny>for each use
19:33:34  <mmalecki>indutny: no implicit declaration?
19:34:02  <indutny>yes
19:34:05  <indutny>everything is explicity
19:34:08  <indutny>err
19:34:10  <indutny>explicit
19:34:25  <indutny>take a look at test/functional/ dir
19:35:06  <mmalecki>I kinda like implicit declarations, but I dig @var
19:35:16  <indutny>implicit?
19:35:18  <indutny>like in js?
19:35:43  <mmalecki>indutny: implicit like in ruby and python
19:36:55  <indutny>got ya
19:37:47  <mmalecki>indutny: however, I like `@var` style
19:38:33  <mmalecki>but will `@var` also try to look up higher scope?
19:39:47  <indutny>yes
19:39:56  <indutny>up to global
19:40:22  <mmalecki>`@var` should shadow global ones ihmo
19:40:25  <mmalecki>just like injs
19:40:27  <mmalecki>*in js
19:40:43  <mmalecki>at least I'd expect it to behave like that
19:41:01  <indutny>what do you mean by shadowing globals?
19:41:04  <indutny>if you'll declar @var
19:41:13  <indutny>and there're no `var` in outer scopes
19:41:18  <indutny>it'll use global slot
19:41:41  <mmalecki>ok, let me gist it
19:41:43  <indutny>so it's just like saying to compiler: "hey, go and find me closest or global `var`"
19:41:48  <indutny>yeah, would be cool
19:44:16  <mmalecki>indutny: https://gist.github.com/7633977555958fa117a1
19:44:58  <indutny>ah
19:45:09  <indutny>@var, or @name
19:45:32  <indutny>mmalecki: ^
19:45:39  <mmalecki>indutny: what'd @name do?
19:45:51  <indutny>mmalecki: use variable from outer scopes
19:45:55  <indutny>closest one
19:46:04  <mmalecki>ah, I see
19:46:06  <indutny>note that you can have both @name and name
19:46:15  <indutny>and that're different variables ;)
19:46:21  <mmalecki>so @var would do the regular shadowing stuff like we're seeing in JS?
19:46:29  <indutny>exactly
19:46:38  <indutny>but with one difference
19:46:40  <indutny>it'll be explicit
19:47:26  <mmalecki>ok
19:47:34  <mmalecki>not sure if @name is a good name
19:47:48  <indutny>huh?
19:48:01  <indutny>that's not name
19:48:04  <indutny>@ - is a prefix
19:48:07  <mmalecki>I know
19:48:24  <mmalecki>I mean, @name doesn't really explain what it does
19:48:50  <mmalecki>it's probably good
19:50:06  <mmalecki>indutny: so all assignments have to be prefixed with @?
19:50:20  <indutny>mmalecki: no
19:50:29  <indutny>mmalecki: only those that should affect variables from outer scopes
19:50:46  <indutny>a = 1\n{@a = 2}\nreturn a
19:50:50  <indutny>^^ 2 ^^
19:50:58  <indutny>a = 1\n{a = 2}\nreturn a
19:51:01  <indutny>^^ 1 ^^
19:51:08  <indutny>a = 1\n{a = 2\nreturn a}
19:51:10  <indutny>^^ 2 ^^
19:52:48  <indutny>mmalecki: is that clear?
19:58:42  <mmalecki>indutny: yeah
19:59:25  <indutny>ok, time to sleep
19:59:30  * indutnychanged nick to indutny_sleeping
19:59:32  <mmalecki>night Fedor
19:59:33  <indutny_sleeping>thanks for reviewing
19:59:35  <indutny_sleeping>ttyl
19:59:37  <indutny_sleeping>mmalecki: you too
20:08:54  * mralephjoined
20:12:44  <creationix>back
20:15:26  <creationix>btw readline is GPL3
20:15:36  <creationix>don't link against it if you want to stay MIT licensed
20:50:47  * mralephquit (Remote host closed the connection)
23:25:05  <creationix>indutny_sleeping, how do I get the characters out of strings
23:25:27  <creationix>should [] access return the unsigned char int value or a single character string?
23:25:43  <creationix>I think number would be better, but not sure
23:38:08  <creationix>keysof doesn't seem to work on some objects
23:38:16  <creationix>obj = {uv: @uv}
23:38:25  <creationix>(where @uv is my bindings object)
23:38:29  <creationix>obj.uv is an object
23:38:38  <creationix>but keysof obj is empty