<< 16-02-2014 >>

00:00:14VarriountAraq: Sent the PR for replacing 'nil' usages for tests with 'discard'
00:00:43Matthias247thanks and gn8 everyone
00:01:35*Matthias247 quit (Read error: Connection reset by peer)
00:03:19*skyfex quit (Ping timeout: 260 seconds)
00:03:58*skyfex joined #nimrod
00:10:40*tinAndi quit (Quit: ChatZilla 0.9.90.1 [Firefox 27.0.1/20140212131424])
00:14:58*brihat quit (Read error: Connection reset by peer)
00:15:57skyfexYay.. I think i fixed my first bug in Nimrod
00:16:18*brihat joined #nimrod
00:28:00EXetoCthis calls for bacon
00:33:11*surma quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
00:47:16EXetoCno one?
00:48:30*io2 quit ()
00:58:39*XAMPP quit (Quit: Drink all the Booze; Hack all the Things; Kill all the Humans;)
01:00:57*Varriount slaps EXetoC around a bit with a giant slab of bacon
01:01:07EXetoCnom
01:01:50*XAMPP-8 joined #nimrod
01:12:30*brson quit (Ping timeout: 252 seconds)
01:30:24*skyfex quit (Quit: Computer has gone to sleep.)
01:37:19VarriountAnyone know which version of SDL the sdl wrapper in the nimrod stdlib wraps?
01:37:42filwit1.2 i believe, but fowl has a 2.0 wrapper
01:37:46filwitbrb
01:50:40*ehaliewicz joined #nimrod
02:01:31*Demos quit (Ping timeout: 245 seconds)
02:20:41*q66 quit (Quit: Leaving)
02:21:20*q66 joined #nimrod
02:21:20*q66 quit (Changing host)
02:21:20*q66 joined #nimrod
02:27:46*XAMPP-8 quit (Ping timeout: 245 seconds)
02:30:04*XAMPP-8 joined #nimrod
03:00:55*xtagon joined #nimrod
03:06:59*brson joined #nimrod
03:07:20*brson_ joined #nimrod
03:11:10*brson quit (Ping timeout: 246 seconds)
03:15:41*Clinteger\c quit (Ping timeout: 272 seconds)
03:19:21*Clinteger\c joined #nimrod
03:19:21*Clinteger\c quit (Changing host)
03:19:21*Clinteger\c joined #nimrod
03:21:31*XAMPP-8 quit (Ping timeout: 245 seconds)
03:22:28*brson_ quit (Quit: leaving)
03:22:45*brson joined #nimrod
03:25:39*xtagon quit (Read error: Connection reset by peer)
03:26:03*xtagon joined #nimrod
03:30:37*brson_ joined #nimrod
03:31:20*brson_ quit (Client Quit)
03:31:47*brson_ joined #nimrod
03:33:13*brson quit (Ping timeout: 246 seconds)
03:41:35*DAddYE joined #nimrod
03:45:48*DAddYE quit (Remote host closed the connection)
03:46:15*DAddYE joined #nimrod
03:50:57*DAddYE quit (Ping timeout: 265 seconds)
04:13:36*brson joined #nimrod
04:16:30*carum joined #nimrod
04:17:11*brson_ quit (Ping timeout: 260 seconds)
04:29:02*XAMPP-8 joined #nimrod
04:35:36*XAMPP_8 joined #nimrod
04:35:47*XAMPP-8 quit (Ping timeout: 245 seconds)
04:37:06*brson_ joined #nimrod
04:39:47*brson quit (Read error: Operation timed out)
05:03:48*DAddYE joined #nimrod
05:06:49*BitPuffin quit (Ping timeout: 260 seconds)
05:11:22*ddl_smurf quit (Quit: ddl_smurf)
05:16:34*carum quit (Remote host closed the connection)
05:21:09*carum joined #nimrod
05:35:25reactormonkEXetoC, I messed with #925 a bit
05:40:07*carum quit (Remote host closed the connection)
05:43:06*carum joined #nimrod
05:46:04*ics quit (Ping timeout: 252 seconds)
05:47:05*ics joined #nimrod
05:58:02*DAddYE quit (Remote host closed the connection)
05:58:33*DAddYE joined #nimrod
06:03:25*DAddYE quit (Ping timeout: 272 seconds)
06:07:05*aftersha_ joined #nimrod
06:10:08*xtagon quit (Read error: Connection reset by peer)
06:19:30*DAddYE joined #nimrod
06:27:01*ddl_smurf joined #nimrod
06:35:56*aftersha_ quit (Quit: Computer has gone to sleep.)
06:36:56*XAMPP_8 quit (Ping timeout: 245 seconds)
06:41:38*XAMPP_8 joined #nimrod
06:50:16*XAMPP_8 quit (Ping timeout: 245 seconds)
07:13:35fowlwont the debug template in logging.nim interfere with -d:debug
07:16:06*noam quit (Ping timeout: 245 seconds)
07:29:08*brson joined #nimrod
07:30:21*brson_ quit (Ping timeout: 252 seconds)
07:45:12*brson quit (Quit: leaving)
07:45:32*brson joined #nimrod
08:00:59*[1]Endy joined #nimrod
08:51:58*noam joined #nimrod
08:56:54*sale4one joined #nimrod
09:04:45*Matthias247 joined #nimrod
09:09:23*skyfex joined #nimrod
09:20:24*[2]Endy joined #nimrod
09:22:55*[1]Endy quit (Ping timeout: 272 seconds)
09:33:33*sale4one quit (Remote host closed the connection)
09:42:33*ehaliewicz quit (Ping timeout: 272 seconds)
10:13:18*skyfex quit (Quit: Computer has gone to sleep.)
10:14:27*skyfex joined #nimrod
10:22:00*brson quit (Quit: leaving)
10:29:41Araqhi skyfex
10:29:46skyfexHi Araq
10:31:06NimBotAraq/Nimrod devel 8e3e92c Clay Sweetser [+0 ±26 -0]: Changed tests and tools to use 'discard' statements instead of 'nil' for empty blocks.
10:31:06NimBotAraq/Nimrod devel 2a1b9b4 Andreas Rumpf [+0 ±26 -0]: Merge pull request #928 from Varriount/testement/nil-to-discard... 2 more lines
10:32:10Araqyour patch looks superb :-)
10:34:03skyfexthanks!
10:34:13Araqp.blocks[result].nestedTryStmts = p.nestedTryStmts.len.int16 # hu?
10:34:49Araqah never mind
10:36:09NimBotAraq/Nimrod devel d352a79 Audun Wilhelmsen [+1 ±2 -0]: Fixed issue 391 (nested break in except-stmts)
10:36:09NimBotAraq/Nimrod devel 5877c9a Andreas Rumpf [+1 ±2 -0]: Merge pull request #929 from skyfex/devel... 2 more lines
10:37:46skyfexAraq: I'm actually looking at the two other issues a bit now.. And when trying to test out finally I stumbled across something else:
10:37:49skyfexhttps://gist.github.com/skyfex/1d05b712f89ec2cab673
10:38:10skyfexIs that a known issue?
10:38:26Araqnope
10:38:40Araqshould be easy to fix though
10:39:13*DAddYE quit (Remote host closed the connection)
10:39:47*DAddYE joined #nimrod
10:41:59skyfexWhat do you call code that's written directly in a module, i.e. outside procs. etc.? Module code?
10:42:12Araq"top level statements"
10:43:44Araqthey are currently processed one statement at a time, which means suprising things like:
10:43:49Araqvar x: ref int
10:43:51Araqnew x
10:44:00AraqnotNil x # can't prove 'x' is not nil
10:44:15*DAddYE quit (Ping timeout: 252 seconds)
10:44:16Araqput it in a proc main and it compiles
10:45:59skyfexah, Ah
10:46:33skyfexbtw, do I do anything with the issue I fixed? should i comment in it that the pull request solves it or..?
10:47:03Araqthe comit message should be "fixes #xyz"
10:47:18Araqand then github closes the bug atuomatically when I merge it
10:47:19*foodoo joined #nimrod
10:49:20skyfexOkay, now I know :)
10:50:18skyfexWell I suppose you have to close this one manually then: https://github.com/Araq/Nimrod/issues/391
10:50:47skyfexI was just missing the #
10:56:07*filwit quit (Quit: Leaving)
10:56:53NimBotAraq/Nimrod devel 009cb96 Grzegorz Adam Hankiewicz [+0 ±1 -0]: Splits token parsing case into separate proc. Refs #740.
10:56:53NimBotAraq/Nimrod devel e44fcd0 Grzegorz Adam Hankiewicz [+0 ±1 -0]: Supports parsing format times without separators. Refs #740.
10:56:53NimBotAraq/Nimrod devel 1e80e9b Andreas Rumpf [+0 ±1 -0]: Merge pull request #921 from gradha/pr_improves_times_format... 2 more lines
11:02:20AraqVarriount: do we really need NIMROD_BIN_PATH as environment variable, env vars suck
11:04:21*io2 joined #nimrod
11:50:18*DAddYE joined #nimrod
11:54:47*DAddYE quit (Ping timeout: 265 seconds)
12:04:04EXetoCreactormonk: ok
12:06:05EXetoCreactormonk: me too, but I haven't gotten far
12:07:48EXetoCAraq: so, does 'header' work with C++? and are the namespaces in some of the C headers a non-standard GCC thing?
12:10:08EXetoCin which case you either need to work around that, or use C++'s wrappers (cstdio etc) and qualify with std::
12:12:30fowlEXetoC, header is the only way to work with c++
12:14:55EXetoCbut then again, it worked when I extended nimbase.h
12:18:14*carum quit (Ping timeout: 246 seconds)
12:18:51*carum joined #nimrod
12:27:29*carum quit (Read error: Connection reset by peer)
12:28:02*carum joined #nimrod
12:28:57*ddl_smurf quit (Quit: ddl_smurf)
12:38:29*carum quit (Ping timeout: 248 seconds)
12:38:29*foodoo quit (Ping timeout: 248 seconds)
12:39:23*carum joined #nimrod
13:11:29*aftersha_ joined #nimrod
13:17:57*aftersha_ quit (Quit: Computer has gone to sleep.)
13:54:11NimBotAraq/Nimrod newasync 721ac83 Dominik Picheta [+0 ±1 -0]: Fixes issues with 'discard' in async macro.
13:54:11NimBotAraq/Nimrod newasync b16419f Dominik Picheta [+1 ±0 -0]: Added await test.
14:13:45*foodoo joined #nimrod
14:14:57*BitPuffin joined #nimrod
14:18:51*darkf quit (Quit: Leaving)
14:20:35*BitPuffin quit (Quit: WeeChat 0.4.3)
14:26:37skrylaris it safe to cast between strings and pointers?
14:26:54skrylari have this gap buffer module now, wanted to optimize it a bit but i can't use memmove on strings
14:27:44Araqit's usually much better to *convert* it to cstring
14:28:47Araqor you do addr(s[0]) which does pretty much the same
14:38:11renesac Araq, I want to stab math.nim: are functions like pow supposed to throw exceptions (overflow, etc)?
14:41:00Araqgood question
14:41:11AraqI think they should produce +I
14:41:17Araq+-INF, NaN
14:41:34renesacright, but you asked for a pow for int
14:42:06Araqwell pow for int does the proper thing automatically
14:42:26Araqwhen it uses integer math (and it should)
14:42:41renesacright
14:42:50Araqthen the * already throws when overflow checking is turned on
14:43:19renesacand negative exponents should be forbidden, or we try to come up with an answer?
14:44:35AraqI think I'd simply assert y >= 0 or make y a natural
14:44:48renesacpython automatically outputs a float in those cases, but with nimrod type system it is impossible
14:44:55renesacwhen using ** operator
14:45:12Araqyeah, but that's a bad idea anyway
14:46:50renesacok, it should break some code like "pow(10, -1)"
14:47:11renesacthat currently is converted to float version of pow
14:47:14renesacbut no big deal
14:48:04Araqhmm that's nasty
14:48:26Araqadd that to news.txt then please
14:48:45renesacok
14:48:59renesacI also want 'sum()' to accept varargs
14:49:23renesacit is convenient to do "sum(a, b, c, d)" instead or a + b + c + d
14:52:38renesacand make mean, variance accept not only float arrays, but aways output float values anyway
14:57:17renesacand things like 'countBits32()' should be in a "bithacks" module, together with many other useful snippets
14:57:46Araqok, sounds good
15:00:51renesacmaybe we should name pow(:int) as "integerPow()" or something like that
15:01:07Araqno
15:01:12renesacthis would prevent the regression, keep the possibilty of calling it by **
15:01:20renesac*compatibilty break
15:01:44renesacand things like integer sqrt are also interesting
15:01:55Araqyes, but no
15:02:09AraqintegerPow sucks as a name
15:02:29renesacindeed, an better name would be welcome...
15:02:30renesac:P
15:09:47Araqbbl
15:30:14*renesac is now known as renesac|away
15:53:51*foodoo quit (Quit: leaving)
15:58:30*io2 quit ()
16:14:36VarriountAraq: Afaik, the environment variable only lasts for the duration of the program
16:15:20VarriountIf you want me to use some other mechanism, then I'll probably have to modify the chain of procedures that eventually invoke the compiler.
16:20:55*micklat joined #nimrod
16:23:17AraqVarriount: why can't you pass it via the command line?
16:23:25Araqthat's what you do already anyway
16:30:34*[1]Endy joined #nimrod
16:32:31*[2]Endy quit (Ping timeout: 252 seconds)
16:34:26*[2]Endy joined #nimrod
16:38:09*[1]Endy quit (Ping timeout: 252 seconds)
17:03:35*carum_ joined #nimrod
17:04:30*aftersha_ joined #nimrod
17:05:28*[1]Endy joined #nimrod
17:08:13*[2]Endy quit (*.net *.split)
17:08:14*carum quit (*.net *.split)
17:08:14*brihat quit (*.net *.split)
17:08:15*aftershave_ quit (*.net *.split)
17:17:02*brihat joined #nimrod
17:20:48*gour joined #nimrod
17:28:04VarriountAraq: What what to the command line?
17:28:10EXetoCreactormonk: did you get anywhere with that?
17:28:28VarriountAraq: Koch passes the binary path to the tester, the tester calls the compiler
17:30:45AraqVarriount: hmm
17:35:22Matthias247I tried a little with integrating the completion support into sublime text: http://abload.de/img/sublimeegs5i.png
17:36:40OrionPKMatthias247 awesome
17:36:46OrionPKyou should integrate that into varriount/sublime
17:37:14Matthias247I will when I believe it's ready :9
17:37:19OrionPKcant wait :)
17:37:29Matthias247hehe
17:37:46Matthias247currently it does save the current file before asking for a completion result
17:37:54Matthias247and that means saving the file on nearly each keypress
17:38:05OrionPKphew yeah that's less than ideal
17:38:06Matthias247probably not ideal :)
17:39:41OrionPKare you using nimrod-sublime now?
17:39:46OrionPKvarriount's repo
17:39:58Matthias247yes, I started with that and extended it
17:40:07OrionPKcool
17:40:19Matthias247so I could simply make a pull request
17:40:29VarriountI still need to fix the check command. It currently freezes the gui (stupid GIL)
17:40:37Matthias247oops, no
17:40:48Matthias247I used https://github.com/leonardoce/nimrod-sublime
17:41:04VarriountYeah, wrong fork
17:41:14OrionPKahh yeah that one is old and out of date
17:41:41Matthias247ah ok. If the other one is better I will integrate it there
17:42:17OrionPKnot sure who leonardoce is, probably not an IRC/forum user
17:42:58Matthias247hmm, originally I wanted to learn nimrod, now I learned python :)
17:43:01VarriountNevertheless, I'm flattered that he forked our codebase.
17:43:03*BitPuffin joined #nimrod
17:43:11OrionPKheheh
17:43:14VarriountMatthias247: The two have things in common.
17:43:18OrionPKvarriount he didnt
17:43:26VarriountOh?
17:43:32OrionPKthat repo is older than ours
17:43:44OrionPKisnt it?
17:43:55OrionPKyeah it is
17:44:05OrionPKthis is the one in ST package control
17:44:22VarriountWe really need to put ours up in Package Control
17:44:27OrionPKyeah
17:44:58*Varriount opens up another sublime text window for the project
17:45:41AraqVarriount: how does 'koch' determine which "nimrod.exe" to use for the tests?
17:46:16Matthias247Varriount: yes, I determined that. And both aren't really hard
17:46:32Matthias247it's only lookup up details and API
17:48:56Matthias247I wonder if writing a dirty-file on each keypress is a good idea
17:49:05Matthias247or whether SSDs will blow up :)
17:49:37OrionPKyeah i wouldnt do that either..
17:50:27gourevening
17:51:17Matthias247ok, for linux you can put the dirty file in tmpfs
17:51:45gourtwo questions...i see that nimrod is in freebsd's ports since nov although this issue https://github.com/Araq/Nimrod/issues/620 is still opened. anyone using it on free/pc-bsd? i've 10.0 installed
17:53:20Matthias247probably another option would be if you would be able to send the dirty file content directly through the socket/pipe to the compiler
17:53:40OrionPKMatthias247 yeah I think thats the best approach.. but the compiler would have to change
17:54:18Matthias247yes. But don't have any clue how hard that is
17:55:01Araqgour: no idea, just try it
17:55:52gourAraq: ok. is there interest for Qt bindings project as part of GSoC?
17:57:49gour3MB download for nimrod. that's hilarious for complete development environment
17:58:32Matthias247QML-only bindings would probably be easier
17:58:56Araqgour: of course
17:59:02Matthias247then you don't have to integrate with the whole QObject stuff
17:59:22AraqMatthias247: QML sucks though, IMHO
17:59:47Matthias247I must confess I'm also not a real fan :)
17:59:58Matthias247especially of the QML/C++ interaction
18:00:24gourdo they plan to replace the old C++ desktop stuff with QML?
18:00:34Matthias247But it will get a lot of attention
18:00:48Matthias247gour: ubuntu wants to do that
18:00:54Matthias247and KDE too
18:01:41Matthias247because it seems to match better for varying display resolutions/dpi and the whole mobile stuff
18:02:34gourMatthias247: what about qt project itself? i use i3, so don't care about ubuntu/kde
18:03:52Matthias247QT is a set of libraries. Inside that is QT Core for the basic stuff, and top of that a library for classical QT widgets and one for QML
18:04:20Matthias247as far as I have seen most development on QT relates to QML
18:04:50Matthias247But I don't think they will abandon the classic QWidgets. They will only be not further developed
18:05:14gourMatthias247: so do you believe they will ditch classical qt widgets and force everyone to use qml for both desktop/mobile?
18:05:21gourahh, ok
18:19:00dom96Matthias247: Why not just save the file when suggestions are invoked?
18:21:14Matthias247dom96: because sublime asks for suggestions on each keypress
18:22:08Matthias247of course you could turn that off and make it only when explicetly engaged. But then you would loose a lot of convenience
18:23:54AraqMatthias247: asking for suggestions on every keypress is too slow to be usable anyway
18:26:51*Mat3 joined #nimrod
18:26:53Mat3hi all
18:28:32*Varriount|Mobile joined #nimrod
18:29:43Araqhi Mat3
18:30:42dom96CAAS should allow you to send the file through the socket.
18:30:50Matthias247Araq: I thought so, but it works surprisingly good
18:31:06dom96otherwise you are essentially raping your HDD :P
18:32:22Araqdom96: I agree
18:32:27Matthias247if you type something like abcd it will also only ask after a for completions and then filter the receivved list with with the abcd
18:33:40Matthias247sending a dirty file with CAAS is implemented but not yet documented?
18:34:05Matthias247(sending it in the stream)
18:34:11Mat3hi Araq
18:34:22dom96AFAIK it's not implemented
18:34:35*[2]Endy joined #nimrod
18:34:37dom96Aporia filters like that too
18:35:38*carum_ quit (Remote host closed the connection)
18:36:07Mat3I try to compile the actual Git branch and get an error executing 'nimrod c koch': 'lib/system.nim(2732, 21) Error: type expected'
18:36:34*[1]Endy quit (Ping timeout: 246 seconds)
18:37:06Mat3after compiling nimrod from csources
18:38:20AraqMat3: comment out this definition then as a workaround
18:38:20Mat3the source-line is: 'type semistatic*[T] = static[T] | T'
18:38:22Araqbbl
18:38:30Mat3thanks
18:41:41Matthias247Varriount: is the plugin for ST3 or ST2?
18:41:59Matthias247doesn't run here :(
18:44:21OrionPKshould work for both
18:44:49Matthias247ImportError: No module named 'Nimrod
18:44:54Mat3including Tiny C in the branch is somewhat questionable in my opinion because this compiler do not support relevant C extensions, anyhow koch now compiles :)
18:45:09Matthias247I simply cloned it in my Sublime packages folder
18:46:55OrionPKthats the way to do it
18:48:21Matthias247if I save Lookup.py the console says "No module named 'Nimrod'". If i save "Nimrod.py" he doesn't find "Project.py"
18:48:40OrionPKinteresting
18:48:43*[1]Endy joined #nimrod
18:48:50OrionPKtry deleting all the cached files and restarting ST
18:49:00OrionPKalso make sure the old py plugin is gone/disabled
18:49:07Matthias247where are the cached files?
18:49:16OrionPKerm the old nim plugin
18:49:31OrionPKthey'll be .cache extension
18:52:17*[2]Endy quit (Ping timeout: 272 seconds)
18:54:03micklatI had a situation like this in NimBorg: https://gist.github.com/micklat/9038888
18:54:20micklatthe compiler doesn't implicitly cast int to float (I thought it would)
18:54:29micklatis this valid compiler behaviour?
18:56:19Matthias247deleted the whole ~/.config/sublime-text-3 and still the same result
18:56:21Matthias247weird
18:56:45*Varriount-Mobile joined #nimrod
19:00:24*xenagi quit (Quit: Leaving)
19:01:06*Varriount|Mobile quit (Ping timeout: 265 seconds)
19:06:25OrionPKMatthias247 weird
19:10:52Matthias247it works when I adapt sys.path
19:17:28Matthias247it also works when you do that: from .Nimrod import Idetools
19:19:47*io2 joined #nimrod
19:20:08Matthias247more correct would be "from Nimrod-Sublime import Idetools", but the - is not allowed
19:20:27Matthias247ehm, "from Nimrod-Sublime.Nimrod import Idetools"
19:25:16OrionPKMatthias247 what os are you on?
19:25:22Matthias247linux
19:25:25gourAraq: how do you like, in general, languages like dylan/julia?
19:25:34Matthias247but it's a difference due to Sublime3 handles packages
19:25:43OrionPKinteresting. did you fix it?
19:26:07Matthias247I have now. But you need to rename Nimrod-Sublime to NimrodSublime :-)
19:26:27Matthias247but there are also other issues between python2 and 3 :(
19:26:28OrionPKapparently so :D
19:26:42Matthias247m = Idetools.pattern.match(result)
19:26:42Matthias247TypeError: can't use a string pattern on a bytes-like object
19:26:51OrionPKtell Varriount ;)
19:38:58*Demos joined #nimrod
20:00:04Mat3micklat: independent of the handling in Nimrod, I think it would be better if a language generally do not implicitly cast any type
20:01:21NimBotAraq/Nimrod newasync d784b70 Dominik Picheta [+0 ±2 -0]: Fix processing of 'await' with a nnkCall.... 3 more lines
20:02:27NimBotAraq/Nimrod devel 2dfe425 Dominik Picheta [+0 ±10 -0]: Merge branch 'devel' of github.com:Araq/Nimrod into newasync
20:02:27NimBotAraq/Nimrod devel 04f3ba4 Dominik Picheta [+0 ±2 -0]: Merge branch 'devel' into newasync
20:02:27NimBotAraq/Nimrod devel b45511e Dominik Picheta [+0 ±1 -0]: Resolved conflict.
20:02:27NimBotAraq/Nimrod devel 71d4c71 Dominik Picheta [+4 ±11 -1]: Merge branch 'devel' into newasync
20:02:27NimBot9 more commits.
20:03:24*OrionPK quit (Remote host closed the connection)
20:05:46VarriountMatthias247: OrionPk was the one to come up with that stuff.
20:06:13Matthias247lol
20:06:15VarriountI did the highlighting and the check command
20:06:36Matthias247Now I fixed everything for ST3, but it might no longer work with 2 :-)
20:06:54VarriountMatthias247: If you have to, create a seperate source dir or something
20:07:07VarriountOr use conditional imports, I dunno
20:07:09Matthias247do you still use it?
20:07:18VarriountUse what? The sublime text plugin?
20:07:24Matthias247sublime text 2
20:07:27VarriountYes.
20:08:12VarriountMatthias247: Send a pull request with changes, and I'll review and respond as soon as possible.
20:08:30Matthias247I don't know if it can be made compatible when even the imports collide
20:09:09VarriountFYI, if I could rename the plugin, it would be "NimLime" or "LimeRod"
20:10:15VarriountOh, and I also programmed the Doc-Comment continuation feature
20:10:35*aftershave_ joined #nimrod
20:11:17Matthias247I think you can rename the repo
20:12:19VarriountBut which name would I use?
20:12:37VarriountAlso, I need OrionPK's input. He's my partner.
20:12:49*micklat quit (Remote host closed the connection)
20:15:51NimBotVarriount/Nimrod-Sublime format-files e0bf24a Clay Sweetser [+0 ±7 -0]: Ran preliminary pylint and formatters over files
20:15:51NimBotVarriount/Nimrod-Sublime format-files c16cb2a Clay Sweetser [+0 ±2 -0]: Further style revisions
20:16:39VarriountAraq: koch uses the nimrod found in the bin directory
20:17:17VarriountI should probably have had it fall back to using whatever is found in the path, if there is no bin/
20:23:56*OrionPK joined #nimrod
20:28:15VarriountHi OrionPK
20:28:57*[1]Endy quit (Ping timeout: 260 seconds)
20:28:59OrionPKhi
20:32:11NimBotVarriount/Nimrod-Sublime master e0bf24a Clay Sweetser [+0 ±7 -0]: Ran preliminary pylint and formatters over files
20:32:11NimBotVarriount/Nimrod-Sublime master c16cb2a Clay Sweetser [+0 ±2 -0]: Further style revisions
20:32:24*shodan45 joined #nimrod
20:33:48AraqVarriount if koch "knows" what nimrod to run, why can't the tester do the same?
20:33:50EXetoCdid something happen to type constraints? [T:int] for example accepts anything apparently
20:37:13EXetoCIt started with me trying to define a proc param like this: "x: typedesc[seq[int|string]]", but I don't know if that should work (restricting to either seq[int] or seq[string])
20:38:46VarriountAraq: I see where you're going with that, I just dislike the inflexability of the approach :/
20:40:52VarriountAraq: Do you want the binary path hardcoded into the tester?
20:42:43dom96Araq: Could you please fix compilation of nimbuild on devel?
20:42:54AraqEXetoC: ping zahary_ every hour and make him fix this typedesc and | stuff for good
20:43:07Varriountdom96: What's wrong with nimbuild?
20:43:35dom96Varriount: htmlgen fails to compile on devel
20:48:14Araqdom96: compiles for me, what's the error message?
20:48:51dom96htmlgen.nim(77, 9) Error: id attribute for 'map' element expected
20:49:16dom96Full stack trace: https://gist.github.com/dom96/26da6e362e057e1cf35f
20:50:24AraqI told you to use 'system.map' in irclog
20:51:16dom96oh right
20:52:07Araqand we need a new htmlgen module, these immediate macros with common names are evil
20:53:41*Demos quit (Ping timeout: 260 seconds)
20:57:25dom96Now i'm getting this: macros.nim(327, 21) Error: type mismatch: got (TTable[string, TStatus], string)
21:00:04dom96which doesn't seem to make much sense
21:01:27dom96unless hrm
21:03:25*aftershave_ quit (Quit: Computer has gone to sleep.)
21:05:48NimBotnimrod-code/nimbuild master 498d9fe Dominik Picheta [+0 ±3 -0]: Implemented diff announcing.
21:06:01Araqyay!
21:06:06Araqfinally
21:14:26*brson joined #nimrod
21:16:50*brson quit (Client Quit)
21:17:04*brson joined #nimrod
21:17:07Mat3ciao
21:17:22*Mat3 quit (Quit: Verlassend)
21:20:03*shodan45 quit (Quit: Konversation terminated!)
21:22:06skyfexAraq: ping
21:23:12skyfexAraq: Have look at my last comment on this issue: https://github.com/Araq/Nimrod/issues/908
21:25:08dom96skyfex: Just in case you don't know: you can get nimrod syntax highlighting on github by writing '```nimrod'
21:25:43skyfexdom96: Thanks!
21:28:54Araqskyfex: oh lol
21:29:03Araqwell I didn't look at that bug yet :P
21:30:11Araqbut yeah, standalone finally and except statements are a problem, we could change them to:
21:30:17Araqdo finally: out_file.close
21:30:37Araqbut that gives the 'do' keyword a new meaning
21:31:22OrionPKlastly:
21:31:22OrionPK:P
21:31:33OrionPKcomplete:
21:31:40Araqdefer: :P
21:31:45OrionPKdone:
21:32:15OrionPKor end catch :P
21:32:17skyfexdothisforsureplz:
21:32:28OrionPKif you dont want to attach finally: to a catch
21:32:31OrionPKclose out the catch
21:33:27AraqOrionPK: you might as well enclose the 'try' in a 'block' to achieve the same
21:33:49OrionPKtrue
21:35:44Matthias247OrionPK, Varriount: If anyone wants to try: https://github.com/Matthias247/NimrodSublime/tree/autocomplete
21:36:31Matthias247I hope I got the imports in a form that works for python2 and python3, but not sure. Also not about the other functions I had to change :)
21:37:09VarriountMatthias247: Did you fix the part where it sublime text saves every keystroke?
21:37:25skyfexMatthias247: Oooh, exciting :)
21:38:02Matthias247Varriount: I now use also a dirtyFile and therefore don't have to save the buffer on every keystroke
21:38:12Matthias247but I have to save the dirtyFile on every completion request
21:38:41VarriountHm.
21:38:51Matthias247hopefully it get's into tmpfs and ramdisk :)
21:39:25Matthias247might see if I can improve that and get the CAAS running
21:39:58Matthias247I also fixed your jump to definition. That didn't work on dirty buffers because it wanted to jump into deleted files :)
21:40:18Araqzahary_: what about that argument_parser regression?
21:40:48VarriountAraq: What, ultimately, do you want me to do with the tester and the binary path to nimrod?
21:41:04VarriountKeep the current strategy? Hardcode the path?
21:41:31Araqping zielmicha-cloud_
21:41:51VarriountMatthias247: Send a PR please
21:42:16VarriountAlso, I wouldn't work on master, doing so can lead to complications when sending PR's
21:42:37Matthias247Varriount: should be first tested with ST2. And it will only work you rename to NimrodSublime
21:42:52Matthias247it's not master :9
21:43:17AraqVarriount: please explain your directory structure and let me think
21:43:22*zahary joined #nimrod
21:43:33VarriountAraq: For my 3 nimrod builds?
21:43:50VarriountMatthias247: "And it will only work you rename to "?
21:44:05*ddl_smurf joined #nimrod
21:45:29NimBotnimrod-code/nimbuild master 8d101a7 Dominik Picheta [+0 ±1 -0]: Shorten hash in announcements.
21:46:49Matthias247Varriount: NimrodSublime
21:46:52AraqVarriount: yes
21:46:58Matthias247or if check it out without the -
21:48:08VarriountAraq: The nimrod builds have the same directory structure as the source repository.
21:48:45Varriount2 of the builds are generated by the Win32 and Win64 builders. The third is my personal repository
21:48:54*shevy joined #nimrod
21:49:30VarriountThe problem I'm having is that the builders are running tests using whatever nimrod binary is in the path, which is the one in my personal repository.
21:50:49Matthias247ah, cool, seems to work with ST2
21:50:54Matthias247just installed it
21:54:16AraqVarriount: I think it should be an option in nimbuild which nimrod.exe to use; I think it already is
21:55:39Araqso nimbuild should pass that to 'koch' and 'koch' to the tester
21:56:01*shevy quit (Ping timeout: 245 seconds)
21:57:45VarriountHm.
22:00:33VarriountAraq: I guess I was mistaken. Nimbuild sets the nimrod binary it has built in the path, so the tester uses it. :/
22:01:00Varriount*facepalm*
22:08:53Matthias247Varriount, OrionPK: You have a PR
22:09:02*shevy joined #nimrod
22:12:52NimBotVarriount/Nimrod-Sublime master 6faaee3 Matthias Einwag [+1 ±3 -0]: Added first auto completion functionality... 1 more lines
22:12:52NimBotVarriount/Nimrod-Sublime master 2b40ac3 Matthias Einwag [+0 ±1 -0]: removed debug print
22:12:52NimBotVarriount/Nimrod-Sublime master 63014ae Varriount [+1 ±3 -0]: Merge pull request #3 from Matthias247/autocomplete2... 2 more lines
22:14:51Matthias247that was fast
22:20:23VarriountMatthias247: Github lets me merge PR's with a single click (usually)
22:21:17VarriountMatthias247: Hopefully, if you've gone through the code, you'll notice that OrionPK and I have vastly different coding styles.
22:21:49Matthias247then maybe I've add a third one
22:21:49VarriountApparently, OrionPK can't be bothered to learn pragmatic python :3
22:22:05*Varriount starts pylint and pyformat
22:22:15renesac|awayis this right? 'proc sum2*[T](x: openArray[T]|varargs[T]): T'
22:22:20*renesac|away is now known as renesac
22:22:44Araqrenesac: no. not even close
22:23:33renesacif I try to define a new type together with T it complains about undefined T that I use
22:23:44renesacshould I simply overload then?
22:24:06Matthias247the NimCheck functionality doesn't run for me in both ST2 and ST3
22:24:14Matthias247is that normal?
22:24:23VarriountMatthias247: No..
22:24:31VarriountDo you get an error in the console?
22:25:08Matthias247yes, different ones :)
22:25:25VarriountMatthias247: Please give me a gist of them.
22:26:59Matthias247Varriount: https://gist.github.com/Matthias247/9041533
22:28:37Araqyeah but 'varargs' is the same as 'openarray' except that it allows to leave out the []
22:29:18NimBotVarriount/Nimrod-Sublime master 2bd6389 Clay Sweetser [+0 ±2 -0]: Added sublime project filetype to gitignore... 2 more lines
22:29:29VarriountMatthias247: Fixed
22:29:30renesachum, so simply change the function singnature to accept varargs
22:29:40renesacand forget that openArray
22:30:34VarriountMatthias247: Currently the nimcheck command can cause the sublime text process to pause while getting input. I'm gonna try to fix that soon.
22:32:25VarriountEr, scratch that, I *think* it's the waiting for process output that is causing the pause. It may be something else.
22:34:27Matthias247ok, the timeout error is away. The regex error is still there
22:34:41Matthias247and it does nothing besides printing 'nimrod check' is done
22:35:31Matthias247path seperator is wrong
22:36:43VarriountMatthias247: The error regex is literally the regex used to find errors, not an error itself
22:37:03Matthias247Escaped file name: main\.nim
22:37:20Matthias247ah ok, the . must be escaped
22:38:55VarriountMatthias247: Are you using the check current file command, or the check external file command?
22:39:05Matthias247check current file
22:39:20VarriountAnd the file has errors in it?
22:39:42Matthias247yes
22:40:00VarriountAre the errors being outlined?
22:41:43Matthias247no, nothing happens
22:41:54VarriountAnd there's no stack trace?
22:42:02VarriountWhat OS are you using?
22:42:11Matthias247linux
22:42:31Matthias247in a VM from windows :-)
22:42:50Matthias247no, the last output is 'nimrod check' is done.
22:44:03VarriountMatthias247: Are there any "polling" messages?
22:44:28Matthias247no
22:45:51Matthias247ok, 1. Running 'nimrod check' process Polling 'nimrod check'... 'nimrod check2' is done.
22:47:53VarriountOk, then something must be off with the regex matching, is my first guess
22:47:53Matthias247ok, printing output_buffer prints the compiler flags
22:48:05Matthias247no. with the compiler invoking
22:48:18VarriountOh?
22:49:35Matthias247it doesn't know check
22:50:12Matthias247hmm, in the console it knows it
22:50:46VarriountMatthias247: What do you mean, it doesn't know check?
22:52:24Matthias247Varriount: if I replace the Popen array with that it works: "nimrod check " + file_path,
22:53:48Matthias247or event better: "nimrod check \"" + file_path + "\"",
22:54:00VarriountHuh. Must be some weird platform difference
22:54:26*gour quit (Quit: WeeChat 0.4.2)
22:56:45NimBotVarriount/Nimrod-Sublime master 0d8fde1 Clay Sweetser [+0 ±1 -0]: Fixed NimCheck on Linux (hopefully)
22:57:18*dmac joined #nimrod
22:57:42Matthias247and now change line 168 to: output_buffer += nimcheck_process.stdout.read().decode("UTF-8")
22:57:49Matthias247and then it works also on ST3
22:59:08VarriountHm. Don't I need to import 'encodings' or some module?
22:59:44Matthias247don't know. It works for me both when i add it
23:00:08Matthias247is a builtin method for str
23:00:35NimBotVarriount/Nimrod-Sublime master 182c1a6 Clay Sweetser [+0 ±1 -0]: Added ST3 support for NimCheck
23:03:11Matthias247ok. looks good now
23:04:24Matthias247how do I get rid of the error boxes? :)
23:08:01VarriountMatthias247: Fix the errors :3
23:10:12Matthias247Varriount: is there anywhere shown what the errors are?
23:10:25Matthias247quite hard with only the markers and warnings also as errors :)
23:11:17VarriountMatthias247: The quick box should come up after you run the check command, giving information about the errors
23:12:15Matthias247ah yeah, clicked it too fast away :)
23:26:36*BitPuffin quit (Read error: Connection reset by peer)
23:27:20*BitPuffin joined #nimrod
23:30:53*Varriount-Mobile quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com ))
23:36:28OrionPKMatthias247 Varriount idk
23:36:36OrionPKthis kinda chunks a bit when I start typing
23:36:44OrionPKi.e. causes noticeable typing lag
23:36:57*shevy left #nimrod ("I'll be back ... maybe")
23:37:27Matthias247OrionPK: ok, maybe I have the SSD advantage :)
23:37:37OrionPK(I also have an SSD ;))
23:37:58Matthias247maybe we should deactivate it by default through nimrod.sublime-settings
23:38:47Matthias247hmm, but that would also deactivate the default sublime completions :(
23:39:09OrionPKcan you move the lookup to a diff thread?
23:39:34OrionPKbtw is this still saving out to a dirty file manually or is it using some built in feature of ST to get a dirty file
23:40:48Matthias247ah no, that works
23:41:04Matthias247putting "auto_complete": false in nimrod.sublime-settings
23:41:17Matthias247then it's off and ctrl+space will still trigger it
23:41:23OrionPKok
23:41:31OrionPKmaybe add another setting to disable dirty file stuff
23:41:55Matthias247it is manually saving the dirty file before asking for completions
23:42:02Matthias247don't how to do it otherwise
23:42:05VarriountGrah, I wish profiling worked properly for ST plugins
23:42:17OrionPKidk..
23:42:53OrionPKI think we need to not have dirty file stuff as is
23:43:10OrionPKlong term anyway, before we release this plugin
23:43:19Matthias247I will try to check if it could be invoked less often
23:43:34OrionPKwe should try to change nimrod's idetools to allow us to send the data over stdin or something
23:43:44VarriountOrionPK: Er, it already does?
23:43:50OrionPKthen we should use it ;)
23:43:52VarriountIt sends the data through stdout
23:43:54*io2 quit ()
23:43:55Matthias247it is used
23:44:05Matthias247but the connection should be switched to CAAS
23:44:13Matthias247and not create a new process for each completion
23:44:34OrionPKwait what?
23:44:42OrionPKyou're already sending the file over stdin?
23:44:51Matthias247no, the file name
23:44:54OrionPKI mean the file content not the file path..
23:44:56VarriountOptimally, what would happen is that we could launch 1 or two nimrod compilers in CAAS mode, and communicate to them via sockets
23:45:09Matthias247for sending the file the compiler would need to be changed
23:45:10OrionPKyes
23:45:20OrionPKthat is what I am suggesting Matthias
23:45:22OrionPKa compiler change ;)
23:45:36OrionPKand fixing CaaS
23:45:49Matthias247could be very easy, could be very hard. Depends on how nimrod parses it's input files
23:46:13OrionPKprobably fairly easy to actually implement the change, the hard parts would be figuring out WHERE to change it and not fucking up something else ;)
23:46:29Matthias247Varriount: I sent another PR that colors warnings other than errors :)
23:46:48VarriountThe main problem with CAAS is that it has to target a project, and only one project can be targeted during the lifetime of the CAAS process
23:47:16OrionPKmaybe it needs some sort of 'session' concept
23:47:38Matthias247yes, you would probably need to monitor all files in the project
23:47:48Matthias247and add and remove them from tracking when events happen
23:47:54OrionPKor each request to the service should be completely independent from the last
23:48:05OrionPKso you always say which project.nim you're referencing
23:48:23VarriountOr if you aren't referencing a project at all
23:49:22Matthias247debugging would also be cool :)
23:49:41OrionPKyeah.. too bad ST doesnt really support it
23:49:53VarriountMatthias247: That's a job for nimrod's integrated compiler
23:50:01*BitPuffin quit (Quit: WeeChat 0.4.3)
23:50:17OrionPKnah you could do breakpoints and stuff from a GUI
23:50:17VarriountYou can compile an arbitrary program with a debugger built-in
23:50:34Matthias247ah, PS: Check other file also doesn't work with ST3
23:50:51VarriountGah.
23:50:56Matthias247there's no output_view.begin_edit()
23:51:16VarriountMatthias247: It's looking like this week is going to be a 'work on nimrod-sublime' week.
23:51:33Matthias247originally I wanted to play with nimrod
23:51:50Matthias247but I like good tools for my work :)
23:52:02VarriountMatthias247: Well, you could experiment with dom96's new asyncio stuff
23:52:23VarriountAnd use experience from that to develop CAAS mode
23:52:23Matthias247yeah, I actually started to implement async IO in rust
23:52:30dom96Yes, in fact I was going to ask if anyone wanted to test it.
23:52:46dom96Windows-only for now though
23:52:54VarriountExcuse me?
23:53:15VarriountYou must be mistaken. Nothing written by linux users is ever windows-only
23:53:44Matthias247I will take a look. But from what I've seen I probably would make a few things a little bit different :)
23:54:06dom96Matthias247: Suggestions are always welcome.
23:54:41Matthias247dom96: not today. too late to start another topic :-)
23:54:46OrionPKvarriount, maybe we should add matthias to the repo
23:55:22Araqgood night
23:55:25OrionPKnight araq
23:55:26VarriountGood night
23:55:49Matthias247OrionPK, Varriount: And the repo should be either renamed to NimrodSublime or sth. else with dash
23:56:06VarriountOr NimLime / LimeRod
23:56:15OrionPKlol
23:56:17Matthias247or we would need a big readme that says that it doesn't work without renaming
23:56:33OrionPKI like NimLime, especially if Nimrod itself is considering dropping the 'rod'
23:57:02VarriountNimLime it is then.
23:57:17OrionPKi'll work on a logo :P
23:57:24OrionPK(IT INVOLVES A LIME)
23:57:29NimBotVarriount/Nimrod-Sublime master a9a99de Matthias Einwag [+0 ±1 -0]: Added different handling for errors and warnings.
23:57:29NimBotVarriount/Nimrod-Sublime master 4eb1717 Varriount [+0 ±1 -0]: Merge pull request #4 from Matthias247/nimcheck... 2 more lines
23:57:32OrionPK(WITH A CROWN)
23:57:47Matthias247hehe
23:58:29*dom96 looks at Aporia with sad eyes
23:58:42OrionPKnow our name wont conflict w/ the existing plugin
23:59:05OrionPKdom96 time to start on Aporia2... once u get QT nimrod wrapper
23:59:36dom96Nah. Time to get libcef working.
23:59:49OrionPKoh yeah