00:08:34 | * | MJCaley quit (Quit: MJCaley) |
00:17:39 | * | Jesin quit (Quit: Leaving) |
00:30:53 | shashlick | @zacharycarter - did you wrap the C or CPP API files for libgraphqlparser? |
00:33:49 | * | Snircle quit (Quit: Textual IRC Client: www.textualapp.com) |
00:37:27 | FromGitter | <zacharycarter> shashlick: ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5aa86ec78f1c77ef3ab9eee5] |
00:38:09 | FromGitter | <zacharycarter> so just the C API I guess - I think either way Nim needs a native GQL implementation |
00:41:29 | shashlick | awesome i'll post it online |
00:41:43 | FromGitter | <zacharycarter> 👍 |
00:42:16 | shashlick | i was trying to compile it in |
00:42:39 | FromGitter | <zacharycarter> ah okay |
00:45:28 | FromGitter | <zacharycarter> shaslick: corresponding test - ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5aa870a727c509a7745d3d97] |
00:46:42 | FromGitter | <zacharycarter> or something like that |
00:46:46 | FromGitter | <zacharycarter> not sure the clean up is perfect |
00:47:36 | * | Sentreen joined #nim |
00:49:53 | FromGitter | <zacharycarter> in fact I'm sure it's not ;) |
00:56:12 | * | MJCaley joined #nim |
01:00:37 | * | user11101 quit (Ping timeout: 246 seconds) |
01:04:40 | shashlick | @zacharycarter: there's no GraphQLAst.h in the c directory |
01:05:07 | FromGitter | <zacharycarter> erm yeah - you gotta generate that :/ |
01:05:22 | FromGitter | <zacharycarter> it's a step in the CMakefile |
01:05:51 | * | dddddd quit (Remote host closed the connection) |
01:06:19 | shashlick | great! |
01:06:50 | FromGitter | <zacharycarter> https://github.com/graphql/libgraphqlparser/blob/master/CMakeLists.txt#L76 |
01:07:28 | FromGitter | <zacharycarter> yeah :/ sorry I should have added that to the cfg I gave you, my bad |
01:08:17 | shashlick | no issues, need to think about how to automate this, if it is even possible |
01:10:13 | * | yglukhov quit (Ping timeout: 240 seconds) |
01:30:33 | * | gokr quit (Ping timeout: 240 seconds) |
01:40:41 | * | vlad1777d_ joined #nim |
01:40:44 | * | vlad1777d quit (Read error: Connection reset by peer) |
02:08:44 | * | endragor joined #nim |
02:13:33 | * | endragor quit (Ping timeout: 264 seconds) |
02:25:45 | * | user11101 joined #nim |
02:45:27 | * | user11101_ joined #nim |
02:46:53 | * | user11101 quit (Ping timeout: 240 seconds) |
02:49:23 | * | endragor joined #nim |
02:53:45 | * | user11101_ quit (Quit: user11101_) |
02:58:35 | * | S1tiSchu joined #nim |
03:02:09 | * | S1t1Schu quit (Ping timeout: 264 seconds) |
03:07:15 | FromGitter | <gogolxdong> How to cast array[6,uint8] to array[8,uint8]? |
03:09:59 | FromGitter | <raydf> Hi everyone, how can i compile on every changes of nim files, is there a tool for that? |
03:12:55 | FromGitter | <raydf> i tried with ```fswatch -e ".*" -i ".*/[^.]*\\.nim$" -0 src/ | xargs -0 -n1 ./build.sh``` ⏎ only compiles the first time, because after that the nim compiler keeps waiting for an input from the keyboard |
03:20:01 | * | SenasOzys quit (Ping timeout: 252 seconds) |
03:29:54 | * | vlad1777d_ quit (Ping timeout: 260 seconds) |
03:33:04 | shashlick | what's in your build.sh |
03:35:54 | FromGitter | <gogolxdong> How to import SIOCGIFHWADDR and SIOCGIFINDEX |
04:01:46 | FromGitter | <gogolxdong> How to interoperate c union struct? |
04:23:09 | * | S1tiSchu quit (Read error: Connection reset by peer) |
04:23:14 | * | S1t1Schu joined #nim |
04:25:12 | FromGitter | <raydf> @shashlick ⏎ ⏎ ```--build.sh ⏎ nim js --stdout test.nim &``` [https://gitter.im/nim-lang/Nim?at=5aa8a427c3c5f8b90d6c9990] |
04:25:36 | FromGitter | <raydf> i tried a lot of params for the nim |
05:00:49 | * | craigger quit (Quit: bye) |
05:03:05 | * | craigger joined #nim |
05:08:39 | * | r3d9u11 joined #nim |
05:57:04 | * | xkapastel quit (Quit: Connection closed for inactivity) |
06:05:54 | * | nsf joined #nim |
06:35:09 | * | ieatnerds quit (Read error: Connection reset by peer) |
06:35:45 | * | r3d9u11 quit (Remote host closed the connection) |
06:37:42 | * | federico3 quit (Remote host closed the connection) |
06:38:23 | * | abeaumont quit (Ping timeout: 268 seconds) |
06:39:17 | * | federico3 joined #nim |
06:43:42 | * | S1tiSchu joined #nim |
06:44:41 | * | pvn joined #nim |
06:45:22 | * | JacobEdelman quit (Read error: Connection reset by peer) |
06:46:18 | * | JacobEdelman joined #nim |
06:46:25 | * | pvn1 quit (Ping timeout: 248 seconds) |
06:46:57 | * | S1t1Schu quit (Ping timeout: 248 seconds) |
06:56:18 | * | Vladar joined #nim |
06:56:31 | * | dyln quit (Remote host closed the connection) |
07:18:54 | FromGitter | <gogolxdong> How to echo an array[6,uint8] in the hex form [0x..,0x.....]? |
07:19:06 | * | gokr joined #nim |
07:22:25 | FromGitter | <gogolxdong> I know how to in for loop for m in mac : echo fmt"{m:02x}", is there a natural method? |
07:23:50 | Araq | wrap it in a proc. |
07:25:55 | * | cspar_ quit (Read error: Connection reset by peer) |
07:35:26 | FromGitter | <Varriount> @zacharycarter Questions? |
07:39:46 | FromGitter | <Varriount> @zacharycarter Wrapping the C++ sdk is a trade-off. |
07:41:58 | FromGitter | <Varriount> On one hand, all you need to do is generate bindings. However using it will probably not be very idiomatic. |
07:42:54 | FromGitter | <gogolxdong> How to echo an array[16,char] in the form of string? |
07:44:39 | FromGitter | <gogolxdong> got it ,echo $(addr array[16,char]) |
07:51:49 | * | r3d9u11 joined #nim |
07:52:41 | * | r3d9u11 quit (Client Quit) |
07:52:44 | * | dddddd joined #nim |
08:24:24 | * | jaco60 joined #nim |
08:29:16 | * | PMunch joined #nim |
08:32:54 | * | floppydh joined #nim |
08:33:02 | * | floppydh quit (Client Quit) |
08:33:25 | * | floppydh joined #nim |
08:38:03 | * | JustASlacker joined #nim |
09:03:19 | * | yglukhov joined #nim |
09:11:29 | * | jjido joined #nim |
09:36:29 | * | rokups joined #nim |
09:45:07 | * | SenasOzys joined #nim |
09:47:20 | * | Vladar quit (Quit: Leaving) |
10:00:33 | * | adeohluwa joined #nim |
10:00:42 | adeohluwa | holla |
10:00:51 | adeohluwa | any html2text nim library? |
10:01:24 | * | SenasOzys quit (Read error: Connection reset by peer) |
10:01:45 | Araq | there is parsehtml in the stdlib |
10:02:39 | Araq | you need to write the recursive toText proc on your own, probably. can't be hard |
10:13:29 | FromGitter | <mratsim> @gogolxdong or `$ @ yourarray` should work (bonus point for looking extra weird :P) |
10:13:35 | * | lurker joined #nim |
10:18:49 | * | lurker quit (Quit: Leaving) |
10:21:38 | * | floppydh quit (Remote host closed the connection) |
10:22:31 | * | floppydh joined #nim |
10:33:16 | adeohluwa | Araq: thanks |
10:37:30 | Yardanico | power of macros: https://github.com/theltybc/colors_terminal :P |
10:39:41 | Yardanico | But I want to ask for a license and add this color functionality to INim, so it can use readLineFromStdin and get *free* up- and down- arrow history |
10:43:16 | PMunch | Yardanico, not as "nice" of a solution. But you're free to use https://github.com/PMunch/termstyle if you want :) |
10:43:32 | Yardanico | PMunch, oh, I didn't knew about that one |
10:43:39 | Yardanico | can I do "string".red.termRed ? |
10:44:43 | PMunch | termRed? |
10:45:16 | Yardanico | PMunch, sorry, I mean chaining: "string".red.bgWhite |
10:45:49 | PMunch | Yup |
10:46:11 | PMunch | Or you could do style("string", red & bgWhite) |
10:46:50 | PMunch | Or red bgWhite "string" |
10:47:15 | PMunch | Pretty much any combination really :P |
10:48:34 | * | arnetheduck quit (Ping timeout: 260 seconds) |
10:48:54 | Yardanico | PMunch, yeah, cool! |
10:49:53 | PMunch | Err, style("string", termRed & termBgWhite) |
10:51:00 | PMunch | You can also save a style. So let myStyle = termRed & termBgWhite; style("string", myStyle) |
10:51:11 | PMunch | It only works on Linux though |
10:51:26 | PMunch | Or in a terminal that supports the ANSI colour codes |
10:52:04 | Yardanico | PMunch, yeah, thank you very much! now I have strange issue with rdstdin |
10:52:14 | PMunch | The terminal package has some cross-platform styling stuff: https://nim-lang.org/docs/terminal.html |
10:53:18 | Yardanico | PMunch, yeah, but you can't use `terminal` module to set style to some part of the line |
10:53:29 | PMunch | You can't? |
10:53:29 | * | arnetheduck joined #nim |
10:53:46 | Yardanico | PMunch, well, you can, but only with stdout.write |
10:53:51 | PMunch | I just found it clumsy to use which is why I wrote termstyle |
10:54:21 | PMunch | It was originally for a single project, but I found myself copying it into many of my other projects as well |
10:55:17 | PMunch | It's just so nice to be able to colour echo statements based on content, makes it so much easier to read output. |
10:55:45 | * | lurker joined #nim |
10:56:33 | PMunch | Hmm, where are compiler magic implemented? |
10:56:41 | PMunch | Or are they actually magic? :P |
10:58:12 | FromGitter | <mratsim> there is a semmagic file and oter magic file |
10:59:03 | * | lurker quit (Client Quit) |
10:59:11 | Yardanico | yeah, semmagic and magicsys |
10:59:36 | Araq | magic: "Foo" means you can grep for mFoo in the compiler's sources |
11:00:01 | Araq | there are no exceptions to this rule since this mapping is generated |
11:00:37 | PMunch | Aha, I tried the GitHub search for Foo which didn't work |
11:00:39 | PMunch | Thanks :) |
11:02:09 | * | arnetheduck quit (Ping timeout: 264 seconds) |
11:02:26 | * | SenasOzys joined #nim |
11:02:59 | * | arnetheduck joined #nim |
11:05:22 | * | BitPuffin joined #nim |
11:19:52 | Yardanico | can this be related to incorrect interaction of ANSI color codes + rdstdin? https://asciinema.org/a/ueQZWJLnHkbAc1snGiqj6S7UT |
11:20:08 | Yardanico | (look at cursor position) |
11:22:45 | Yardanico | I know I can reset cursor pos with terminal module, but I don't know the reason why this is happening |
11:26:03 | PMunch | Ah yes |
11:26:04 | PMunch | Hold on |
11:27:02 | * | abeaumont joined #nim |
11:27:23 | * | vlad1777d_ joined #nim |
11:27:41 | PMunch | The colour codes count as characters even though they are hidden |
11:27:46 | Yardanico | PMunch, oh |
11:29:28 | PMunch | Try to echo out \[\e[31m\]Hello world\[\e[0m\] |
11:29:52 | PMunch | See if that works without the strange cursor jumping |
11:31:42 | Yardanico | PMunch, yeah, same issue |
11:33:25 | PMunch | Try to enclose the entire string with \001 \002 |
11:33:55 | PMunch | So \001\e[31mHello World\e[0m\002 |
11:34:45 | PMunch | Oh wait |
11:34:47 | PMunch | Just the colour codes |
11:35:03 | PMunch | So \001\e[31m\002Hello World\001\e[0m\002 |
11:35:56 | Yardanico | PMunch, seems to be the same, you can try yourself - import rdstdin; while true: echo readLineFromStdin(somestringwithansi) |
11:37:54 | PMunch | Hmm, strange |
11:38:42 | * | floppydh quit (Ping timeout: 268 seconds) |
11:39:17 | Yardanico | PMunch, it's probably a linenoise issue |
11:40:24 | PMunch | I'm pretty sure it's related to the ANSI colour codes |
11:40:32 | PMunch | I've had this problem when configuring my bash shell before |
11:40:57 | Yardanico | PMunch, https://github.com/antirez/linenoise/issues/150 |
11:42:00 | Yardanico | https://github.com/antirez/linenoise/issues/25 yeah, seems to be known |
11:42:16 | Yardanico | oh, this issue is 6 years old... |
11:49:18 | PMunch | Hmm, yeah \001 \002 should've worked.. |
11:52:09 | Yardanico | PMunch, what are "non-printable" markers? |
11:53:44 | PMunch | Basically markers to say "these are not going to be printed, so don't treat them as visible characters" |
11:54:15 | PMunch | Which in this case should mean, "don't count these when figuring out where to place the cursor" |
11:54:55 | Yardanico | PMunch, well one comment in this issue references \001 and \002 and non-printable markers separately |
11:55:20 | Yardanico | "by using \001 and \002 and "non-printable" markers:" |
11:57:51 | PMunch | From the docs he's referencing: Use the `\1' and `\2' escapes to begin and end sequences of non-printing characters, which can be used to embed a terminal control sequence into the mode string. |
11:58:03 | PMunch | He just typed that weirdly |
11:58:22 | PMunch | You might be able to edit this: https://github.com/nim-lang/Nim/blob/master/lib/impure/rdstdin.nim#L86 |
11:59:11 | PMunch | And strip away things wrapped in those non-printable characters before calling historyAdd |
11:59:42 | PMunch | Hmm, no wait |
11:59:45 | PMunch | That won't work |
11:59:47 | PMunch | Buffer is the input |
12:04:15 | PMunch | Guess you'll have to implement line reading in Nim :) |
12:10:58 | * | Vladar joined #nim |
12:13:28 | * | athenot joined #nim |
12:13:38 | * | athenot quit (Remote host closed the connection) |
12:14:10 | * | fvs joined #nim |
12:14:26 | * | athenot joined #nim |
12:16:08 | fvs | i'm curious, does overloading a function bring with it extra overhead. from a performance view, should it be avoided if possible? |
12:16:51 | PMunch | Only on compile-time I think |
12:17:07 | PMunch | The call get's resolved during compilation |
12:17:16 | Araq | yes, what PMunch says |
12:17:44 | fvs | so compiler splits overloaded func into func1, func2, etc? |
12:17:53 | Yardanico | fvs, well, yeah, something like that |
12:19:20 | Yardanico | fvs, every function has its unique hash (in compiled C code), and you can see it yourself |
12:20:01 | Yardanico | e.g. "checkSymlink_KkZgXPy74tXi49bh8QSie8g" |
12:26:14 | * | PMunch quit (Quit: Leaving) |
12:27:28 | * | floppydh joined #nim |
12:27:51 | * | PMunch joined #nim |
12:39:14 | * | adeohluwa quit (Quit: Connection closed for inactivity) |
12:44:09 | * | Arrrr joined #nim |
12:45:25 | Arrrr | Hello nimfolks |
12:46:33 | * | vlad1777d_ quit (Ping timeout: 264 seconds) |
12:47:24 | PMunch | Hi there |
12:52:29 | * | adeohluwa joined #nim |
12:57:14 | * | sendell joined #nim |
13:10:30 | * | qleda joined #nim |
13:18:21 | * | sendell quit (Remote host closed the connection) |
13:18:55 | * | xet7 quit (Quit: Leaving) |
13:26:05 | * | jalbo joined #nim |
13:27:43 | * | xet7 joined #nim |
13:29:01 | * | jalbo2 joined #nim |
13:31:09 | FromGitter | <Jalbo> Hi! |
13:31:41 | Yardanico | hello! |
13:34:23 | * | xet7 quit (Remote host closed the connection) |
13:36:01 | * | xet7 joined #nim |
13:37:38 | * | xet7 quit (Remote host closed the connection) |
13:38:04 | PMunch | Hi Jalbo |
13:39:34 | * | xet7 joined #nim |
13:40:48 | * | jalbo quit (Quit: Page closed) |
13:52:53 | * | xet7 quit (Read error: Connection reset by peer) |
13:53:09 | * | xet7 joined #nim |
13:53:12 | * | salewski joined #nim |
13:54:13 | salewski | dom96, note that last forum post is only a fool attack: https://forum.nim-lang.org/t/3462#21631 |
13:55:05 | dom96 | I thought that looked familiar |
13:55:12 | dom96 | Is a "fool attack" a thing? |
13:55:38 | salewski | I don't know, it is strange. Bot attack? |
13:56:14 | * | xet7 quit (Remote host closed the connection) |
13:56:29 | dom96 | Maybe it's a way to get out of the moderated mode |
13:56:32 | dom96 | oh well, we'll see |
13:56:49 | salewski | Bye. |
13:56:52 | * | salewski quit (Client Quit) |
13:57:01 | * | nsf quit (Quit: WeeChat 2.0.1) |
13:57:36 | * | xet7 joined #nim |
14:09:47 | * | xet7 quit (Remote host closed the connection) |
14:10:09 | * | xet7 joined #nim |
14:18:53 | * | jalbo2 quit (Ping timeout: 256 seconds) |
14:21:18 | * | jalbo joined #nim |
14:21:37 | * | athenot_ joined #nim |
14:23:07 | * | athenot quit (Ping timeout: 260 seconds) |
14:26:35 | * | athenot joined #nim |
14:28:07 | * | athenot_ quit (Ping timeout: 245 seconds) |
14:30:01 | * | Mat4 joined #nim |
14:32:45 | * | jjido quit (Ping timeout: 264 seconds) |
14:37:09 | * | Mat4 quit (Quit: Yaaic - Yet another Android IRC client - http://www.yaaic.org) |
14:42:14 | * | Arrrr quit (Read error: Connection reset by peer) |
14:57:10 | * | gokr quit (Ping timeout: 256 seconds) |
15:14:19 | * | endragor quit (Remote host closed the connection) |
15:28:21 | * | endragor joined #nim |
15:29:59 | FromGitter | <mratsim> I think there should be a `len` alias for the `card` (cardinality) in Nim default sets |
15:30:57 | * | jalbo quit (Ping timeout: 264 seconds) |
15:31:19 | FromGitter | <nitely> +1 |
15:32:20 | * | jalbo joined #nim |
15:32:50 | Araq | https://github.com/nim-lang/Nim/issues/7332 biggest WTF moment since quite some time |
15:33:12 | Araq | the C code looks entirely correct and when I unroll the 'for' loop, it works correctly |
15:33:21 | * | endragor quit (Ping timeout: 264 seconds) |
15:44:15 | * | endragor joined #nim |
15:49:02 | FromGitter | <zacharycarter> seems to work fine on the playground - https://play.nim-lang.org/?gist=b3674426876c2f89e647701699d3c215 |
15:49:36 | * | xkapastel joined #nim |
15:50:57 | dom96 | Araq: gcc bug? |
15:52:11 | * | miran joined #nim |
15:52:37 | * | r3d9u11 joined #nim |
15:52:51 | Araq | it's almost like memcpy doesn't like to copy only 3 bytes |
15:54:51 | dom96 | Solar flares? https://www.mirror.co.uk/science/massive-solar-storm-slamming-earth-12179168 :P |
15:57:39 | FromGitter | <alehander42> hahaha, weird |
15:57:51 | * | endragor quit (Remote host closed the connection) |
16:00:38 | FromGitter | <nitely> @mratsim wait. I take that +1 back. I think `card` does not has constant time. `items` not being linear is already bad enough |
16:01:38 | dom96 | items isn't linear? |
16:02:03 | Araq | sure it is, sets have a fixes numbers of bits |
16:02:08 | Araq | *fixed |
16:02:10 | FromGitter | <nitely> It does not grow/shrinks with the amount of items. So no.. |
16:02:12 | Araq | so O(1) |
16:04:12 | FromGitter | <nitely> https://github.com/nim-lang/Nim/blob/master/lib/system.nim#L2215 |
16:06:11 | Araq | that is linear time. :P |
16:06:33 | FromGitter | <nitely> https://github.com/nim-lang/Nim/search?utf8=%E2%9C%93&q=mcard&type= mCard seems to generate cardSet which is not contant https://github.com/nim-lang/Nim/blob/5f685bb0e6b2d68b9796e6a7d29469ce3f3b38ec/lib/system/sets.nim#L26 |
16:06:48 | FromGitter | <nitely> @Araq lol |
16:06:53 | FromGitter | <nitely> it's not |
16:07:12 | Araq | for set[char] it iterates 256 times. always. |
16:07:26 | Araq | making it linear time. |
16:07:40 | FromGitter | <nitely> set[int16] iterates int16.high always, not matter the amount of items. That ain't linear time |
16:08:03 | Araq | well ok, it's better than linear time, it's constant time |
16:08:12 | FromGitter | <nitely> linear time means time grows/shrinks depending on the amount of items. |
16:08:25 | FromGitter | <nitely> ahahah |
16:08:34 | Araq | actually it depends, O(1) is "in" O(N) |
16:08:47 | FromGitter | <nitely> right. Everything is constant under that definition then |
16:09:05 | Araq | no, but set iteration is O(1). |
16:09:20 | Araq | it's slow but O(1); what's so hard to accept about it |
16:09:45 | FromGitter | <nitely> amortized O(1) |
16:09:55 | FromGitter | <nitely> just like hashMaps |
16:09:57 | Araq | amortized O(1)? |
16:10:18 | Araq | you are not good at basic complexity theory, are you |
16:10:33 | * | jalbo quit (Ping timeout: 264 seconds) |
16:10:33 | * | JustASlacker quit (Ping timeout: 264 seconds) |
16:10:54 | Araq | and set[int] doesn't even compile anyway, so the language is trying to tell you what "bit set" means |
16:11:00 | * | endragor joined #nim |
16:11:36 | FromGitter | <nitely> anyway... |
16:12:16 | FromGitter | <nitely> I'm trying to justify you saying that's O(1), which is clearly not |
16:12:35 | Araq | it clearly is. |
16:12:56 | Araq | it's independent of the number of elements in the set. |
16:13:05 | miran | if it iterates 256 times always, as Araq says, then that's O(1) |
16:14:13 | FromGitter | <nitely> ok |
16:14:21 | * | endragor quit (Remote host closed the connection) |
16:15:20 | FromGitter | <nitely> point taken |
16:16:46 | FromGitter | <nitely> it's completely misleading but whatever |
16:17:22 | Araq | don't blame me for big O's definition. |
16:18:22 | FromGitter | <nitely> we can make a lot of algos O(1) that way. It'll performance worst, but who cares |
16:18:34 | FromGitter | <nitely> *it'll make |
16:18:47 | Araq | and it's also not some non-sensical game like "ha, your PC only has N bits of storage and so everything becomes O(1) and I can solve the halting problem too" |
16:18:51 | PMunch | O(1) by itself isn't positive |
16:19:16 | miran | nitely: well, there are situations where some O(1) algorithm will be slower than O(n) |
16:19:36 | PMunch | But if you show a good benchmark and the algorithm is O(1) then that's good |
16:19:54 | miran | it says O(1), but it could be any constant, e.g. "O(42394280)" |
16:20:16 | PMunch | I can show a good benchmark for a small sample size, but if the algorithm is O(N^10) it doesn't matter much |
16:20:29 | Araq | my N is 256 here. 256 is O(1), you can argue that 10_000_000_000 should "not be O(1)" |
16:21:01 | miran | also, one O(n) might be much slower than some other O(n) - because the constant is not shown |
16:21:15 | PMunch | Yeah, O(1) means it takes one unit of time, no matter the size. O(N) means it takes one unit of time per N. The unit of time here is obviously important |
16:23:09 | * | floppydh quit (Ping timeout: 264 seconds) |
16:25:03 | Araq | anyway, feel free to use HashSet instead where 'len' really is a memory fetch |
16:34:57 | FromGitter | <mratsim> I’m really wondering how saying that a len <-> card alias would be nice triggerred a conversation about the wonders of Big O |
16:35:32 | Araq | there is this notion that 'len' must be O(1) |
16:35:34 | miran | seems like a regular day on #nim :) |
16:35:54 | FromGitter | <krux02> I just read a bit in the history |
16:35:58 | Araq | which is not true for cstring's len |
16:36:18 | Araq | even by my weird definition of O. ;-) |
16:36:19 | FromGitter | <krux02> seems like a bit of waste of energy talking about stuff like that |
16:38:04 | FromGitter | <krux02> but I wanna join and add something non-productive as well |
16:39:19 | FromGitter | <krux02> O(10 000 000 000) can be called O(1) as well as one can say that the computer has only a finite amount of possible states, and therefore is is a state machine. |
16:40:10 | FromGitter | <krux02> it has 2^(number of flippable bits in the system) amount of states. |
16:40:35 | FromGitter | <krux02> putting the computer upstide down though doesn't make it a new state |
16:40:54 | Araq | krux02: that's exactly what I would call "Misleading". ;-) |
16:41:08 | Araq | it's technically true but the big O notation is meaningless then |
16:41:38 | Araq | but for 256 I don't see it as cheating. |
16:41:42 | FromGitter | <krux02> it is like the `Vector` type in Scala |
16:41:45 | FromGitter | <nitely> I suck at "basic complexity theory" that's all I gathered from the discussion |
16:41:54 | FromGitter | <krux02> for the `Vector` type in scala everything is O(1) |
16:42:16 | miran | soooo.... what about `len` in sets? :D |
16:42:16 | FromGitter | <krux02> but it is a tree data structure |
16:43:09 | Araq | nitely well your brought up "amortized" for something that should be very deterministic. in fact there are compareMem implementations that always compare every byte to fight timing attacks |
16:43:18 | * | Trustable joined #nim |
16:43:18 | FromGitter | <krux02> O(1) is argued that the depth will never exceed X because there is only limited addressable Ram. And X is a constant, and a constant is equal to 1 in Big O |
16:43:41 | FromGitter | <krux02> Big O is not about Armortized time |
16:43:42 | FromGitter | <nitely> sets can take int16, so that's 32k |
16:43:49 | FromGitter | <krux02> Big O is only for worst case |
16:44:05 | FromGitter | <krux02> armortized time has it's own representation afaik |
16:45:02 | Araq | nitely: never seen set[int16] in the wild :-) |
16:45:44 | * | jalbo joined #nim |
16:46:20 | * | jalbo quit (Client Quit) |
16:46:59 | * | BitPuffin quit (Remote host closed the connection) |
16:47:09 | FromGitter | <nitely> no need to be rude about it |
16:47:15 | FromGitter | <krux02> oh I was wrong, it is big O |
16:48:45 | FromGitter | <nitely> I did used set[int16] then realize it was a hot spot after profiling |
16:49:05 | FromGitter | <krux02> I recommend not to use sets of uint8 int8 uint16 int16, just give those values names and use enums instead |
16:50:14 | FromGitter | <nitely> I was using it dynamically (adding items after defining it) |
16:51:31 | Araq | I did not want to be "rude". But if you use "linear time" wrong and "constant time" and then "amortized" I think you don't know the theory all that well. Sorry. |
16:52:53 | FromGitter | <nitely> I've read you being rude multiple times already. You should realized there are better ways to tell someone when they are completely wrong |
16:53:15 | PMunch | He's not rude, just a bit blunt |
16:53:45 | FromGitter | <nitely> must be me then |
16:54:31 | PMunch | Well, conveying stuff over text isn't the best when differentiating things like that |
16:54:57 | Araq | there is no polite way of saying that you "don't know the theory all that well". |
16:55:27 | Araq | it's offensive not matter how I put it. |
16:55:33 | Araq | *no matter. |
16:58:24 | * | PMunch quit (Quit: Leaving) |
16:59:20 | FromGitter | <nitely> Well then. I don't remember any BDFL of a popular lang not being pleasant to talk to. That may not have anything to do with the popularity of the language though |
17:00:08 | Araq | we all know Linux Torwalds though. ;-) |
17:00:34 | Araq | but here is my offer: the next time I'll just keep my damn mouth shut. |
17:01:03 | Araq | "if I cannot say it politely, don't say it at all" |
17:01:20 | Araq | *Linus, lol |
17:02:15 | FromGitter | <nitely> you should be able to express yourself |
17:02:34 | FromGitter | <nitely> I may be completely wrong again, so do whatever you want |
17:02:42 | Araq | you are smart. you can see beyond my wording. |
17:03:24 | FromGitter | <nitely> I'm not the only one here though |
17:03:34 | FromGitter | <nitely> I'm not even offended |
17:04:36 | * | nsf joined #nim |
17:04:41 | Araq | that's good to know. but you're right that it keeps coming up, so it must be me |
17:04:59 | FromGitter | <nitely> but I though I should, if I were a normal person :P |
17:05:04 | FromGitter | <nitely> *thought |
17:06:00 | Araq | yeah well, since I can't express myself I'll be quiet |
17:06:08 | * | athenot quit (Read error: Connection reset by peer) |
17:06:14 | Araq | I promise. |
17:06:30 | * | athenot joined #nim |
17:08:09 | * | Araq left #nim ("Leaving...") |
17:09:39 | FromGitter | <nitely> oh, came on |
17:21:44 | FromGitter | <nitely> *come |
17:25:10 | FromGitter | <alehander42> :D once I had the crazy idea to have an algo complexity "type" system |
17:25:29 | Yardanico | nitely: he's still in #nim-offtopic and #nim-nologs channels ;) |
17:25:48 | FromGitter | <alehander42> but O(1) is very unintuitive often exactly because of that |
17:25:54 | FromGitter | <alehander42> wow, we have two more channels ? :D :D |
17:27:26 | Yardanico | yes |
17:27:36 | Yardanico | offtopic is available through gitter btw |
17:27:41 | Yardanico | (it's called twitch here :D) |
17:34:35 | * | endragor joined #nim |
17:38:29 | * | endragor quit (Read error: Connection reset by peer) |
17:39:36 | * | r3d9u11 quit (Remote host closed the connection) |
17:56:11 | * | xkapastel quit (Quit: .) |
17:57:56 | * | xkapastel joined #nim |
17:59:12 | shashlick | araq: some additional info here for what we discussed yesterday |
17:59:13 | shashlick | https://github.com/nim-lang/Nim/issues/7335 |
18:07:25 | Yardanico | shashlick, he leaved from #nim :( |
18:09:21 | FromGitter | <cabhishek> @ Yardanico need to bring him back :) |
18:13:42 | FromGitter | <zacharycarter> looks like I missed all the drama |
18:13:42 | * | JustASlacker joined #nim |
18:15:26 | shashlick | same here |
18:18:32 | FromGitter | <zacharycarter> https://hacks.mozilla.org/2018/03/making-webassembly-better-for-rust-for-all-languages/ |
18:21:41 | Yardanico | it was already posted in offtopic btw =) |
18:21:49 | Yardanico | but yeah, it's fine to post it here |
18:24:05 | dom96 | Let's get along without the need to leave the channel |
18:26:24 | miran | dom96: get out, you and your voice of reason! |
18:26:26 | dom96 | Damn, I really want Nim in Action to be translated now: https://twitter.com/bketelsen/status/973656769942736897 |
18:27:11 | dom96 | btw I do think there are always ways to say something nicely |
18:27:29 | dom96 | But it's not always easy :) |
18:28:59 | shashlick | it's a question of style - I'm totally for politeness but pushing people to change their style or attitude isn't necessarily constructive either |
18:31:34 | shashlick | I can only control myself and I choose to focus on the material rather than the delivery. That way I can learn and progress inspite of how the world is and should be. |
18:32:35 | dom96 | Well, as long as there are no hard feelings between nitely and Araq. |
18:32:42 | * | dom96 just wants everyone to get along |
18:33:18 | dom96 | Anyway, in case there are people here who live close to Belfast and have some free time on Friday: http://belfoss.eeecs.qub.ac.uk/agenda/ |
18:33:30 | dom96 | I'll be giving a Nim talk there |
18:35:44 | shashlick | that might not always happen but that's a personal burden. I'd rather let Araq be however he is and continue his work on Nim rather than be judged and pushed to win personality contests in the name of the language |
18:37:53 | shashlick | and i doubt this is the first time anyone has pushed us the wrong way, there's no need to put it on display on a public forum logged for eternity |
18:39:34 | * | natrys joined #nim |
18:40:14 | FromGitter | <nitely> I already said I'm probably wrong, what else can I say? Want me to apologize to him? |
18:42:16 | shashlick | that's not what I'm saying either @nitely, sorry if it sounds that way |
18:43:11 | dom96 | This channel is logged publicly though |
18:43:37 | FromGitter | <nitely> well, I can do that if that'll bring him back ;) |
18:44:18 | FromGitter | <nitely> maybe I should leave too, then |
18:44:28 | shashlick | let's stay on message and judge information for what it is rather than on the delivery, and feel free to disagree |
18:44:30 | dom96 | Please don't |
18:44:39 | shashlick | and everyone stay! |
18:45:22 | dom96 | If you are speaking to someone and they say "wow, that was rude" then it probably is time to re-evaluate what you're saying. |
18:46:48 | FromGitter | <nitely> I regret calling him rude FWIW |
18:48:01 | shashlick | never mind now, hope Araq rejoins us shortly, there's really nothing worth further examination here |
18:48:12 | FromGitter | <nitely> I think he was, but also I think I should have let it him be |
18:48:14 | Yardanico | let's ask him on #nim-nologs or #nim-offtopic :P |
18:48:39 | Yardanico | to join |
18:48:39 | dom96 | I think it's fair to call him out if you think he's being rude. |
18:50:13 | dom96 | Really I just want everyone to feel welcome here. Perhaps that ends up making me too harsh on Araq sometimes, but... well, I've been in situations where I've found him rude too so I know how it feels. |
18:51:21 | * | gangstacat quit (Quit: Ĝis!) |
18:55:17 | shashlick | the reason I kind of disagree with that is that we're all adults here and have dealt with people in real life who are very direct, you don't go around trying to change everyone around. We don't need to distract this technical endeavor with personality discussions |
18:58:41 | dom96 | The way I always look at it is from the point of view of professionalism, many times it's easy to say things in IRC that you just wouldn't say to your colleague or even to someone at a conference directly face to face. |
19:04:23 | * | gangstacat joined #nim |
19:14:33 | FromGitter | <zetashift> dom and araq are like yin and yang |
19:14:42 | FromGitter | <zetashift> balance in all things |
19:18:36 | dom96 | heh yeah, you can think of it that way :) |
19:23:43 | * | Mat4 joined #nim |
19:25:59 | * | Vladar quit (Remote host closed the connection) |
19:33:15 | qleda | shashlick: woah I just saw https://github.com/genotrance/nimbigwig from the logs yesterday, thanks a ton! |
19:34:17 | * | stisa joined #nim |
19:34:49 | miran | this is my on my nim whishlist: https://julialang.org/learning/ |
19:46:54 | FromGitter | <zetashift> @miran: https://nim-lang.org/documentation.html guess adding detail to this section is just a PR away? |
19:48:07 | FromGitter | <zetashift> @dom86, I just read another forum thread about how they rather have discourse instead of nimforum. I'll share my opinion on this. I think the forum is great, especially mobile browsing is a lot better compared to discourse. However I feel like it could use a new coat of paint like the main landing page |
19:48:30 | dom96 | Agreed and planned |
19:48:37 | dom96 | Hoping to spend some time on that |
19:48:41 | dom96 | soon :) |
19:49:08 | Yardanico | yay |
19:49:14 | * | adeohluwa quit (Quit: Connection closed for inactivity) |
19:53:56 | Yardanico | https://github.com/status-im just see how much nim projects are where ❤️ |
19:53:58 | Yardanico | *there |
19:56:31 | dom96 | :D |
20:00:31 | FromGitter | <zetashift> mratsim is a beast wow |
20:00:43 | dom96 | I wonder what the response to other people at Status are to Nim |
20:01:29 | dom96 | There seem to be quite a few Go/Clojure developers listed on Status' website |
20:03:43 | shashlick | qleda: absolutely 🙂 |
20:10:28 | * | Jesin joined #nim |
20:11:44 | qleda | do you mind if I write a blog post about nimgen? I'm really impressed by it, but there's basically no tutorials/walkthroughs documenting how to use it |
20:12:04 | qleda | don't want to steal your thunder though if you already have something in-progress :) |
20:12:39 | shashlick | sure absolutely go ahead, let me know how I can help as well |
20:17:00 | FromGitter | <zetashift> @dom86 you could do some sly tweeting by highlighting statusim github and it's nim projectings and hoping it gets re-tweeted by: https://twitter.com/ethstatus |
20:17:18 | FromGitter | <zetashift> holy fuck that twitter embedding in gitter is retarded |
20:17:46 | * | r3d9u11 joined #nim |
20:18:26 | * | DarkArctic quit (Remote host closed the connection) |
20:21:34 | * | Mat4 quit (Quit: Yaaic - Yet another Android IRC client - http://www.yaaic.org) |
20:23:09 | * | JustASlacker quit (Ping timeout: 264 seconds) |
20:29:37 | * | PMunch joined #nim |
20:30:38 | * | jalbo joined #nim |
20:36:03 | * | fvs left #nim ("ERC (IRC client for Emacs 25.3.1)") |
20:43:54 | * | xet7 quit (Quit: Leaving) |
20:45:38 | * | jalbo quit (Remote host closed the connection) |
20:45:46 | * | xet7 joined #nim |
20:51:46 | GitDisc | <spaceghost> That's a pretty shitty way to go about whinging. |
20:52:28 | * | jalbo joined #nim |
20:56:50 | * | rokups quit (Quit: Connection closed for inactivity) |
20:59:17 | * | Jesin quit (Quit: Leaving) |
21:06:22 | * | qleda quit (Ping timeout: 246 seconds) |
21:17:09 | * | r3d9u11 quit (Remote host closed the connection) |
21:23:12 | * | xet7 quit (Quit: Leaving) |
21:25:02 | * | xet7 joined #nim |
21:31:50 | * | athenot quit (Remote host closed the connection) |
21:32:27 | * | athenot joined #nim |
21:35:45 | * | jalbo quit (Ping timeout: 264 seconds) |
21:37:11 | * | PMunch quit (Quit: leaving) |
21:38:17 | * | miran quit (Quit: Konversation terminated!) |
21:39:47 | * | Trustable quit (Remote host closed the connection) |
21:47:25 | * | Araq joined #nim |
21:55:02 | * | nsf quit (Quit: WeeChat 2.0.1) |
22:03:17 | * | xet7 quit (Quit: Leaving) |
22:05:10 | * | xet7 joined #nim |
22:06:20 | * | jaco60 quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
22:16:03 | * | vlad1777d_ joined #nim |
22:16:43 | * | yglukhov_ joined #nim |
22:19:14 | * | yglukhov quit (Ping timeout: 260 seconds) |
22:23:05 | * | Mat4 joined #nim |
22:24:55 | * | Mat4 left #nim (#nim) |
22:30:03 | * | nuxdie joined #nim |
22:31:18 | * | natrys quit (Quit: natrys) |
22:37:41 | * | tmm1 joined #nim |
22:39:57 | * | jalbo joined #nim |
22:41:43 | * | vlad1777d_ quit (Remote host closed the connection) |
22:42:58 | * | vlad1777d joined #nim |
22:51:16 | FromGitter | <mratsim> @dom96 Go and Clojure dev are quite interested, the most interested being our Vyper dev (an experimental Ethereum smart contract language with the syntax of Python: https://github.com/ethereum/vyper). |
22:51:40 | dom96 | awesome :) |
22:59:13 | FromGitter | <mratsim> btw you migh want to check out this: https://github.com/status-im/nimbus-launch, it creates a project structure with nimble file, license (even multi licenses), gitignore, build/src/benchmarks/docs/examples folders. It’s missing the readme and travis/appveyor but it will be there tomorrow |
23:09:39 | dom96 | cool |
23:10:03 | dom96 | Thought its structure was wrong, but then realised it's a binary package :) |
23:15:31 | * | jalbo quit (Remote host closed the connection) |
23:17:30 | federico3 | similar to https://github.com/FedericoCeratto/nim_project_maker |
23:33:44 | dom96 | oh, I thought that was just a template |
23:33:49 | dom96 | Didn't realise it was an actual binary that does it |
23:33:59 | dom96 | Regarding nimbus-launch |
23:41:27 | * | dddddd quit (Ping timeout: 240 seconds) |
23:44:35 | * | dddddd joined #nim |
23:51:32 | * | nuxdie quit (Quit: WeeChat 2.0.1) |
23:51:55 | Araq | federico3, mratsim: generation of .travis and appveyor configs would be a welcome addition |
23:54:30 | federico3 | I can easily add what I wrote into https://github.com/nim-lang/Nim/wiki/BuildServices - Araq: is there anything specific to windows to generate installation packages? |
23:59:18 | * | nuxdie joined #nim |