| 00:01:23 | * | beholders_eye quit (Ping timeout: 260 seconds) |
| 00:13:54 | FromDiscord | <alexander888alexander> this kind of stuff is common for big servers |
| 00:14:17 | FromDiscord | <alexander888alexander> unfortunately |
| 00:18:10 | * | Lord_Nightmare quit (Quit: ZNC - http://znc.in) |
| 00:21:03 | * | Lord_Nightmare joined #nim |
| 01:07:46 | * | xet7 quit (Remote host closed the connection) |
| 02:24:35 | * | Mister_Magister quit (Ping timeout: 244 seconds) |
| 02:24:39 | * | Mister_Magister_ joined #nim |
| 02:27:44 | * | Mister_Magister_ is now known as Mister_Magister |
| 03:08:21 | * | leoqi joined #nim |
| 05:50:40 | * | SchweinDeBurg quit (Quit: WeeChat 4.8.0-dev) |
| 06:15:16 | * | SchweinDeBurg joined #nim |
| 06:22:25 | * | leoqi quit (Remote host closed the connection) |
| 06:22:34 | * | leoqi joined #nim |
| 06:27:59 | * | leoqi quit (Ping timeout: 250 seconds) |
| 07:23:30 | * | Mister_Magister quit (Excess Flood) |
| 07:25:08 | * | Mister_Magister joined #nim |
| 08:06:50 | * | beholders_eye joined #nim |
| 08:47:04 | * | beholders_eye quit (Ping timeout: 246 seconds) |
| 08:48:46 | * | beholders_eye joined #nim |
| 09:14:25 | * | xtr00 quit (Ping timeout: 264 seconds) |
| 09:20:02 | * | xtr00 joined #nim |
| 09:36:33 | * | ehmry quit (Ping timeout: 260 seconds) |
| 10:01:52 | * | xtr00 quit (Read error: Connection reset by peer) |
| 10:07:39 | * | xtr00 joined #nim |
| 10:12:13 | FromDiscord | <alehander92> hey, is @alaviss in this server |
| 10:13:20 | FromDiscord | <alehander92> @leorize0713 are you alaviss (sorry if i am confused 😄 ) |
| 10:13:59 | FromDiscord | <alehander92> @leorize are you alaviss (sorry if i am confused 😄 ) |
| 10:15:18 | FromDiscord | <leorize> yea, but I'm more active on either disruptek channel or skull's channel↵(@alehander92) |
| 10:15:46 | FromDiscord | <alehander92> In reply to @leorize "yea, but I'm more": ah, i see; we wanted to use `tree-sitter-nim` in `codetracer`, and i wondered if i could ask several questions |
| 10:16:24 | FromDiscord | <alehander92> but not sure where is the best place, maybe pm or here or there |
| 10:17:20 | FromDiscord | <leorize> here is fine, feel free to ask |
| 10:21:19 | FromDiscord | <leorize> if you want to pm, hit me up on matrix, I'm not active on discord |
| 10:22:54 | FromDiscord | <alehander92> ok, here sounds good |
| 10:26:11 | FromDiscord | <alehander92> sent a long message, see https://pasty.ee/dAWlmfMl |
| 10:26:44 | FromDiscord | <alehander92> (edit) "https://pasty.ee/jPKWVRzv" => "https://pasty.ee/EePCAKmP" |
| 10:28:29 | FromDiscord | <alehander92> 2) it seems the `rewrite` branch is stable from your comments, with a small string issue, but we are not really depending on those kinds of nodes currently: if one needs mostly more high level things like branches/loop/function nodes: i assume one can already use it? |
| 10:28:47 | FromDiscord | <leorize> that's correct, I don't care too much about the software that employs the grammar, but if you improve it in anyway, I'd prefer that you contribute back↵(@alehander92) |
| 10:28:59 | FromDiscord | <alehander92> 3) is it possible that nim 2.x substantally changes things and breaks something in the grammar? |
| 10:29:27 | FromDiscord | <leorize> the rewrite branch has already been merged back to main (squashed), the branch remains only as a historical artifact↵(@alehander92) |
| 10:30:12 | FromDiscord | <alehander92> In reply to @leorize "the rewrite branch has": ahh i didnt realize that from the PR; ok |
| 10:30:18 | FromDiscord | <leorize> nim 2.x changes are semantics-oriented, the grammar is mostly unaffected↵(@alehander92) |
| 10:31:00 | FromDiscord | <alehander92> yes, we mostly use a subset of it so i also doubt it would be a problem even if there are smaller changes |
| 10:31:25 | * | ehmry joined #nim |
| 10:32:13 | FromDiscord | <alehander92> ok, thank you: about the size, i assume that now it's expected to be ~41 MiB |
| 10:33:05 | FromDiscord | <leorize> yep, there's not much meaningful size reduction that can be done from my side, but if you figure something out please contribute it back |
| 10:34:08 | FromDiscord | <alehander92> In reply to @leorize "yep, there's not much": i am not sure we will have the bandwidth, but surely if someone finds out something i assume he will! |
| 10:35:14 | FromDiscord | <alehander92> ok; we need to use it as a crate: we can point to your github i assume; do you want to publish a crate (or us to publish a crate and give you admin/owner rights on it, if you don't want to bother)? or if you're not interested, we can stay with the git/github option i assume |
| 10:36:07 | FromDiscord | <alehander92> (edit) "a crate" => "it?" | "a" => "the" | "(or us to publishthecrate ... and" added "on crates.io" |
| 10:36:24 | FromDiscord | <leorize> I'm not interested in maintaining or publishing a rust crate, so you will have to make do with the repo |
| 10:37:11 | FromDiscord | <leorize> most consumers are moving towards a wasm loader + wasm form of the grammar, which might be a decent path for your product, seeing that it's a kind of editor/debugger combo |
| 10:37:32 | FromDiscord | <alehander92> i think it's already auto-maintained: as your binding; one only needs to do `cargo publish`, but not doing that is perfectly ok indeed, we also havent published our tracepoint grammar one 😄 |
| 10:37:58 | FromDiscord | <alehander92> In reply to @leorize "most consumers are moving": yes, i saw that in the difftastic PR, i didnt know of it before IIRC |
| 10:38:35 | FromDiscord | <alehander92> a colleague actually built some of the grammars/parsers for WASM, as we needed a separate pure-wasm build of db-backend, but we didn't know Zed uses is that way for extensions |
| 10:39:16 | FromDiscord | <leorize> it's very much a manual process where I have to bump the version and manage ts lib versionin the future the various wrappers might be purged from the repo↵(@alehander92) |
| 10:40:05 | FromDiscord | <alehander92> we might do that eventually, if we develop a stable extension-like mechanism, we had just a few languages supported with that backend; but now because we completely changed how our system lang support works, we reuse some of this for it too and yeah, many more parsers and bigger size |
| 10:41:31 | FromDiscord | <alehander92> but it would be good to eventually make those flexible indeed |
| 10:42:14 | FromDiscord | <alehander92> In reply to @leorize "it's very much a": yes that's true: we can do the bureacracy here, but we might suddenly stop, so i assume it's better to just not do it indeed as you say |
| 10:42:30 | FromDiscord | <alehander92> thank you a lot for the grammar and libraries!!! |
| 10:44:14 | FromDiscord | <leorize> you're welcome 😄. do let me know if the grammar works well enough for your use cases |
| 10:52:54 | FromDiscord | <systemblue_2010> sent a long message, see https://pasty.ee/APyjfLPb |
| 10:54:09 | FromDiscord | <systemblue_2010> but GPL, LGPL, AGPL, MPL makes developer who use there library to open source code↵but it makes developer to avoid these libraries |
| 10:54:17 | FromDiscord | <systemblue_2010> (edit) "library" => "libraries" |
| 11:35:49 | FromDiscord | <leorize> MPL is not "viral", it does not require the combined product to be open sourced |
| 12:04:16 | * | beholders_eye quit (Ping timeout: 264 seconds) |
| 12:21:58 | FromDiscord | <systemblue_2010> In reply to @systemblue_2010 "I think Nim library": except MPL |
| 12:33:27 | * | beholders_eye joined #nim |
| 12:58:32 | * | beholders_eye quit (Ping timeout: 244 seconds) |
| 13:09:29 | * | beholders_eye joined #nim |
| 14:13:54 | * | xet7 joined #nim |
| 14:26:59 | FromDiscord | <pmunch> Hmm, I've found a very strange bug with term rewriting templates |
| 14:27:52 | FromDiscord | <pmunch> sent a code paste, see https://play.nim-lang.org/#pasty=oYgxwJPG |
| 14:34:01 | FromDiscord | <pmunch> Damn, this is worse than I though.. |
| 14:34:12 | FromDiscord | <pmunch> It's very arbitrary where it cuts off |
| 14:34:22 | FromDiscord | <pmunch> Tried to move an echo around to see |
| 14:34:40 | FromDiscord | <pmunch> And it's almost on a specific line of code where it stops working.. |
| 14:38:57 | FromDiscord | <pmunch> > To avoid putting the compiler into an infinite loop, there is a hard limit on how many times a single term rewriting macro can be applied. Once this limit has been passed, the term rewriting macro will be ignored. |
| 14:39:07 | FromDiscord | <pmunch> God damn it |
| 14:39:09 | FromDiscord | <pmunch> WHY?! |
| 14:54:05 | * | beholders_eye quit (Ping timeout: 264 seconds) |
| 15:02:47 | FromDiscord | <pmunch> Found the offending line https://github.com/nim-lang/Nim/blob/devel/compiler/hlo.nim#L67 |
| 15:03:08 | FromDiscord | <pmunch> Commented that out and built a local copy of Nim, now everything works.. |
| 15:18:08 | * | beholders_eye joined #nim |
| 15:22:27 | * | xtr00 quit (Ping timeout: 255 seconds) |
| 15:24:38 | FromDiscord | <pmunch> Hmm, it seems like what's supposed to be a recursion limit isn't properly reset. So if you have more than 300 statements in a proc it just stops |
| 15:25:20 | FromDiscord | <pmunch> The counter should probably be reset before this line: https://github.com/nim-lang/Nim/blob/0f7b37846773f3193f29e628f75086788ac93fe5/compiler/hlo.nim#L81 |
| 15:26:06 | * | xtr00 joined #nim |
| 15:35:25 | * | xtr00 quit (Ping timeout: 264 seconds) |
| 15:41:20 | * | xtr00 joined #nim |
| 15:47:25 | * | xtr00 quit (Ping timeout: 245 seconds) |
| 15:51:24 | * | xtr00 joined #nim |
| 15:58:38 | * | xtr00 quit (Ping timeout: 260 seconds) |
| 16:01:12 | * | xtr00 joined #nim |
| 16:03:37 | * | beholders_eye quit (Ping timeout: 264 seconds) |
| 16:15:23 | FromDiscord | <pmunch> Or possibly just be increased before this line: https://github.com/nim-lang/Nim/blob/0f7b37846773f3193f29e628f75086788ac93fe5/compiler/hlo.nim#L93 |
| 16:17:06 | * | leoqi joined #nim |
| 16:24:53 | * | xtr00 quit (Ping timeout: 260 seconds) |
| 16:25:40 | * | xtr00 joined #nim |
| 16:34:49 | * | xtr00 quit (Ping timeout: 264 seconds) |
| 16:40:00 | * | xet7 quit (Remote host closed the connection) |
| 16:45:32 | * | xtr00 joined #nim |
| 16:53:58 | * | xtr00 quit (Read error: Connection reset by peer) |
| 16:54:58 | * | beholders_eye joined #nim |
| 16:58:56 | * | xtr00 joined #nim |
| 17:06:45 | * | xtr00 quit (Read error: Connection reset by peer) |
| 17:09:52 | * | xtr00 joined #nim |
| 17:23:37 | * | leoqi quit (Ping timeout: 250 seconds) |
| 17:38:14 | * | xtr00 quit (Read error: Connection reset by peer) |
| 17:41:12 | FromDiscord | <mjsdev> sent a code paste, see https://play.nim-lang.org/#pasty=CHjkjRll |
| 17:41:15 | FromDiscord | <mjsdev> Why tho? |
| 17:44:22 | * | xtr00 joined #nim |
| 18:14:24 | * | beholders_eye quit (Ping timeout: 252 seconds) |
| 18:33:58 | FromDiscord | <nasuray> > as it accesses 'this' which is a global using GC'ed memory |
| 18:41:02 | * | xtr00 quit (Read error: Connection reset by peer) |
| 18:44:23 | * | xtr00 joined #nim |
| 19:16:34 | FromDiscord | <mjsdev> But `this` is part of the environment to a closure which is not GCed. |
| 19:19:04 | FromDiscord | <mjsdev> Well, technically it is GCed, but not until the main thread exits (as afar as I understand)... more importantly though... I don't understand the point of {. gcsafe .} if it's not telling the compiler, "despite what you believe, this is gcsafe." |
| 19:21:43 | FromDiscord | <mjsdev> Like, if the compiler is just gonna do whatever it wants based on whether or not it determines it to be GC safe... what's the point? |
| 19:29:17 | * | Lord_Nightmare quit (Quit: ZNC - http://znc.in) |
| 19:33:28 | * | Lord_Nightmare joined #nim |
| 20:26:03 | * | xtr00 quit (Read error: Connection reset by peer) |
| 20:28:31 | * | xtr00 joined #nim |
| 20:33:55 | * | xtr00 quit (Ping timeout: 264 seconds) |
| 20:35:27 | * | xtr00 joined #nim |
| 20:41:43 | * | xtr00 quit (Ping timeout: 264 seconds) |
| 20:47:38 | * | xtr00 joined #nim |
| 20:51:40 | FromDiscord | <nasuray> In reply to @mjsdev "Well, technically it is": IIUC marking the proc `{.gcsafe.}` is communicating to the compiler that it is...but helpfully it's telling you that's not true. ↵to override you need to use `cast(gcsafe)` see here https://nim-lang.org/docs/manual.html#effect-system-gc-safety-effect |
| 20:52:23 | FromDiscord | <nasuray> the `gcsafe` on procs is otherwise inferred by the compiler |
| 21:02:20 | FromDiscord | <mjsdev> yeah, I tried the cast() thing, tried also just {. gcsafe .} as a block... none of those seem to work. I just turned off threadAnalysis for now, which ironically, still seems to raise such issues, but not the one I'm concerned with, and ones which I would consider otherwise valid. |
| 22:18:31 | FromDiscord | <nasuray> In reply to @mjsdev "yeah, I tried the": You used a cast(gcsafe) block everywhere you accessed gc'ed memory? |
| 22:31:00 | * | xtr00 quit (Read error: Connection reset by peer) |
| 22:53:31 | FromDiscord | <mjsdev> Where it was yelling about. |
| 23:10:12 | * | beholders_eye joined #nim |