IRC Logs for #io Thursday, 2014-10-16

*** Stalkr_ has quit IRC00:44
*** ElMonkey_ has joined #io00:56
*** gatesphere has quit IRC00:56
*** TheMonkey has quit IRC00:59
*** gatesphere has joined #io01:01
*** petr has quit IRC01:22
*** petr has joined #io01:51
*** bb010g has joined #io03:09
prologicjer, so two things specifically I'm having trouble with (or have noticed). a) I'm finding that my interpreter has to be both a bytecode interpreter as well as an ast walker. e.g: you want lazy evaluated arguments to blocks/methods. b) I think because of a my compiler doesn't compile the ast properly :)03:26
jerprologic, so define your lazily evaluated arguments differently03:35
jeri.e., perhaps prefix them with some syntax03:35
jera sigil even03:35
jeri.e., foo := method(a, $b, b? + a) as a contived example... basically, b would be nil if not supplied03:35
jererr more accurately03:36
jerfoo := method(a, $b, b doInContext(self) + a)03:36
jergiven that b would be a message03:36
jershould solve your b) issue03:36
jerwon't solve a)03:36
prologicokay03:49
prologicwon't we still end up with a bytecode interpreter and ast walker though?03:49
prologicat least in the case of for example set("foo", method(a, b, a +(b))) (ignoring for the moment we have no operator shuffling/rewriting)03:50
*** gatesphere has quit IRC03:54
prologichttps://gist.github.com/906ac1f18a27d008a0be03:55
prologichere's a live idea of what I'm trying to say03:55
jerprologic, yes of course04:37
*** bjz has quit IRC06:31
*** AKASkip has joined #io06:41
*** iorivur has joined #io06:47
*** bjz has joined #io06:57
*** gatesphere has joined #io07:00
*** ldcn has quit IRC07:09
*** ldcn has joined #io07:10
*** iorivur has quit IRC07:37
*** iorivur has joined #io07:48
*** gatesphere has quit IRC08:01
prologichi sorry back08:16
prologicwas out for a while :)08:16
prologicyes of course to the bytecode interpreter + tree walker interpreter ?08:16
prologicI don't think there's a way to avoid that without coming up with syntax/grammar for methods/blocks which makes the grammar and compiler more complicated08:16
prologicright?08:16
*** iorivur has quit IRC09:01
*** iorivur has joined #io09:18
*** bjz has quit IRC09:22
*** bjz has joined #io10:09
*** AKASkip has quit IRC10:31
*** bjz has quit IRC11:00
*** AKASkip has joined #io11:05
*** ijon_ has joined #io11:10
*** bjz has joined #io11:29
prologicjer, https://bitbucket.org/miolang/mio/commits/265c5b6ddf6c3ffdf8c670cb9c87fd83d864c78311:59
prologicI changed loc and added a new bytecode instructions11:59
prologicand it seems to have fixed my problem11:59
prologicat least in the tests I've thrown at it so far11:59
prologicjer, https://gist.github.com/ddff194422903847337e12:01
prologicsample run ^^^12:01
*** ijon_ has quit IRC12:14
*** ijon_ has joined #io12:16
*** gatesphere has joined #io12:30
*** TheMonkey has joined #io13:07
*** ElMonkey_ has quit IRC13:11
*** bjz has quit IRC13:26
*** bjz has joined #io13:30
*** iorivur_ has joined #io13:40
*** iorivur has quit IRC13:41
*** iorivur has joined #io14:01
*** iorivur_ has quit IRC14:02
jerprologic, cool14:33
*** iorivur has quit IRC14:40
jeryour first bytecode should seriously consider just mirroring the steps you use to create the AST, deriving a calculus from that and using that as your bytecode format. perhaps actually write it out in a format that's quick to process (avoid text) (version it ffs!!!) and over time, you can start to optimize things better for performance -- deriving some of those steps into more basic instructions14:43
jerwhich more clearly map to hardware14:43
jerimprove your chance for optimization14:43
*** AKASkip has quit IRC15:06
*** ijon_ has quit IRC15:13
*** AKASkip has joined #io16:04
*** bb010g has quit IRC16:11
*** AKASkip has quit IRC16:13
*** AKASkip has joined #io16:57
*** AKASkip has quit IRC17:28
*** fredreichbier has joined #io17:33
*** brixen has quit IRC18:20
*** brixen has joined #io18:23
*** bb010g has joined #io20:32
prologicjer, right :)20:54
prologicthanks for the hints :)20:54
prologicvery helpful20:54
*** Stalkr_ has joined #io21:35
*** fxbert has joined #io22:13
*** fredreichbier has quit IRC22:19
*** fxbert has quit IRC23:26
*** bb010g has quit IRC23:51

Generated by irclog2html.py 2.11.0 by Marius Gedminas - find it at mg.pov.lt!