00:21:11 | * | bozaloshtsh joined #nim |
00:29:03 | * | brainpro1 quit (Ping timeout: 265 seconds) |
00:34:28 | * | krux02 quit (Remote host closed the connection) |
00:35:20 | * | jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
00:40:18 | * | xet7 quit (Quit: Leaving) |
00:45:45 | * | dddddd quit (Remote host closed the connection) |
00:47:35 | * | brainpro1 joined #nim |
01:16:31 | * | bozaloshtsh left #nim ("ERC (IRC client for Emacs 27.0.50)") |
02:02:26 | * | arecaceae quit (Remote host closed the connection) |
02:02:49 | * | arecaceae joined #nim |
02:04:14 | * | rockcavera joined #nim |
02:37:23 | FromGitter | <gogolxdong> mapLiterals seems doesn't apply to template like i18n |
02:39:39 | FromGitter | <Varriount> @gogolxdong Can you give a code example? |
02:45:14 | FromGitter | <gogolxdong> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5b271cbaf41ea926bc8b3ba9] |
02:49:28 | * | cspar joined #nim |
02:52:25 | FromGitter | <gogolxdong> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5b271e69f3e3007371ba6a46] |
02:53:50 | FromGitter | <gogolxdong> #["id", "name", "type", "status", "provider", "cpu", "memory", "zone", "createTime"] |
03:06:44 | * | Electrux joined #nim |
03:24:51 | * | xkapastel quit (Quit: Connection closed for inactivity) |
04:13:17 | * | endragor joined #nim |
04:27:54 | FromGitter | <Varriount> @gogolxdong mapLiterals only works on literals, not variables. |
04:40:33 | FromGitter | <Varriount> @gogolxdong You would need to do ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5b2737c18cef6c0add80ab91] |
04:40:43 | FromGitter | <Varriount> Bah |
04:42:22 | FromGitter | <Varriount> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5b27382e63cb0b1a2d201677] |
04:44:01 | * | Bevo_ joined #nim |
04:51:11 | * | Electrux quit (Quit: WeeChat 2.1) |
04:56:47 | FromGitter | <Varriount> @nitely Awesome regex library! |
05:06:13 | FromGitter | <arnetheduck> @dom96 explicit in this case would mean that versions without operators should not be supported at all - we've already established that versions without operators are ambiguous - it's hard to know what they mean, specially when minor/patch are taken into consideration or missing on one side, so you have to assign "some" meaning to them.. ie what's the first principle that guides version comparison function |
05:06:13 | FromGitter | ... implementation? semver? |
05:19:55 | * | nsf joined #nim |
05:22:14 | FromGitter | <codenoid> i have coding mood |
05:22:25 | FromGitter | <codenoid> btw, can i hide my app from `ps aux ` |
06:00:31 | FromGitter | <Varriount> @codenoid Not without using kernel stuff |
06:00:49 | FromGitter | <Varriount> Or replacing `ps` |
06:04:05 | * | Vladar joined #nim |
06:20:24 | FromGitter | <mratsim> You probably need to find some rootkit tutorials =) |
06:21:06 | FromGitter | <mratsim> an alternative is to piggyback on another executable (like bash, systemd, python) |
06:21:21 | FromGitter | <mratsim> or splice/patch a process |
06:23:40 | FromGitter | <mratsim> Also try to look into kernel level debuggers, I remember playing with SoftIce something like 15 years ago, it hid itself from the Windows Task Manager |
06:26:21 | FromDiscord | <bahm> Is it possible to pass a code block to an operator template? |
06:26:41 | FromGitter | <codenoid> i'll try something |
06:27:39 | FromGitter | <Varriount> bahm: Yes, however you would probably need to use back ticks |
06:28:32 | FromGitter | <Varriount> bahm: What are you aiming to achieve? |
06:28:52 | FromGitter | <Varriount> @mratsim How are things going? |
06:29:04 | FromGitter | <mratsim> hey, awesome =) |
06:30:17 | FromGitter | <mratsim> what about you? |
06:32:29 | FromGitter | <Varriount> Working on my independent project for school |
06:32:47 | FromGitter | <Varriount> A Nim bash-like thing |
06:33:20 | FromGitter | <mratsim> nice =) |
06:33:27 | FromGitter | <mratsim> Will you call it Nish? :P |
06:34:10 | FromGitter | <mratsim> I saw the fish shell, and it seemed interesting: https://gist.github.com/JoshCheek/02fc5cab78ffa0c7cc95 |
06:34:46 | FromGitter | <Varriount> It's really only for educational purposes. The planned syntax is currently a mixture of bash and command prompt |
06:35:55 | FromGitter | <Varriount> For example, `set x = y` |
06:36:09 | * | yglukhov[i] joined #nim |
06:38:00 | FromGitter | <mratsim> what are you studying by the way? They allow you to use Nim? |
06:38:16 | FromGitter | <mratsim> (going out, coming back in ~45min) |
06:39:21 | FromGitter | <Varriount> @mratsim It's computer science, I'm taking the "Independent Study" course. |
06:40:46 | FromGitter | <Varriount> Also, I sent you an invite link, in case you want to see the code |
06:52:49 | * | Bevo_ quit (Ping timeout: 260 seconds) |
06:58:25 | FromDiscord | <bahm> I'm trying to implement list comprehension using templates, but I don't see how that's possible with generics, since a symbol lookup will fail: |
06:58:25 | FromDiscord | <bahm> |
06:58:25 | FromDiscord | <bahm> template `<-`(a, b, body: untyped): untyped = |
06:58:25 | FromDiscord | <bahm> var result: seq[int] = @[] |
06:58:25 | FromDiscord | <bahm> for a in b: |
06:58:26 | FromDiscord | <bahm> result.add(body) |
06:58:26 | FromDiscord | <bahm> result |
06:58:27 | FromDiscord | <bahm> |
06:58:29 | FromDiscord | <bahm> echo x <- @[2, 3, 4]: x*x #@[4, 9, 16] |
07:02:50 | FromDiscord | <bahm> To be specific, the above works but is limited to a integers. The following is my attempt with generics: |
07:02:50 | FromDiscord | <bahm> |
07:02:50 | FromDiscord | <bahm> template `<-`[T](a: untyped, b: typed, body: T): seq[T] = |
07:02:50 | FromDiscord | <bahm> var result: seq[T] = @[] |
07:02:51 | FromDiscord | <bahm> for a in b: |
07:02:51 | FromDiscord | <bahm> result.add(body) |
07:02:51 | FromDiscord | <bahm> result |
07:02:52 | FromDiscord | <bahm> |
07:02:54 | FromDiscord | <bahm> echo x <- @[2, 3, 4]: x*x #Error: undeclared identifier: 'x' |
07:02:59 | FromDiscord | <bahm> To be specific, the above works but is limited to integers. The following is my attempt with generics: |
07:02:59 | FromDiscord | <bahm> |
07:03:01 | FromDiscord | <bahm> template `<-`[T](a: untyped, b: typed, body: T): seq[T] = |
07:03:03 | FromDiscord | <bahm> var result: seq[T] = @[] |
07:03:04 | FromDiscord | <bahm> for a in b: |
07:03:06 | FromDiscord | <bahm> result.add(body) |
07:03:07 | FromDiscord | <bahm> result |
07:03:07 | FromDiscord | <bahm> |
07:03:09 | FromDiscord | <bahm> echo x <- @[2, 3, 4]: x*x #Error: undeclared identifier: 'x' |
07:07:12 | * | adeohluwa joined #nim |
07:07:21 | FromGitter | <Varriount> bahm: Have you looked at https://nim-lang.org/docs/future.html ? |
07:08:25 | FromDiscord | <bahm> I'm aware there's an implementation of list comprehension, but I don't like the syntax 😃 |
07:08:42 | * | Perkol joined #nim |
07:11:35 | FromGitter | <Varriount> Well, an operator can usually only take 2 inputs, the left side and the right side. |
07:12:33 | FromGitter | <Varriount> I wouldn't attempt to use generics. This sound like something macros would need to be used for. |
07:13:11 | FromGitter | <Varriount> You could possibly use the quoting procedure in the macros module to help though. |
07:14:21 | FromGitter | <7sDream> Why simple function like `system.+` is not `procvar`? |
07:18:00 | FromGitter | <alehander42> I am using fish too |
07:18:11 | FromGitter | <alehander42> like it a lot |
07:22:13 | * | PMunch joined #nim |
07:32:19 | * | dddddd joined #nim |
07:33:36 | * | zahary joined #nim |
07:34:21 | FromGitter | <mratsim> @7sDream, + is a builtin function, builtin function like inline functions are not proctor, there is no function pointer to pass. |
07:34:46 | FromGitter | <mratsim> use a template for injection or wrap them in a proc |
07:35:14 | FromGitter | <7sDream> thx u for explaining! |
07:36:43 | FromGitter | <mratsim> procvar not proctor ... |
07:41:05 | * | Vladar quit (Ping timeout: 240 seconds) |
07:41:30 | * | Vladar joined #nim |
07:46:48 | * | floppydh joined #nim |
07:47:03 | * | SenasOzys joined #nim |
07:47:28 | * | cspar quit (Ping timeout: 268 seconds) |
07:51:10 | * | fanta7531 joined #nim |
07:53:48 | Perkol | On windows install page, there are dlls archive where I am supposed to place them? |
07:54:01 | * | cspar joined #nim |
07:59:45 | PMunch | For PCRE and OpenSSL? |
08:05:56 | Perkol | Yes |
08:07:00 | PMunch | Not sure how Windows loads DLLs, but I would guess either some common DLL folder, in some kind of PATH variable, or just right next to the Nim compiler itself |
08:08:55 | * | xet7 joined #nim |
08:12:18 | * | Perkol quit (Quit: Leaving) |
08:12:23 | FromGitter | <mratsim> It loads DLL from hell ;) |
08:13:11 | * | Pisuke joined #nim |
08:14:35 | * | MyMind quit (Ping timeout: 240 seconds) |
08:15:33 | FromGitter | <mratsim> @Varriount, I had a look at commandant, interesting and super clean. |
08:16:06 | FromGitter | <mratsim> By the way, I’m not an expert on lexing, but what do you think of the lexbase module, what does it lack? https://nim-lang.org/docs/lexbase.html |
08:19:19 | FromGitter | <mratsim> This made me chuckle: |
08:19:31 | FromGitter | <mratsim> (https://files.gitter.im/nim-lang/Nim/7vLg/2018-06-18_10-18-59.png) |
08:24:22 | * | Perkol joined #nim |
08:25:19 | Perkol | https://bpaste.net/show/666283fda0f7 I try to find location of my exe's dir on windows, yet it doesnt prints it on screen for some reason |
08:27:05 | Perkol | Maybe it interprets \ as line breaks? |
08:27:50 | Perkol | as escape char i mean |
08:46:12 | * | Perkol quit (Remote host closed the connection) |
08:53:13 | * | krux02 joined #nim |
09:07:22 | FromGitter | <7sDream> ```code paste, see link``` ⏎ ⏎ New to Nim's Concept feature. What's wrong with my code? [https://gitter.im/nim-lang/Nim?at=5b27764afc041c70d9aa46a7] |
09:08:17 | FromGitter | <7sDream> it cause a type mismatch when compile ⏎ if anyone want to run it: https://glot.io/snippets/f23gfctae9 |
09:08:36 | * | Vladar quit (Remote host closed the connection) |
09:12:37 | * | mzigora joined #nim |
09:13:40 | * | Vladar joined #nim |
09:13:50 | * | nc-x joined #nim |
09:14:14 | nc-x | @mratsim: Apparently me and Araq are the only ones bitten by it ;D |
09:15:12 | dom96 | lol |
09:17:23 | nc-x | Perkol: if `len` is 14 then something should have been printed. try `echo output.repr` and see what it prints. |
09:17:53 | * | nc-x quit (Client Quit) |
09:18:23 | * | sakalli_ joined #nim |
09:23:00 | * | sakalli_ quit (Client Quit) |
09:28:45 | FromGitter | <bevo009> Hey guys, I know the mod/%% operator is designed for remainder division with integers ⏎ Floats using mod do compile when you import math...what is enabling that? |
09:28:55 | FromGitter | <bevo009> #mod Vs %% - operand test ⏎ ⏎ import math ⏎ ⏎ echo 7 mod 2 # => 1 ... [https://gitter.im/nim-lang/Nim?at=5b277b56c016730d8667096d] |
09:30:06 | FromGitter | <bevo009> also, how do you guys paste code in here and get that ide look? |
09:30:37 | dom96 | https://github.github.com/gfm/#fenced-code-blocks |
09:30:41 | FromGitter | <bevo009> Sorry, that looks all messed up now |
09:31:05 | dom96 | You can put the language name after the first three ` |
09:31:34 | FromGitter | <bevo009> o h like the forum |
09:31:39 | FromGitter | <dom96> yep |
09:33:08 | FromGitter | <bevo009> ok fixed, thanks |
09:35:01 | FromGitter | <mratsim> @bevo009 https://nim-lang.org/docs/math.html#mod,T,T |
09:35:05 | FromGitter | <Vindaar> @bevo009 regarding your question: if you search for mod on the index of the documentation here: https://nim-lang.org/docs/theindex.html#%60mod%60 you'll see that `math` defines a mod for float |
09:38:46 | FromGitter | <bevo009> cheers, https://nim-lang.org/docs/math.html#mod,T,T |
09:39:56 | FromGitter | <bevo009> ouput looks a little inconsistent, or at least unintuitive |
09:40:26 | FromGitter | <bevo009> Why does echo 7 mod 2.0 fail? |
09:42:16 | FromGitter | <Vindaar> See my link. You'll see that there is no `mod` proc, which defines a mod for two different types. And in Nim implicit type casting does not happen between most types (e.g. an `int` cast to a `float` without you saying so) |
09:44:25 | FromGitter | <bevo009> Sorry, I meant, why does 7.0 mod 2 compile, and 7 mod 2.0 does not? |
09:45:01 | FromGitter | <GULPF> `7.0 mod 2` works because integer literals are magical and can be converted to floats automatically |
09:46:00 | FromGitter | <GULPF> but it's buggy and unreliable when combined with generic procs like mod, which is why `7 mod 2.0` fails |
09:51:43 | FromGitter | <bevo009> So the compiler uses the mod present in the system module to calculate remainder ⏎ But if you import math, is the mod present in the math module now working on all mod operations? ⏎ Or does the compiler determine if a float is present, and switch on the fly? |
09:51:57 | FromGitter | <mratsim> when a proc accepts 2 parameters that are supposed to be of the same type, Nim tries to convert the second one to the type of the first using a converter (or automatically if the second is an int literal). There is no converter from float to int. |
09:52:24 | FromGitter | <mratsim> you can import lenient_ops though if you want this behaviour |
09:52:41 | FromGitter | <mratsim> @bevo009 yes that’s called proc overloading |
09:53:21 | FromGitter | <mratsim> if you import math, it’s present on all operations in the current file/module |
09:55:24 | FromGitter | <bevo009> So that yes was to the math module mod taking over all mod operations once imported in |
09:56:49 | FromGitter | <bevo009> And I assume mod's alias, the %% operator, doesn't work on any floats because it's actually a IntMax32 variant |
09:57:38 | FromGitter | <bevo009> valuable info for me to log, cheers guys |
10:01:53 | FromGitter | <mratsim> it does not take over |
10:02:59 | FromGitter | <mratsim> the compiler choose which one to call depending on the types of the parameters. Note that int literals (123 for example not x) are are convertible silently to any other numeric type. |
10:04:00 | FromGitter | <mratsim> if you do 10 mod 2, it will still use the integer mod, and gives you an integer result |
10:05:10 | FromGitter | <mratsim> If you import my big int library: https://github.com/status-im/nim-stint, you will have mod for uint128, uint256, … uint2048 but it will be specialized to them, the compiler will choose which one to call depending on the types. |
10:12:31 | def- | bevo009: %% is not an alias for `mod`, it interprets the numbers as unsigned ints and comes from a time before Nim had unsigned int support |
10:14:29 | def- | strangely enough you're not the first one to assume that even though the documentation is quite clear |
10:15:33 | def- | I guess the %-suffixed procs should be deprecated in favour of using unsigned ints |
10:18:13 | FromGitter | <bevo009> the documentation might be clear but I haven't read it all yet |
10:18:47 | FromGitter | <bevo009> I thought it was Araq who said it t was an alias |
10:19:02 | FromGitter | <bevo009> but I can't remember exactly where now |
10:20:17 | FromGitter | <bevo009> thanks for the clarification |
10:27:00 | * | adeohluwa quit (Quit: Connection closed for inactivity) |
10:30:49 | * | fanta7531 quit (Quit: ...) |
11:01:46 | * | elrood joined #nim |
11:02:20 | * | Vladar quit (Quit: Leaving) |
11:04:22 | * | SenasOzys quit (Ping timeout: 245 seconds) |
11:22:47 | * | zahary1 joined #nim |
11:30:38 | * | noonien joined #nim |
11:44:52 | * | Ven`` joined #nim |
11:45:26 | FromGitter | <narimiran> hey @mratsim, maybe you could help me. i'm on a new linux computer, i have installed Neo and now i get either "could not import: cblas_sscal" or "could not load: libopenblas.so(||.3|.2|.1|.0)". do you maybe know what's wrong? |
11:55:05 | FromGitter | <mratsim> apt-get install openblas? |
11:56:21 | FromGitter | <mratsim> you can check my Travis here: https://github.com/mratsim/Arraymancer/blob/afc0c213316b4d98002fbb118551a4de9b67e217/.travis.yml#L45-L50 |
11:56:33 | FromGitter | <mratsim> on Ubuntu: apt-get install libopenblas-dev |
11:57:36 | FromGitter | <mratsim> also depending on the name you might need to pass --define:blas=blas or --define:blas=openblas or --define:blas=libopenblas |
12:00:24 | FromGitter | <narimiran> i tried installing openblas and change my .cfg to have a line `define:"blas=openblas"`, but it didn't help |
12:00:44 | FromGitter | <narimiran> it seems it works with `define:"blas=cblas"` :/ |
12:01:05 | * | fvs joined #nim |
12:05:02 | * | Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
12:06:00 | FromGitter | <narimiran> i think it might be because i use manjaro, which has openblas 0.3.0 - on a computer where i have an older version it seems it works without a problem |
12:07:28 | * | data-man joined #nim |
12:10:33 | * | elrood quit (Remote host closed the connection) |
12:11:14 | * | data-man quit (Client Quit) |
12:11:55 | * | elrood joined #nim |
12:12:50 | * | krux02 quit (Quit: Leaving) |
12:14:18 | * | Ven`` joined #nim |
12:14:47 | FromGitter | <mratsim> cblas is the default name I think, so it’s possible that the distro packager used that name instead of the more common blas/openblas/libopenblas |
12:17:19 | elrood | cblas is just the c interface to blas, it still requires blas or openblas to be installed. at least on arch / manjaro they're separate packages |
12:18:05 | FromGitter | <narimiran> indeed. by default i had blas and lapack. then i installed cblas, and defined "blas=cblas" - this works. |
12:18:42 | FromGitter | <narimiran> when i try to install openblas (blas is uninstalled automatically) and use it with "blas=openblas", i get an error |
12:22:58 | * | SenasOzys joined #nim |
12:29:13 | * | gangstacat joined #nim |
12:37:36 | * | chief_enzosha joined #nim |
12:37:57 | * | mzigora quit (Ping timeout: 240 seconds) |
12:41:01 | * | nsf quit (Quit: WeeChat 2.1) |
12:51:07 | * | rauss quit (Read error: Connection reset by peer) |
12:53:04 | * | rauss joined #nim |
12:54:22 | * | Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
13:07:30 | * | chief_enzosha quit (Quit: Leaving) |
13:09:58 | * | Electrux joined #nim |
13:11:45 | * | xkapastel joined #nim |
13:11:52 | * | Vladar joined #nim |
13:36:02 | endragor | Is it possible to make proc f[T: int]() also work on `distinct int`? |
13:39:44 | subsetpark | You mean aside from making it `int | MyDistinctInt`? |
13:40:07 | * | endragor quit (Remote host closed the connection) |
13:40:33 | * | endragor joined #nim |
13:43:59 | * | zahary1 quit (Quit: Leaving.) |
13:45:25 | * | endragor quit (Ping timeout: 260 seconds) |
13:48:15 | shashlick | Pmunch: check out nimpcre if you want to avoid the pcre dll |
13:59:54 | * | endragor joined #nim |
14:04:17 | * | endragor quit (Ping timeout: 248 seconds) |
14:05:57 | * | craigger quit (Quit: bye) |
14:07:36 | * | nc-x joined #nim |
14:07:56 | nc-x | @data-man: https://github.com/nim-lang/Nim/issues/7902#issuecomment-398058449 What happened? |
14:08:41 | * | craigger joined #nim |
14:09:49 | PMunch | shashlick, I wasn't the one asking about DLLs. I was trying to answer :P |
14:10:03 | PMunch | But I've looked at nimpcre before, for compile-time running |
14:11:40 | * | Entropic quit (Ping timeout: 260 seconds) |
14:17:17 | * | Entropic joined #nim |
14:18:39 | * | nc-x quit (Quit: Page closed) |
14:27:10 | FromGitter | <Varriount> There's also nim-regex |
14:31:55 | PMunch | Oh, maybe that was the one I looked at. Just remember it was a pure Nim regex implementation |
14:32:05 | FromGitter | <mratsim> @endragor @subsetpark proc f(x: YourDistintInt) {.borrow.}, note that borrow is broken with generics iirc |
14:32:47 | FromGitter | <mratsim> ah no, it’s broken with static, my bad - https://github.com/nim-lang/Nim/issues/7552 |
14:33:20 | FromGitter | <mratsim> actually it’s broken with both, fix: https://github.com/nim-lang/Nim/pull/6232 |
14:35:22 | * | SenasOzys quit (Ping timeout: 265 seconds) |
14:40:05 | * | Perkol joined #nim |
14:40:23 | subsetpark | mratsim - I know about borrow, but my interpretation was that he was trying to go in the other direction (which isn't possible with my suggestion either): "proc P should apply to all subtypes, even distinct ones", as opposed to "in the case of proc P, subtype T' should not behave like distinct" |
14:41:34 | FromGitter | <sivakon> How many threads can we create using threadpool? |
14:42:13 | FromGitter | <sivakon> Is there a good actor library for Nim? |
14:42:19 | FromGitter | <mratsim> I suppose a macro called {.superborrow.} should try to get all the valid types? |
14:42:53 | FromGitter | <mratsim> @sivakon, how many as you want. For actors there is Nimoy, monster ont he forum started one as well but I’m not sure he open-sourced it |
14:43:30 | FromGitter | <sivakon> 4 million threads? |
14:45:36 | Perkol | How do I make already existing string a raw one? |
14:46:57 | * | miran joined #nim |
14:47:05 | FromGitter | <sivakon> @mratsim nimoy is no last committed 1year ago |
14:47:08 | FromGitter | <mratsim> @sivakon threadpools are heavy threads, what you’re looking for are coroutines/fiber/green threads |
14:47:26 | FromGitter | <mratsim> but there is no library that abstract that in Nim |
14:47:50 | FromGitter | <sivakon> @mratsim does Nim have coroutine short ? |
14:48:17 | FromGitter | <sivakon> Go style coroutines are implemented in C. Can I wrap that? |
14:48:32 | FromGitter | <mratsim> https://nim-lang.org/docs/coro.html |
14:48:54 | FromGitter | <mratsim> And fedback on writing an actor library: https://forum.nim-lang.org/t/3291 |
14:49:45 | FromGitter | <mratsim> you can wrap any C code yes. |
14:50:46 | FromGitter | <tim-st> Good news: nim will get the quickest Unicode Collation Algorithm: |
14:50:49 | FromGitter | <sivakon> https://github.com/sustrik/libdill |
14:51:52 | * | cspar quit (Ping timeout: 245 seconds) |
14:53:46 | FromGitter | <sivakon> @mratsim Scala has akka which is awesome. Rust has actix now as well. |
14:55:27 | Perkol | https://bpaste.net/show/9c841ea2489b Still figuring out what this is about. |
14:58:44 | * | yglukhov[i] quit (Remote host closed the connection) |
14:59:27 | * | yglukhov[i] joined #nim |
15:00:09 | Perkol | It writes this string perfectly normally to file, though |
15:04:04 | * | floppydh quit (Quit: WeeChat 2.1) |
15:04:10 | * | yglukhov[i] quit (Ping timeout: 260 seconds) |
15:04:47 | * | cspar joined #nim |
15:05:37 | elrood | sivakon, last we checked goroutines required some assembler though |
15:06:56 | * | Trustable joined #nim |
15:10:53 | * | Guest40451 quit (Ping timeout: 276 seconds) |
15:11:02 | * | pigmej joined #nim |
15:11:56 | * | pydsigner quit (Ping timeout: 256 seconds) |
15:14:44 | * | pydsigner joined #nim |
15:16:15 | * | NimBot joined #nim |
15:23:50 | * | zahary1 joined #nim |
15:41:26 | FromGitter | <Varriount> @mratsim I've been using the Nim compiler as inspiration for parts of the design. |
15:43:39 | FromGitter | <mratsim> I don’t see any object variant though ;) |
15:47:12 | PMunch | Hmm, the Gitter bot seems to be a bit unstable today |
15:51:55 | FromGitter | <Varriount> @mratsim The compiler's AST nodes use variants |
15:52:15 | FromGitter | <mratsim> but not your code |
15:52:26 | FromGitter | <mratsim> well there is one but with no optional field |
16:00:19 | * | Yardanico left #nim (#nim) |
16:02:02 | * | Yardanico joined #nim |
16:08:34 | FromGitter | <ephja> nc-x: see the newer comments |
16:10:30 | * | Yardanico left #nim (#nim) |
16:10:47 | * | Yardanico joined #nim |
16:10:57 | * | Yardanico left #nim (#nim) |
16:11:23 | * | Yardanico joined #nim |
16:11:27 | FromGitter | <ephja> 😕 |
16:11:33 | * | Yardanico left #nim (#nim) |
16:11:59 | * | Yardanico joined #nim |
16:13:03 | * | Yardanico left #nim (#nim) |
16:13:21 | * | Yardanico joined #nim |
16:13:31 | * | Yardanico left #nim (#nim) |
16:14:14 | * | Yardanico joined #nim |
16:14:19 | FromGitter | <sivakon> Why is asynchttp so slow? https://github.com/costajob/app-servers |
16:15:26 | Yardanico | because it's not supposed to be "blazingly fast"? |
16:15:32 | Yardanico | try with mofuw or httpbeast :) |
16:15:49 | Yardanico | mofuw will surely be in top3 |
16:18:09 | Yardanico | and I consider this benchmark unfair |
16:18:16 | Yardanico | it tests both one-threaded and multi-threaded servers |
16:18:51 | Yardanico | ah, sorry - https://github.com/costajob/app-servers/commit/2afce56331a9c7f74da748aef398a79264eced00 |
16:26:30 | * | SenasOzys joined #nim |
16:26:53 | FromGitter | <ephja> note the lack of parallelism at this point in time |
16:34:49 | * | zahary1 quit (Quit: Leaving.) |
16:39:29 | Electrux | is there a push notifications library for Nim? |
16:40:04 | Electrux | hi everyone btw :) |
16:40:39 | PMunch | Electrux, push notification to what? |
16:41:50 | Electrux | to OS? like Mac's push notifications or Linux's |
16:42:02 | Electrux | Linux has dbus, dunst and things like that |
16:42:12 | Electrux | and Mac has some API for notifications as well |
16:42:44 | FromGitter | <kaushalmodi> PMunch: Maybe Electrux is looking for something like this in Nim: https://github.com/variadico/noti |
16:42:59 | PMunch | Oh you're wondering if there is a cross-platform way to create a desktop notification |
16:43:46 | PMunch | Push notification typically means that the notification comes from somewhere outside your system |
16:44:08 | FromGitter | <kaushalmodi> PMunch: That noti app does that |
16:44:12 | Electrux | almost Kaushalmodi... i just wanna send a notification programmatically |
16:44:48 | Electrux | as in, in the most simplistic form, i call a function, a notification pops up on my system |
16:45:20 | PMunch | Well there is this for Mac: https://github.com/dom96/notifications |
16:45:31 | PMunch | And this for Linux: https://github.com/FedericoCeratto/nim-libnotify |
16:46:09 | PMunch | I could swear that there was a cross platform thing for this though.. |
16:46:15 | FromGitter | <kaushalmodi> `nimble search noti` :) |
16:46:29 | dom96 | Should be trivial to use both libraries :) |
16:48:19 | PMunch | Is there something for Windows? |
16:48:36 | dom96 | lol, people really love to benchmark HTTP servers |
16:48:37 | PMunch | Then it should be trivial to wrap up all three in a common library |
16:48:43 | PMunch | Oh well, got to go |
16:48:44 | dom96 | Just saw the link sivakon posted |
16:48:44 | * | PMunch quit (Quit: Leaving) |
16:52:20 | * | cryptocat1094 joined #nim |
16:53:49 | * | Perkol quit (Remote host closed the connection) |
16:57:00 | Electrux | wow that is awesome! thanks u guys :D |
17:00:39 | FromGitter | <ephja> I need something that can handle 10 billion requests per ms :p |
17:00:46 | Yardanico | :D |
17:04:25 | FromGitter | <ephja> I think my personal website will make it big |
17:06:10 | cryptocat1094 | That's some impressive networking hardware you'd have. |
17:08:33 | * | yglukhov[i] joined #nim |
17:10:37 | * | yglukhov[i] quit (Read error: Connection reset by peer) |
17:10:45 | FromGitter | <ephja> made it myself |
17:11:12 | * | yglukhov[i] joined #nim |
17:12:08 | dom96 | I'm currently working on some faster-than-light hardware. Gotta have my blog arriving at people's eyeballs before they even press enter. |
17:14:24 | FromGitter | <zetashift> My react-vue-angular-karax-jquery todo list needs all the cores |
17:14:55 | * | wintermu1ed joined #nim |
17:14:58 | FromGitter | <ephja> should we concentrate our society in Texas and measure before or after? |
17:16:06 | FromGitter | <Vindaar> @dom96 oh, you build that thing! Saw that "junk data" you received with it? That was my thesis, send(t?) by my future self in 3 years! Please hand it over now :) |
17:17:52 | cryptocat1094 | Hm. https://arxiv.org/abs/0808.2669 -> "Closed Timelike Curves Make Quantum and Classical Computing Equivalent" |
17:19:41 | dom96 | Vindaar: Hrm, very well written thesis. Sadly my dog just ate it (yes, my dog eats electronics, it's an electric dog). |
17:20:02 | dom96 | But hey, you've got a good excuse now :) |
17:20:59 | FromGitter | <Vindaar> @dom96 hmpf, here goes my one time chance for a few relaxing years :/ pet your electronic dog for me |
17:23:36 | * | cspar quit (Ping timeout: 260 seconds) |
17:30:07 | * | cspar joined #nim |
17:48:42 | * | cspar quit (Ping timeout: 265 seconds) |
17:57:22 | * | jjido joined #nim |
17:57:56 | * | sakalli_ joined #nim |
18:02:35 | * | sakalli_ quit (Ping timeout: 240 seconds) |
18:07:22 | * | jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
18:07:46 | cryptocat1094 | dom96: Does it run Gentoo? |
18:09:21 | * | sakalli_ joined #nim |
18:12:11 | * | sakalli_ left #nim (#nim) |
18:15:55 | * | yglukhov[i] quit (Remote host closed the connection) |
18:32:46 | * | yglukhov[i] joined #nim |
18:32:57 | * | jjido joined #nim |
18:37:10 | * | Trustable quit (Remote host closed the connection) |
18:59:18 | * | bozaloshtsh_ joined #nim |
19:00:41 | * | bozaloshtsh_ quit (Remote host closed the connection) |
19:00:49 | * | bozaloshtsh_ joined #nim |
19:02:35 | * | yglukhov[i] quit (Remote host closed the connection) |
19:03:43 | * | bozaloshtsh_ left #nim (#nim) |
19:08:07 | * | nsf joined #nim |
19:28:02 | * | yglukhov[i] joined #nim |
19:31:35 | Yardanico | yay, over 700 modules in Nimble! |
19:31:41 | Yardanico | (libman shared this link on reddit: http://www.modulecounts.com/ ) |
19:31:52 | Yardanico | and it has a counter for Nimble (updated every day) |
19:45:14 | * | d10n-work joined #nim |
20:00:15 | * | noonien quit (Quit: Connection closed for inactivity) |
20:00:51 | * | jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
20:03:50 | Yardanico | it seems that nim chat is not very active in june :) |
20:04:10 | * | jjido joined #nim |
20:04:55 | FromGitter | <mratsim> Gitter<->IRC bridge playing hide and seek doesn’t help ;) |
20:05:27 | * | livcd quit (Remote host closed the connection) |
20:11:59 | * | fvs left #nim ("ERC (IRC client for Emacs 25.3.1)") |
20:14:48 | FromGitter | <zetashift> I'm currently just doing rosalind and codewars stuff in Nim not sure what else I could make |
20:14:51 | FromGitter | <zetashift> or help with |
20:15:51 | FromGitter | <kaushalmodi> Can someone help get the Nim/Emacs module integration working: https://github.com/yuutayamada/nim-emacs-module/issues/2 |
20:21:30 | * | miran quit (Ping timeout: 245 seconds) |
20:27:23 | * | zahary1 joined #nim |
20:28:40 | * | jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
20:29:21 | * | xet7 quit (Remote host closed the connection) |
20:32:25 | * | xet7 joined #nim |
20:48:52 | * | cryptocat1094 quit (Quit: later) |
20:50:15 | * | Electrux quit (Ping timeout: 245 seconds) |
21:00:21 | federico3 | Yardanico: that comparison does not put Nim in a good light at all |
21:01:07 | isene | Using ' import random ' and ' randomize() ' and ' random() ' gives a very poor random distribution. What is the best way in NIM to get a good RNG? |
21:02:39 | FromGitter | <mratsim> do you want a cryptographic RNG? |
21:02:57 | * | Electrux joined #nim |
21:03:11 | * | arecaceae quit (Remote host closed the connection) |
21:03:30 | FromGitter | <mratsim> random() is implemented with xoroshiro128+ which is detailed here: http://xoshiro.di.unimi.it/ |
21:03:35 | * | arecaceae joined #nim |
21:06:33 | * | zahary1 quit (Quit: Leaving.) |
21:07:54 | * | Electrux quit (Ping timeout: 268 seconds) |
21:08:21 | * | yglukhov[i] quit (Remote host closed the connection) |
21:11:19 | * | rockcavera quit (Remote host closed the connection) |
21:13:59 | dom96 | Interesting that Julia has less packages than Crystal |
21:15:21 | * | nsf quit (Quit: WeeChat 2.1) |
21:16:03 | dom96 | also lol CRAN is at -3/day |
21:16:42 | isene | FromGitter: I want an RNG for a dice roller. Using the commands mentioned above, I often get results with a probability of less than 1/1e6 or less. Any alternatives? |
21:16:43 | FromGitter | isene, I'm a bot, *bleep, bloop*. I relay messages between here and https://gitter.im/nim-lang/Nim |
21:17:15 | isene | I want an RNG for a dice roller. Using the commands mentioned above, I often get results with a probability of less than 1/1e6 or less. Any alternatives? |
21:21:15 | FromGitter | <tim-st> I also saw that the random lib behaves not really random but had strong patterns. I think what helped a bit was resetting the random seed each time |
21:22:19 | FromGitter | <tim-st> though this is dependent on time and thus can generate new patterns... |
21:22:36 | FromGitter | <tim-st> I didnt had this on python |
21:24:30 | * | zahary1 joined #nim |
21:28:49 | FromDiscord | <2vg> Is there plan to implement concurrent GC? |
21:29:59 | FromGitter | <ephja> I thought xoroshiro128+ had decent equidistribution |
21:30:23 | FromGitter | <Vindaar> @isene: from a physicist's point of view (think Monte Carlo for LHC): we almost always use a Mersenne Twister https://nim-lang.org/docs/mersenne.html#getNum,MersenneTwister. Or specifically what most people at CERN end up using: https://root.cern.ch/doc/master/classTRandom3.html |
21:32:27 | * | Cthalupa quit (Ping timeout: 240 seconds) |
21:33:55 | * | Electrux joined #nim |
21:34:07 | isene | Thanks |
21:35:12 | federico3 | any forking TCP server around? |
21:38:45 | * | Electrux quit (Ping timeout: 264 seconds) |
21:41:26 | FromGitter | <tim-st> `random.rand()` generates ~20_800 different numbers in range 32_767 |
21:43:35 | FromGitter | <tim-st> This doesnt seem bad, maybe the problem I remembered was about having always the same start seed, dunno if there is another language that does it that way |
21:44:35 | * | Electrux joined #nim |
21:45:26 | FromGitter | <tim-st> Interesting: https://forum.nim-lang.org/t/3057 |
21:46:12 | FromGitter | <tim-st> So it seems like a bug or at least needs fix, indeed |
21:48:57 | * | Electrux quit (Ping timeout: 240 seconds) |
21:49:59 | * | zahary1 quit (Quit: Leaving.) |
21:57:19 | FromGitter | <ephja> "NOTE: the parameters (a=24, b=16, b=37) of this version give slightly better results in our test than the 2016 version (a=55, b=14, c=37)." I see 36 in the 'random' module but not 37 :p |
21:57:30 | FromGitter | <ephja> 'b' appears twice in the C comment. I dunno if it's the only typo |
21:58:58 | * | elrood quit (Quit: Leaving) |
22:07:18 | * | Vladar quit (Ping timeout: 256 seconds) |
22:09:51 | * | yglukhov[i] joined #nim |
22:09:51 | * | Vladar joined #nim |
22:15:15 | * | yglukhov[i] quit (Ping timeout: 245 seconds) |
22:17:14 | * | Vladar quit (Quit: Leaving) |
22:29:31 | * | rockcavera joined #nim |
22:32:57 | * | Electrux joined #nim |
22:33:14 | * | zahary quit (Quit: Connection closed for inactivity) |
22:37:26 | * | Electrux quit (Ping timeout: 260 seconds) |
23:02:21 | * | dddddd quit (Remote host closed the connection) |
23:46:30 | * | Electrux joined #nim |
23:51:15 | * | Electrux quit (Ping timeout: 256 seconds) |