00:03:44 | * | seni quit (Remote host closed the connection) |
00:03:58 | * | laaron quit (Remote host closed the connection) |
00:04:09 | * | seni joined #nim |
00:08:49 | * | seni quit (Remote host closed the connection) |
00:09:10 | * | seni joined #nim |
00:10:37 | * | lritter quit (Ping timeout: 244 seconds) |
00:10:51 | * | disruptek quit (Quit: Bye) |
00:11:11 | * | disruptek joined #nim |
00:11:13 | * | lritter joined #nim |
00:12:13 | * | laaron joined #nim |
00:13:01 | * | stefanos82 quit (Quit: Quitting for now...) |
00:13:19 | * | seni quit (Remote host closed the connection) |
00:13:42 | * | seni joined #nim |
00:42:28 | * | Snircle_ joined #nim |
00:46:21 | * | Snircle quit (Ping timeout: 268 seconds) |
00:47:18 | * | lritter quit (Quit: Leaving) |
01:14:54 | * | seni quit (Quit: Leaving) |
01:17:56 | * | Snircle_ quit (Quit: Textual IRC Client: www.textualapp.com) |
01:23:12 | * | deech joined #nim |
02:13:35 | * | abm quit (Ping timeout: 244 seconds) |
02:51:18 | * | deech quit (Ping timeout: 245 seconds) |
03:34:42 | FromGitter | <awr1> heyo |
03:35:03 | shashlick | what's up |
03:35:22 | FromGitter | <awr1> nm, was wondering if there is any (planned) mechanisms in the compiler for caching of const values? |
03:35:36 | FromGitter | <awr1> i know that there is already caching for gorge/slurp |
03:37:04 | FromGitter | <awr1> i want to be able to parse this XML file at compile time but it's hurting my compile time really badly and definitely does not need to be recomputed every time i compile |
03:39:44 | shashlick | what does your code look like |
03:40:51 | * | shashlick quit (Remote host closed the connection) |
03:41:17 | * | shashlick joined #nim |
03:42:47 | FromGitter | <awr1> it's been a while since i've been in here, is it okay to post markdown or do you want me to just provide a link |
03:43:30 | shashlick | gist is usually preferred |
03:45:17 | * | shashlick quit (Remote host closed the connection) |
03:45:44 | * | shashlick joined #nim |
03:47:22 | FromGitter | <awr1> just a basic construction thus far https://gist.github.com/awr1/c7a3035fd3b770e48ac2c7ae130049a7 |
03:51:20 | FromGitter | <awr1> i'm more or less recreating a C vulkan library loader in Nim that I saw elsewhere, I haven't really done much yet but i know that the ultimate code the macro will produce is not really going to be that big |
03:52:11 | FromGitter | <awr1> it's just that the source XML file is just kinda large |
03:53:45 | shashlick | for starters, you could cache the download at least |
03:53:54 | shashlick | if not file exists then download |
03:54:53 | shashlick | I also suspect it won't work since streams don't work at compile time |
03:58:32 | * | fjellfras joined #nim |
04:16:06 | leorize | IIRC krux02 make various parser work at compile time |
04:19:30 | * | nsf joined #nim |
04:23:20 | shashlick | i tried recently and ran into issues, but i've run into all sorts of issues so never know |
04:23:33 | shashlick | i used https://github.com/ba0f3/xml.nim instead |
04:24:49 | leorize | well it does work for a test run on play.nim-lang.org |
04:25:16 | * | alexander92 quit (Ping timeout: 268 seconds) |
04:27:35 | * | gmpreussner quit (Quit: kthxbye) |
04:27:51 | * | gmpreussner joined #nim |
04:31:15 | FromGitter | <awr1> what ver of Nim is Nim playground on |
04:31:33 | FromGitter | <awr1> oh |
04:31:33 | FromGitter | <awr1> 1) 20.0 |
04:31:48 | FromGitter | <awr1> i'm on devel |
04:40:07 | FromGitter | <awr1> so on closer inspection the XML parser is much faster once compiled, which just points to nimscript just being slow |
04:40:46 | FromGitter | <awr1> takes 0.2 s to parse on my laptop |
04:40:55 | leorize | yea, nimscript is really slow |
04:41:47 | FromGitter | <awr1> vs. ~8 s on nimscript. can't use cpuTime() in nimscript so I had to count it |
04:52:24 | * | Jjp137 quit (Quit: Leaving) |
04:53:49 | * | Jjp137 joined #nim |
04:54:00 | FromGitter | <kayabaNerve> @awr1 Can you use `time |`? |
04:54:11 | FromGitter | <kayabaNerve> Is there a pipe operator for time? |
04:54:13 | FromGitter | <kayabaNerve> I forgot, ngl |
04:54:45 | FromGitter | <kayabaNerve> There is not. |
04:58:00 | * | dddddd quit (Remote host closed the connection) |
05:18:23 | * | leorize quit (Ping timeout: 256 seconds) |
05:35:50 | * | nimblepoultry quit (Ping timeout: 252 seconds) |
05:36:09 | * | nimblepoultry joined #nim |
05:37:16 | * | narimiran joined #nim |
05:40:48 | * | fjellfras quit (Ping timeout: 248 seconds) |
05:47:56 | * | leorize joined #nim |
05:56:27 | * | vegai_ joined #nim |
06:06:17 | * | fjellfras joined #nim |
06:20:36 | * | laaron quit (Quit: ZNC 1.7.1 - https://znc.in) |
06:21:02 | * | laaron joined #nim |
06:22:15 | * | Trustable joined #nim |
06:24:40 | * | dwdv joined #nim |
06:26:50 | * | uptime quit (Max SendQ exceeded) |
06:30:30 | * | uptime joined #nim |
06:32:00 | * | fjellfras quit (Ping timeout: 248 seconds) |
06:33:13 | * | leorize quit (Remote host closed the connection) |
06:33:27 | * | Summertime quit (Quit: Sunsetting.) |
06:34:27 | * | Summertime joined #nim |
06:36:01 | * | leorize joined #nim |
06:40:42 | * | PMunch joined #nim |
06:43:42 | * | fjellfras joined #nim |
06:55:53 | * | dGtlc3 quit (Ping timeout: 245 seconds) |
06:56:53 | * | dGtlc3 joined #nim |
07:00:00 | * | gmpreussner quit (Quit: kthxbye) |
07:04:42 | * | gmpreussner joined #nim |
07:11:57 | * | krux02 joined #nim |
07:12:25 | * | nolanv quit (Ping timeout: 246 seconds) |
07:15:55 | * | nolanv joined #nim |
07:31:14 | * | laaron quit (Quit: ZNC 1.7.1 - https://znc.in) |
07:31:37 | * | laaron joined #nim |
07:32:45 | * | laaron quit (Remote host closed the connection) |
07:33:37 | * | laaron joined #nim |
07:34:36 | * | neceve joined #nim |
07:52:14 | * | couven92 joined #nim |
07:54:19 | vegai_ | the 0.20 video mentions that the CPP backend is superior to the C backend in a few ways |
07:54:32 | vegai_ | does that imply that I should default to the CPP backend whenever I can? |
07:54:44 | vegai_ | any downsides? Except feeling dirty :P |
07:58:45 | leorize | there are more cpp codegen bugs than the c backend :p |
07:59:14 | leorize | most of them have been swept, but since the backend is rarely used in actual project, we can't expect anything |
07:59:50 | PMunch | Speaking of codegen bugs, think I just found one :P |
08:03:32 | PMunch | http://ix.io/1M6i |
08:04:05 | PMunch | Generated from this bit of code: http://ix.io/1M6j/Nim |
08:04:41 | PMunch | If I do `var bounding: Rect = <create tuple here>` it works fine |
08:05:15 | Araq | vegai_, yes, IMO you should default to the C++ backend |
08:09:17 | * | WilhelmVonWeiner joined #nim |
08:10:07 | leorize | PMunch: there's no way to use the cpp backend on the playground? |
08:10:40 | leorize | walkaround: https://play.nim-lang.org/index.html?ix=1M6l |
08:11:49 | PMunch | Currently there's no way no :( |
08:11:56 | PMunch | Well, except for what you just did |
08:17:54 | * | def- quit (Quit: -) |
08:18:29 | laaron | how invoke this macro: macro test(tx: int, stmt: untyped) : untyped = |
08:18:29 | laaron | i want invoke like: test 1: some stmt |
08:19:23 | leorize | that's... how you invoke the macro |
08:19:49 | leorize | I'm not quite sure what's your question |
08:20:04 | * | floppydh joined #nim |
08:20:23 | laaron | want invoke this format `test 1: some stmt` |
08:20:34 | leorize | yes, you can do so with that prototype |
08:20:50 | * | def- joined #nim |
08:22:07 | leorize | oh, but please don't use `stmt` as variable name |
08:22:25 | leorize | it's a keyword afaict |
08:22:28 | leorize | maybe not nowadays |
08:22:35 | laaron | oh, this format is ok, it's other errors in macro body. thanks |
08:24:03 | PMunch | leorize, yeah stmt used to be what is now typed IIRC, could never remember which was which of stmt and expr |
08:24:19 | PMunch | The untyped/typed change was really nice :) |
08:24:42 | lqdev[m] | I think it was stmt = untyped, expr = typed |
08:26:43 | PMunch | Oh probably.. |
08:28:14 | lqdev[m] | is there a GNOME Builder extension for Nim support? |
08:28:41 | laaron | so use `arg` as variable name in macro? say some docs use this |
08:29:10 | PMunch | well you can use whatever you want, preferably something that explains what the argument actually is |
08:31:38 | * | abm joined #nim |
08:33:15 | * | laaron quit (Remote host closed the connection) |
08:34:26 | leorize | a popular usage is 'body' as the param from what I've seen |
08:34:57 | lqdev[m] | ^ yes, that's what I use and it's pretty self-explanatory |
08:35:50 | * | laaron joined #nim |
08:36:34 | leorize | lqdev[m]: there aren't any gnome builder extension for Nim I think |
08:36:52 | leorize | and they support C extension so maybe someone can write a Nim-based one :) |
08:39:27 | lqdev[m] | yeah, it would be a nice, lightweight replacement for VS Code |
08:39:45 | * | lqdev[m] sent a long message: < https://matrix.org/_matrix/media/v1/download/matrix.org/VoNWGCaHNuzkrsKhfVaqQMie > |
08:40:58 | * | leorize quit (Remote host closed the connection) |
08:42:04 | leorize[m] | you can use neovim with it's various GUI as VSCode replacement :) |
08:43:42 | * | leorize joined #nim |
08:49:19 | PMunch | You can use Vim without a GUI as a VSCode replacement :) |
08:51:14 | leorize[m] | not everyone is comfortable with that :p esp. windows users |
09:06:02 | vegai_ | Araq: ok, thanks |
09:12:08 | * | laaron quit (Remote host closed the connection) |
09:14:35 | * | laaron joined #nim |
09:15:57 | * | leorize_ joined #nim |
09:18:05 | * | leorize quit (Ping timeout: 256 seconds) |
09:19:36 | FromGitter | <kayabaNerve> leorize: I use the C++ backend; I actually require it... |
09:22:01 | * | alexander92 joined #nim |
09:22:55 | * | alexander92 quit (Client Quit) |
09:23:35 | * | alexander92 joined #nim |
09:23:39 | * | alexander92 left #nim (#nim) |
09:23:41 | * | alexander92 joined #nim |
09:23:43 | alexander92 | hey |
09:29:33 | * | uptime quit (Ping timeout: 258 seconds) |
09:31:19 | * | Vladar joined #nim |
09:32:18 | * | Acid147 joined #nim |
09:33:35 | * | lf-araujo joined #nim |
09:34:21 | alexander92 | how do i override |
09:34:27 | alexander92 | the nim c flags |
09:34:35 | alexander92 | i feel that --passC puts my flags |
09:34:44 | alexander92 | before the flags that nim generates itself |
09:35:13 | * | laaron quit (Remote host closed the connection) |
09:35:27 | alexander92 | i want to put `-O<n>` |
09:35:30 | alexander92 | as a last one tho |
09:36:05 | alexander92 | i would expect passC to put them after the other flags |
09:36:43 | leorize_ | override gcc.options.speed in your config file |
09:37:17 | alexander92 | but i don't want to do that |
09:37:26 | * | laaron joined #nim |
09:37:27 | alexander92 | i want to run -O0 instead of -Og |
09:37:37 | alexander92 | but still have nim debug flags |
09:37:49 | alexander92 | and i dont think nim knows how to do it |
09:37:55 | alexander92 | hmm |
09:38:07 | alexander92 | except if the config takes precedent |
09:38:17 | alexander92 | even on the -Og generated by nim --debugInfo ? |
09:38:36 | leorize_ | see the default nim.cfg |
09:38:42 | leorize_ | gcc.options.debug = "-g3 -Og" |
09:38:57 | alexander92 | ahhhhh |
09:39:06 | * | lf-araujo quit (Quit: lf-araujo) |
09:39:08 | leorize_ | but shouldn't Og be fine enough for debugging needs? |
09:39:16 | alexander92 | well for some reason |
09:39:24 | alexander92 | i started to see a lot of optimized out variables |
09:39:28 | alexander92 | and i read that it's possible |
09:39:32 | alexander92 | for this to happen in -Og |
09:41:33 | * | lf-araujo joined #nim |
09:42:28 | leorize_ | so much for "enables optimizations that do not interfere with debugging" then |
09:42:35 | * | leorize_ is now known as leorize |
09:42:50 | alexander92 | well it's not a big deal often |
09:43:00 | alexander92 | but for my case i need to always be able to read some of those |
09:43:44 | * | stefanos82 joined #nim |
09:44:03 | * | fjellfras quit (Remote host closed the connection) |
09:44:30 | * | fjellfras joined #nim |
09:46:02 | * | uptime joined #nim |
09:59:40 | * | leorize quit (Quit: WeeChat 2.3) |
09:59:50 | * | lf-araujo quit (Ping timeout: 252 seconds) |
10:01:50 | alexander92 | thanks leorize |
10:01:54 | alexander92 | that option works |
10:08:00 | alexander92 | `gcc.options.debug = "-O0 -g3"` probably* |
10:13:28 | * | laaron quit (Remote host closed the connection) |
10:14:06 | * | laaron joined #nim |
10:15:36 | * | laaron quit (Client Quit) |
10:17:16 | * | laaron joined #nim |
10:25:20 | * | fjellfras quit (Quit: Leaving) |
10:34:12 | dom96 | https://libra.org/en-US/white-paper |
10:34:32 | dom96 | Thoughts on this Status peeps? @arnetheduck @mratsim et al. |
10:34:42 | * | alexander92 quit (Ping timeout: 272 seconds) |
10:35:29 | FromGitter | <mratsim> My take: Facebook creating a new walled garden now that apps like Farmville and such are moving to Apple/Google platforms |
10:39:51 | dom96 | Looks like the whitepaper includes a custom programming language as well called Move |
10:41:09 | FromGitter | <mratsim> I didn't go into the technical part, still on the intent and business value for Facebook ;) |
10:41:44 | dom96 | https://developers.libra.org/docs/move-paper |
10:56:01 | * | BaldEagleX02 quit (Ping timeout: 250 seconds) |
11:04:59 | * | solitudesf joined #nim |
11:22:02 | * | BaldEagleX02 joined #nim |
11:30:26 | * | deech joined #nim |
11:31:23 | * | alexander92 joined #nim |
11:41:04 | * | alexander92 quit (Quit: WeeChat 2.4) |
11:41:50 | * | deech quit (Ping timeout: 272 seconds) |
11:46:05 | * | AndChat|624225 joined #nim |
11:49:12 | * | envoyt quit (Ping timeout: 245 seconds) |
11:53:28 | * | deech joined #nim |
12:34:34 | * | sentreen quit (Read error: Connection reset by peer) |
12:35:09 | * | sentreen joined #nim |
12:35:49 | * | Snircle joined #nim |
12:42:45 | * | lf-araujo joined #nim |
12:45:40 | * | dddddd joined #nim |
13:00:31 | * | solitudesf- joined #nim |
13:01:29 | * | solitudesf quit (Ping timeout: 244 seconds) |
13:02:55 | FromGitter | <alehander42> i wonder when will alternative versions with evm/other block backend appear |
13:03:15 | FromGitter | <alehander42> do people already write "multiplatform" contract langs |
13:05:04 | * | lf-araujo quit (Ping timeout: 248 seconds) |
13:05:27 | * | solitudesf- quit (Quit: Leaving) |
13:22:50 | * | AndChat|624225 quit (Read error: Connection reset by peer) |
13:23:03 | * | couven92 quit (Quit: Client disconnecting) |
13:23:34 | * | envoyt joined #nim |
13:42:13 | * | lritter joined #nim |
14:02:59 | FromGitter | <gogolxdong> Where to get nimhcr.dll |
14:05:17 | FromGitter | <arnetheduck> @alehander42 here's one: https://daml.com/ |
14:05:33 | PMunch | Hmm, I hit the same codegen bug again.. |
14:06:09 | PMunch | It seems that sometimes it trips up when you have two tuples that are the same structure and you try to assign one to the other |
14:06:15 | PMunch | Nim allows it, but C complains |
14:07:45 | PMunch | But I can't create a small example that triggers it.. |
14:13:22 | * | arecaceae quit (Remote host closed the connection) |
14:13:40 | * | arecaceae joined #nim |
14:13:45 | FromGitter | <arnetheduck> @dom96 https://medium.com/@lopp/thoughts-on-libra-blockchain-49b8f6c26372 for an introduction of how it compares with traditional blockchains.. mostly, the walled garden / permissioned participation model is problematic from a governance / cartel formation point of view (essentially, you have to trust that facebook, uber and the rest of that bunch will run the network with your best interest in mind... let') |
14:15:22 | FromGitter | <arnetheduck> but I guess people in general are happy to sell their soul to fb, devs and users alike, so in terms of "success" there's a fair chance it'll work out fine for zuck\ |
14:21:29 | Zevv | that's how thing go, right |
14:30:16 | * | deech quit (Ping timeout: 246 seconds) |
14:31:11 | * | PMunch quit (Remote host closed the connection) |
14:35:34 | FromGitter | <alehander42> @gogo |
14:35:47 | FromGitter | <alehander42> @gogolxdong are you trying to run the hcr branch |
14:36:29 | FromGitter | <alehander42> @arnetheduck thank you for the daml link |
14:38:17 | FromGitter | <arnetheduck> just met the folks behind it last week ;) they apparently come from a strong formal verification background.. inspired by haskell and all that, and from what I understood the actions written in the language have provable properities etc |
14:44:19 | FromGitter | <gogolxdong> run the demo in nimhcr.rst |
14:44:42 | FromGitter | <gogolxdong> It needs update for [email protected] |
14:46:13 | FromGitter | <gogolxdong> hcr.rst |
14:54:01 | * | floppydh quit (Quit: WeeChat 2.4) |
15:25:14 | * | Jesin quit (Quit: Leaving) |
15:25:41 | * | dwdv quit (Quit: quit) |
15:28:37 | * | deech joined #nim |
15:31:07 | * | dGtlc3 quit (Ping timeout: 248 seconds) |
15:31:20 | * | Jesin joined #nim |
15:31:46 | * | dGtlc3 joined #nim |
15:34:48 | FromGitter | <xmonader> How do I convert times.getTime() to value in nanoseconds? |
15:35:36 | * | oz quit (Quit: EOF) |
15:36:07 | * | oz joined #nim |
15:37:15 | * | tiorock joined #nim |
15:37:15 | * | tiorock quit (Changing host) |
15:37:15 | * | tiorock joined #nim |
15:37:15 | * | rockcavera is now known as Guest59890 |
15:37:15 | * | Guest59890 quit (Killed (hitchcock.freenode.net (Nickname regained by services))) |
15:37:15 | * | tiorock is now known as rockcavera |
15:38:08 | * | krux02_ joined #nim |
15:39:15 | * | krux02 quit (Read error: Connection reset by peer) |
15:39:29 | * | pydsigner quit (Excess Flood) |
15:39:41 | * | pydsigner joined #nim |
15:40:36 | * | envoyt quit (Ping timeout: 272 seconds) |
15:47:02 | * | envoyt joined #nim |
15:48:42 | * | nsf quit (Quit: WeeChat 2.4) |
16:03:05 | FromGitter | <xmonader> ```code paste, see link``` ⏎ ⏎ then rightNowDur.inNanoSeconds ... not sure if that's the correct way but it seems to work [https://gitter.im/nim-lang/Nim?at=5d090b384e8f972d374bce32] |
16:04:08 | * | laaron quit (Quit: ZNC 1.7.1 - https://znc.in) |
16:04:32 | * | laaron joined #nim |
16:13:48 | * | leorize joined #nim |
16:28:53 | * | Jesin quit (Quit: Leaving) |
16:32:22 | * | abm quit (Quit: Leaving) |
16:33:01 | * | Jesin joined #nim |
16:37:40 | FromGitter | <massung> Does nim have any support for compile-time assertions? My specific use-case is that I'd like to assert that a generic range parameter used to build an array is a power-of-2 size. Something like (totally made up syntax): ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5d0913548e050f62aa4a8462] |
16:38:07 | * | krux02_ quit (Remote host closed the connection) |
16:38:26 | FromGitter | <massung> I can do this at runtime obviously, just would be nice if it was doable at compile-time |
16:38:41 | leorize | `static: doAssert <cond>, <msg>` |
16:40:05 | FromGitter | <Vindaar> ugh, just echo debugged my way through a module, which suddenly took like 6 seconds to compile. Finally figured out it was because I echoed a generic type for which I hadn't defined a `$` yet. ⏎ What's the proper way to debug where compilation time is spent in a module? |
16:40:16 | leorize | @massung and for this kind of assertions, using a distinct type + converting proc is better |
16:40:28 | leorize | wait and I'll make a demo |
16:40:34 | FromGitter | <massung> Thanks |
16:48:38 | * | lf-araujo joined #nim |
16:48:51 | leorize | @massung: https://play.nim-lang.org/index.html?ix=1M80 |
16:50:48 | FromGitter | <massung> Thank you leorize |
16:54:25 | FromGitter | <xmonader> can't do case of on enums? does it have to be a variant? |
16:56:40 | FromGitter | <xmonader> pff my bad it was a typo but the error message didn't help much |
16:56:55 | leorize | @massung: an even better version https://play.nim-lang.org/index.html?ix=1M81 :) works with any array |
16:57:57 | FromGitter | <massung> :) nice |
17:00:58 | * | lf-araujo left #nim (#nim) |
17:08:07 | * | deech quit (Ping timeout: 246 seconds) |
17:08:13 | shashlick | @Araq - what's your opinion on https://github.com/concurrencykit/ck |
17:08:55 | shashlick | Will wrapping it and providing some Nim abstractions make it easier to share info across threads |
17:10:05 | * | PMunch joined #nim |
17:10:20 | * | nsf joined #nim |
17:11:08 | FromDiscord_ | <j$> is it intended that default params dont work when compiling to js backend? |
17:14:15 | * | leorize quit (Quit: WeeChat 2.3) |
17:14:40 | * | leorize joined #nim |
17:20:25 | * | neceve quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
17:52:39 | Araq | shashlick, usually I stop reading after "C99" but this one looks interesting |
17:53:03 | * | solitudesf joined #nim |
17:56:34 | shashlick | there's also https://github.com/xant/libhl and https://liblfds.org but i'm wondering how easy it will be to enable relatively transparent interop between these structures and traditional nim strings, tables and seqs |
17:57:18 | Araq | https://github.com/concurrencykit/ck/blob/master/src/ck_array.c#L39 integer overflow leading to a heap corruption |
17:57:40 | Araq | took me a couple of seconds to find it, C99 users are still morons, moving on... |
18:04:35 | shashlick | hmm |
18:07:57 | shashlick | now where do i go next |
18:08:25 | Araq | libraries cannot fix language problems |
18:09:36 | Araq | Nim's threadlocal heaps can only be fixed by Nim core changes |
18:16:10 | * | stefanos82 quit (Quit: Quitting for now...) |
18:21:03 | * | stefanos82 joined #nim |
18:31:42 | * | lf-araujo joined #nim |
18:43:04 | * | lf-araujo quit (Ping timeout: 252 seconds) |
18:54:11 | * | deech joined #nim |
19:05:36 | shashlick | Understood - I'll open some issues in that repo |
19:07:17 | * | Jesin quit (Quit: Leaving) |
19:08:09 | * | Jesin joined #nim |
19:25:06 | * | sacredfrog quit (Quit: ZNC 1.7.3 - https://znc.in) |
19:35:23 | * | laaron quit (Remote host closed the connection) |
19:35:46 | * | laaron joined #nim |
19:40:14 | * | NimBot joined #nim |
19:44:17 | * | nsf quit (Quit: WeeChat 2.4) |
19:48:49 | * | Trustable quit (Remote host closed the connection) |
19:56:32 | * | lf-araujo joined #nim |
20:08:08 | * | abm joined #nim |
20:13:36 | * | PMunch quit (Remote host closed the connection) |
20:21:10 | * | laaron- joined #nim |
20:21:26 | * | laaron quit (Remote host closed the connection) |
20:38:55 | * | lf-araujo quit (Ping timeout: 252 seconds) |
20:39:17 | * | Jesin quit (Quit: Leaving) |
20:40:28 | * | lf-araujo joined #nim |
20:41:56 | * | Jesin joined #nim |
20:43:59 | * | lf-araujo quit (Remote host closed the connection) |
20:46:33 | * | lf-araujo joined #nim |
20:55:48 | * | narimiran quit (Remote host closed the connection) |
20:56:04 | * | couven92 joined #nim |
20:59:23 | * | Vladar quit (Read error: Connection reset by peer) |
21:10:10 | * | theelous3 joined #nim |
21:23:23 | * | envoyt quit (Ping timeout: 268 seconds) |
21:41:16 | * | solitudesf quit (Ping timeout: 258 seconds) |
21:47:04 | * | hohlerde quit (Quit: Idle kick: User has been idle for 30+ days.) |
22:05:35 | * | lqdev[m] quit (Quit: Idle kick: User has been idle for 30+ days.) |
22:13:30 | * | sz0 quit (Ping timeout: 252 seconds) |
22:13:58 | * | couven92 quit (Quit: Client Disconnecting) |
22:20:37 | * | sz0 joined #nim |
22:27:03 | * | Cold[m] quit (Quit: Idle kick: User has been idle for 30+ days.) |
22:33:11 | * | lqdev[m] joined #nim |
22:34:37 | * | lf-araujo quit (Ping timeout: 245 seconds) |
22:34:42 | lqdev[m] | what the heck, I got kicked due to inactivity despite the fact I was active just yesterday |
22:49:44 | shashlick | where are nim string and seq types defined? |
22:54:05 | rayman22201 | https://github.com/nim-lang/Nim/blob/devel/lib/system.nim#L49 |
22:54:37 | rayman22201 | https://github.com/nim-lang/Nim/blob/devel/lib/system.nim#L289 |
22:54:56 | rayman22201 | system.nim is full of dark magic for dealing with these types. :-P |
22:55:10 | shashlick | am looking at the compiler for this magic |
22:55:25 | shashlick | wondering why data structures aren't part of the lib and need magic |
22:55:45 | shashlick | well, rather why strings and seqs are not part of the lib and need magic |
22:57:54 | rayman22201 | I don't have a great answer, it's probably an Araq question. My guess is that these are fundamental types used in the compiler itself, so they must cheat. |
22:58:22 | FromDiscord_ | <treeform> Is there a guide on how to program with the --newruntime? |
22:58:52 | rayman22201 | not yet. |
23:03:27 | rayman22201 | @shashlick found it: https://github.com/nim-lang/Nim/blob/devel/lib/system/sysstr.nim |
23:03:41 | rayman22201 | This is the low level magic that controls strings and seqs (I.E. does the allocs and such) |
23:06:51 | rayman22201 | @treeform, in theory, you can just turn on --newruntime, and then use the compiler warnings to guide you on where to place the necessary annotations. I haven't tried it though, and newruntime is still super alpha quality (closures still don't work afaik). YMMV. |
23:10:22 | shashlick | thanks @rayman22201 |
23:11:53 | rayman22201 | np |
23:13:31 | shashlick | wondering if it would be possible to add an allocShared version of this |
23:14:01 | shashlick | will become global though, every string |
23:14:12 | * | stefanos82 quit (Quit: Quitting for now...) |
23:14:42 | * | Jesin quit (Quit: Leaving) |
23:16:39 | * | abm quit (Quit: Leaving) |
23:18:11 | rayman22201 | you mean hacking the compiler to add a "sharedString" type? |
23:18:24 | shashlick | yep |
23:19:07 | rayman22201 | it wouldn't necessarily be global, but you loose the GC... |
23:20:13 | * | Jesin joined #nim |
23:22:12 | rayman22201 | This is for your text editor right? |
23:31:39 | * | envoyt joined #nim |
23:34:54 | rayman22201 | Are you sure it wouldn't be easier to migrate to HCR or newruntime? lol |
23:38:00 | * | lritter quit (Quit: Leaving) |
23:40:33 | FromDiscord_ | <SychoRyn> heyo |
23:40:38 | FromDiscord_ | <SychoRyn> I'm following the https://nim-lang.org/install_unix.html page |
23:41:02 | FromDiscord_ | <SychoRyn> It got up to the uhh |
23:41:07 | FromDiscord_ | <SychoRyn> Building tools part |
23:41:10 | FromDiscord_ | <SychoRyn> and then did `Exception: Execution failed with exit code 1` |
23:41:23 | * | abm joined #nim |
23:41:26 | FromDiscord_ | <SychoRyn> I'm gonna put the full output on a pastebin |
23:55:29 | * | Acid147 quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |