<< 05-01-2016 >>

00:13:52*yglukhov quit (Remote host closed the connection)
00:27:33*desophos_ quit (Remote host closed the connection)
00:40:10*aziz quit (Remote host closed the connection)
00:53:40*jaco60 quit (Ping timeout: 250 seconds)
01:09:34*desophos joined #nim
01:14:21*yglukhov joined #nim
01:18:59*yglukhov quit (Ping timeout: 260 seconds)
02:04:02*doxavore joined #nim
02:15:56*yglukhov joined #nim
02:20:50*yglukhov quit (Ping timeout: 260 seconds)
02:40:51*zepolen joined #nim
02:50:09*brson quit (Quit: leaving)
02:55:56*Trustable_2 joined #nim
02:58:54*Trustable quit (Ping timeout: 250 seconds)
03:00:43*vendethiel joined #nim
03:17:24*yglukhov joined #nim
03:21:54*yglukhov quit (Ping timeout: 265 seconds)
03:22:45*Trustable_2 quit (Remote host closed the connection)
03:24:48*vendethiel quit (Ping timeout: 265 seconds)
03:35:55*^aurora^ quit (Quit: My Mac has gone to sleep. ZZZzzz…)
03:44:17*doxavore quit (Quit: I said good day, sir.)
04:42:22*def-- joined #nim
04:54:21*def-- quit (Quit: -)
04:55:14*def-- joined #nim
05:12:20*vqrs quit (Ping timeout: 260 seconds)
05:17:37*vqrs joined #nim
05:18:54*yglukhov joined #nim
05:24:04*yglukhov quit (Ping timeout: 272 seconds)
05:39:56*desophos_ joined #nim
05:42:17*darkf joined #nim
05:44:26*desophos_ quit (Ping timeout: 250 seconds)
06:17:27*desophos_ joined #nim
06:19:50*desophos_ quit (Remote host closed the connection)
07:51:03*yglukhov joined #nim
08:31:43*desophos_ joined #nim
08:36:06*desophos_ quit (Ping timeout: 240 seconds)
08:55:07*Sembei quit (Excess Flood)
08:56:13*Sembei joined #nim
09:12:36*coffeepot joined #nim
09:18:24*^aurora^ joined #nim
09:20:29*desophos quit (Read error: Connection reset by peer)
09:24:53*BitPuffin|osx quit (Ping timeout: 265 seconds)
09:39:11*allan0 quit (Ping timeout: 264 seconds)
09:44:04*allan0 joined #nim
09:55:12*jaco60 joined #nim
10:41:33*Trustable joined #nim
10:41:42*Trustable quit (Remote host closed the connection)
10:42:36*Trustable joined #nim
11:39:00*Demon_Fox quit (Quit: Leaving)
11:41:29*Trustable quit (Remote host closed the connection)
11:42:29*coffeepot quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
11:57:04*^aurora^ quit (Quit: My Mac has gone to sleep. ZZZzzz…)
11:57:46*^aurora^ joined #nim
11:59:38*jaco60 quit (Quit: Leaving)
12:46:00*amox joined #nim
12:46:26amoxHello!
12:47:34amoxI'm trying to do my first steps with nim. And could not load: (ssleay64|libssl64).dll like http://irclogs.nim-lang.org/01-12-2015.html and http://irclogs.nim-lang.org/07-10-2015.html
12:47:57amoxI found only ssleay64.dll
12:48:09amoxWhere can I take the second dll?
12:48:31amoxCould someone help me?
12:49:37Araq_ping dom96
12:49:59Araq_use the 32 bit version for a start
12:50:09Araq_the 64 bit DLLs are broken for some reason iirc
12:50:22dom96hello amox!
12:50:33dom96yeah, usually better to use 32 bit DLLs
12:50:46dom96(make sure to use a 32 bit Nim compiler too though!)
12:53:40dom96Really wish there was a way to get more info about why a DLL load failed.
12:54:00dom96Araq_: I probably asked you about this already, but are there any improvements we could make?
12:55:04yglukhovAraq: regarding 3688. Whats wrong with it?
12:56:07amoxThank you! I'll try 32 bit
13:06:29*^aurora^ quit (Quit: My Mac has gone to sleep. ZZZzzz…)
13:07:19amoxFAILURE: Invalid section:
13:07:38amoxthis failure when I'm installing nimx
13:07:49amoxwith nimble install nimx
13:08:05amoxwithout any comment
13:09:45yglukhovamox, please update nimble to the latest
13:10:33amoxbut it requires nim 0.12.1
13:10:53yglukhovyep, update everything to the latest =)
13:10:57federico3which is inexistent
13:11:03amoxokay
13:21:48Araq_dom96: we could rebuild the DLLs ... and ask varriount what he did :P
13:26:13dom96Araq_: Varriount built those DLLs?
13:26:23Araq_yes
13:27:07Araq_we just need to release nimble without SSL support. fuck that bullshit.
13:30:56dom96Already did that.
13:31:01dom960.7.0 doesn't need SSL
13:40:12*awsteele joined #nim
13:42:35awsteelehow do i pass compiler options (e.g. -d:release) to "nimble build"? i can see that "nimble compile" will pass-through opts, but build doesn't
13:43:34awsteeledoh, i just realised that's a dumb question. "nimble install" will build in release mode. and "nimble compile" wihtout specifiying a file seems to build the whole project
13:47:45*def-- quit (Quit: -)
13:48:06*def- quit (Quit: -)
13:48:41*def- joined #nim
13:58:18awsteeledoh, i take it back again. :) i'm writing a CLI tool that connects to https. it requires the -d:ssl flag. "nimble build" builds a broken app because the ssl flag wasn't passed through. can it be added to the config somewhere?
14:09:23amoxError: Threadpool requires --threads:on option.
14:09:32amoxwhere I can find this option?
14:10:12Araq_amox: nim c --threads:on foo.nim
14:10:24amoxthanks!
14:10:25Araq_pretty sure it's also documented, let's see
14:10:37amoxhttps://github.com/nim-lang/nimble/issues/109
14:10:42amoxfound smth here
14:11:13Araq_http://nim-lang.org/docs/manual.html#threads
14:14:34amoxI didn't see this but it is not understandable for me that this is compilation flag
14:18:40*allan0 quit (Quit: no)
14:18:56*allan0 joined #nim
14:19:35amoxnim is not friendly with me :(
14:20:17reactormonkamox, it just demonstrates some though love.
14:21:05amoxI'm not a masochist
14:21:15amoxunfortunatly
14:21:18amox:)
14:23:35reactormonkIf you where, it would be nice to you.
14:53:25*pregressive joined #nim
14:55:07*pregressive quit (Read error: Connection reset by peer)
14:55:59*pregressive joined #nim
14:58:03*pregressive quit (Remote host closed the connection)
14:58:07amoxI'm trying to run example from nimx github page
14:58:10amoxhttp://prntscr.com/9mdwcj
14:58:29*pregressive joined #nim
14:58:40amoxat first it was error with threads - Araq_ helped to solve
14:58:45*^aurora^ joined #nim
14:58:50amoxnow this
14:59:51amoxwithout noMain and r switches main.exe is created
15:00:30*pregressive quit (Client Quit)
15:00:34amoxbut running exe gives could not load: SDL2.dll
15:03:41Araq_amox: you need a SDL2.dll from somewhere :-)
15:05:32*yglukhov quit (Ping timeout: 255 seconds)
15:08:09amoxAraq you are magician
15:08:22amoxI put it to c:\windows
15:08:37amoxand magic began
15:16:14dom96Hello awsteele
15:16:20dom96awsteele: Add it into a .nim.cfg file
15:16:28dom96or the new .nims file
15:16:34dom96just '-d:ssl' (not sure about the syntax for .nims
15:16:48dom96(if your file is called main.nim then call it main.nim.cfg)
15:17:42dom96amox: Probably not where you should put it :)
15:19:03amoxbut it works
15:20:13dom96Sure, it's just nicer to have a directory somewhere for these DLLs. It just needs to be in your PATH IIRC.
15:20:24dom96or you can put it beside the .exe
15:21:07amoxyes I put it next to exe - it works too
15:23:21amoxbut I have cmd window opened too with GUI (nimx) http://prntscr.com/9me79s Can it be set up to run without cmd?
15:26:01amoxyglukhov is owner but he is away
15:31:27dom96Pass --app:gui to the compiler, might work
15:33:57amoxit works! nim "demonstrates some though love" but community makes me happy! Thank you!
15:40:37dom96amox: Glad you got it working :)
15:43:59amoxbut it stil magic for me... I use Python and I never used c compiler before (earlier it was java but it was long ago). It is time to try something new. I chose nim :)
15:44:44*pregressive joined #nim
15:50:34reactormonkamox, good choice.
15:51:17amox:)
15:54:41*doxavore joined #nim
16:10:54*yglukhov joined #nim
16:25:47*yglukhov quit (Remote host closed the connection)
16:26:21*yglukhov joined #nim
17:05:15flyxin an except statement, do I have to cast the result of getCurrentException() to the actual exception class? that seems a bit inconvenient.
17:06:34dom96flyx: I think so, yeah.
17:07:11dom96I agree. Would be nice to have syntax which allows something like ``except InvalidValue as err: echo err.msg``
17:07:24dom96flyx: Please create an issue :)
17:07:25flyxdefinitely.
17:07:32*flyx will do
17:13:01dom96thanks
17:16:24dom96Araq_: I'm adding a `question` tag on Github since many people are using it to ask questions.
17:17:42Araq_sure thing
17:18:04Araq_dom96: pretty sure that's already been reported?
17:18:07Araq_oh well
17:18:27dom96We can mark it as a duplicate then.
17:18:36dom96As long as you can find the other issue which reports it ;)
17:23:47Araq_it's marked as "feature request"
17:23:51Araq_if it exists
17:24:04Araq_our tagging works really well.
17:24:45*yglukhov_ joined #nim
17:25:34*yglukhov_ quit (Remote host closed the connection)
17:27:26*yglukhov quit (Ping timeout: 240 seconds)
17:40:44*amox quit (Quit: Ухожу я от вас (xchat 2.4.5 или старше))
17:40:45*vqrs quit (Ping timeout: 260 seconds)
17:42:32*vqrs joined #nim
17:45:13flyxactually, the issue seems more severe
17:46:24flyxah well, it works if I cast to "ref MyException" instead of "Exception"
17:48:08*Matthias247 joined #nim
17:50:22*flyx created https://github.com/nim-lang/Nim/issues/3691
17:53:28dom96You don't need to cast, you can do: (ref MyException)(getCurrentException())
17:53:33dom96At least I think you can
17:53:38dom96but yeah, still not nice
17:55:05*jaco60 joined #nim
18:01:42*brson joined #nim
18:11:51*^aurora^ quit (Quit: My Mac has gone to sleep. ZZZzzz…)
18:13:56flyxif the compiler tells me „can raise an unlisted exception“, how can I check where this exception can come from?
18:14:36dom96Doesn't the compiler give you hints showing where it comes from?
18:17:17flyxI'm trying to figure that out
18:17:48flyxcan it be that the compiler things any proc without an explicit raises pragma can throw any exception?
18:17:57*Trustable joined #nim
18:19:33flyxah, the stream module is responsible
18:22:54*bigfondue quit (Ping timeout: 256 seconds)
18:23:41*vendethiel joined #nim
18:29:19*bigfondue joined #nim
18:33:13*yglukhov joined #nim
19:13:52*pregressive quit (Read error: Connection reset by peer)
19:14:28*pregressive joined #nim
19:27:10*zepolen quit (Remote host closed the connection)
19:42:13*Demos joined #nim
19:42:25*vendethiel quit (Read error: Connection reset by peer)
19:42:42*vendethiel joined #nim
20:07:11flyxdom96: what's the state of jester? I just tried to build a simple tool with it, but I cannot get it to do anything. browser just tells me that the server unexpectedly drops the connection.
20:07:38dom96flyx: should be working fine.
20:07:41dom96NimForum uses it
20:07:44*yglukhov quit (Remote host closed the connection)
20:07:52dom96try curl
20:08:32flyxcurl tells me "curl: (52) Empty reply from server"
20:08:47flyxI took example.nim from the README and compiled that
20:09:30flyxapplication's output is: dlopen(libpcre.3.dylib, 2): image not found \\ dlopen(libpcre.1.dylib, 2): image not found \\ INFO Jester is making jokes at http://localhost:5000
20:10:12dom96flyx: could you try a simple asynchttpserver and see if that works?
20:12:11flyxthe example code from asynchttpserver works.
20:14:56dom96odd, please report it on github
20:15:00dom96I'll look into it ASAP
20:15:20flyxdom96: found the issue, I had an old 0.1.0 installed
20:15:34flyxit works after I updated it with nimble
20:15:45dom96ahh, cool
20:17:32*yglukhov joined #nim
20:23:49flyxwhere is runForever() defined? I cannot find it
20:28:24flyxand is it possible to run jester on a unix socket?
20:31:08*yglukhov quit (Remote host closed the connection)
20:34:35*desophos joined #nim
20:41:52*darkf quit (Quit: Leaving)
21:09:25federico3who's going to Fosdem?
21:12:27*krux02 joined #nim
21:12:56*desophos_ joined #nim
21:15:38krux02Araq_: I have a question about types for my development on getType
21:16:46krux02A generic type has in it's PType a member that is generic, all generic parameters, and the actual instanciation of the type.
21:17:19krux02since I return as an AST a bracked expression MyType[int,float]
21:18:01krux02I would like to keep the 'MyType' clean of the concrete instance of MyType[int,float]
21:20:32krux02so that a transformation of MyType[int,float] to MyType[float,int] has no preblems giving me the implementation of that.
21:21:04*Matthias247 quit (Read error: Connection reset by peer)
21:22:12krux02the information is then not stored in the AST anymore
21:39:04*zepolen joined #nim
21:43:35*zepolen quit (Ping timeout: 246 seconds)
21:47:46*saml quit (Ping timeout: 240 seconds)
21:48:24*mat4 joined #nim
21:48:27mat4hello
21:50:09*desophos quit ()
21:50:23Araq_krux02: sounds like a pita
21:50:24*saml joined #nim
21:50:55Araq_the VM shouldn't perform generic instantiations
21:50:58krux02pita? like food?
21:51:13Araq_instead you should generate an new AST and let the compiler do its job
21:51:16mat4hello
21:51:56krux02ok, then it would be better to prevent AST changes
21:52:18Araq_getType() is only for reading types, not for type construction
21:52:28Araq_because type construction is too hard.
21:52:44Araq_people will provoke compiler crashes all over the place
21:52:44krux02ok
21:53:31Araq_IME types are foundamentally harder to deal with than syntax trees and so we need to push people to use simpler alternatives
21:54:09krux02ok, then I should document it, that the result of getType should not be manipulated
21:54:36Araq_yes please
21:54:46mat4Araq_: What are these alternatives ?
21:55:02krux02ok
21:55:10krux02makes my job easier
21:55:11Araq_mat4: construct the type syntactically and let the compiler transform it into a type for you.
21:55:35Araq_it has to do that anyway to check for soundness
21:57:23krux02I am just thinking of what happens, if the result of getType get's used to create a function with that type as an argument
21:57:36mat4hm, I believe this approach should be obvious even the simplest
21:58:49krux02not that I know of any use of that, but I guess, because it can be done, it will be done.
22:00:42*brson_ joined #nim
22:01:08krux02I am still not sure how to name my version of getType
22:01:50krux02because I have breaking change, I need to rename it, so that the old version gets deprecated
22:02:56krux02I want to name it getTypeDesc but there is already a typeDesc type that won't be the result of this function.
22:03:46*brson quit (Ping timeout: 250 seconds)
22:03:54mat4thisTypeDesc
22:07:18*desophos_ is now known as desophos
22:16:24*brson joined #nim
22:18:12*brson_ quit (Read error: Connection reset by peer)
22:40:12krux02Araq_, I basically forket getType to getType2, so that I do not alter existing behavior, but i do not understand the code that I duplicated
22:41:22krux02basically the code in vmgen.nim with the magic enum and in vm.nim I do not understand
22:42:46*zepolen joined #nim
22:43:49krux02I only worked on mapTypeToAst, and I understan that par, but I do not understand the parts with the registers or what the call c.gABC should do
22:47:15*zepolen quit (Ping timeout: 240 seconds)
22:48:03*mat4 left #nim ("Verlassend")
22:52:04dom96flyx: asyncdispatch
22:52:30*brson_ joined #nim
22:53:55dom96federico3: are you heading to Fosdem?
22:54:44*brson quit (Read error: Connection reset by peer)
22:54:50federico3yup
22:55:11*brson_ quit (Read error: Connection reset by peer)
22:57:30*brson joined #nim
22:59:01dom96free entry hrm
23:02:33*brson_ joined #nim
23:03:05*brson quit (Ping timeout: 276 seconds)
23:03:13*doxavore quit (Quit: I said good day, sir.)
23:13:15*keyle joined #nim
23:16:59*brson_ quit (Ping timeout: 264 seconds)
23:17:11*pregressive quit (Remote host closed the connection)
23:28:57*keyle quit (Quit: http://twitter.com/keyle/)
23:39:45Araq_krux02: do you need to know this though?
23:40:38krux02Araq_: I came to the conclusion, that I need two functions, getType, and getTypeImpl
23:40:55Araq_not necessarily
23:41:48krux02yes I saw that the original verison required you to call getType(getType(x)) sometimes
23:42:07krux02but I don't think it feels natural that way
23:42:45krux02I like the distinction like in functions, whar you can call getImpl
23:43:34krux02I think there is semantic difference weather I call getType on an AST node, or I want the implementation of a type
23:43:43Araq_I think I prefer the getType2(whatToDoEnum) version
23:44:06krux02I looked into that, and realized that it doesn't work out
23:44:12Araq_why not?
23:44:54Araq_fyi c.gABC generates an ABC instruction.
23:44:59krux02for example when I want to get the implementation of a type that is contained in another type
23:45:15Araq_why?
23:45:31Araq_you need a way to traverse the type anyway
23:45:38Araq_you cannot special case too much
23:45:39krux02with the distinction in getType and getImpl I can call node.getType.sons[1].getImpl
23:45:50Araq_you need a general getChild operation
23:46:19krux02or in my case
23:46:30Araq_an ABC instruction is an instruction that takes up to 3 registers
23:46:38krux02node.getType2[1].getTypeImpl
23:46:50Araq_ABx would be register A with an immediate value in Bx
23:47:39Araq_the immediate value Bx is 2 bytes, every instruction is 4 bytes long. Except for "extended instructions" where multiple words are used. But these are rare.
23:48:27Araq_add regA, regB, regC would be an ABC instruction with opcode 'add'
23:48:42Araq_and the semantics are regA = regB + regC
23:49:25krux02with node.getType2(getImpl) I would need it to work an both nodes from the typed ast, and on type nodes returned from getType
23:49:47krux02with a distinct getImpl, that one only needs to work in results of getType
23:50:21Araq_what is the difference between a typed AST and type nodes returned from getType?
23:51:17krux02with typed ast, I just mean a general AST that I get in a typed macro
23:51:55*vendethiel quit (Ping timeout: 240 seconds)
23:52:33krux02even though both are represented in an AST form, they are something different to me
23:53:39Araq_but they are not ;-)
23:54:25Araq_if you ever access n directly and not n.typ in your getType2 implementation, it's pretty much always wrong, I think.
23:57:03krux02ok, then it might even work with the enum
23:58:49krux02even though I am not convinced that it is less confusing then the distinct method getTypeImpl