<< 27-04-2018 >>

00:01:00tfff1yeah
00:06:23enthus1astmhh wss?
00:06:41enthus1astso wss://yourserver ?
00:07:28tfff1yep
00:08:44enthus1astit could also be that the server you trying to connect binds its ssl websocket on another port
00:14:45*Pisuke joined #nim
00:18:33*kunev quit (Ping timeout: 268 seconds)
00:20:18*kunev joined #nim
00:23:54*tfff1 quit (Quit: Page closed)
00:24:27*Pisuke quit (Ping timeout: 240 seconds)
00:30:31*Pisuke joined #nim
00:47:21*Pisuke quit (Ping timeout: 240 seconds)
00:53:45*ftsf joined #nim
01:04:54*vivus quit (Quit: Leaving)
01:56:01FromGitter<Varriount> Hm, how would I get the "type" of an arbitrary expression in Nim, from a macro.
02:00:21*max3 joined #nim
02:38:38*dddddd quit (Read error: Connection reset by peer)
02:43:49*athenot quit (Read error: Connection reset by peer)
02:44:21*athenot joined #nim
03:12:58*xet7 quit (Read error: Connection timed out)
03:13:36*xet7 joined #nim
03:17:13*CodeVance quit (Quit: Leaving)
03:19:14*endragor joined #nim
03:55:13*Lord_Nightmare quit (Ping timeout: 248 seconds)
04:00:26*rauss quit (Read error: Connection reset by peer)
04:02:21*rauss joined #nim
04:04:06*Lord_Nightmare joined #nim
04:52:40*darithorn quit (Remote host closed the connection)
05:31:46*xet7 quit (Read error: Connection timed out)
05:32:07*xet7 joined #nim
06:08:31*metaden92[m] joined #nim
06:17:51*freddy92 is now known as couven92
06:19:45*Lord_Nightmare quit (Ping timeout: 248 seconds)
06:23:14*nsf joined #nim
06:24:47*Lord_Nightmare joined #nim
06:35:43FromDiscord<claude> is tfff1 still here
06:35:54FromDiscord<claude> they needed to do port 443 instead of 80
06:39:33*xet7 quit (Read error: Connection timed out)
06:40:06*xet7 joined #nim
06:43:01FromGitter<Varriount> Araq: Why is a "var" type expressed as two symbols in an nkBracketExpr node, while a ref type is expressed as it's own node, containing a single symbol?
06:43:37Araqit should be nnkVarTy
06:45:28*r3d9u11 joined #nim
07:10:32*jjido joined #nim
07:12:31*PMunch joined #nim
07:20:41*athenot quit (Read error: Connection reset by peer)
07:20:58*athenot joined #nim
07:22:48*xet7 quit (Read error: Connection timed out)
07:23:37*xet7 joined #nim
07:24:24*jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
07:35:39*salewski joined #nim
07:36:54salewskiIs there a chance to add Nim to GodBold.org Compiler Explorer?
07:37:22salewskiThey already have Go, Rust, Swift beside C/C++
07:38:11salewskiI just discovered, that they even comment assembly instructions if mouse hovers over inst.
07:38:52*max3 quit (Quit: Connection closed for inactivity)
07:38:59salewskiThat is really great.
07:39:20PMunchGodBold.org?
07:39:32FromGitter<narimiran> godbolT
07:39:38FromGitter<narimiran> https://godbolt.org/
07:39:49PMunchAh
07:40:13salewskiCurrent Nim assembly inspection, with option saveTemps and looking at assembly listing in editor
07:40:27Araqsalewski: agreed. maybe we can also add this feature to Nim's playground
07:40:33salewskiis not that easy, so I generally do it not.
07:41:00Araqassembly is much more instructive than looking at the C code
07:41:51salewskiI think Nim's high quality assembly is one important selling point, so it should be more visible.
07:42:41salewskiWould be great, bye.
07:43:22*salewski quit (Quit: WeeChat 2.0.1)
07:43:23*xet7 quit (Read error: Connection timed out)
07:44:07*xet7 joined #nim
07:46:29Araqhuh, gc:boehm takes 71 secs on some tests, the native GCs 2 secs.
07:46:37Araqsomething is not right here
07:47:51*yglukhov_ joined #nim
07:50:25*yglukhov quit (Ping timeout: 248 seconds)
07:51:32*Arrrr joined #nim
07:51:32*Arrrr quit (Changing host)
07:51:32*Arrrr joined #nim
07:57:08*floppydh_ quit (Quit: WeeChat 2.1)
07:57:23*floppydh joined #nim
08:14:57*SenasOzys quit (Ping timeout: 248 seconds)
08:17:25*xet7 quit (Read error: Connection timed out)
08:17:57*xet7 joined #nim
08:21:13PMunchOooh nice, an i3 IPC library: https://nimble.directory/pkg/i3ipc
08:21:25PMunchfederico3, when did you make that?
08:23:50PMunchOh by the way. the scrollbar issue is still present on nimble.directory
08:24:20FromGitter<Varriount> Araq: I'm starting to see why skipTypes is used so much in the compiler.
08:24:26PMunchref: https://i.imgur.com/7jlnbwy.png
08:26:12Araqvarriount: :P I probably got that type graph design wrong but after all these years I still haven't found something really better that would justify to refactor 60000 lines of code
08:29:01FromGitter<Varriount> Araq: The only alternative I can think of is storing the type data within the symbol.
08:29:16Araqthat would be a bigger mistake
08:29:22Araqtypes are not symbols
08:29:42Araqthe trinity in Nim, nodes, syms, types, has served us quite well
08:30:03*Vladar joined #nim
08:30:12FromGitter<Vindaar> @Araq (or anyone familiar with `quote do`) does the following make any sense to you? https://github.com/numforge/loop-fusion/pull/3
08:30:50FromGitter<Vindaar> tl;dr: forZip raises an `illegal capture` due to usage of `quote do` in the macro. If replaced by manual AST at the problematic code, it works fine
08:30:56Araqseq[int] is a type, but has not a single symbol
08:30:57FromGitter<Vindaar> if called within a proc, that is
08:32:01FromGitter<Varriount> Araq: Also, I've found that if `x` has a type of `var Foo` (because `x` is a parameter), `getTypeInst` returns an nnkBracketExpr tree
08:32:30AraqI noticed, fix it.
08:32:48FromGitter<Varriount> Is the problem just in getTypeInst?
08:33:00FromGitter<Varriount> Or is this something to do with the parser?
08:34:49AraqgetTypeInst
08:41:10FromGitter<ZarsBranchkin> Was slightly curious, what would be the standard way of raising assertion errors in macros for improper/unsupported macro use? Is there a macro/procedure for that?
08:42:04FromGitter<narimiran> "'add' on a nil sequence doesn't produce a crash anymore" - does this mean we don't have to do `result = @[]` anymore?
08:45:49PMunchHmm, in the documentation for the net module the connectUnix call is missing. I'm guessing this is because it's behind a `when defined(posix)` switch? Would it be possible for the documentation generator to realize this and add it to a special section or something?
08:49:04FromGitter<ephja> check if nimdoc is defined
08:51:29PMunchZarsBranchkin, not to my knowledge
08:51:40PMunchIMHO something should be added in the macros module for that
08:51:48PMunchEven just an exception type
08:52:02PMunchephja, was that meant for me?
08:52:42FromGitter<ephja> yes
08:53:01FromGitter<ephja> @mratsim `when defined(posix) or defined(nimdoc)`? :p
08:55:32PMunchAh right, yeah that might work
08:57:16FromGitter<xmonader> https://github.com/xmonader/nim-dmidecode I added a tutorial and a line by line walkthrough
08:57:23*xet7 quit (Remote host closed the connection)
08:59:41*xet7 joined #nim
09:02:37*xkapastel quit (Quit: Connection closed for inactivity)
09:10:22Araqnarimiran: that is correct
09:14:32FromGitter<narimiran> Araq: very nice! i guess the similar thing will happen to strings too?
09:15:20AraqPMunch: proc error() in macros.nim?
09:15:32Araqnarimiran: sure
09:15:52FromGitter<ZarsBranchkin> ah neat, had missed that proc
09:16:39PMunchAraq, ah yes like that :P
09:17:12PMunchHow did I miss that? I've been raising all sorts of weird exceptions in my code when it's given bad input..
09:17:52FromGitter<ZarsBranchkin> Right, raising exceptions for all errors felt dirty and had to look for appropriate base exception
09:21:20federico3PMunch: i3ipc? Apr 29, 2017 according to the commit :)
09:22:58PMunchfederico3, I couldn't get it to work though, see the issue I created
09:23:47PMunchhttps://github.com/FedericoCeratto/nim-i3ipc/issues/1
09:23:52PMunchSeems like you missed a file
09:24:10federico3oopsie, fixing
09:26:06federico3PMunch: better?
09:26:56FromGitter<ZarsBranchkin> Oooh, neat, haven't tried writing applications that interact with i3, should check it out sometime
09:30:21PMunchfederico3, much better :)
09:34:19*yglukhov_ quit (Ping timeout: 265 seconds)
09:39:21*yglukhov joined #nim
09:44:59*r3d9u11 quit (Remote host closed the connection)
09:47:51*floppydh quit (Quit: WeeChat 2.1)
09:49:43*floppydh joined #nim
09:51:01FromGitter<survivorm> is `try...except` not working in runnable examples?
09:51:20FromGitter<survivorm> cause I get some strange error
09:52:54FromGitter<survivorm> `SIGSEGV: Illegal storage access. (Attempt to read from nil?)` ⏎ I mean I understand it, but why on the earth it is here. If I bring same piece of code out of the runnable example, it works
09:54:04*SenasOzys joined #nim
09:54:05*SenasOzys quit (Remote host closed the connection)
09:54:38FromDiscord<claude> do you have -d:release on? if you do see what happens if you turn it off
09:55:00FromGitter<survivorm> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5ae2f37362316e0505064420]
09:55:06*SenasOzys joined #nim
09:55:07*yglukhov_ joined #nim
09:55:23FromGitter<survivorm> no, i don't
09:55:51FromGitter<survivorm> just `nim doc ./lib/pure/times.nim`
09:56:42*SenasOzys quit (Remote host closed the connection)
09:57:02*yglukhov_ quit (Client Quit)
09:57:28*SenasOzys joined #nim
09:57:44*yglukhov quit (Ping timeout: 260 seconds)
09:58:36*yglukhov joined #nim
10:07:04*yglukhov quit (Ping timeout: 260 seconds)
10:08:34*yglukhov joined #nim
10:18:35PMunchfederico3, what did you use the i3ipc package for by the way?
10:19:53federico3PMunch: a little tool that detects most used windows and moves them around automatically
10:20:48federico3d'you have something in mind?
10:21:13PMunchHmm interesting
10:21:26PMunchWell, not really
10:21:42PMunchI am considering to do a new version of my i3 with touch controls project
10:22:08PMunchBut instead of a single bar at the bottom use xlunch instances overlaid on the windows
10:28:09PMunchBut all that could probably just be done with bash
10:31:53FromGitter<data-man> git's newbie question: how to do commit to specified PR (not mine)?
10:32:13FromGitter<data-man> :)
10:32:30FromGitter<xmonader> @data-man u need to push on his same branch
10:32:41PMunchUhm, a PR is a branch on their fork. So you don't have push rights to his branch (probably)
10:33:30PMunchWhat you can do is create a fork of their branch, then commit there and create a PR either to them, or directly to the original repo
10:34:40FromGitter<data-man> I want to do changes for https://github.com/nim-lang/Nim/pull/5898
10:35:23FromGitter<data-man> @xmonader, @PMunch Thanks!
10:37:04PMunchYeah, so either you need push access to Parashurama:bitops_use_endians, or you must fork his fork and create a new PR
10:40:35*SenasOzys quit (Remote host closed the connection)
10:43:22FromGitter<dandevelo> Is it possible to have forward type declaration in Nim?
10:46:05*codevance1 joined #nim
10:48:11PMunchForward type declaration?
10:48:36FromGitter<xmonader> @dandevelo are you trying to reference the same type? like linked list for instance?
11:23:18PMunchHmm, is there anything like GitPython available for Nim?
11:24:40PMunchAh, gitapi seems to be about right
11:36:58FromGitter<data-man> @PMunch: Also there is libgit2 wrapper: https://github.com/barcharcraz/libgit2-nim
11:37:59PMunchYeah I saw that, but it's a bit low level for what I'm doing (I think)
11:42:06FromGitter<data-man> https://github.com/achesak/nim-gitapi
11:42:07*dddddd joined #nim
11:42:53PMunchYeah that's the one I found as well
11:43:05FromGitter<data-man> :)
11:54:17*athenot quit (Ping timeout: 260 seconds)
11:54:31PMunchHmm, we should get the Nim TOML implementation up to 0.4.0 compatibility: https://github.com/toml-lang/toml/wiki
11:57:20codevance1whats toml :¦
11:57:46PMunchTom's Obvious Minimal Language
11:58:10PMunchBasically a human-readable configuration format
11:58:36PMunchKinda similar to old INI files
11:58:50codevance1like yaml but for humans?
11:59:33codevance1its like cfg files sorta
11:59:37PMunchWell, YAML is also meant to be human readable :P
12:00:30PMunchAnother neat thing about TOML is that it is meant to "map unambiguously to a dictionary"
12:02:41codevance1ive seen the yaml website. that is not very easy to understand
12:03:02*smt_ is now known as smt
12:03:04codevance1yaml lists dicts it gets confusing
12:03:13codevance1which is which
12:03:15PMunchHaha, yeah TOML aims to be simple. So it's both easy to parse and easy to read and write
12:04:22FromGitter<dandevelo> @xmonader just trying to use one type as part of another structure
12:04:50FromGitter<dandevelo> @mratsim thanks! Didn't know that works
12:07:19FromGitter<data-man> @PMunch: There is https://github.com/ziotom78/parsetoml Currently it supports v0.3.1 of the TOML specification.
12:07:39codevance1but somtimes i wish nim had the ¦ char as a multiline string like yaml
12:21:30PMunchdata-man, yeah I know. I was talking about updating it to 0.4.0
12:21:48PMunchcodevance1, the ¦ character, or the | character?
12:21:59FromGitter<data-man> And to include to stdlib?
12:22:28codevance1pmunch i dont have the pipe char on my phone :'(
12:22:39codevance1i meant pipe
12:23:03PMunchdata-man, well that would certainly be an option. But I think Araq has said that he doesn't really want to add any more stuff to the stdlib unless it's important
12:23:18PMunchcodevance1, you have ¦ but not | on your phone?
12:23:31codevance1yup silly right?
12:23:45PMunchOh right, so you want | to be the separator, but you just couldn't type it? :P
12:24:39FromGitter<alehander42> why don't we have a reverse iterator :O
12:24:43codevance1no i want to type var stringyvar = ¦ newline indent text newline indent line 2 of text
12:25:07PMunchHmm, my phone is the opposite
12:25:28FromGitter<alehander42> I'll write one
12:25:50PMunchcodevance1, aah, so a block statement
12:25:57codevance1because i dont like using triple quote since the first newline is in there if you dont want to make it akward
12:26:13PMunchI guess you could implement a =| macro that would take a block of strings and contatenate them
12:26:14codevance1and triple quote is not indent sensitive
12:26:35codevance1pmunch i dont understand nim well enough to do that
12:26:48codevance1thus me thinking its impossible
12:27:08FromGitter<alehander42> writing a macro is very simple, don't be afraid
12:27:19FromGitter<data-man> @PMunch: IMO, it's very important! :) We have cfg, csv, html, json, sql, xml parsers. Why not add a few more?
12:28:03PMunchdata-man, fair point
12:28:06codevance1yeah but it has to ignore the ast inside and still be indent aware.
12:28:22PMunchWell, if it accepted strings it would probabyl be easy
12:29:28FromGitter<alehander42> so you want something like ⏎ ⏎ ```var stringyvar = stuff: ⏎ "a0" ⏎ "b1"``` ⏎ ⏎ to be " a0\n b1\n" ? [https://gitter.im/nim-lang/Nim?at=5ae317a86d7e07082b3dba0a]
12:29:40codevance1data-man, as long as the syntax is used in places, and its reasonably established. at the least a wrapper around a c lib would be good imo
12:30:04codevance1alehander i dont want to have to put in quotes
12:31:24PMunchWell that makes it a lot harder..
12:31:40PMunchAnd a lot of stuff wouldn't be allowed in the block
12:31:47FromGitter<alehander42> eh than it would be easier to somehow postprocess triple quotes
12:32:17FromGitter<alehander42> it doesn't matter that it's not indent sensitive
12:32:46FromGitter<alehander42> you can still postprocess it with something like deindent(.., 3)
12:32:58codevance1ya i guess i could just preprocess a triple quote.
12:34:55FromGitter<survivorm> So, no answer to the question on `try/except` in `runnableExamples` block?
12:40:37FromGitter<data-man> @codevance1: Which c lib?
12:41:07*athenot joined #nim
12:42:14*enthus1ast quit (Ping timeout: 260 seconds)
12:43:20PMunchcodevance1, http://ix.io/18Rx/
12:43:40PMunchThat's the meat of it. Concats those strings with a simple newline and no indents
12:43:55PMunchKinda like how C doesn't require anything special to concat strings
12:43:56*enthus1ast joined #nim
12:47:58PMunchNot entirely sure how/if it's possible to convert this to a =| operator
13:02:45*endragor quit (Remote host closed the connection)
13:07:13*Arrrr quit (Ping timeout: 248 seconds)
13:07:15codevance1i think = sign ops are special
13:10:14PMunchNot really, this works just fine: http://ix.io/18RA/
13:10:35codevance1data man surely theres a clib for it
13:10:36PMunchBut if you try do use it directly in "var x =| 10" it will fail
13:11:17*vivus joined #nim
13:12:19*Lord_Nightmare2 joined #nim
13:12:33*Lord_Nightmare quit (Ping timeout: 248 seconds)
13:13:11*Lord_Nightmare2 is now known as Lord_Nightmare
13:17:47codevance1thats fine by me
13:22:33*floppydh quit (Quit: WeeChat 2.1)
13:28:25*codevance1 quit (Quit: Yaaic - Yet another Android IRC client - http://www.yaaic.org)
13:29:08*CodeVance joined #nim
13:29:18*Arrrr joined #nim
13:37:54*nsf quit (Quit: WeeChat 2.0.1)
13:50:01*vivus quit (Quit: Leaving)
13:53:16FromGitter<alehander42> weird macro
13:53:37FromGitter<alehander42> i didnt know you can `=op`
13:54:28CodeVancefor some reason the mingw I downloaded from nim's link doesn't have the libintl3.dll in its bin folder
13:55:21*fvs joined #nim
13:55:35FromGitter<data-man> Use MSYS2. Pacman is great! :)
13:56:14*crem quit (Ping timeout: 256 seconds)
13:56:21AraqCodeVance: what is that required for? the mingw we ship is "complete"
13:56:47Araqit's just from our own mirror, so to say because mingw's installation is horrible
13:56:59*crem joined #nim
13:56:59CodeVanceI wanted to sync the submodules from nim-opengl
13:57:28CodeVancebasename.exe: libintl3.dll: Not found or something
14:00:06CodeVancewith git
14:00:26CodeVancefor that matter what git does everyone using nim on windows use
14:01:35*Lord_Nightmare quit (Quit: ZNC - http://znc.in)
14:01:53*Lord_Nightmare joined #nim
14:04:23CodeVance@data-man I'll check out msys2 thanks for the advice :)
14:04:28FromGitter<data-man> @Araq: Why not remove shipped mingw and not recommend users to use MSYS2? Will only need to write a short instruction for use.
14:04:46Araqbecause it works for many people.
14:05:05Araqplease remember that one person complaining on IRC doesn't make it a real problem.
14:05:08CodeVanceI can't get nim-opengl to work from the repo T_T
14:05:28CodeVancemost of the wrapping repos don't have instructions
14:05:48CodeVancemaybe im just stupid. But its pretty frustrating
14:06:16FromGitter<data-man> MSYS2's users more than Nim's users. :)
14:06:18Araqnim-opengl is not Nim's official wrapper iirc.
14:06:37*Arrrr1 joined #nim
14:06:37*Arrrr quit (Disconnected by services)
14:06:54Araqusually wrappers are downright hostile on Windows, at least the official ones try to be portable.
14:07:04CodeVanceits under the nim-lang organisation's github
14:07:14Araqouch lol
14:07:40CodeVanceit's called opengl in nim
14:07:49CodeVanceI renamed the folder it seems
14:16:53*Arrrr1 quit (Quit: Leaving.)
14:22:47FromGitter<data-man> At different times I also used https://nuwen.net/mingw.html and http://www.equation.com/servlet/equation.cmd?fa=fortran
14:27:10shashlickdata-man: nice - I've been pretty happy with the MSYS2 installer and pacman as well
14:34:06FromGitter<data-man> @shashlick: Good! :) Using MSYS2 also can guarantee gcc's compatibility for Windows and *nix distros. And I think that latest gcc faster than 4.9.2 (used on appveyor).
14:37:41shashlickjust did a pacman -Syu, lots of updates
14:39:45CodeVanceHow many nim windows users use msys2
14:40:32*r3d9u11 joined #nim
14:40:51*miran joined #nim
14:41:31FromGitter<data-man> Maybe for some users it will be more convenient Chocolatey or Scoop.
14:42:48FromDiscord<claude> im just waiting for vcpkg to finalize
14:46:39FromGitter<data-man> M$ sucks :) ⏎ With MSYS2 you can install clang too.
14:48:52*PMunch quit (Quit: Leaving)
14:58:17*SenasOzys joined #nim
14:58:29*SenasOzys quit (Remote host closed the connection)
15:01:51*CodeVance quit (Read error: Connection reset by peer)
15:04:39*CodeVance joined #nim
15:04:48*leru joined #nim
15:06:44shashlickNim in chocolate is so out of date
15:07:02shashlickBut hundreds of ways to install, hard to keep up
15:09:25*SenasOzys joined #nim
15:11:15*couven92 quit (Quit: Client disconnecting)
15:13:09FromGitter<krux02> @data-man M$ is the past. Now I don't know a name for it anymore that has a pun.
15:14:26FromGitter<krux02> Microsoft is bad, and it should be illegal to use it when you are dealing with sensitive data, because you can never be sure that the Operating system is not secretly sending this data over to America where it is sold to the highest bidder.
15:14:54FromGitter<data-man> @krux02: 💯 :)
15:18:21FromGitter<krux02> I use pacman all the time. It is great.
15:18:28FromGitter<Varriount> Hrm. We need a sample suite of various AST inputs.
15:18:35FromGitter<krux02> but not with msys but in Arch Linux.
15:18:59FromGitter<Varriount> Like, "possible type node combinations"
15:20:18FromGitter<krux02> @Varriount what do you mean?
15:20:59FromGitter<Varriount> Like, I'm currently rewriting a macro from macros.nim. It would really help if I had some idea of all the kinds of types this macro might encounter
15:21:21FromGitter<Varriount> sample ASTs
15:21:59FromGitter<krux02> what macro?
15:22:32FromGitter<krux02> there are a lot
15:23:17FromGitter<Varriount> Right now, the getCustomPragmaVal
15:23:36*xkapastel joined #nim
15:23:47FromGitter<krux02> most important is, that you document properly what the macro should do, so that one can reason about it better in case the macro encounters something that it doesn't know.
15:26:52*r3d9u11 quit (Remote host closed the connection)
15:26:54FromGitter<Varriount> @krux02 I'm getting the type of an expression. The problem is that I don't know all the shapes that a type's AST can be.
15:27:31FromGitter<krux02> well me neither
15:27:37FromGitter<krux02> and I use that macro, too
15:27:55FromGitter<krux02> I just contrain myself to the types/shaps that are important for my program
15:28:31FromGitter<krux02> and when I encounter something unexpected I report a proper error instead of returning weird garbage
15:28:47FromGitter<krux02> then the function can then easily be extended.
15:34:09FromGitter<krux02> @Varriount I have a macro that normalizes a type ast, are you interested?
15:34:37FromGitter<Varriount> Possibly. Right now I'm using a copy of the skipType procedure found in the compiler source code.
15:37:33FromGitter<krux02> http://ix.io/18RV
15:38:14FromGitter<krux02> it is just for resolving alis types
15:38:41*ftsf quit (Ping timeout: 248 seconds)
15:38:45FromGitter<krux02> you are probably not interested in alias names of types, so this normalizations get's rid of all the possible alased representations of a type.
15:39:11FromGitter<krux02> no guarantee that it works for everything, but for what it works is documented.
15:39:23FromGitter<krux02> don't ask me how it works. I don't know anymore.
15:43:24FromGitter<data-man> Poll: https://github.com/nim-lang/Nim/pull/7700#issuecomment-385009345 :)
16:08:45*miran quit (Ping timeout: 276 seconds)
16:12:22*jrbrt joined #nim
16:28:05*jrbrt quit (Quit: jrbrt)
16:35:00*yglukhov quit (Remote host closed the connection)
16:35:34*yglukhov joined #nim
16:36:02FromGitter<Varriount> @krux02 The line `nnkObjectTy, nnkTupleTy, nnkDistinctTy` - Don't forget that oe can do `type x = seq[int]`
16:36:57*athenot quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:38:45*Vladar quit (Quit: Leaving)
16:40:01*yglukhov quit (Ping timeout: 248 seconds)
16:46:17*Snircle_ quit (Quit: Textual IRC Client: www.textualapp.com)
16:46:37*Snircle joined #nim
16:50:03*jrbrt joined #nim
16:57:38*nsf joined #nim
17:00:39*SenasOzys__ joined #nim
17:00:50*fvs left #nim ("ERC (IRC client for Emacs 25.3.1)")
17:01:17*SenasOzys quit (Read error: Connection reset by peer)
17:10:55*nixfreak joined #nim
17:12:57*SenasOzys__ quit (Ping timeout: 240 seconds)
17:14:24FromGitter<krux02> hmm yea I don't care for seq types at the moment
17:14:29FromGitter<krux02> so yea
17:14:41FromGitter<krux02> I think I will add support for it if i need it
17:23:04*SenasOzys__ joined #nim
17:33:01*xkapastel quit (Quit: Connection closed for inactivity)
17:40:38*athenot joined #nim
17:42:36*leru quit (Remote host closed the connection)
17:43:13*CodeVance quit (Read error: Connection reset by peer)
17:44:54*noonien joined #nim
17:53:16*xkapastel joined #nim
18:01:20*leru joined #nim
18:06:07*codevance1 joined #nim
18:15:38*SenasOzys__ quit (Remote host closed the connection)
18:16:53*SenasOzys joined #nim
18:19:08*SenasOzys quit (Remote host closed the connection)
18:20:12*SenasOzys joined #nim
18:25:04*miran joined #nim
18:39:19*fvs joined #nim
18:43:31fvswhy sequtils.deduplicate and not sequtils.distinct or sequtils.unique? Its example uses var name unique1.
18:44:52Araq'distinct' is already a keyword
18:45:06Araqand 'unique' can also be related to unique pointers
18:45:20Araqdeduplicate is just fine.
18:45:47Araqit's also a verb and 'distinct' / 'unique' are not.
18:49:20fvsThe best defense is a good offense ;)
18:50:15Araqwell I like the name "deduplicate" quite a bit and think other languages should use it too. ;-)
18:50:54*riidom quit (Remote host closed the connection)
18:51:02Araqit's also an expensive operation so pretending it's just a cheap view into the data like 'unique' would suggest is not good.
18:58:03*jjido joined #nim
18:58:21*SenasOzys quit (Ping timeout: 240 seconds)
19:02:47*vivus joined #nim
19:07:38miranyup, it is quite expensive. had to implement different logic/algorithm just so i can not use it
19:11:21*rockcavera quit (Ping timeout: 240 seconds)
19:14:28miranafter seeing that, i'm trying to avoid deduplicate in all my code
19:17:35Araqnever used it.
19:18:12Araqhow hard is it to "avoid" it? :-)
19:22:55*SenasOzys joined #nim
19:23:36miranbasically you think a bit until you find a way how can you use sets :)
19:24:31miranthe original thing had used those duplicated elements, but in the rewritten one only one of each element was needed - hence sets were the right choice
19:25:37Araqyeah sets ftw.
19:26:39mirani had a similar discovery how tables are slow, and i should find a way to transform them into arrays....
19:27:15Araqwow if tables are slow you must doing interesting work :-)
19:29:29mirannoticeably slower than arrays, tested on more-than-one example
19:30:02Araqwell it the dataset is sparse tables take up less memory than arrays
19:31:11miranyeah, logical
19:31:39miranbut in the end, i wanted speed so mostly-empty array was a better choice than a table....
19:39:07*SenasOzys quit (Remote host closed the connection)
19:41:00*SenasOzys joined #nim
19:46:09*yglukhov joined #nim
19:47:07*SenasOzys quit (Remote host closed the connection)
19:49:16*SenasOzys joined #nim
19:50:35*yglukhov quit (Ping timeout: 240 seconds)
20:02:10*rockcavera joined #nim
20:13:03*xkapastel quit (Quit: Connection closed for inactivity)
20:32:16*smt` joined #nim
20:34:34*fvs left #nim ("ERC (IRC client for Emacs 25.3.1)")
20:35:45*smt quit (Ping timeout: 264 seconds)
20:38:37*SenasOzys quit (Remote host closed the connection)
20:39:01*miran quit (Quit: Konversation terminated!)
20:39:31*SenasOzys joined #nim
20:45:18*brainpro1 joined #nim
20:45:53*brainproxy quit (Ping timeout: 248 seconds)
21:06:56*riidom joined #nim
21:25:36*nsf quit (Quit: WeeChat 2.0.1)
21:36:55*rockcavera quit (Remote host closed the connection)
21:43:22*rockcavera joined #nim
21:43:42*athenot quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:54:38*SenasOzys quit (Remote host closed the connection)
21:55:12*SenasOzys joined #nim
21:56:07*SenasOzys quit (Remote host closed the connection)
21:57:21*SenasOzys joined #nim
21:58:08*SenasOzys quit (Remote host closed the connection)
22:02:59*SenasOzys joined #nim
22:08:30FromGitter<flowck> Hi everyone
22:09:21FromGitter<flowck> The fsmonitor page on Nim's website is returning the 404 error
22:09:24FromGitter<flowck> https://nim-lang.org/docs/fsmonitor.html
22:09:46FromGitter<flowck> I opened an issue in the main repository. ⏎ ⏎ https://github.com/nim-lang/Nim/issues/7710
22:10:12FromGitter<flowck> Do you know In which repository is store all the documentation / website?
22:11:10*nixfreak quit (Ping timeout: 264 seconds)
22:11:15dom96we need to move that module out into a nimble package
22:11:51FromGitter<flowck> Oh, I see.
22:12:48FromGitter<flowck> It's common to see this module in the core of other languages.
22:13:13FromGitter<flowck> Is there any reason for this decision?
22:14:16dom96is it common? What languages have such a module?
22:14:31dom96The reason is that it's not cross-platform and nobody picked up the slack to make it cross-platform yet :)
22:14:46dom96and it is implemented for the outdated async implementation (asyncio)
22:16:37FromGitter<flowck> Thanks, it answer my question. The fsmonitor from Nodejs has similar problems related with cross-platform.
22:18:46dom96Somebody here was working on a cross-platform version IIRC
22:19:16dom96Somehow feel like it's varriount or zacharycarter, but I'm probably really wrong :)
22:56:12codevance1Can you run a script with nim e -r script.nim if it doesnt interface with external libraries?
22:57:11*xkapastel joined #nim
22:57:33shashlickI don't think you need the -r
22:57:47shashlickand it's .nims
22:58:08shashlickyou can use the functionality in nimscript
23:00:51codevance1I was wondering how to run something in the nim vm since its almost instantanious
23:01:53codevance1Coming from python and needing to wait 10 seconds for compile is painful
23:02:04codevance1Or maybe im spoiled
23:02:23codevance1And thats only with a small program
23:02:25shashlickhttps://gist.github.com/genotrance/cc575b760428289586e141f2ef64c3ba#file-passed-txt
23:02:37shashlickthat's all the modules that "potentially" work in the VM
23:02:50shashlicki'm working on figuring it out, including adding test cases, etc.
23:03:18shashlickofficially, only 4 modules are expected to work: https://nim-lang.org/docs/nims.html
23:05:19codevance1Ya. I wasnt expecting nim to be an interpreted language. Theres also the other side. I could just code for longer stretches then the compiling wont be as painful.
23:06:19shashlickif you are doing simpler stuff, you can use snip to compile realtime on the side
23:06:34codevance1Another thing i was wondering can nim source be compiled to js. Cause you could theoretically have nim compiler in the browser then
23:06:44shashlickI use it when I'm writing small snippets
23:06:48codevance1Link for snip please
23:07:00shashlickhttps://github.com/genotrance/snip
23:07:09codevance1;)
23:07:44dom96Nim compiler uses many modules which are not available in the JS backend
23:08:07shashlickrun with --mon and press F12 to make the output window full screen
23:08:26shashlickedit the file in your text editor and it will detect changes and rebuild
23:08:36shashlickworks for single file stuff, but obviously not for larger projects
23:08:47shashlicknim js file.nim
23:08:54shashlickjs backend is quite advanced
23:09:12codevance1Dom what about compiling nim to webasm?
23:09:22shashlickthat's also ongoing
23:10:45shashlickhttps://github.com/stisa/nwasm <= still in POC territory I think
23:11:07*sz0 joined #nim
23:12:11codevance1Everyone is quite busy. Is there a nim news?
23:13:08shashlickthere's the blog and twitter, but most of the news is here I think
23:13:50codevance1Maybe i should jump the crowd and make a nim.planet feed XD
23:14:26shashlickwhat's that?
23:14:46shashlickhey, there's also the forum where there's lots of activity, in case you haven't seen that
23:15:18codevance1Like a massive rss feed. But like blog posts with updates from every nim project
23:15:26codevance1Ive seen it
23:15:39codevance1But its more language specific
23:16:07codevance1Im more like XYZ 123 came out heres whats new.
23:16:49dom96codevance1: You should make a blog
23:16:57dom96a planet already exists somewhere
23:17:09dom96we need more people writing blog articles about Nim
23:18:23shashlickit would be nice to have a compile date in "nim -v" output
23:20:06codevance1Dom96 ive been wanting to write a newbie guide and maybe a game dev guide. But i havent got enough things ready yet. And im still learning.
23:20:32dom96shashlick: we did have that, no idea what happened to it
23:20:35leruHints are disabled, but are still shown when I compile. Any suggestions?
23:20:36codevance1Shash, i agree
23:21:10codevance1Leru, --verbosity:0
23:21:48lerucodevance1, is set
23:22:19shashlickdom96: what distro does travis run for our nim test?
23:22:44dom96ubuntu
23:22:54codevance1Leru are they hints or warnings?
23:25:21lerucodevance1, hints, but I just found the source of the issue. I had a Latex project open and somehow something made Sublime used a different build setting (which I do not have defined?). Closing the project fixed it... Why Sublime?
23:26:25codevance1Maybe add a nim.cfg to project?
23:26:34codevance1Or change base cfg
23:31:58leruNah, it's alright for now. I will get into the cfg, after I've learned some more of the language core
23:32:21codevance1What you buzy with?
23:33:23leruBasics and httpclient right now
23:36:34*codevance1 quit (Quit: Yaaic - Yet another Android IRC client - http://www.yaaic.org)
23:36:49*codevance1 joined #nim
23:44:25*Snircle quit (Quit: Textual IRC Client: www.textualapp.com)
23:48:52leruIs there an old version of the docs somewhere accessible?
23:49:47codevance1Check the old commits in the repo
23:50:13codevance1But youd have to build them
23:50:39codevance1Arent there old releases on github?
23:51:46leruIt's not old enough
23:51:51leruOh, you mean from source
23:52:20codevance1Ya...
23:52:41codevance1Vut that just my thoughts. I dont really know much
23:52:52leruMe neither
23:53:08leruI want the manual.html from about 2 years ago
23:53:16codevance1Why you want only docsm?
23:53:59codevance1Nims repo goes that far back :)
23:55:50leruSome fundamental changes happened I think, so I want to check if I'm right or I just mixed up some things
23:56:08leruLike I thought comments were introduced with -- not with #...
23:57:14leruAlthough... It's not worth looking that up
23:58:03codevance1If u have a fast computer it wont take much time