00:07:41 | * | vlad1777d joined #nim |
00:15:24 | * | MJCaley quit (Quit: MJCaley) |
00:20:49 | vlad1777d | Hello. DO nim compile all code each time from scratch, or does it use some algoritms not to compile already compiled sources (like make does) ? |
00:21:28 | * | libman left #nim (#nim) |
00:21:30 | dom96 | the latter: it caches C source code |
00:23:58 | * | couven92 quit (Quit: Client Disconnecting) |
00:26:59 | * | Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
00:29:55 | * | Ven`` joined #nim |
00:30:17 | * | MJCaley joined #nim |
00:34:39 | vlad1777d | thanks ) |
00:40:55 | * | yglukhov quit (Remote host closed the connection) |
00:42:30 | * | yglukhov joined #nim |
00:42:59 | * | astronavt joined #nim |
00:43:53 | * | vlad1777d quit (Remote host closed the connection) |
00:43:54 | * | yglukhov quit (Read error: Connection reset by peer) |
00:45:05 | * | vlad1777d joined #nim |
00:47:50 | * | astronavt quit (Ping timeout: 255 seconds) |
00:52:42 | * | yglukhov joined #nim |
00:56:11 | * | yglukhov quit (Remote host closed the connection) |
00:56:33 | Araq | vlad1777d: quite some effort went into making the caching efficient. the build is also parallel by default |
00:56:45 | Araq | build times are fine. |
00:57:01 | vlad1777d | Araq, thanks =) |
00:57:50 | * | yglukhov joined #nim |
01:02:23 | * | yglukhov quit (Ping timeout: 248 seconds) |
01:03:35 | * | yglukhov joined #nim |
01:04:52 | * | skrylar joined #nim |
01:05:10 | * | yglukhov quit (Read error: Connection reset by peer) |
01:05:37 | * | yglukhov joined #nim |
01:07:43 | * | yglukhov quit (Read error: Connection reset by peer) |
01:08:00 | * | yglukhov joined #nim |
01:12:11 | * | yglukhov quit (Ping timeout: 240 seconds) |
01:12:29 | * | Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
01:16:37 | * | Ven`` joined #nim |
01:21:35 | * | skrylar quit (Ping timeout: 248 seconds) |
01:22:11 | * | Jesin joined #nim |
01:23:44 | * | vlad1777d quit (Remote host closed the connection) |
01:23:52 | * | sz0 joined #nim |
01:25:00 | * | vlad1777d joined #nim |
01:29:33 | FromGitter | <Quelklef> What, exactly, is `-1.#IND`? |
01:29:53 | Araq | NAN |
01:29:54 | FromGitter | <Quelklef> Essentially `DNE`? Seems to be output from out of range values of `math.arccos` |
01:29:57 | FromGitter | <Quelklef> hmmmm |
01:30:38 | Araq | Nim devel should write 'NaN' |
01:30:59 | FromGitter | <RedBeard0531> What is the best way to set up an environment to use an editable git checkout of the stdlib? Is there a choosenim mode similar to `nimble develop PKG`? (I've been cheating and just editing the files in ~/.choosenim directly, but I can't make a PR like that) |
01:31:01 | Araq | -1.#IND is MS speak which we translate into English |
01:31:04 | FromGitter | <Quelklef> iirc im on stable (0.17.2) |
01:31:24 | FromGitter | <Quelklef> MS speak? |
01:31:49 | Araq | Microsoft's bullshit term nobody knows about |
01:32:03 | FromGitter | <Quelklef> lol yeah |
01:32:09 | FromGitter | <Quelklef> seems like an odd way to repr nan |
01:32:26 | Araq | could also be -Inf, not sure, use devel |
01:32:44 | FromGitter | <Quelklef> eek that sounds scary |
01:32:50 | FromGitter | <Quelklef> prolly a good idea if im gonna be on gitter, tho |
01:32:58 | FromGitter | <Quelklef> inb4 current code breaks |
01:36:08 | * | skrylar joined #nim |
01:40:51 | * | skrylar quit (Ping timeout: 240 seconds) |
01:41:41 | * | rbrt quit (Quit: Oíche mhaith) |
01:43:44 | * | astronavt joined #nim |
01:48:11 | * | astronavt quit (Ping timeout: 240 seconds) |
01:56:55 | * | endragor joined #nim |
01:57:57 | * | endragor quit (Remote host closed the connection) |
01:58:45 | * | endragor joined #nim |
02:06:22 | * | chemist69 quit (Ping timeout: 264 seconds) |
02:07:17 | * | Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
02:12:58 | * | shodan45_ joined #nim |
02:15:15 | * | acidx_ joined #nim |
02:16:56 | * | rosshadden joined #nim |
02:16:58 | FromGitter | <Quelklef> oh no i tried to get devel running via cygwin and |
02:17:11 | FromGitter | <Quelklef> ```Error: unknown operating system: cygwin_nt-10.0`````` |
02:18:09 | * | wishi_ joined #nim |
02:19:57 | * | chemist69 joined #nim |
02:20:12 | * | Cthalupa- joined #nim |
02:20:18 | * | Amrykid2 joined #nim |
02:21:12 | * | shodan45 quit (Ping timeout: 248 seconds) |
02:22:45 | * | ryanhowe quit (*.net *.split) |
02:22:45 | * | rauss quit (*.net *.split) |
02:22:47 | * | acidx quit (*.net *.split) |
02:22:47 | * | onionhammer quit (*.net *.split) |
02:22:48 | * | wishi quit (*.net *.split) |
02:22:49 | * | Cthalupa quit (*.net *.split) |
02:22:49 | * | Amrykid quit (*.net *.split) |
02:27:46 | * | onionhammer joined #nim |
02:27:46 | * | ryanhowe joined #nim |
02:44:29 | * | astronavt joined #nim |
02:45:14 | * | vlad1777d quit (Ping timeout: 268 seconds) |
02:49:14 | * | astronavt quit (Ping timeout: 258 seconds) |
03:02:03 | * | chemist69 quit (Ping timeout: 250 seconds) |
03:06:02 | * | dddddd quit (Remote host closed the connection) |
03:11:02 | * | MJCaley quit (Quit: MJCaley) |
03:16:00 | * | chemist69 joined #nim |
03:25:04 | * | Ven`` joined #nim |
03:40:37 | * | marenz_ joined #nim |
03:44:19 | * | marenz__ quit (Ping timeout: 252 seconds) |
03:44:27 | * | Ven`` quit (Ping timeout: 240 seconds) |
03:45:17 | * | astronavt joined #nim |
03:50:47 | * | astronavt quit (Ping timeout: 276 seconds) |
03:58:27 | * | marenz_ quit (Ping timeout: 240 seconds) |
04:14:57 | * | skrylar joined #nim |
04:35:30 | * | Snircle quit (Quit: Textual IRC Client: www.textualapp.com) |
04:43:47 | * | leorize joined #nim |
04:46:15 | * | astronavt joined #nim |
04:50:42 | * | astronavt quit (Ping timeout: 246 seconds) |
05:11:51 | * | leorize quit (Read error: Connection reset by peer) |
05:15:07 | * | nim_newb joined #nim |
05:16:00 | nim_newb | @Quelklef you can compile devel with mingw |
05:16:23 | nim_newb | Download msys2 and install the compilers in it |
05:17:20 | FromGitter | <Varriount> @Quelklef Which part of the file threw that error? |
05:17:24 | nim_newb | Here are some install instructions for installing mingw |
05:17:26 | nim_newb | https://github.com/orlp/dev-on-windows/wiki/Installing-GCC--&-MSYS2 |
05:17:54 | nim_newb | @Varriount I guess he tried to run build.sh in the cygwin console |
05:18:03 | nim_newb | to compile nim from devel |
05:19:50 | nim_newb | @Quelklef After installing mingw compile nim from devel using the instructions in the repo's readme. On windows you need to run *.bat files (not *.sh) |
05:20:03 | nim_newb | Cygwin in probably not supported though I am not sure |
05:20:14 | FromGitter | <Varriount> I'm fairly sure Cygwin is supported. |
05:20:23 | FromGitter | <Varriount> I know people have used it in the past. |
05:24:34 | * | nim_newb quit (Ping timeout: 260 seconds) |
05:42:28 | * | cspar joined #nim |
05:47:00 | * | astronavt joined #nim |
05:51:36 | * | astronavt quit (Ping timeout: 246 seconds) |
05:57:47 | * | Jesin quit (Quit: Leaving) |
06:05:09 | Tanger | Hey guys, I'm wondering if there exists a nim-lang equivalent to python's SSLWantReadError exception? |
06:05:34 | Tanger | So an error raised when a non-blocking ssl socketing tries to read or write, but data still needs to be sent |
06:05:51 | * | JappleAck joined #nim |
06:25:38 | * | leorize joined #nim |
06:31:48 | * | shodan45_ quit (Remote host closed the connection) |
06:37:00 | * | nsf joined #nim |
06:38:05 | * | skoude joined #nim |
06:39:24 | skoude | just learning nim, if I use http client to get some json from my server the encoding is not correct if I echo the returned data.. ANy idea, how can I define character encoding in there? |
06:44:24 | * | shodan45 joined #nim |
06:47:45 | * | astronavt joined #nim |
06:51:35 | * | JappleAck quit (Quit: Leaving) |
06:52:25 | * | astronavt quit (Ping timeout: 252 seconds) |
07:00:17 | * | leorize quit (Read error: Connection reset by peer) |
07:01:27 | Tanger | @skoude https://nim-lang.org/docs/encodings.html That could help you figure out what the issue is |
07:01:44 | Tanger | So you can play around with encoding/decoding |
07:01:57 | Tanger | Otherwise, is your server sending the correct encoding headers? |
07:18:16 | FromGitter | <alehander42> hm, new question Araq: |
07:18:45 | FromGitter | <alehander42> in codegenDecl for js, should we have some ability to pass the original name of the function ? I guess not as its not important for codegen |
07:18:55 | FromGitter | <alehander42> yeah nvm |
07:19:58 | FromGitter | <alehander42> then another question, do we have a way to test suite output with some kind of regex ? |
07:20:44 | * | gokr joined #nim |
07:36:13 | * | PMunch joined #nim |
07:48:31 | * | astronavt joined #nim |
07:49:54 | * | BitPuffin|osx joined #nim |
07:53:13 | * | astronavt quit (Ping timeout: 258 seconds) |
08:00:19 | * | jjido joined #nim |
08:01:57 | * | Ven`` joined #nim |
08:16:39 | * | vlad1777d joined #nim |
08:23:35 | * | skrylar quit (Ping timeout: 250 seconds) |
08:28:02 | * | Ven` joined #nim |
08:28:02 | * | Ven`` quit (Read error: Connection reset by peer) |
08:30:55 | * | sz0 quit (Quit: Connection closed for inactivity) |
08:31:26 | * | Ven` quit (Client Quit) |
08:31:57 | * | jjido quit (Ping timeout: 240 seconds) |
08:38:35 | * | cspar quit (Ping timeout: 268 seconds) |
08:43:06 | * | cspar joined #nim |
08:49:15 | * | astronavt joined #nim |
08:53:58 | * | astronavt quit (Ping timeout: 252 seconds) |
08:57:12 | * | gangstacat quit (Quit: Ĝis!) |
08:57:18 | * | Ven`` joined #nim |
09:04:01 | * | BitPuffin|osx quit (Ping timeout: 248 seconds) |
09:04:02 | * | JappleAck joined #nim |
09:08:00 | Araq | alehander42: we have PEGs support in the tester to test for patterns in the produced code |
09:31:19 | * | salewski joined #nim |
09:31:56 | salewski | var c: array[-4, int] # seems to compile. Makes it sense? |
09:34:52 | salewski | And when we have two different ref types r1 and r2, and we write var x: r1 | r2 coredump results. |
09:35:19 | salewski | Well, I was nearly sure that it would not work. |
09:35:29 | * | JappleAck quit (Ping timeout: 248 seconds) |
09:38:18 | Araq | no, it doesn't make sense |
09:38:52 | salewski | OK, thanks. |
09:39:38 | * | Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
09:43:46 | salewski | Will create an issue for that. Bye. |
09:44:58 | FromGitter | <dom96> > What is the best way to set up an environment to use an editable git checkout of the stdlib? Is there a choosenim mode similar to `nimble develop PKG`? (I've been cheating and just editing the files in ~/.choosenim directly, but I can't make a PR like that) |
09:45:23 | FromGitter | <dom96> You can clone the Nim repo yourself and then do `choosenim ~/nim` where `~/nim` is the path to the Nim repo. |
09:45:27 | FromGitter | <dom96> You have to build it yourself though |
09:45:37 | * | vlad1777d quit (Ping timeout: 248 seconds) |
09:45:41 | FromGitter | <dom96> @RedBeard0531 ^ |
09:47:33 | FromGitter | <dom96> Would be nice to support a ``develop`` command for choosenim too though. |
09:47:51 | gokr | dom96: So... choosenim doesn't fly for me on Windows, at least not latest release. Blocked on https://github.com/dom96/choosenim/issues/35 |
09:48:58 | * | salewski quit (Quit: WeeChat 1.9.1) |
09:50:02 | * | astronavt joined #nim |
09:50:04 | FromGitter | <dom96> :\ |
09:50:41 | FromGitter | <tim-st> Another thing I was wondering: Are exceptions cheap in nimlang? in Python and Java they're often used, should I avoid them if possible? |
09:52:21 | * | JappleAck joined #nim |
09:52:31 | gokr | I tried the older version and that ran fine. But I guess I got a 32 bit Nim then. |
09:54:01 | FromGitter | <alehander42> Araq: can you give me an example test file that uses this peg support ? is it a part of the discard output dsl ? |
09:54:25 | FromGitter | <dom96> @tim-st that depends on the backend you use AFAIK. The C++ backend uses C++'s native exceptions and is thus very efficient, the C backend not so much. |
09:54:56 | FromGitter | <tim-st> @dom96 Thanks! |
09:55:02 | * | astronavt quit (Ping timeout: 255 seconds) |
09:55:17 | FromGitter | <dom96> Tanger: there is just an SSLError IIRC |
09:57:27 | Araq | tests\tmissingvolatile.nim |
09:57:35 | Araq | tests\ccgbugs\tmissingvolatile.nim |
10:04:50 | * | skrylar joined #nim |
10:06:42 | FromGitter | <alehander42> ok, great, I updated the PR with the fixes & new tests |
10:07:13 | FromGitter | <alehander42> ugh just a sec |
10:08:06 | FromGitter | <alehander42> yeah, now the tests should be fine |
10:12:06 | * | dddddd joined #nim |
10:22:07 | * | yglukhov joined #nim |
10:27:05 | gokr | Araq: https://pasteboard.co/GWb6yqr.png |
10:27:44 | gokr | Araq: Some problem with the space in "Program Files" path yaddayadda (spaces in paths will never stop to haunt us). |
10:28:34 | crem | Should have used PROGRA~1! |
10:32:44 | * | floppydh joined #nim |
10:32:57 | skrylar | why is this still an issue |
10:33:17 | skrylar | i mean i get why its an issue for shells, but.. |
10:34:29 | FromGitter | <tim-st> compiling doesn't work too, from this path... |
10:34:53 | FromGitter | <tim-st> at least compiling c files like when using zip from nimble |
10:36:19 | FromGitter | <tim-st> I get: "Error: execution of an external program failed:" although I have both nim x64 and mingw x64 |
10:37:35 | * | Ven`` joined #nim |
10:40:34 | FromGitter | <tim-st> Oh, I think it used the gcc from my haskell install will check that again^^ |
10:42:20 | * | Ven`` quit (Client Quit) |
10:43:44 | FromGitter | <mratsim> @tim-st Even with the C backend, it doesn't seem like you pay for exceptions if your code doesn't raise them. At least in my benchmarks (in the numerical/scientific computating domain) |
10:45:22 | FromGitter | <mratsim> Furthermore you can use the likely/unlikely hints to tell the compiler that some branches are exceptional and reduce branching cost by a lot. |
10:46:03 | FromGitter | <tim-st> @mratsim Thanks, that's good to know for future optimizations. |
10:48:00 | FromGitter | <mratsim> What kind of code are you working on? |
10:48:47 | dom96 | Reminder: Ludum Dare 40 starting in less than 24 hours. The keynote is brilliant https://ldjam.com/events/ludum-dare/40/$49884/welcome-to-ludum-dare-40 |
10:49:07 | ftsf | =) gonna participate dom96? |
10:49:16 | dom96 | ftsf: yep! |
10:49:19 | ftsf | awesome! |
10:49:40 | dom96 | ftsf: btw Nico doesn't compile on devel, but I guess you're happy to use 0.17.2? |
10:49:50 | dom96 | actually, are you even participating? :) |
10:49:52 | ftsf | mmm i haven't tested devel lately |
10:49:55 | ftsf | yeah I will be =) |
10:50:13 | ftsf | i'll test with devel shortly, just fixing some issues with js build |
10:50:21 | dom96 | cool. I think it's just a case of changing all `0..EnumType.high` to `0..EnumType.high.int` |
10:50:29 | ftsf | ahh k, easy |
10:50:35 | FromGitter | <tim-st> @mratsim I'm working on a nlp system. At the moment I have to integrate ZIM format support after that epub format. |
10:50:36 | FromGitter | <mratsim> Advent of Code 2017 is this weekend as well iirc. |
10:50:46 | dom96 | because Nim is no more strict with that :) |
10:51:01 | * | astronavt joined #nim |
10:51:06 | ftsf | figure i'll add in some doc comments and generate docs too |
10:51:11 | ftsf | about time |
10:51:16 | FromGitter | <mratsim> Zim like Zim wiki? |
10:51:21 | FromGitter | <tim-st> yes |
10:51:53 | FromGitter | <mratsim> I didn't add RNN support to Arraymancer yet mmmmh. |
10:51:54 | dom96 | some tips with newer Nim: we've got a new module called lenientops and a way to more easily create array literals without having to write `.int8` or whatever after each literal |
10:52:39 | dom96 | lenientops introduces operators that should mean you don't have to convert integer types for `+`/`-` etc. |
10:52:44 | dom96 | So should definitely help for LD :) |
10:52:52 | ftsf | ahh handy |
10:53:25 | ftsf | I did something similar with Nico, everything takes Pint which can be automatically converted |
10:53:26 | dom96 | and here is the `mapLiterals` macro: https://github.com/nim-lang/Nim/blob/844e123061631d4cc5bc4300301d1865eda5a337/lib/pure/collections/sequtils.nim#L721 |
10:53:41 | dom96 | ahh cool |
10:53:54 | ftsf | handy! |
10:54:31 | ftsf | i've started doing arduino stuff lately, anyone tried that using Nim? |
10:54:52 | dom96 | I've got an Arduino kit gathering dust, I've been meaning to do that :) |
10:54:53 | ftsf | I figure the libraries might be an issue. |
10:55:40 | dom96 | ftsf: how's Vektor 2089 coming along btw? |
10:55:42 | FromGitter | <mratsim> @tim-st if you need stuff in Arraymancer to help you on NLP don't hesitate. I plan to add SVD and Tf-idf so we can at least do Latent Semantic Analysis but I wanted to focus on Computer Vision first. |
10:55:45 | * | astronavt quit (Ping timeout: 246 seconds) |
10:56:07 | ftsf | dom96, hmm i've been a bit quiet with it lately, too many projects. Was doing some work in Unity, but damn I hate it! |
10:56:15 | ftsf | feels nice to be back in Nim land |
10:56:19 | dom96 | ftsf: :) |
10:56:27 | dom96 | Glad to hear that! |
10:58:00 | ftsf | but i'm writing in too many different languages atm, so it's very confusing |
10:58:45 | * | Ven`` joined #nim |
11:04:35 | FromGitter | <tim-st> @mratsim Your project sounds very interesting, will definetly have a look at this, where this could help solving problems! |
11:11:20 | skrylar | i know what tf-idf does but isn't that kinda basic |
11:11:25 | skrylar | or does it require fancy tensors now |
11:11:28 | * | cspar quit (Ping timeout: 276 seconds) |
11:12:47 | * | yglukhov quit (Remote host closed the connection) |
11:23:02 | Araq | gokr, thanks for reporting. fixed |
11:23:23 | Araq | wow a finish.nim bug, haven't see these in a while |
11:24:26 | Araq | workaround: don't make it find 'curl', it will use bin/nimgrab instead which doesn't have a space |
11:25:21 | * | Ven`` quit (Ping timeout: 248 seconds) |
11:30:35 | * | claudiuinberlin joined #nim |
11:33:04 | * | PMunch_ joined #nim |
11:34:05 | * | PMunch quit (Ping timeout: 240 seconds) |
11:34:13 | * | Vladar joined #nim |
11:44:50 | * | arnetheduck joined #nim |
11:45:06 | * | MJCaley joined #nim |
11:51:22 | FromGitter | <tim-st> I now reinstalled nim 0.17.2 x64 and also the mingw by finish.exe (both to C:\nim-0.17.2) tried nim -v and gcc -v both work, but building zip library fails with "collect2.exe: error: ld returned 1 exit status" |
11:51:46 | FromGitter | <tim-st> Is "gcc version 6.3.0 (x86_64-win32-seh-rev1, Built by MinGW-W64 project)" the correct gcc version for use with nim x64? |
11:51:47 | * | astronavt joined #nim |
11:52:39 | Araq | zip is not supported on Windows |
11:52:50 | Araq | iirc |
11:53:03 | Araq | requires some headers that gcc lacks |
11:53:38 | FromGitter | <tim-st> thats some really important lib... :( |
11:55:00 | * | MJCaley quit (Quit: MJCaley) |
11:56:03 | * | PMunch_ is now known as PMunch |
11:56:29 | Araq | https://github.com/nim-lang/zip do you use that? |
11:56:36 | FromGitter | <tim-st> yes |
11:56:59 | * | astronavt quit (Ping timeout: 276 seconds) |
11:57:17 | FromGitter | <tim-st> or atleast nimble install zip |
11:57:27 | Araq | #include <zlib.h> |
11:57:35 | Araq | look if gcc has it please |
11:57:56 | FromGitter | <tim-st> sry I'm not a c programmer don't know where this should locate |
11:58:32 | Araq | --define:useLibzipSrc |
11:58:40 | Araq | pass that to your build |
11:59:31 | FromGitter | <tim-st> If I pass it to the command line, same error |
11:59:59 | Araq | can you build other Nim programs? |
12:00:12 | FromGitter | <tim-st> sure, everything worked, unless zip |
12:00:29 | Araq | show me the full error please |
12:02:59 | FromGitter | <tim-st> `````` |
12:03:20 | FromGitter | <tim-st> dunno how to format |
12:03:57 | FromGitter | <tim-st> just insert? |
12:04:11 | Araq | gist it |
12:05:30 | FromGitter | <tim-st> hope that's ok: https://pastebin.com/rD6t6Vfu |
12:07:34 | Araq | --passL:"-lz" # try that |
12:08:36 | FromGitter | <tim-st> c:\Projekt>nim c -r zim.nim --passL:"-lz" # yields same error |
12:10:10 | Araq | that's not how the command line works |
12:10:29 | FromGitter | <tim-st> than how does it work? |
12:10:35 | Araq | nim c -r --passL:"-lz" zim.nim |
12:11:35 | FromGitter | <tim-st> works, thanks! |
12:20:16 | FromGitter | <alehander42> Araq: fixing my tests to use ccodecheck was a bit confusing until I realized I should escape `\d` to work |
12:20:25 | FromGitter | <alehander42> maybe we should document the tester dsl a bit somewhere |
12:20:53 | Araq | it is documented |
12:21:13 | FromGitter | <alehander42> where ? |
12:21:15 | Araq | but I don't know where I don't read our docs, I know everything |
12:21:24 | FromGitter | <alehander42> haha nice |
12:26:50 | * | marenz_ joined #nim |
12:29:00 | * | xkapastel quit (Quit: Connection closed for inactivity) |
12:32:30 | * | Snircle joined #nim |
12:34:38 | gokr | Araq: Trying to build a little thing on Win10 - using libui and your wrapper etc. But... it fails on finding commctrl.h |
12:35:05 | gokr | Araq: Perhaps it's a 32 bit header, have you used libui in 64 bits? |
12:36:42 | Araq | not sure, I had to test 8 different combinations |
12:36:54 | Araq | msvc, gcc, 32 vs 64 builds, debug vs release |
12:37:44 | gokr | I find commctrl.h deep down in mingw, but... it looks like some kind of 32 bit directory |
12:52:35 | * | astronavt joined #nim |
12:56:37 | * | fvs joined #nim |
12:57:12 | * | astronavt quit (Ping timeout: 246 seconds) |
12:58:32 | fvs | hi, are these any nim headers/bindings for liblzma (xz)? Thought I'd ask before ... |
13:04:54 | * | sagax joined #nim |
13:05:04 | sagax | hi all! |
13:06:45 | sagax | is the language used in production? |
13:10:30 | PMunch | sagax, yes |
13:11:35 | sagax | cool! |
13:12:03 | PMunch | sagax, example: https://yglukhov.github.io/Making-ReelValley-Overview/ |
13:12:20 | PMunch | That's the biggest released project in pure Nim I know about |
13:14:25 | PMunch | It is also used for tooling by Beamdog (the developer behind Baldurs Gate and Neverwinter Nights) |
13:16:56 | sagax | thanks, nim very interesting for me |
13:18:15 | crem | Isn't nim compiler written in pure nim? Or RealValley is bigger than nim compiler? |
13:18:33 | * | skoude quit (Ping timeout: 246 seconds) |
13:19:50 | * | noonien joined #nim |
13:20:55 | FromGitter | <mratsim> @skrylar yes TfIdf is super basic, it's just a fancy name for counting occurrences and Frequency of words or n-grams. You still need to convert that to (sparse?) tensor dimensions say a 100 x 50000 tensors if you have 100 sentences with 50000 words vocabulary |
13:21:51 | skrylar | mratsim: why would you need a huge tensor if its just the frequency in one chunk vs total frequency |
13:22:02 | skrylar | wouldn't that be a simple bayesian update and some elementary statistics |
13:23:13 | * | vivus joined #nim |
13:23:24 | FromGitter | <mratsim> The count is useful as well, then you usually do a SVD after to capture variance. |
13:24:10 | FromGitter | <mratsim> Normally you use sparse Tensors to avoid memory explosion. |
13:25:20 | dom96 | crem: saying the Nim compiler is in production isn't as exciting :) |
13:25:49 | dom96 | Although there are many projects in production. Depends how you define "in production" of course, but for example: Nimble, NimForum, choosenim, NimBot etc |
13:27:13 | crem | When I looked into haskell, they said they had their language was used for serious projects, like haskell compiler or web server for haskell.org. |
13:27:41 | skrylar | there is an oddity in that people who use productive systems don't like to tell people about it |
13:28:00 | skrylar | nobody hides using shitty things like C++ but the delphi users don't like to talk about it |
13:28:12 | FromGitter | <mratsim> I know that Haskell is used/was used in Credit Suisse and CERN, I attended a Haskell Meetup at CERN when I was living in Geneva. |
13:28:49 | crem | As for nim, I think it's perfect for a lone programmer, but I'm not so sure for teams. |
13:29:47 | skrylar | i could go on an entire rant about that mentality |
13:29:50 | dom96 | Nim is developed by a team, seems to be working well so far. |
13:30:51 | skrylar | Naughty Dog found they had multiple versions of loop macros. Big whoop. You get copy/paste code all the time in C/C++ and they hold it against the coders not the language. But when you start letting the lisp in, people blame the language. It's a vigilance issue, which is a people issue, not the tool's. |
13:31:11 | crem | Team of Araq? :) And also maybe you. But I never tried, so that's my guess. |
13:31:18 | skrylar | nim has unhygenic macros so everyone is going to moan |
13:31:43 | FromGitter | <mratsim> If people manage to work on JS and CSS in teams any language which is not J/K/brainfuck can be used ;). |
13:32:04 | skrylar | fun fact: you can make herald rules in phabricator to issue blocking reviews on any code that does weird shit like 'macro's :) |
13:32:09 | dom96 | crem: Do all these people not count? https://github.com/nim-lang/Nim/graphs/contributors |
13:32:33 | crem | They have pretty flat graphs. :) |
13:32:45 | skrylar | dom96, i'm fairly certain he means where you have ex. a ten coder team, not a repo with two gatekeepers |
13:32:57 | * | couven92 joined #nim |
13:33:32 | FromGitter | <mratsim> Excel also has unhygienic macros :p. (And also unhygienic versioning.... And that's worse) |
13:33:51 | Araq | huh? macros are bad again? |
13:34:01 | skrylar | Araq, no but people whine that languages with them are bad |
13:34:05 | FromGitter | <mratsim> No they are not. |
13:34:11 | skrylar | if only because its easier to recognize macros than copypaste code |
13:34:35 | skrylar | copypaste code is also bad but unless you hook up phash to your AST (and nobody does) you don't really "see" it |
13:35:28 | FromGitter | <mratsim> Boilerplate BuilderFactoryFactoryVisitor is much worse than macros .... |
13:35:50 | skrylar | mratsim: but you can end up with multiple copies of the same thing, which is bad |
13:35:56 | skrylar | which is why i call it a vigilance issue |
13:37:19 | skrylar | I will admit that there are some silly bits we could use linters for, but .. bleh |
13:37:35 | skrylar | like the md5 module uses cstrings, but the sha1 module ("secure" hash, lols) uses strings |
13:37:42 | Araq | .async produces pretty horrible asm code, I'm sure |
13:37:59 | Araq | but I don't blame the macro system for that |
13:38:19 | gokr | dom96: I am restructuring spry to be "nimble compliant". May ask for some advice |
13:38:38 | dom96 | sure |
13:38:49 | gokr | dom96: Among other things, it seems perhaps I should split it into "spryvm" (a separate nimble package) and "spry" (the binaries) |
13:38:56 | skrylar | Araq, nobody did. clem just said nim didn't "seem good for teams" and since there's no reason for it *other* than macros, to which there is already lisp literature on people macro bashing with semi-valid reasons, that's why |
13:39:08 | skrylar | admittedly the shared library situation is also weird |
13:39:10 | gokr | dom96: But I gotta run, back in 40 or so |
13:39:19 | skrylar | but shared libs are broken as hell in FPC and Delphi as well, so |
13:39:51 | Araq | "other" than macros? they enable everything of Nim's infrastructure |
13:40:14 | skrylar | Araq, stop misreading everything |
13:40:21 | Araq | arraymancer, karax, ormin, jester, ... |
13:40:51 | Araq | it's like saying "there is no reason to use Ada other than the strict type system that makes it used for embedded tiny devices" |
13:41:04 | skrylar | didn't say anything even close to that |
13:41:22 | skrylar | none of the features that aren't macros have any reason they would be bad "in a team of coders" |
13:41:53 | skrylar | macros only do because people don't actually coordinate and just write them on their own and programs end up with 12 versions of (loop) |
13:42:00 | Araq | sorry, I thought crem did, but I misunderstood |
13:42:10 | skrylar | he didn't say why nim was unsuitable |
13:42:56 | skrylar | but in every case i've seen an unhygenic macro system in a language, i've seen that claim tossed around |
13:43:26 | Araq | Nim's macro system is hygienic unless you opt-in to make it unhygenic |
13:43:29 | * | gokr quit (Ping timeout: 248 seconds) |
13:43:37 | skrylar | still counts |
13:43:48 | skrylar | people are only happy when you duct tape them to their own faces |
13:44:09 | Araq | what's wrong with 12 versions of "loop" anyway? every C++ game engine implement its own vectors |
13:44:23 | skrylar | those loops were in the same program |
13:44:32 | skrylar | because 12 different developers made their own within the same codebase |
13:44:52 | Araq | so? the different C++ engines cannot be used together, seems worse |
13:45:03 | FromGitter | <mratsim> Well basically people wants the language to enforce discipline that the lead dev ought to enforce. |
13:45:08 | skrylar | its understandable that you have 12 versions of String because imported libraries have their own |
13:45:28 | skrylar | it's silly when notepad has 12 versions of String because AraqString and SkrylarString are in separate parts of the same nim file |
13:45:53 | Araq | silly maybe, but hardly uncommon for languages which have no macro system. |
13:46:02 | skrylar | i said that too :b |
13:46:14 | * | skrylar points at the 'but its harder to recognize copy/paste code so people dont blame it' |
13:46:19 | Araq | I bet in any real large C app there are multiple hash table implementations |
13:46:31 | Araq | not too mention linked lists |
13:46:45 | skrylar | it would be interesting to see if one could use perceptual hashes on ASTs to spot copypasta though |
13:46:56 | skrylar | or candidates for lifting in to procs |
13:47:28 | Araq | every software system is a reflection of the organization. |
13:47:48 | FromGitter | <mratsim> I think Skrylar point is that due to macros people will have a negative a priori for collaboration. |
13:47:59 | skrylar | as i mentioned, if you use phabricator you can set rules like "if i see 'macro' in a nim file, require 2 reviewers to sign off" |
13:48:19 | skrylar | It's harder to do the same for people copying and pasting random code like they would otherwise |
13:48:31 | Araq | well I dunno. |
13:48:52 | Araq | I have never heard the argument "macros are bad because 12 different loop macros were written" |
13:49:08 | Araq | it's a downright bizzare way of thinking. |
13:49:15 | skrylar | again its not that they existed, its that every developer had their own |
13:49:33 | skrylar | which meant that, in the same program, a new developer had to learn 12 loops which could have just been 1 loop |
13:49:49 | skrylar | there was no 'good' reason for the 12, like 'we inherited them from the OS' |
13:49:57 | FromGitter | <alehander42> skrylar: I actually worked on a concept of a tool that detects similar python ast-s candidate for DRY-ing, that kind of stuff can be done for macros etc (there was a nice paper by ira baxter for ast clone search) |
13:50:06 | Araq | really? as opposed to 12 different string splits? |
13:50:28 | skrylar | alehandler42: would just do it on all the code :) |
13:50:48 | Araq | string splits are bad because strutils has more than one and I have to learn them all... |
13:51:08 | skrylar | Araq, do the splits serve a functional purpose |
13:51:12 | FromGitter | <alehander42> skrylar: ofc, just saying it's very doable :D |
13:51:25 | skrylar | alehandler42: sure. but i don't kknow how phash actually works ^^; |
13:53:20 | skrylar | although i guess the same logic behind paragraph vectors would also work for ast's |
13:53:23 | * | astronavt joined #nim |
13:58:02 | * | astronavt quit (Ping timeout: 255 seconds) |
14:03:11 | * | dddddd quit (Ping timeout: 240 seconds) |
14:04:22 | Araq | well here you go, Nim is better than Python and C for large scale developments because it enforces sane file names: https://forum.nim-lang.org/t/1541 |
14:05:42 | * | dddddd joined #nim |
14:06:56 | FromGitter | <mratsim> Relevant: https://news.ycombinator.com/item?id=2451722 Expressiveness of Lisp makes it hard for adoption (vs this is a social issue and not a language issue). |
14:08:00 | * | endragor quit (Remote host closed the connection) |
14:10:09 | * | nsf quit (Quit: WeeChat 1.9.1) |
14:10:35 | Araq | that's just somebody's opinion. |
14:10:57 | Araq | in my opinion Lisp fails because of its hostile syntax and dynamisms |
14:11:34 | Araq | and it's not even failing all that much, Clojure is quite successful |
14:11:42 | * | endragor joined #nim |
14:13:20 | skrylar | mratsim: the lack of compilers makes lisp a dead option :P |
14:13:33 | skrylar | i mean i would have just stayed with that or smalltalk if i could still get tiny fast binaries |
14:14:15 | * | chemist69 quit (Ping timeout: 258 seconds) |
14:14:34 | PMunch | Mmmmm, Clojure |
14:14:38 | * | chemist69 joined #nim |
14:15:51 | * | endragor quit (Ping timeout: 240 seconds) |
14:16:53 | FromGitter | <mratsim> The real paradox is using Electron-based text editors to build tiny and fast binaries ;). |
14:18:12 | FromGitter | <mratsim> I don't know lisp or clojure, I can't get my head around the syntax, I'd rather learn Rust :P |
14:19:08 | skrylar | well i don't do that |
14:19:14 | FromGitter | <mratsim> (or in-depth Haskell category theory) |
14:19:15 | skrylar | i use RMS' operating system :) |
14:20:09 | skrylar | not that araq needs it, or probably most anyone here, but "the craft of text editing" is amusingly mostly reverse engineered from emacs with some tips on how others did it |
14:20:37 | vivus | does cheatfate still come on IRC? |
14:21:08 | Araq | vivus, no. why? |
14:25:50 | vivus | Araq: wanted to use 1 of his libs and pester him with questions :P |
14:32:59 | * | arnetheduck quit (Ping timeout: 276 seconds) |
14:33:27 | * | d10n-work joined #nim |
14:38:12 | subsetpark | skrylar, there are some very nice compiled lisps |
14:38:52 | enthus1ast | subsetpark: this one? https://upload.wikimedia.org/wikipedia/commons/5/53/Symbolics3640_Modified.JPG |
14:39:41 | subsetpark | not exactly... |
14:41:37 | * | floppydh quit (Quit: WeeChat 1.9.1) |
14:43:51 | * | couven92 quit (Quit: Client disconnecting) |
14:51:47 | * | xet7 joined #nim |
14:54:01 | * | astronavt joined #nim |
14:54:27 | * | gokr joined #nim |
14:56:09 | avsej | is it possible to start process and read from its streams asynchronously? |
14:57:02 | dom96 | avsej: using this package it should be https://github.com/cheatfate/asynctools |
14:58:39 | * | astronavt quit (Ping timeout: 246 seconds) |
15:00:22 | avsej | thanks |
15:01:36 | * | Jesin joined #nim |
15:02:56 | * | skrylar quit (Quit: Leaving) |
15:05:01 | * | nhywyll joined #nim |
15:05:26 | * | couven92 joined #nim |
15:06:09 | * | PMunch quit (Quit: Leaving) |
15:06:21 | FromGitter | <alehander42> Ok, now my js async PR https://github.com/nim-lang/Nim/pull/6841 uses only macros(and I tried to use macro helpers for more readable code) ⏎ now, is there more stuff needed in this PR? and where should we include asyncjs ? |
15:12:31 | FromGitter | <zetashift> How do I use parseInt on a char instead of a string? |
15:12:50 | miran | zetashift - advent of code? |
15:13:19 | FromGitter | <zetashift> yea |
15:13:21 | miran | zetashift - int(char) - int('0') |
15:13:23 | dom96 | Convert to string and then parseInt? |
15:13:47 | miran | i'm glad to hear i'm not the only one solving AoC in nim |
15:13:57 | FromGitter | <alehander42> c.ord - '0'.ord |
15:14:26 | enthus1ast | alehander42 this is so cool can't wait to try it! |
15:14:40 | FromGitter | <zetashift> yea at first i converted to string but it's in a loop so I thought that would be really inefficient |
15:14:43 | dom96 | Since Ludum Dare hasn't started perhaps I should have a go at it :) |
15:14:52 | FromGitter | <zetashift> why do I do the - int('0')? |
15:15:37 | FromGitter | <alehander42> enthus1ast: yeah, I am using it in a fork of mine since a long time and it's been pricesless for my nim->js code |
15:16:41 | miran | zetashift: because it doesn't work as in python, where you could do only int(char) |
15:16:44 | FromGitter | <alehander42> zetashift: int(c) returns the ascii code |
15:17:07 | miran | you could also do int('a'), iirc |
15:19:02 | FromGitter | <zetashift> ah alright |
15:20:04 | * | nsf joined #nim |
15:21:34 | * | miran quit (Quit: Page closed) |
15:21:54 | * | Ven`` joined #nim |
15:23:28 | FromGitter | <zetashift> sweet |
15:23:30 | FromGitter | <zetashift> I got it |
15:23:43 | FromGitter | <zetashift> Part 1 that is |
15:25:27 | FromGitter | <zetashift> Part 2 was easier than I thought |
15:31:32 | FromGitter | <zetashift> @miran1 just saw your solution on reddit, nice! It's cleaner than mine |
15:39:40 | * | nhywyll is now known as natrys |
15:48:00 | * | vivus quit (Quit: Leaving) |
15:48:14 | * | natrys quit (Quit: natrys) |
15:48:22 | dom96 | where is miran1's post? |
15:48:31 | * | nhywyll joined #nim |
15:49:26 | crem | So, currently every time I do {.base.} I also have to add {.gcsafe.}, otherwise I'll get warning? |
15:49:42 | * | nhywyll quit (Client Quit) |
15:50:00 | dom96 | Anyway, here is my solution. A little overcomplicated but I'm keeping it :) https://github.com/dom96/adventofcode/blob/master/day1.nim |
15:50:31 | * | Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
15:50:32 | * | natrys joined #nim |
15:51:25 | dom96 | oh, didn't notice the part 2 |
15:54:24 | FromGitter | <zetashift> That was my first solution too, making a circular type but I kinda got stuck on how to implement it |
15:54:51 | * | astronavt joined #nim |
15:58:13 | dom96 | yeah, took me some fiddling to figure out the index calculation |
15:58:19 | gokr | Araq: Sorry Araq, you guys ended up in our group - so we will just have to knock you out. Ehrm. |
15:58:37 | dom96 | gokr: wut? |
15:58:51 | gokr | World Cup lottery for groups. |
15:59:16 | gokr | Germany, Sweden, South Korea and Mexico in one group. Hum. |
15:59:33 | FromGitter | <alehander42> I like to practice code golf on aoc, so I am vert proud of writing the first two puzzles in a nim oneliner :D |
15:59:35 | FromGitter | <alehander42> https://gist.github.com/alehander42/e2a48d2516938c65694c6544218a5db0 |
15:59:40 | * | astronavt quit (Ping timeout: 258 seconds) |
16:00:31 | * | miran joined #nim |
16:01:00 | FromGitter | <zetashift> thats amazing lol |
16:01:24 | dom96 | wow |
16:02:01 | Araq | gokr, for some reason I doubt it |
16:02:10 | FromGitter | <alehander42> ger swe mexico holy shit |
16:02:25 | subsetpark | That's great |
16:02:32 | gokr | Araq: Hehe, I was ... you know... kidding. Like laughing in the pending doom. |
16:02:52 | miran | "where is miran1's post?" -> https://www.reddit.com/r/adventofcode/comments/7gsrc2/2017_day_1_solutions/dqli00o/ |
16:02:56 | dom96 | This is really cool. This person will use Nim as well: https://www.reddit.com/r/adventofcode/comments/7gu2ze/2017_25_more_languages_polyglot_aoc2017_a/ |
16:03:00 | Araq | I know. but even if you do, I don't mind |
16:03:19 | Araq | we've won enough things in recent times |
16:03:55 | FromGitter | <alehander42> russia saudi arabia egypt uruguay , this is group of death indeed |
16:04:03 | dom96 | heh, I knew my intuition was right about 'mod' |
16:04:27 | dom96 | Gotta upvote that Nim past Rust :D |
16:04:46 | miran | yeah, upvote nim for visibility |
16:05:08 | miran | i'm sure there will be new nim users, after couple of ellegant nim solutions in following days |
16:07:11 | miran | alehander42: if you like functional style and significat whitespace - take a look at F# |
16:07:39 | miran | i was experimenting with it before i discovered nim |
16:07:58 | * | Ven`` joined #nim |
16:08:05 | Araq | F# --- does it have a macro system these days? |
16:08:18 | Araq | when I looked at it, it didn't |
16:09:28 | miran | Araq: i have no idea, didn't go that far with F# (well, i don't use macros in nim either, not experienced enoguh yet) |
16:09:30 | FromGitter | <alehander42> miran: I am trying to improve some functional style patterns in Nim too (but F# is on my list indeed, I've worked more with Haskell, Clojure from the functional ones) |
16:10:02 | * | Ven`` quit (Client Quit) |
16:10:15 | miran | alehander42: i tried F# after only working in python and i fell in love. such an underrated language, imho |
16:11:00 | Araq | it's from the company who did evil ten years ago, not from the cool companies who are evil today |
16:11:48 | miran | it's from the same cool/evil company who gave us vscode, which majority of nimmers use, from what can i tell |
16:12:47 | miran | Araq: who are today's evil companies? |
16:13:42 | * | vivus joined #nim |
16:14:27 | FromGitter | <mratsim> GAFA: Google Amazon Facebook Apple: you can probably add Uber at the top and Netflix at the bottom now ;). |
16:15:00 | miran | A NU FAG |
16:15:14 | * | federico3 left #nim ("WeeChat 1.9") |
16:15:28 | * | Ven`` joined #nim |
16:15:59 | FromGitter | <mratsim> @alehander42 lovely solutions, reminds me of Project Euler code :p. |
16:17:07 | * | Ven`` quit (Client Quit) |
16:20:16 | FromGitter | <alehander42> @mratsim I can't forgive myself that one of my variables is >1 letter long |
16:20:48 | FromGitter | <mratsim> .... |
16:27:17 | subsetpark | aw man, is Netflix evil too now? |
16:28:09 | FromGitter | <zacharycarter> Netflix is evil for using Java |
16:28:30 | FromGitter | <krux02> Netflix is evil, but not for using Java |
16:28:42 | FromGitter | <zacharycarter> and then convincing people at my company that we should use more Java and Netflix projects |
16:29:38 | FromGitter | <zacharycarter> :P j/k of course |
16:29:43 | * | gokr quit (Ping timeout: 268 seconds) |
16:29:51 | FromGitter | <zacharycarter> I just really don't like Java |
16:31:48 | FromGitter | <alehander42> now imagine how evil are Google with Go |
16:32:51 | * | cspar joined #nim |
16:34:03 | FromGitter | <Varriount> Eh, at least Go doesn't have 20 layers of abstraction. |
16:35:52 | * | sz0 joined #nim |
16:35:56 | FromGitter | <zacharycarter> +1 |
16:37:04 | FromGitter | <alehander42> meh, that's more on java users and ecosystem, not the language |
16:37:51 | FromGitter | <zacharycarter> OOP lends itself well to over abstraction, and Java makes it difficult to not write OOP code |
16:38:39 | FromGitter | <alehander42> then why java is so famous for this 'over-abstraction' thing when there are many mainstream oop langs? |
16:40:43 | FromGitter | <zacharycarter> I think OOP languages are fine, I think Java takes OOP to the extreme and makes it difficult to write any other style of code other than OO code |
16:41:22 | FromGitter | <zacharycarter> and there are better OOP languages out there IMO, even on the JVM |
16:41:33 | FromGitter | <Veladus> Yeah for sure |
16:42:13 | FromGitter | <barcharcraz> C++ has the over abstraction problem as well, maybe more |
16:42:26 | FromGitter | <barcharcraz> At least for many libraries |
16:42:41 | FromGitter | <barcharcraz> CGAL comes to mind |
16:43:51 | FromGitter | <barcharcraz> Trying to make algorithms generic over data structures and not just over different sized types |
16:45:04 | FromGitter | <alehander42> I agree, my theory is that people learned to write saner OOP and Java was the first very mainstream oop lang, so it got more of the "worse oop" |
16:45:20 | FromGitter | <barcharcraz> Yeah |
16:45:27 | FromGitter | <alehander42> notice, "very mainstream kinda oop", smalltalkers |
16:45:44 | FromGitter | <barcharcraz> Cuz like c# is almost identical to java |
16:45:57 | FromGitter | <barcharcraz> And has nicer oop traditions |
16:50:29 | FromGitter | <barcharcraz> Idk my problem with oop is that it obscures the abi of your code |
16:51:14 | FromGitter | <Veladus> but do you realy need to worry about your abi, isn't your api more important? |
16:53:13 | FromGitter | <barcharcraz> If you want to write code that can be called from other languages then yes |
16:53:36 | FromGitter | <barcharcraz> Also if you ever want to allow for shared libs |
16:53:59 | * | cspar quit (Ping timeout: 255 seconds) |
16:54:10 | FromGitter | <Veladus> Okay, thats a point |
16:55:36 | FromGitter | <barcharcraz> Speaking of which, someone should write a macro to take a nim module and generate C headers for it |
16:55:47 | * | astronavt joined #nim |
16:56:04 | FromGitter | <barcharcraz> And maybe a stand-alone nim header with importc instead of the implementation |
16:57:16 | FromGitter | <barcharcraz> Also a —dynlibOverride:* |
16:57:25 | FromGitter | <barcharcraz> That was a star |
16:57:31 | FromGitter | <barcharcraz> Before it was an emoji |
17:00:11 | * | astronavt quit (Ping timeout: 240 seconds) |
17:05:37 | FromGitter | <barcharcraz> Oh! Is there a way to get distrotiols to generate a system layout in a different prefix? Or do we just have to chroot |
17:05:52 | FromGitter | <barcharcraz> Or fakechroot |
17:14:42 | miran | dom96: you tweeted about AoC? |
17:15:29 | miran | searh with whitespaces (advent of code language:Nim) might yield more results, both now and in the future |
17:20:17 | natrys | hi miran, fancy seeing you here |
17:20:29 | natrys | I kept up with you for a bit in the warming up thread |
17:20:39 | miran | hey natrys |
17:21:50 | natrys | couldn't wake up this morning in time for AoC, maybe tomorrow |
17:25:46 | * | claudiuinberlin quit (Quit: Textual IRC Client: www.textualapp.com) |
17:27:16 | miran | natrys: i thought today i might have a good chance to get on the leaderboard, but i was too clumsy |
17:27:31 | miran | probably because of waking up before 6 am |
17:29:05 | miran | seeing you here means you'll use nim for this year, or you would be multilingual just as in warm up? |
17:31:32 | FromGitter | <dom96> miran: I tried that, it doesn't pick up my repo. So it's a trade-off :) |
17:32:04 | miran | heh, this way it doesn't pick mine :D :D |
17:32:35 | miran | advent language:Nim |
17:32:48 | miran | this shows us both :) |
17:34:38 | natrys | miran: tbh being multilingual doesn't feel fun, it's mostly all about looking up API and stuffs which is painful |
17:34:52 | natrys | will probably stick with Perl6 and Nim |
17:56:31 | * | astronavt joined #nim |
18:01:13 | * | astronavt quit (Ping timeout: 252 seconds) |
18:12:41 | * | Sentreen quit (Ping timeout: 258 seconds) |
18:12:53 | * | claudiuinberlin joined #nim |
18:15:27 | * | marenz_ quit (Ping timeout: 248 seconds) |
18:15:37 | FromGitter | <RedBeard0531> Is there a way to make `assert` kill the process immediately rather than throw an exception? It is making async programs harder to debug because they catch all exceptions until someone picks up the Future. Sometimes the assertion is about something that causes the consumer to hang forever, so there is never any output. |
18:17:30 | * | rbrt joined #nim |
18:25:31 | * | Sentreen joined #nim |
18:26:20 | * | georgeg[m] joined #nim |
18:27:18 | georgeg[m] | I tried to {.borrow.} from miran's and doms solutions, but it doesn't compile: https://gist.github.com/konqoro/13eb052f664250ef94c6c566192bf7cd |
18:27:29 | * | MonsterAbyss is now known as Abyss |
18:28:00 | * | Abyss is now known as Guest90897 |
18:28:11 | * | Guest90897 is now known as MosterAbyss |
18:36:49 | * | salewski joined #nim |
18:38:05 | salewski | Have you ever tried using procs with more than one generic parameter? |
18:38:17 | salewski | I did not get it working, see https://forum.nim-lang.org/t/3389 |
18:40:29 | miran | georgeg[m]: i get "error: 'result' is a pointer; did you mean to use '->'?" - i have no experience with pointers, so i cannot help you, sorry |
18:41:14 | enthus1ast | oh man useing nim with shared objects is burnouting..... |
18:43:50 | * | skoude joined #nim |
18:45:02 | georgeg[m] | miran: yes looks like a bug in codegen |
18:49:08 | * | arecaceae quit (Remote host closed the connection) |
18:49:27 | * | arecaceae joined #nim |
18:57:17 | * | astronavt joined #nim |
19:00:48 | salewski | Oh, maybe it will work, seems I used different range types for box and tree, sorry... |
19:02:14 | * | astronavt quit (Ping timeout: 255 seconds) |
19:02:24 | * | natrys quit (Ping timeout: 248 seconds) |
19:06:16 | georgeg[m] | I usually start with concrete types then try generics |
19:06:53 | georgeg[m] | but your code is full of T, M, N so maybe it wasn't feasible |
19:06:58 | * | kunev quit (Ping timeout: 268 seconds) |
19:09:39 | * | kunev joined #nim |
19:14:34 | * | vivus quit (Quit: Leaving) |
19:15:28 | salewski | I got search() proc to compile when using static[int] for dimension of bounding box. Great. |
19:16:13 | salewski | (With static[Natural] it seems not to work, but that is no real problem...) |
19:22:12 | * | natrys joined #nim |
19:31:14 | * | fvs left #nim ("ERC (IRC client for Emacs 25.3.1)") |
19:32:02 | * | natrys quit (Quit: natrys) |
19:36:40 | * | jjido joined #nim |
19:58:05 | * | astronavt joined #nim |
20:01:35 | * | skoude quit (Ping timeout: 248 seconds) |
20:02:46 | * | astronavt quit (Ping timeout: 252 seconds) |
20:07:59 | * | jjido quit (Read error: No route to host) |
20:08:10 | * | JStoker quit (Ping timeout: 264 seconds) |
20:08:22 | * | natrys joined #nim |
20:10:41 | * | JStoker joined #nim |
20:12:36 | * | skoude joined #nim |
20:14:39 | FromGitter | <barcharcraz> is it possible to use the same file as both a config.nims and a project.nimble file? |
20:14:56 | * | nsf quit (Quit: WeeChat 1.9.1) |
20:15:47 | crem | Is it possible for nimlime to specify directory for building? I press Ctrl+B to build current file (to check syntax) and it generates binary file nearby. |
20:16:21 | dom96 | barcharcraz: why do you want both? |
20:16:35 | FromGitter | <barcharcraz> because I don't want to require nimble |
20:17:11 | FromGitter | <barcharcraz> and I want the command line options to be picked up when testing various tools |
20:27:43 | * | gokr joined #nim |
20:47:30 | * | JappleAck quit (Quit: Leaving) |
20:49:06 | * | acidx_ is now known as acidx |
20:49:56 | * | acidx is now known as Guest96151 |
20:52:05 | * | cspar joined #nim |
20:52:23 | * | xkapastel joined #nim |
20:52:47 | * | Jesin quit (Quit: Leaving) |
20:54:24 | salewski | I don't get it to compile when I uncomment the commented lines in search() proc: |
20:54:28 | salewski | http://ssalewski.de/tmp/rtree.nim |
20:54:45 | salewski | May closures not work with generics? |
20:54:53 | * | miran quit (Ping timeout: 268 seconds) |
20:55:14 | salewski | rtree.nim(21, 3) Error: cannot instantiate: 'H' |
20:56:09 | salewski | That error message does not really help. And nim check gives many errors... |
20:58:02 | * | Guest96151 is now known as acidx |
20:58:47 | * | astronavt joined #nim |
20:59:24 | * | couven92 quit (Quit: Client disconnecting) |
21:03:28 | * | vlad1777d joined #nim |
21:03:44 | * | astronavt quit (Ping timeout: 255 seconds) |
21:09:00 | * | endragor joined #nim |
21:13:37 | * | endragor quit (Ping timeout: 248 seconds) |
21:44:17 | * | rbrt quit (Quit: Oíche mhaith) |
21:47:45 | * | jjido joined #nim |
21:59:34 | * | astronavt joined #nim |
22:04:56 | * | astronavt quit (Ping timeout: 255 seconds) |
22:10:20 | * | gangstacat joined #nim |
22:10:40 | * | jjido quit (Read error: No route to host) |
22:11:03 | * | jjido joined #nim |
22:14:41 | * | skoude quit (Ping timeout: 240 seconds) |
22:19:57 | * | skoude joined #nim |
22:20:21 | * | gokr quit (Ping timeout: 260 seconds) |
22:24:11 | * | skoude quit (Ping timeout: 240 seconds) |
22:28:01 | * | couven92 joined #nim |
22:29:39 | FromGitter | <nitely> salewski: I think this is what you want: https://play.nim-lang.org/?gist=3f24206235dfd31f65091bbb5ce46c4d |
22:30:01 | * | natrys quit (Quit: natrys) |
22:30:02 | FromGitter | <nitely> but I think it hits this error: https://github.com/nim-lang/Nim/issues/6522 |
22:31:06 | FromGitter | <nitely> unsure though |
22:37:51 | * | Ven`` joined #nim |
22:37:51 | * | Trustable joined #nim |
22:43:31 | salewski | nitely thanks. I have fixed some errors myself already. |
22:44:21 | salewski | Unfortunately now I get a seg fault when compiling. I have to ask Araq, because I think it should not happen. |
22:50:24 | Araq | lol generics and closures are everywhere |
22:50:35 | Araq | what's still somewhat unstable is static[T] |
22:51:16 | salewski | https://github.com/nim-lang/Nim/issues/6859 |
22:51:51 | salewski | Yes this is really hard work for the compiler. |
22:55:56 | salewski | Leaf[M, D, RT, LT](n) seems to work. |
22:56:40 | salewski | Maybe the problem is, that Node creates an array with only 3 generic parameters? |
22:57:03 | salewski | I can see no other differences between Leaf and Node. |
23:00:37 | salewski | Maybe I should use object variants instead of inheritance for Leaf and Node, |
23:00:41 | * | astronavt joined #nim |
23:01:03 | salewski | maybe that would avoid the crash. Will test tommorow. |
23:04:33 | Araq | N[D: Dim; RT] = tuple[b: Box[D, RT]; n: N[D, RT]] # requires an infinite amount of memory |
23:05:11 | * | astronavt quit (Ping timeout: 240 seconds) |
23:05:18 | salewski | Oh. |
23:05:48 | Araq | just throw away this code, once it compiles, nobody can maintain it |
23:07:24 | salewski | But we want to have a generic RTree! At least dimension should be generic. |
23:07:37 | Araq | so put into a template |
23:14:32 | * | rbrt joined #nim |
23:20:06 | * | claudiuinberlin quit (Quit: Textual IRC Client: www.textualapp.com) |
23:21:32 | * | couven92 quit (Quit: Bye) |
23:21:41 | * | Ven`` quit (Ping timeout: 240 seconds) |
23:24:36 | * | couven92 joined #nim |
23:32:31 | * | Trustable quit (Remote host closed the connection) |
23:34:19 | * | salewski quit (Quit: WeeChat 1.9.1) |
23:35:13 | * | vlad1777d quit (Remote host closed the connection) |
23:36:23 | * | vlad1777d joined #nim |
23:39:11 | * | jjido quit (Ping timeout: 240 seconds) |
23:40:48 | * | marenz_ joined #nim |