00:00:03 | * | bjz joined #nim |
00:00:03 | * | bjz quit (Client Quit) |
00:00:04 | Araq | I don't think so, it's just not necessary |
00:00:57 | * | Aszarsha quit (Remote host closed the connection) |
00:01:44 | shalabh | ok. in cases where it makes sense - e.g. handing large number of large strings (file contents e.g.) it might work fine. |
00:06:03 | shalabh | so based on some code I've been writing - seems like there is not inconsistency I can point to (yet ;) |
00:06:03 | shalabh | strings are value types - it's as simple as that |
00:06:03 | shalabh | and so using ref strings when necessary is fine, just like with other value types. |
00:09:58 | Araq | well I picked it for consistency/ease of use. it's the one place where Nim goes for consistency over performance |
00:10:27 | Demos | Araq, nim has pretty quick string handling though, correct? |
00:10:54 | Demos | although I guess "faster than C" in this case is a pretty low bar |
00:11:09 | Araq | Demos: afaict it really good, esp with def-'s recent optimizations |
00:12:36 | * | jholland joined #nim |
00:14:19 | * | ^aurora^ quit (Quit: Leaving.) |
00:15:39 | Araq | Demos: actually I quite like how C does strings. |
00:15:58 | Araq | and performance is unbeatable with c strings, when you handle them properly |
00:16:02 | * | fizzbooze joined #nim |
00:16:22 | Araq | of course if you use strlen, you're doing it wrong ;-) |
00:17:44 | Araq | Demos: btw I came to he conclusion that how Nim does overloading resolution is essentially sane (ignoring bugs) and only needs to be documented |
00:18:00 | shalabh | well having a size prefix would be better. |
00:22:25 | shalabh | maybe I'm biased because I worked a lot with web template rendering stuff |
00:22:52 | shalabh | strings as value types for consistency is probably the right choice |
00:23:06 | shalabh | there are not built in ref types afaik |
00:23:53 | shalabh | anyways, g2g ttyl. |
00:24:11 | * | shalabh quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) |
00:24:49 | * | brson quit (Quit: leaving) |
00:25:59 | Demos | Araq, I agree with that. Honestly once bugs are fixed I bet nim's is /very/ close to c++'s |
00:26:27 | Araq | Demos: no, not even close |
00:26:33 | Araq | I looked at how clang does it |
00:26:48 | Araq | c++ is MUCH more complex than Nim. MUCH, MUCH. ;-) |
00:27:15 | Demos | sorry I never really managed to make any headway there, sigmatch is frighteningly huge. And I meant it terms of how disambiguations actually happen. Not the technical implementation |
00:27:39 | Araq | clang's implemenation is at 3x as big |
00:27:45 | Araq | *at least |
00:28:00 | Araq | with many more special cases |
00:28:43 | Demos | Well yeah, it is c++. But Nim is still compiler code with little documentation. And I don't know how compilers work at an intimate level. |
00:29:45 | * | a5i joined #nim |
00:30:07 | Araq | well I spend a day recently fixing the most pressing bugs when it comes to overloading resolution |
00:31:28 | Araq | it's only hard to modify because it needs to continue to compile thousands of lines of code ;-) |
00:35:32 | * | fizzbooze quit (Quit: WeeChat 1.1.1) |
00:36:28 | Demos | Speaking of overload resolution... Is there a technical reason why nobody does disambiguation based on return type? Does it reach out of the calling scope to much or something? |
00:36:59 | Araq | Ada does do it. |
00:37:34 | Araq | and no, there is not much to it, C# requires to "reach out" too for () => () lambdas |
00:38:34 | Demos | yeah I always figured it was that people did not want to deal with the behavior when you ignore the return value |
00:38:49 | Demos | although you could always require explicit type params there |
00:38:58 | Araq | that seems to be the primary reason indeed |
00:39:37 | Araq | Ada even allows for enum value overloading: |
00:39:44 | Araq | type Foo = enum X |
00:39:50 | Araq | type Bar = enum X |
00:39:59 | Araq | proc callme(x: Bar) |
00:40:08 | Araq | callme(X) # uses Bar.X |
00:41:13 | * | saml_ joined #nim |
00:41:21 | Demos | that is actually really cool. So enum values can be dumped into parent scope but disambiguated only when needed |
00:42:37 | Araq | yeah maybe I should have copied that |
00:42:38 | qwr | haskell typeclass methods actually do resolution based on return type very often |
00:43:36 | Demos | Hm, Ada and Fortran '08 are two langauges that I really need to learn but that are really quite hard to learn because of lack of resources. No excuse though I could just find something in the university library. |
00:43:54 | Demos | and for all the bitching about ada's verbosity it looks much more terse than c++ |
00:43:59 | Araq | qwr: haskell uses HM typing though |
00:44:03 | Demos | and probably compiles faster on modern computers too |
00:44:34 | Araq | Ada's verbosity is hard to swallow |
00:44:46 | Araq | even when you come from Pascal |
00:44:53 | Demos | Araq, talking with my haskeller friends it seems that only real reason to care about HM types and global inference is type holes. |
00:45:00 | Araq | and the tooling was never on par |
00:45:25 | Araq | I converted thousands of lines from Ada back to Delphi |
00:45:55 | Demos | I always got the impression that Ada went overboard and solved some problems multiple times |
00:46:16 | Araq | there simply was no benefit, typing rules are stricter in Ada but compiletimes and debugging was much worse |
00:46:23 | Demos | but it really does not look more verbose than c++ |
00:46:40 | Araq | it also has the header/implementation split |
00:47:00 | Araq | though it has a proper module system |
00:47:30 | Araq | and it has the worst stdlib string implementation in the history of mankind, last time I checked |
00:48:08 | Demos | Yeah, I have heard stories about compile times. I can not believe that it still compiles slower than C with the memory-CPU perf gap and the fact that it has modules |
00:48:09 | Araq | but then Ada programs usually do little string handling |
00:48:30 | Demos | I thought Ada was famously fast at string handling |
00:48:58 | Araq | well if you don't use Unbounded_String, perhaps |
00:49:14 | Araq | but most of the time you don't know the bounds of your strings |
00:50:11 | Araq | Ada's builtin strings are based on Ada's arrays, which are value based, but can have a runtime size |
00:50:28 | Araq | so the implementation uses something like alloca() |
00:50:34 | * | reem quit (Remote host closed the connection) |
00:50:38 | Araq | that's all there is to it, really. |
00:51:42 | qwr | Demos: c++ can be quite terse, verbosity comes usually from code style and libraries that you use |
00:52:16 | Araq | Ada confuses verbosity with readability, IMHO |
00:53:10 | Demos | qwr, C++ is rarely terse as what you are trying to do grows |
00:53:11 | Araq | and what is a "limited" type anyway? fancy metaphors are not readable |
00:54:38 | Demos | I know it /can/ be, but it rarely is in my experience. And nim has the nice property of the terse code usually being /more/ readable |
00:55:49 | * | sampwing quit (Ping timeout: 252 seconds) |
01:01:15 | * | vendethiel quit (Ping timeout: 265 seconds) |
01:02:51 | * | reem joined #nim |
01:05:16 | * | reem quit (Remote host closed the connection) |
01:05:51 | * | reem joined #nim |
01:07:29 | * | dhasenan quit (Remote host closed the connection) |
01:08:21 | Araq | hrm actually |
01:08:57 | Araq | overloading based on return type could only be applied in the var|let|const foo: SomeType = call() context |
01:09:02 | * | smodo joined #nim |
01:09:08 | Araq | that's *very* simple to implement |
01:09:31 | Araq | and seems to be the only context where people actually want it |
01:10:42 | Demos | by could do you mean one could choose to only implement it in that context? or that it is much harder to implement in all contexts |
01:10:57 | Araq | and I like it much better than special magical allocate/init/whatever procs |
01:11:18 | Demos | Araq, or that typeinfo.name hack :": |
01:12:02 | Araq | Demos: much simpler to implement in the current compiler |
01:12:14 | Araq | in theory perhaps not more difficult at all |
01:12:30 | Araq | but with the current compiler a specialized solution makes sense |
01:12:57 | Demos | On one hand it is somewhat of a strange rule exception and rule. However on the other hand it may just feel like "Welp compiler could not infer types here, oh well" |
01:13:24 | Demos | wow that first sentence did not go so well |
01:14:51 | Araq | but then we'll get 'init()' everywhere: var foo: Foo = init() |
01:15:42 | Araq | which is not sexy at all IMO |
01:16:14 | Demos | I agree with that. What about a macro in the macros modules that munges the name up? |
01:16:26 | Demos | really not sexy at all implementation wise, but it works today |
01:16:29 | Demos | more or less |
01:16:38 | Araq | also factories are a problem again, since 'newFoo' can lie about the result type, but 'var foo: Foo = init()' cannot |
01:16:56 | Araq | or hrm, maybe it can |
01:17:15 | Araq | if 'init' returns a specialized subtype and the real Foo has no init |
01:17:19 | Demos | how can newFoo lie? |
01:17:29 | Araq | proc newFoo(): ref Bar |
01:18:22 | Demos | or right. but the overload resolution we have will let you match with a derived type if you want. |
01:18:26 | Demos | or any compatible type |
01:19:02 | Varriount | Araq: I agree with the 'must declare the explicit type to get return type overloading' idea. |
01:19:52 | Demos | Varriount, I don't think it is an intentional restriction. I also don't think return type overloading can introduce any bugs that overloading by itself can not |
01:20:51 | Araq | Demos: well the restriction won't hurt either |
01:21:14 | Varriount | Demos: I'm aware of that. |
01:21:39 | Demos | Araq, Yeah I doubt anyone will care as long as the resolution works the way it does everywhere else |
01:21:52 | Araq | well no, it works differently |
01:22:00 | Araq | 1. build the set of overloads |
01:22:23 | Araq | 2. restrict to the routines which return a T that fits |
01:22:30 | Araq | 3. apply ordinary overload resolution |
01:22:58 | Araq | maybe ~50 lines of code in the compiler |
01:23:07 | Araq | possibly fewer |
01:23:15 | Demos | that is the same on the outside. Since if the T did not fit things would anyways. |
01:23:18 | Demos | But yeah |
01:23:58 | Araq | point 2 is problematic with generics though |
01:24:31 | Demos | hm how does var f = init[Foo](). I kinda like var f = init(Foo) myself |
01:26:43 | Demos | the second one is proc init[T](t: typedesc[T]): T |
01:27:17 | Araq | "So do we care about constructors actually preventing bugs or is this all just about syntactic conveniences?" it's telling that nobody answered this question :P |
01:28:54 | Araq | gotta sleep, good night |
01:39:44 | * | akiradeveloper joined #nim |
01:42:47 | * | darkf joined #nim |
01:54:37 | * | coopernurse quit (Ping timeout: 246 seconds) |
02:04:43 | * | dhasenan joined #nim |
02:08:32 | onionhammer | Araq i care about preventing bugs... :) |
02:27:46 | * | teef joined #nim |
02:29:42 | * | reem quit (Remote host closed the connection) |
02:30:16 | * | reem joined #nim |
02:31:46 | * | Varriount quit (Ping timeout: 255 seconds) |
02:32:51 | * | Varriount joined #nim |
02:33:53 | * | bitcraft_ joined #nim |
02:34:28 | * | reem quit (Remote host closed the connection) |
02:37:24 | * | reem_ joined #nim |
02:38:55 | * | flaviu joined #nim |
02:39:33 | * | reem_ quit (Remote host closed the connection) |
02:43:50 | * | teef quit (Quit: Page closed) |
02:49:42 | * | sampwing joined #nim |
02:52:06 | * | madmalik quit (Quit: Connection closed for inactivity) |
02:53:01 | * | reem joined #nim |
02:53:53 | * | sampwing quit (Ping timeout: 252 seconds) |
03:17:02 | * | vendethiel joined #nim |
03:25:13 | * | chrisheller quit (Remote host closed the connection) |
03:41:11 | * | vendethiel quit (Ping timeout: 252 seconds) |
03:46:41 | * | ChrisMAN quit (Ping timeout: 252 seconds) |
03:48:58 | * | a5i quit (Quit: Connection closed for inactivity) |
03:56:54 | * | johnsoft quit (Ping timeout: 244 seconds) |
03:57:10 | * | johnsoft joined #nim |
04:17:12 | * | jholland quit (Quit: Connection closed for inactivity) |
04:20:42 | * | chrisheller joined #nim |
04:22:10 | * | saml_ quit (Quit: Leaving) |
04:43:22 | * | Sornaensis quit (Excess Flood) |
04:43:58 | * | Sornaensis joined #nim |
05:00:22 | fowl | Araq, not sure what you mean, getType(somebool) returns a symbol for bool |
05:12:07 | * | Demos quit (Read error: Connection reset by peer) |
05:44:02 | * | madmalik joined #nim |
05:44:26 | * | reem quit (Remote host closed the connection) |
06:02:47 | akiradeveloper | how can I see the AST of type declaration? |
06:03:50 | akiradeveloper | And another question, is it possible to define pragma for type declartion? I want to generate proc from type |
06:05:02 | * | reem joined #nim |
06:06:12 | * | ^aurora^ joined #nim |
06:09:31 | akiradeveloper | .eval dumpTree(type T = object) |
06:15:12 | * | Demon_Fox__ quit (Quit: Leaving) |
06:15:54 | akiradeveloper | macros module is buggy!? |
06:22:28 | * | reem quit (Remote host closed the connection) |
06:24:44 | * | reem joined #nim |
06:32:40 | * | ARCADIVS joined #nim |
06:54:28 | * | xificurC joined #nim |
06:55:54 | fowl | akiradeveloper, you can retrieve it with getType() in devel |
06:56:07 | fowl | akiradeveloper, hold on i have an example for you |
06:58:24 | fowl | https://gist.github.com/fowlmouth/9c40de9a3700868a7419 |
07:03:19 | * | reem quit (Remote host closed the connection) |
07:15:28 | * | reem joined #nim |
07:22:35 | * | reem quit (Remote host closed the connection) |
07:23:03 | * | gsingh93 quit (Ping timeout: 244 seconds) |
07:24:07 | * | untitaker quit (Ping timeout: 250 seconds) |
07:30:39 | * | untitaker joined #nim |
07:32:48 | * | reem joined #nim |
07:35:32 | * | reem quit (Remote host closed the connection) |
07:37:15 | * | reem joined #nim |
07:42:54 | * | reem quit (Remote host closed the connection) |
07:44:05 | * | reem joined #nim |
07:49:45 | * | reem quit (Remote host closed the connection) |
07:49:46 | * | ^aurora^ quit (Quit: Leaving.) |
07:52:06 | akiradeveloper | fowl: I see. This would be a great help |
07:52:16 | * | reem_ joined #nim |
07:53:18 | fowl | did you see the link |
07:58:29 | * | chrisheller quit (Remote host closed the connection) |
07:59:58 | gokr | Morning! |
08:01:55 | akiradeveloper | yes |
08:03:19 | akiradeveloper | I am not sure L19 is correct |
08:27:40 | * | reem_ quit (Remote host closed the connection) |
08:28:13 | * | reem joined #nim |
08:29:56 | * | Trustable joined #nim |
08:30:05 | * | vendethiel joined #nim |
08:42:23 | fowl | akiradeveloper, getType() returns a symbol you can recursively check |
08:42:56 | fowl | that example is only useful for object types though |
08:59:01 | * | chrisheller joined #nim |
09:00:40 | novist | would anyone care to comment? https://github.com/novist/Nim/commit/712f31fbd44cb116991440ce0fa8b1f113dc1bae |
09:01:09 | novist | im unsure, maybe i overdid it a bit. maybe it would be enough expanding positional arguments only, leaving -l/-L and similar alone? |
09:03:29 | * | chrisheller quit (Ping timeout: 252 seconds) |
09:05:25 | * | reem quit (Remote host closed the connection) |
09:06:55 | * | reem joined #nim |
09:07:01 | * | reem quit (Remote host closed the connection) |
09:11:24 | * | reem joined #nim |
09:16:16 | * | tumult joined #nim |
09:35:12 | * | kapil___ joined #nim |
09:44:32 | * | reem quit (Remote host closed the connection) |
09:45:56 | * | BlaXpirit joined #nim |
09:46:54 | * | davidhq joined #nim |
09:50:18 | Araq | fowl: I mean that 'true' and 'false' do not resolve to an int literal like they do in the compiler. that was confusing me ;-) |
09:50:28 | Araq | novist: your patch is totally overdone |
09:50:45 | Araq | for a start / works fine in paths on windows you don't need to normalization |
09:50:52 | Araq | *to do |
09:51:02 | fowl | Araq, i noticed that enums resolve to int literals but when i put them in code it is the enum value |
09:52:35 | novist | alright, ill remove normalization. how about -l/-L? they should be ignored too? |
09:52:55 | Araq | yes and if defined(gcc) or defined(llvmgcc) or defined(clang) or defined(tcc) or defined(bcc) is completely wrong |
09:53:12 | Araq | that's not how can you do C compiler in the compiler itself |
09:53:24 | Araq | *you can detect the C compile |
09:53:51 | novist | oh rats. those are for what nim was compiled with.. well it was late yesterday :p |
09:54:22 | Araq | pragmas.nim must not depend on posix.nim |
09:54:48 | Araq | and IMO full paths should not be supported at all |
09:55:46 | Araq | absolute paths are simply horrible style |
09:56:01 | Araq | I see no point in supporting them |
09:56:30 | novist | you mean like line 410? |
09:56:55 | * | akiradeveloper quit (Ping timeout: 246 seconds) |
09:57:30 | Araq | yeah and speaking of which |
09:57:30 | * | epichero_ quit (Remote host closed the connection) |
09:57:35 | novist | its making sure so in case of full path its not treated as relative one and thus made invalid |
09:57:51 | Araq | passL should not do anything to its passed string |
09:58:08 | Araq | .passL is not the same as the .link pragma |
09:58:16 | Araq | .link is for files |
09:58:20 | Araq | .passL for options |
09:58:39 | novist | so.. urhonimo misuses passL by passing a lib to it? |
09:59:04 | Araq | yep |
09:59:16 | novist | great, entire patch based on wrong assumption :D |
09:59:27 | novist | nevertheless it was interesting to do it |
10:00:14 | Araq | well there are still issues with linking orders |
10:00:34 | Araq | that might have been the reason why I had to use passL instead of link |
10:01:01 | novist | i see. this one "feature" of gcc always bugged me. idk why crapy vcc can ignore order but gcc not.. |
10:01:27 | Araq | gcc still produces a.out files |
10:01:45 | Araq | time doesn't pass in unix land |
10:03:12 | novist | like linus said "if people are depending on bug its not a bug, its a feature" :| |
10:10:01 | dv- | probably because a thousand books teach people to expect a.out |
10:15:25 | Araq | that must be the same books that failed to grasp for decades now that passing *untyped* streams of bytes around is fundamentally not a good way to compose systems ;-) |
10:21:04 | novist | btw Araq i think this doesnt rly deserve PR so could you maybe whenever you commit next thing also commit chmod +x build.sh? unless there is good reason not to. its tedious to reset that file on every pull and readd +x after. |
10:22:06 | * | madmalik quit (Quit: Connection closed for inactivity) |
10:26:40 | fowl | you only need to run build.sh one time |
10:26:45 | fowl | when bootstrapping |
10:27:49 | novist | hmm well guess i did it a bit wrong. still though. tiny convenience thing to not need reset before pulling after first bootstrap |
10:30:49 | dom96 | you should just run 'sh build.sh' |
10:47:43 | * | arnetheduck joined #nim |
10:48:28 | * | chrisheller joined #nim |
10:48:35 | * | akiradeveloper joined #nim |
10:49:29 | akiradeveloper | oh, macros can't be recursive |
10:51:01 | * | BlaXpirit quit (Quit: Quit Konversation) |
10:52:45 | * | chrisheller quit (Ping timeout: 252 seconds) |
10:53:45 | akiradeveloper | but once it's wrapped by proc, it can be recursive |
10:58:18 | * | epichero joined #nim |
11:01:26 | def- | akiradeveloper: a recursive macro would be strange, since the macro gets replaced with the resulting AST |
11:03:16 | * | epichero quit (Ping timeout: 272 seconds) |
11:07:34 | akiradeveloper | I can't accomplish even a very simple macro. what's wrong? https://gist.github.com/akiradeveloper/45d1c5874b29d32e039d |
11:08:50 | novist | akiradeveloper: macro has to produce AST, the way you do it you should use template (i think TM) |
11:08:51 | def- | it returns nil |
11:09:15 | novist | we can return a code block as expr? |
11:11:25 | def- | akiradeveloper: i'm not sure what you're trying to do |
11:11:30 | akiradeveloper | I see. returning lambda is ok but I should create some proc node to return right? |
11:13:21 | fowl | akiradeveloper, return quote: before your code |
11:13:28 | fowl | and remove the .intval |
11:14:07 | fowl | as it is it could be a template if you remove the .intval |
11:15:15 | def- | Or with parseExpr: https://gist.github.com/def-/c3938ed802c810243bd8 |
11:15:34 | fowl | https://gist.github.com/fowlmouth/dc11f21ebd280be7f0b2 |
11:16:57 | akiradeveloper | it's so free |
11:18:25 | fowl | novist, yes |
11:18:48 | akiradeveloper | fowl:Error: `quote` cannot be passed to procvar |
11:18:56 | novist | wow this still does not stop to amaze me |
11:19:13 | akiradeveloper | should switch to devel? |
11:19:26 | akiradeveloper | (I want something like rvm) |
11:19:30 | fowl | you should be on devel its got bug fixes and new features |
11:19:36 | fowl | there is a nim-vm |
11:19:47 | fowl | https://github.com/ekarlso/nim-vm |
11:21:49 | akiradeveloper | nim-vm is great! I will try devel. btw, when it would be devel branch is merged into master? |
11:23:02 | def- | when 0.10.4 is released |
11:23:40 | ggVGc | how can I build the the documentation into the HTML output that is hosted online? |
11:23:52 | def- | ggVGc: ./koch web |
11:23:57 | ggVGc | thanks |
11:24:44 | fowl | akiradeveloper, fixed mac() |
11:25:59 | akiradeveloper | fowl: it's working with 0.10.2 |
11:26:13 | fowl | 0.10.2 doesnt have getType |
11:26:20 | fowl | so its not useful imo |
11:27:48 | akiradeveloper | yes. I didn't catch up with 0.10.3 |
11:31:50 | akiradeveloper | nim-vm is installed and now using devel yeah |
11:34:44 | def- | ggVGc: if you're trying to build the doc from devel branch, there's a small problem which prevents it. should be fixed here: https://github.com/Araq/Nim/pull/2310 |
11:36:04 | fowl | def-, nimdoc usually uses the same code as linux |
11:36:13 | def- | fowl: not in the async* stuff |
11:36:40 | fowl | when define(linux) or define(nimdoc) |
11:36:46 | fowl | oh how come |
11:37:03 | def- | I don't know |
11:47:03 | * | akiradeveloper quit (Remote host closed the connection) |
11:52:08 | * | filwit joined #nim |
11:58:07 | * | akiradeveloper joined #nim |
11:59:16 | * | epichero joined #nim |
12:00:27 | akiradeveloper | how can I compile this? https://gist.github.com/akiradeveloper/ad48385fbee3b4fd9a68 |
12:00:57 | fowl | akiradeveloper, dumptree: code |
12:01:03 | * | minus2 joined #nim |
12:01:08 | fowl | the echo is unnecessary |
12:01:47 | akiradeveloper | oh!!! |
12:02:00 | akiradeveloper | amazing |
12:05:04 | akiradeveloper | tuple[key: int, val: int] and tuple[key, val: Msg] are different in AST. This is obvious but annoying |
12:05:59 | * | a5i joined #nim |
12:06:11 | * | jaapz left #nim (#nim) |
12:08:33 | fowl | .eval import macros; dumplisp: (tuple[a,b: int], tuple[a:int, b:int]) |
12:09:02 | fowl | i guess the bot isnt working |
12:12:34 | * | kapil___ quit (Quit: Connection closed for inactivity) |
12:24:42 | * | minus2 quit () |
12:26:39 | * | epichero quit (Read error: Connection reset by peer) |
12:27:03 | * | epichero joined #nim |
12:30:55 | * | aleron joined #nim |
12:44:12 | * | n3vtelen joined #nim |
12:45:41 | * | LoneTech joined #nim |
12:47:42 | LoneTech | hello. I'm trying to compile the front page example with the spawns, and it produces a different error from the expected one: "cannot prove: i <= len(a) + -1". No matter how constant a is; even with while i<4 it says things like cannot prove: i <= 5 |
12:49:29 | LoneTech | just got past that case and get the terribly helpful Error: (i)..(i) not disjoint from (i)..(i) |
12:49:45 | LoneTech | (had to make i a subrange type) |
12:51:26 | * | wb joined #nim |
12:51:30 | * | epichero quit (Remote host closed the connection) |
12:52:05 | Trixar_za | Araq: http://www.xkcd.com/ |
12:52:38 | dom96 | LoneTech: Report it on github please. |
12:53:02 | Trixar_za | Noting the first two has been actually said about Nim. And by programmers. |
12:54:34 | * | akiradeveloper quit (Remote host closed the connection) |
12:54:51 | LoneTech | I'm at a loss as to what to report. The example isn't even close to compilable, and I'm a newbie. |
13:00:52 | LoneTech | http://pastebin.com/L4yb9V3g is where I've got so far |
13:08:24 | * | mpthrapp_ joined #nim |
13:10:24 | def- | LoneTech: really weird. I don't see you doing anything wrong, but then I've never used this parallel stuff |
13:10:25 | def- | it goes back to your old error with "const a = [1,2,3,4,5,6]" instead |
13:10:25 | def- | this should definitely not be on the front page if it doesn't even work |
13:11:05 | aleron | def-: that's a really great line, it should be in a quote bot somewhere |
13:12:25 | ggVGc | I hvae to say, I was just about to dive into rust after following it for months, and all of a sudden nim pops into my life from nowhere, and damn it looks pretty ace |
13:12:40 | ggVGc | and perfect for what I've currently been using a C/Lua combo for |
13:13:18 | * | n3vtelen left #nim (#nim) |
13:15:57 | LoneTech | maybe it's trying to make thread closures that wrap a[i] including the indexing operation, and thus complains about a shared i? |
13:19:12 | LoneTech | actually the rules described in http://nim-lang.org/manual.html#spawn-statement seem to make the whole demonstration moot. I'm confused. |
13:19:51 | def- | LoneTech: I would say something is just wrong with the disjoint checker |
13:20:48 | def- | look 2 sections below for a working parallel-spwan example |
13:21:01 | gokr | Araq went out for a sec, he can probably answer when he gets back |
13:22:03 | def- | or even 1 section |
13:22:23 | LoneTech | right, pi example runs |
13:23:46 | LoneTech | had to increase the iterations quite a lot to demonstrate parallelism, and it spends most of its time in sys showing silly inefficiency, but it does run (time shows real<user+sys) |
13:26:58 | LoneTech | also managed to modify pi example into one that shows a reasonable disjoint complaint |
13:27:26 | def- | LoneTech: got it working |
13:29:27 | def- | https://gist.github.com/def-/f23b20bc2827f6cfbdc6 |
13:29:46 | def- | it needs to be inside a proc to work |
13:30:55 | def- | and needed the countup |
13:31:41 | LoneTech | thank you. I had not found countup |
13:32:13 | * | Jehan_ joined #nim |
13:35:51 | LoneTech | still, that means even taken as a snippet the front page example doesn't compile with a different error than expected |
13:37:02 | LoneTech | when I put it into a proc it sanely complains that it would index out of range with a.high+1 |
13:38:38 | LoneTech | I really wonder why changing the condition from i<=a.high to i<a.high changes the error from can prove: i + 1 > 5 (true) to can prove: i > 5 (huh?) |
13:39:56 | LoneTech | changing it to i <= a.high-1 works |
13:42:55 | def- | LoneTech: I added the example to the issue: https://github.com/Araq/Nim/issues/2287 |
13:42:55 | * | mpthrapp quit (Remote host closed the connection) |
13:43:35 | * | Aszarsha joined #nim |
13:44:28 | LoneTech | thanks |
13:44:45 | def- | LoneTech: some problem with translating < to <= in the disjoint checker, I'd say |
13:45:20 | LoneTech | nim-mode seems to have gone 404 |
13:49:24 | def- | LoneTech: seems to work for me, where's the link? |
13:50:25 | LoneTech | http://nim-lang.org/question.html editor support |
13:50:59 | LoneTech | there seem to be three other repos |
13:51:17 | def- | I always went with this list: https://github.com/Araq/Nim/wiki/Editor-Support |
13:52:24 | * | epichero joined #nim |
13:53:50 | * | aleron quit (Quit: leaving) |
13:55:06 | * | akiradeveloper joined #nim |
13:55:10 | LoneTech | that linked to yet another repo. it's cute how the only information on actually using elpa is from an unattributed poorly edited comment. |
13:56:45 | * | epichero quit (Ping timeout: 244 seconds) |
13:57:11 | * | chrisheller joined #nim |
13:59:51 | * | akiradeveloper quit (Ping timeout: 256 seconds) |
14:11:08 | * | akiradeveloper joined #nim |
14:20:09 | * | ChrisMAN joined #nim |
14:33:09 | * | jsudlow__ joined #nim |
14:33:56 | * | jsudlow quit (Ping timeout: 246 seconds) |
14:36:28 | * | pregressive joined #nim |
14:39:58 | * | banister joined #nim |
14:53:06 | * | epichero joined #nim |
14:53:30 | * | jholland joined #nim |
14:56:25 | * | aleron joined #nim |
14:57:41 | * | epichero quit (Ping timeout: 246 seconds) |
14:59:29 | * | BlaXpirit joined #nim |
15:11:12 | * | akiradeveloper quit () |
15:22:52 | * | darkf quit (Quit: Leaving) |
15:26:40 | * | wb quit (Quit: See y'all around) |
15:31:58 | * | nande joined #nim |
15:36:25 | * | chrisheller quit (Remote host closed the connection) |
15:38:21 | * | pregressive quit (Remote host closed the connection) |
15:45:47 | * | madmalik joined #nim |
15:47:36 | * | aleron quit (Quit: leaving) |
15:48:23 | * | Jesin quit (Quit: Leaving) |
15:49:59 | * | chrisheller joined #nim |
15:51:49 | * | pregressive joined #nim |
15:53:47 | * | gmpreussner|work quit (Read error: Connection reset by peer) |
15:54:11 | * | Jesin joined #nim |
16:04:20 | * | epichero joined #nim |
16:12:50 | * | AckZ quit (Ping timeout: 265 seconds) |
16:13:18 | * | mnemonikk quit (Ping timeout: 265 seconds) |
16:14:18 | * | tmku quit (Ping timeout: 265 seconds) |
16:14:46 | * | Shoozza quit (Ping timeout: 265 seconds) |
16:14:58 | * | tmku joined #nim |
16:15:51 | * | mnemonikk joined #nim |
16:16:52 | * | brson joined #nim |
16:17:04 | * | Shoozza joined #nim |
16:19:24 | * | a5i quit () |
16:22:14 | * | AckZ joined #nim |
16:31:51 | * | TEttinger quit (Ping timeout: 244 seconds) |
16:33:33 | * | TEttinger joined #nim |
16:43:04 | * | Aszarsha quit (Ping timeout: 252 seconds) |
16:43:42 | * | wb joined #nim |
16:45:41 | * | ARCADIVS quit (Quit: ARCADIVS) |
16:50:29 | * | wb_ joined #nim |
16:54:48 | * | wb quit (Ping timeout: 256 seconds) |
16:54:55 | * | pregressive quit (Remote host closed the connection) |
16:55:17 | * | pregressive joined #nim |
16:55:53 | * | gmpreussner|work joined #nim |
16:56:41 | * | pregressive quit (Remote host closed the connection) |
16:57:10 | * | pregressive joined #nim |
16:58:43 | * | pregressive quit (Read error: Connection reset by peer) |
17:08:07 | * | enquora joined #nim |
17:09:31 | * | nimnoob123 joined #nim |
17:15:07 | * | tumult quit (Ping timeout: 246 seconds) |
17:30:30 | * | epichero quit (Remote host closed the connection) |
17:42:30 | * | ^aurora^ joined #nim |
17:48:38 | * | nande quit (Read error: Connection reset by peer) |
17:53:01 | * | icebattle joined #nim |
17:55:58 | * | edayo joined #nim |
17:56:45 | * | edayo quit (Client Quit) |
18:01:23 | * | chrisheller quit (Ping timeout: 252 seconds) |
18:04:32 | * | jefus joined #nim |
18:09:49 | * | gsingh93 joined #nim |
18:18:59 | * | chrisheller joined #nim |
18:21:02 | * | quasinoxen quit (Read error: Connection reset by peer) |
18:22:19 | * | quasinoxen joined #nim |
18:30:27 | nimnoob123 | EventType and Event is probably the most annoying types in the sdl2 bindings port |
18:31:13 | * | epichero joined #nim |
18:31:44 | * | epichero quit (Read error: Connection reset by peer) |
18:32:03 | nimnoob123 | constant can't initialize type errors if you try to use them in your object as a variable type, even when initializing them through the object initializer |
18:32:15 | * | epichero joined #nim |
18:33:34 | fowl | nimnoob123, please tell Araq how much that bothers you, in the mean time `var event = sdl2.defaultEvent` will stop the errors |
18:34:02 | nimnoob123 | they don't stop the errors when trying to use it inside an object |
18:34:50 | nimnoob123 | let me create an example gist to show you my frustration |
18:35:07 | fowl | ok |
18:38:22 | Araq | what? |
18:38:26 | ekarlso | flaviu: ping |
18:38:35 | Araq | nimnoob123: what bothers you? |
18:38:45 | fowl | forced initialization |
18:39:02 | fowl | at least give us a pragma to get around it -_- |
18:39:40 | Araq | well it's a warning |
18:39:44 | Araq | you can turn it off |
18:39:48 | fowl | its an error |
18:39:59 | Araq | oh |
18:40:00 | nimnoob123 | trying to figure out if there's something more to my issue than I make it out to be |
18:40:29 | * | Matthias247 joined #nim |
18:43:06 | nimnoob123 | https://gist.github.com/G4MR/157932e01f5b5f58ef3c line 11 & 23 if I compile this: https://gist.github.com/G4MR/075e0d7e2d073fc3cd61 I get an error: "field not initialized draw_proc", now if I remove any occurrence of etype everything works as expected |
18:44:05 | nimnoob123 | I've tried a handful of 'workarounds', but nothing really works for sdl2.eventtype or sdl2.event |
18:47:11 | nimnoob123 | Now I say there has to be a bigger issue because I created a simpler object to test the same thing without issue, so I'm wondering if I failed somewhere else within my code. Since those lines cause everything else to fail unless I remove them |
18:48:00 | Araq | btw you don't need the ': void' everywhere |
18:48:16 | Araq | I wish I knew why people do this, no tutorial does that |
18:48:16 | nimnoob123 | i know, but I like it |
18:49:05 | nimnoob123 | feels more consistent (reading wise) with other procs/methods that actually return a type |
18:49:32 | Araq | *shrug* |
18:50:45 | def- | Araq: I guess they do it mostly because it's what they're used to from some other languages |
18:51:11 | def- | You wonder how to write a proc without a return type, think about C, remember "void", try it out, and it works |
18:52:21 | Araq | nimnoob123: if isNil(self.events_proc) == false: # 'not' is a thing in Nim |
18:53:07 | nimnoob123 | im just using the features that are available to me |
18:53:40 | nimnoob123 | but yeah I'd rather figure out my issue first than changing syntax related things |
18:54:20 | Araq | well EventType is some enum that doesn't have 0, so it needs to be initialized |
18:55:01 | nimnoob123 | yeah and when i try to initialize it with say EventType.QuitEvent it throws an error regarding my draw_proc method, if I remove the event type stuff all together it doesn't throw that error |
18:55:37 | nimnoob123 | which doesn't really make sense to me |
18:55:39 | Araq | well that looks like a compiler bug |
18:56:00 | nimnoob123 | im using the latest from github |
18:59:19 | nimnoob123 | def- yeah I guess that make sense, I don't really realize I'm doing it tbh. I've written a void proc both ways, forcefully w/out the void and instinctively with void lol ¯\_(ツ)_/¯ |
19:00:04 | fowl | Araq, no pointer type should have to be initialized unless its "not nil" |
19:00:08 | Araq | nimnoob123: fixed. can I have a test program? |
19:00:16 | Araq | or an issue number? |
19:00:20 | nimnoob123 | yeah let me pull latest, sec |
19:00:30 | nimnoob123 | oh let me upload to github |
19:00:42 | Araq | nimnoob123: no, I want an issue |
19:00:48 | Araq | haven't pushed anything |
19:00:58 | nimnoob123 | oh, sec |
19:01:03 | Araq | fowl: yes, I fixed that as well |
19:02:13 | * | smodo quit (Quit: Leaving) |
19:05:40 | nimnoob123 | Araq: Didn't know how to title it: https://github.com/Araq/Nim/issues/2316 |
19:06:12 | fowl | nimnoob123, you know how to get past taht right? draw_proc = nil, ... for each proc field |
19:07:05 | fowl | weird the existence of EventType makes it care about initialized fields |
19:08:59 | nimnoob123 | yeah, just tried that. works when i set everything to nil - weird because it doesn't care at all w/out the EventType |
19:10:16 | nimnoob123 | guess it's time to wait to see Araq's changes |
19:11:06 | nimnoob123 | have to admit, i've been kind of gitty when i started this project lol went out and bought a domain too :# |
19:11:28 | fowl | nimnoob123, what do you store EventType for? |
19:12:52 | nimnoob123 | well before i tried to just pass it to the events method (or events_proc) and I got an error regarding initializing EventType/Event |
19:13:04 | nimnoob123 | so I said lets try storing it to see if that works |
19:13:08 | nimnoob123 | then I sort of gave up |
19:13:08 | * | madmalik left #nim (#nim) |
19:13:33 | nimnoob123 | "hey those kind folks on irc know this stuff better than me, worth a shot" :) |
19:15:49 | fowl | can i make a suggestion since you're using a vtable-like pattern |
19:15:56 | nimnoob123 | sure |
19:17:43 | nimnoob123 | ah just noticed he put up the fix, gonna test it now |
19:17:54 | fowl | separate your vtable from App like so https://gist.github.com/fowlmouth/2862a0569295102e21e5 |
19:19:06 | nimnoob123 | alright cool, will try it out |
19:19:28 | fowl | if you needed to call a super method from your app you can call it like defaultVT.draw(app) |
19:19:35 | * | reem joined #nim |
19:21:00 | nimnoob123 | ye, looks good. I'll test it out and see how it goes. |
19:21:23 | Araq | # Before you say, hey this isn't initialized, |
19:21:25 | Araq | # uncomment the next line! |
19:21:40 | Araq | but the next line initializes q, not p ... |
19:26:16 | nimnoob123 | compiles now :) |
19:27:09 | nimnoob123 | is nim targetting a summer 1.0 release like rust? just out of curiosity |
19:27:45 | Araq | dunno, progress is decent so I still hope we can release 1.0 earlier |
19:28:23 | nimnoob123 | that'd be nice |
19:33:27 | * | bcinman quit (Quit: My Mac has gone to sleep. ZZZzzz…) |
19:34:06 | * | bcinman joined #nim |
19:36:12 | * | bcinman quit (Client Quit) |
19:36:42 | * | pregressive joined #nim |
19:38:23 | * | bcinman joined #nim |
19:47:11 | Araq | lol I confused unary - with unary < in the disjoint checker |
19:48:13 | filwit | 141 users looks like a new record, dom96 |
19:48:36 | filwit | according to your gist: https://gist.github.com/dom96/da2d4dead6fb00b71312 |
19:51:53 | * | epichero quit (Read error: Connection reset by peer) |
19:52:02 | * | epichero joined #nim |
20:08:09 | * | Aszarsha joined #nim |
20:10:14 | nimnoob123 | are there any ide projects in the work? |
20:10:38 | onionhammer | nimnoob123 yeah aporia |
20:10:44 | onionhammer | but nimlime is far superior :) |
20:10:45 | nimnoob123 | oh yeah derp |
20:10:51 | onionhammer | in my biased opinion :P |
20:11:03 | nimnoob123 | i could never get aporia working on windows, can't remember why |
20:11:13 | onionhammer | i've gotten it working on win before |
20:11:24 | onionhammer | there's a lot of dependencies u need to get before it'll run |
20:11:36 | nimnoob123 | i tried nimlime, but it screws up my tabbing |
20:11:47 | onionhammer | oh? |
20:11:51 | onionhammer | in what way? |
20:11:53 | nimnoob123 | it would double tab (8 space) over 4 space for some reason |
20:12:06 | onionhammer | that... doesnt sound right |
20:12:12 | nimnoob123 | so I just ripped the syntax highlighter out |
20:12:16 | nimnoob123 | lol |
20:12:18 | onionhammer | I helped write it and I always use 4 spaces |
20:12:35 | nimnoob123 | i haven't tried it recently, this was maybe a month ago |
20:12:48 | onionhammer | yeah month wouldnt be a big change |
20:16:05 | onionhammer | araq nimsuggest is giving me websockets.nim(12, 66) Error: cannot open 'sha1' |
20:16:19 | onionhammer | araq but sha1 module is installed (via jester) and websockets.nim compiles |
20:17:05 | nimnoob123 | onionhammer, is the keyword list updated in the syntax highlighter for nimlime? there's some keywords like "not" that display like a variable |
20:17:21 | nimnoob123 | (note I haven't updated in over a month or so) |
20:18:21 | onionhammer | not is considered an operator |
20:18:32 | nimnoob123 | ah |
20:18:33 | onionhammer | how ST highlights operators depends on your theme |
20:18:37 | nimnoob123 | guess that makes sense |
20:20:51 | nimnoob123 | guess ill try nimlime again w/ the latest dev version of ST3 (so glad he's working on ST again) |
20:21:33 | onionhammer | yeah thats a relief |
20:21:46 | onionhammer | I would also clone directly from the nimlime repo into your packages folder rather than getting the version on package control |
20:22:03 | onionhammer | we're working towards another release to package control but the one out there is pretty out of date |
20:22:44 | * | wb_ quit (Quit: See y'all around) |
20:23:26 | nimnoob123 | alright |
20:27:24 | * | pregressive quit (Remote host closed the connection) |
20:28:40 | * | icebattle quit (Read error: Connection reset by peer) |
20:29:46 | * | icebattle joined #nim |
20:29:46 | * | icebattle quit (Client Quit) |
20:32:30 | * | pregressive joined #nim |
20:34:31 | * | pregressive quit (Remote host closed the connection) |
20:35:27 | * | pregressive joined #nim |
20:43:47 | * | chrisheller quit (Remote host closed the connection) |
20:50:31 | * | ^aurora^ quit (Quit: Leaving.) |
20:54:56 | * | ^aurora^ joined #nim |
20:57:18 | * | bcinman quit (Quit: My Mac has gone to sleep. ZZZzzz…) |
20:58:42 | * | reem quit (Remote host closed the connection) |
20:59:12 | * | mpthrapp_ quit (Remote host closed the connection) |
21:00:33 | * | reem joined #nim |
21:01:27 | * | bcinman joined #nim |
21:03:04 | * | reem quit (Remote host closed the connection) |
21:05:46 | * | fizzbooze joined #nim |
21:12:37 | * | reem joined #nim |
21:12:54 | * | chrisheller joined #nim |
21:25:02 | * | fizzbooze quit (Ping timeout: 252 seconds) |
21:25:32 | * | chrisheller quit (Read error: Connection reset by peer) |
21:27:40 | flaviu | ekarlso: pong |
21:28:35 | * | chrisheller joined #nim |
21:32:58 | fowl | onionhammer, should i subclass pp::test to test clibpp or make another 2 classes |
21:37:12 | onionhammer | fowl up to you as long as it covers it |
21:37:16 | onionhammer | i dont have a preference |
21:37:30 | fowl | alright |
21:37:34 | nimnoob123 | A bit off topic, but do any of you guys have an inbox account (new google inbox for mobile thingy) |
21:37:36 | onionhammer | thanks! |
21:37:40 | ekarlso | flaviu: pp::test ? :P puppet ? :p |
21:37:57 | ekarlso | onionhammer: http://185.56.186.94/#/ |
21:38:23 | ekarlso | flaviu: updated to handle options also .. |
21:38:39 | nimnoob123 | does it support nimble ;)? |
21:38:51 | flaviu | ekarlso: Looks great, let me see if it still has security holes |
21:38:59 | fowl | ekarlso, needs sharing links |
21:39:00 | ekarlso | flaviu: :p |
21:39:03 | ekarlso | fowl: ... |
21:39:27 | fowl | are they there and i dont see them? |
21:39:32 | ekarlso | fowl: not yet ;p |
21:39:46 | fowl | oh |
21:39:56 | fowl | good choice on the material ui, looks really nice |
21:40:11 | flaviu | ekarlso: I think fowl is joking, but a url symbol for a permalink in the corner of the input and output boxes would be great. |
21:40:46 | ekarlso | if someone wants syntax highlight also please submit a "mode" to ace editor to give us syntax highlighting ! :D |
21:41:35 | * | BlaXpirit_ joined #nim |
21:43:57 | flaviu | ekarlso: The response upon an error is to just return 502 with a stack trace. |
21:44:16 | ekarlso | flaviu: .... |
21:44:24 | * | BlaXpirit quit (Ping timeout: 245 seconds) |
21:44:26 | ekarlso | that's dom96's fault for having sad error handling :p |
21:44:27 | flaviu | It might be better if a dialog or whatever the material equivalent is showed up. |
21:44:28 | ekarlso | in jester :P |
21:44:43 | flaviu | ekarlso: yep. But users won't know that. |
21:44:50 | ekarlso | :p |
21:45:21 | ekarlso | dom96: fix fix :p |
21:45:31 | flaviu | also, --passC:-O3 fails. |
21:45:51 | fowl | surely you can set an error handler? |
21:46:35 | ekarlso | flaviu: meh :( |
21:46:41 | ekarlso | flaviu: how to allow for all options -,,- |
21:46:55 | ekarlso | fowl: nope I dont think so :P |
21:47:25 | ekarlso | not that I can see here at least : https://github.com/dom96/jester/blob/master/jester.nim |
21:49:44 | ekarlso | suggestiosn for how to allow that flaviu ? |
21:49:59 | flaviu | give me a moment |
21:57:49 | flaviu | ekarlso: Make a temporary directory, dump the command as-is into a file in that directory, bind that dir read-only to the playpen, and run `sh /command`. |
21:58:30 | flaviu | That works because you have 100% control over what gets sent to the shell, and the `sh /command` is in the sandbox so you don't care what it does. |
21:59:09 | ekarlso | only thing that annoyed me flaviu was how the mount stuff worked :/ |
21:59:15 | ekarlso | couldn't really get hang of that |
22:00:05 | * | chrisheller quit (Ping timeout: 252 seconds) |
22:02:59 | flaviu | it binds /foo/bar/ to sandbox_loc/foo/bar/ |
22:03:14 | flaviu | source code is pretty short: https://github.com/thestinger/playpen/blob/master/playpen.c |
22:04:49 | * | matkuki joined #nim |
22:06:34 | matkuki | I'm playing around with linear equations and get a return float value when echo-ing "1.#INF". What is that? |
22:09:47 | * | shalabh joined #nim |
22:11:03 | shalabh | hello |
22:11:10 | shalabh | how do i print the type(x) |
22:11:20 | Araq | matkuki: fixed in devel |
22:11:28 | Araq | but it means "infinity" |
22:11:49 | Araq | shalabh: import typetraits |
22:13:08 | shalabh | Araq:ok |
22:13:45 | ekarlso | flaviu: so what, write the command to a shell script ? ^ |
22:13:57 | ekarlso | flaviu: how to detect status then -,,- |
22:14:01 | ekarlso | or exit code |
22:14:35 | flaviu | "the exit status of the script is the exit status of the last command executed in the script" |
22:14:49 | ekarlso | ok :p |
22:14:51 | flaviu | so just add an exit at the end of the script |
22:15:32 | matkuki | Araq: Thanks. |
22:15:35 | shalabh | hmm didn't work |
22:16:24 | shalabh | test.nim(20, 7) Error: type mismatch: got (typedesc[Obj]) |
22:16:59 | shalabh | ok name(type(x)) works |
22:17:11 | * | chrisheller joined #nim |
22:17:44 | shalabh | but type(x).name doesn't work |
22:18:33 | shalabh | weird |
22:18:59 | shalabh | type(x).name is not the same as (type(x)).name ? |
22:19:12 | shalabh | oh type probably isn't a proc |
22:20:23 | shalabh | Araq:so after playing around I think strings being value types is the right choice for consistency |
22:20:47 | shalabh | I was under the impression isn't not fully consistent (from earlier irc conversations and forum messages) |
22:21:02 | shalabh | but looks like it's actually quite consistent with 'object' |
22:21:59 | ekarlso | onionhammer: did you ever get a readme going ? :p |
22:23:01 | Araq | shalabh: the type() parsing has been reported already |
22:24:13 | * | fizzbooze joined #nim |
22:24:43 | shalabh | Araq:heh ok. I hit quite a few confusing moments, in particular `echo (type(x)).name` didn't work either. |
22:25:00 | shalabh | but I think I figured it out. That is really `echo(..).name` |
22:38:36 | * | chrisheller quit (Remote host closed the connection) |
22:39:06 | * | vendethiel quit (Ping timeout: 252 seconds) |
22:40:47 | nimnoob123 | thanks on the typetraits stuff, been wanting to figure that out for a while now |
22:41:08 | * | pregressive quit () |
22:41:18 | ^aurora^ | Araq: should i file a bug-report regarding this strange issue compiling something with "-d:ssl" on osx and getting all kinds of strange SIGSEGV errors afterwards? you asked me to disable all code in CRYPTO_malloc_init and this indeed helped for me, but i have to do it always again as soon as i update … |
22:41:29 | * | vendethiel joined #nim |
22:42:00 | Araq | ^aurora^: it's called a "PR" aka "pull request" |
22:42:08 | Araq | might want to do that :P |
22:42:42 | ^aurora^ | ok :P but is it the right way to do it? … maybe there are unwanted side-effects on other platforms afterwards :) |
22:43:26 | Araq | well we never did it on windows |
22:43:34 | Araq | so surely it cannot be too bad |
22:43:52 | ^aurora^ | ok … than … PR is coming soon. thanks :) |
22:43:57 | Araq | there are more ssl issues btw |
22:44:32 | Araq | http://forum.nim-lang.org/t/999 |
22:45:18 | Araq | OpenSSL is such a joke ... |
22:45:35 | ^aurora^ | oh ok … good to know … so far everything seems to work quite good for me :) |
22:53:40 | onionhammer | ekarlso nei |
22:54:13 | onionhammer | ekarlso werent u going to update the readme w/ instructions for setting up via vagrant? :P |
22:58:13 | matkuki | Is flaviu here? |
22:59:15 | * | xificurC quit (Ping timeout: 250 seconds) |
23:02:46 | matkuki | flaviu's OOP macro fails to compile with 'devel': Error: illformed AST: static[MyVar: string] |
23:04:27 | * | vendethiel quit (Ping timeout: 245 seconds) |
23:06:10 | flaviu | matkuki: I'm here, one moment. |
23:06:53 | matkuki | flaviu: Thanks. It fails at the first attribute of my class, if it helps. |
23:11:10 | * | chrisheller joined #nim |
23:12:14 | reactormonk | matkuki, just toss him some code |
23:12:34 | flaviu | I haven't pulled upstream devel in a while, I' |
23:12:39 | flaviu | m compiling it atm |
23:12:40 | matkuki | no problem, just a sec... |
23:16:52 | matkuki | flaviu: This is your OOP macro, that you helped me modify a bit: https://bpaste.net/show/b223a52c9e62 |
23:16:53 | matkuki | And this is my abbreviated class example that fails: https://bpaste.net/show/50119189b126 |
23:20:33 | * | girvo joined #nim |
23:20:53 | flaviu | matkuki: works for me |
23:22:17 | * | Trustable quit (Remote host closed the connection) |
23:24:17 | flaviu | matkuki: Try pulling the very latest devel |
23:29:30 | matkuki | flaviu: That did it! Repulled, recompiled and reinstalled everything and it works! |
23:29:31 | matkuki | Probably forgot to copy everything the last time. Thanks again! |
23:29:57 | flaviu | np |
23:33:06 | * | Matthias247 quit (Read error: Connection reset by peer) |
23:39:27 | * | epichero_ joined #nim |
23:39:36 | * | gmpreussner|work quit (Read error: Connection reset by peer) |
23:40:42 | * | davidhq quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
23:40:53 | * | epichero quit (Read error: Connection reset by peer) |
23:50:11 | * | chrisheller quit (Remote host closed the connection) |
23:54:08 | * | filwit quit (Ping timeout: 256 seconds) |
23:58:21 | * | chrisheller joined #nim |