<< 02-07-2020 >>

00:00:58*cyraxjoe joined #nim
00:04:48*ofelas joined #nim
00:12:52*cyraxjoe quit (Quit: I'm out!)
00:12:58FromDiscord<Zachary Carter> lots of drama today
00:17:19*cyraxjoe joined #nim
00:21:57*audiophile_ joined #nim
00:22:26*cyraxjoe quit (Quit: I'm out!)
00:24:58*cyraxjoe joined #nim
00:25:16FromDiscord<Technisha Circuit> Yup
00:25:26*audiophile quit (Ping timeout: 260 seconds)
00:25:35*audiophile_ is now known as audiophile
00:26:39*audiophile is now known as BlameTheRoomba
00:28:15*pietroppeter quit (Quit: Connection closed for inactivity)
00:32:56FromDiscord<Elegant Beef> Perhaps
00:33:02*oddp quit (Ping timeout: 260 seconds)
00:36:28*Senny joined #nim
00:41:12*Tanger joined #nim
00:43:46BlameTheRoombayou want beef with me huh?
00:43:50*BlameTheRoomba throws arms
00:46:06FromDiscord<Elegant Beef> sure
00:46:17*cyraxjoe quit (Quit: I'm out!)
00:48:40BlameTheRoombalook man I'm sorry
00:48:42BlameTheRoombano beef
00:49:55*cyraxjoe joined #nim
00:51:24*Tongir joined #nim
00:52:56FromDiscord<Elegant Beef> We can just blame the vaccum cleaner
00:54:13*Tanger quit (Ping timeout: 264 seconds)
00:56:54*cyraxjoe quit (Ping timeout: 240 seconds)
00:57:36*cyraxjoe joined #nim
00:58:32*BlameTheRoomba blames self
00:59:17disrupteksucks.
00:59:27disrupteklook, there's no crying in baseball.
00:59:34disruptekbut there IS crying in #nim. QQ
01:02:20FromGitter<ynfle> Is there any way to use `nre` at compile time
01:06:07disruptekstack trace: (most recent call last)
01:06:07disruptek4969 calls omitted
01:06:24disruptekdamnit, exactly the calls i wanted to see.
01:08:00FromGitter<ynfle> Is there a sane way to extract the nim code from inside of a `fmt`?
01:09:23*cyraxjoe quit (Quit: I'm out!)
01:12:32*cyraxjoe joined #nim
01:28:35*cyraxjoe quit (Quit: I'm out!)
01:31:12*cyraxjoe joined #nim
01:34:33*krux02_ quit (Remote host closed the connection)
01:43:55FromGitter<ynfle> Is there a way to expand a macro using `{.push expandMacro: fmt.}`?
01:46:12*chemist69 quit (Ping timeout: 260 seconds)
01:47:51*chemist69 joined #nim
01:54:44*cyraxjoe quit (Quit: I'm out!)
01:57:25*cyraxjoe joined #nim
01:58:14FromDiscord<juan_carlos> `-d:debugFmtDsl`
01:58:56FromDiscord<Zachary Carter> Okay I banned that guy from discord - can someone just start locking his issues please - https://github.com/nim-lang/Nim/issues/14876 ?
01:58:57disbotPlease revert my commit
01:59:09FromDiscord<Zachary Carter> This is not the right way to handle a personal grievance with another community member, even if it's the languages BDFL
02:00:28FromDiscord<Zachary Carter> (edit) removed 'languages'
02:02:40BornInWinterwhy the discord ban? i haven't seen anything from them since the left earlier
02:03:53FromDiscord<KingDarBoja> What means BSFL?
02:05:00FromDiscord<Zachary Carter> BornInWinter: because their real intention is obviously being disruptive to the community, and seeking attention
02:05:15*cyraxjoe quit (Quit: I'm out!)
02:05:49BornInWinterI have it on good authority they aren't actually. They were completely polite and clearly expressed their reasoning, which it seems you've ignored.
02:06:14BornInWinterIf they wanted to be disruptive, they would've raided the discord server, or continued yelling there
02:06:17*FromDiscord quit (Remote host closed the connection)
02:06:32*FromDiscord joined #nim
02:07:06FromDiscord<KingDarBoja> Oh, BDFL, Dictator for Life, like Python one lmao
02:08:05BornInWinterAraq: I'd like to request Simula be unbanned from the discord server, as they have broken no rules
02:08:39*cyraxjoe joined #nim
02:09:25FromDiscord<Zachary Carter> Ar4q isn't even a moderator of Discord and doesn't really need to be bothered for this
02:09:32FromDiscord<KingDarBoja> https://media.discordapp.net/attachments/371759389889003532/728069819974418573/Screenshot_20200701-210907.png
02:09:40FromDiscord<KingDarBoja> Oh noes
02:10:12BornInWinterThen I'd like to request another discord mod unban them, as they have done nothing wrong
02:11:09FromDiscord<Zachary Carter> Actually, he broke the first rule in our discord <#712684648454684752> channel
02:11:10FromDiscord<Zachary Carter> - Be respectful towards other people. No harassing or personally attacking others.
02:11:25FromDiscord<Zachary Carter> he's been harassing other community members via github issues and has used offensive language in github issues and threads
02:11:25FromDiscord<mattrb> sent a code paste, see https://play.nim-lang.org/#ix=2qG6
02:11:47BornInWinterWhere have they* been harassing github users?
02:11:56FromDiscord<Zachary Carter> go look in github issues if you want to see for yourself
02:12:05BornInWinterall i've seen was a retaliation against beef and yard after they politely asked them not to be bothered
02:12:15BornInWinterI have, I didn't see anything
02:13:02FromDiscord<Zachary Carter> well his other issue was locked I assume
02:13:17disruptekwhen you contribute to an MIT-licensed project, you're giving away your contribution.
02:13:44disruptekdom can do what he wants with nimble, but i doubt much could/should be done about Nim contributions.
02:14:12FromDiscord<Zachary Carter> Also he came into discord calling people assholes earlier
02:14:18BornInWinterthey*
02:14:34FromDiscord<Zachary Carter> excuse me, they
02:15:00FromDiscord<Zachary Carter> although I'm pretty sure it's a he as I checked out their website and their name appears to be Steve
02:15:07FromDiscord<Zachary Carter> but regardless of whatever gender they identify as
02:15:42FromDiscord<Zachary Carter> they caused a disruption and made a personal grievance public, called people assholes, tagged people on github issues and are opening more github issues screenshotting things, causing drama
02:15:56FromDiscord<KingDarBoja> He is posting every irc response on his latest GH issue
02:16:01BornInWinterperhaps you shouldn't be insulting them behind their back then
02:16:02FromDiscord<Zachary Carter> that's fine, it'll get locked eventually
02:16:03BornInWinterthey*
02:16:18FromDiscord<Zachary Carter> I'm not insulting them
02:16:24FromDiscord<Zachary Carter> I'm stating what they did and what the reason for the ban is
02:16:34disruptekwhat is this "behind the back" stuff?
02:16:38FromDiscord<Zachary Carter> I don't know
02:16:41FromDiscord<KingDarBoja> https://github.com/moigagoo/norm/issues/75
02:16:42disbotPlease revert my commits
02:16:43BornInWinterroyal you, sorry
02:16:54disruptekit's hard for anyone to do anything on the internet without doing it behind your back, Simula.
02:16:57disrupteker, Steve.
02:17:03disruptekor, i mean, BornInWinter.
02:17:15BornInWinternope, just a friend of sim's from cybre.space
02:17:38FromDiscord<Zachary Carter> okay cool, well I'm not unbanning Simula, so that's that
02:17:50FromDiscord<KingDarBoja> Well, should be good to tell Simula that they should chill
02:18:15FromDiscord<KingDarBoja> Opening issues to every repo they contributed isn't a good solution
02:18:19disrupteki don't understand why anyone would care so much, but the MIT license is pretty clear. maybe ask Steve to take a peek at it.
02:18:30FromDiscord<Zachary Carter> none of the way they've handled things is a good solution
02:18:34FromDiscord<Zachary Carter> it's what a child would do
02:18:39BornInWintermaybe read it yourself, disruptek. they made it pretty clear why they're doing what they're doing
02:19:00shashlickpeople are totally allowed to be offended and calling names and whatever they want in real life or virtually
02:19:04disrupteki see a request that nim-lang is unlikely to honor; i'm just trying to explain why that is.
02:19:13BornInWinterbut people upset at that can't retaliate, shashlick?
02:19:16disruptekyeah, i have no problem with name calling.
02:19:36shashlicki mean Simula just as anyone else here
02:19:46FromDiscord<mattrb> Is there a better channel to ask questions in so that I'm not interrupting all of this? ^
02:19:48disrupteki just think you do yourself a disservice to "show your ass" (as my southern friends say) thusly.
02:19:49shashlickfact is that nothing good comes out of it, either way
02:19:51BornInWinterI fail to see the reasoning here. Sim has done nothing you yourselves haven't either done or condone
02:20:07disruptekmattrb: i'm looking at your code but i'm not familiar with sdl. is this code complete?
02:20:22FromDiscord<JackFly26> sent a code paste, see https://play.nim-lang.org/#ix=2qG9
02:20:28FromDiscord<KingDarBoja> @mattrb You can continue in <#371759607934353448> , it is olay
02:20:35FromDiscord<KingDarBoja> Okay* :) don't worry
02:21:34disruptekzachary is probably the most expert of us wrt sdl.
02:21:55FromDiscord<KingDarBoja> But once again, things got misunderstood after reading the original GH issue regarding the lock. Simula, it is okay to feel offended but try to resolve things privately, with all the people that were involved
02:22:09disruptekBornInWinter: no one here is slinging names on github.
02:22:26BornInWinterAgain, not Simula. However, they no longer can as they were banned from discord for... some sort of crime
02:22:37FromDiscord<KingDarBoja> The community isn't perfect but not everyone is answering with an agressive tone
02:22:47FromDiscord<KingDarBoja> He can read me on IRC
02:22:54BornInWinteragain, they*
02:23:03FromDiscord<KingDarBoja> They* can
02:23:09disruptekit's not really fair to others not to offer some censorship against behavior so poor.
02:23:21FromDiscord<Zachary Carter> Alright - this discussion re: simula can move to <#371759607934353448>
02:23:26BornInWinterWhat have they done that others have not?
02:23:27disruptekthe problem is that 300 people don't want to read this crap.
02:23:30FromDiscord<Elegant Beef> I mean i havent even directly insulted them, and they retorted for no reason and even i dont care if they're banned, but why is this still a conversation
02:23:31FromDiscord<Zachary Carter> no more discussing Simula in this channel
02:23:34BornInWinterSimula cannot move anywhere as they have been banned lmao
02:23:51FromDiscord<Zachary Carter> I'll delete any further messages regarding this person
02:23:54BornInWinterSo insulting someone behind their back makes it okay?
02:23:57FromDiscord<Zachary Carter> go to <#371759607934353448>
02:24:22BornInWinterZachary, what has Simula done that other users involved in this haven't? You refuse to answer
02:25:11FromDiscord<Zachary Carter> They started the drama - period end of it
02:25:32BornInWinterThey actually attempted to end it. Yard brought it up in Discord, making them the starter of drama TM
02:25:32disrupteki think Araq would have banned me today if i wasn't so damned cute.
02:25:42disruptekhe says i have the most gorgeous eyes.
02:25:46FromDiscord<Zachary Carter> they should have handled the situation better, and gone to whatever community member they had a grievance with privately
02:25:55shashlickjust see github - the screenshots, calling out the community, etc. who here has done that?
02:25:57BornInWinterYard should have been private
02:26:09BornInWinterYou banned them from Discord, where else should they go?
02:26:14*lritter quit (Ping timeout: 256 seconds)
02:26:15FromDiscord<Zachary Carter> BornInWinter - enough already go to offtopic if you want to discuss this more
02:26:24FromDiscord<Elegant Beef> They wanted to leave this community so why does it matter where they can go?
02:26:30BornInWinterI'm not an IRC or discord user, so I can't
02:26:32FromDiscord<Elegant Beef> But yes as zach said, we probably should end it
02:26:51disruptekyou're using irc right now.
02:26:57FromDiscord<Zachary Carter> yes you can - someone please fill them in on the irc offtopic channel
02:26:57FromDiscord<Elegant Beef> Yea we can see that
02:26:59BornInWinterNot registered though
02:27:10FromDiscord<Zachary Carter> Okay, well then let's just stop discussing this matter
02:27:13shashlickyou can join #nim-offtopic
02:27:37BornInWinterofftopic requires registration. Zachary, what rule has Simula broken in the Discord that others haven't?
02:27:38FromDiscord<Zachary Carter> we don't need this crap polluting a space where people are asking legitimate Nim questions
02:27:53BornInWinterI wasn't the one who started anything, you'll find
02:28:12FromDiscord<Zachary Carter> You're asking for an IRC ban BornInWinter
02:28:23FromDiscord<Elegant Beef> So SDL huh?
02:28:26disruptekjust ignore them, i guess. they will get bored eventually.
02:28:27BornInWinterI'm just asking a question that you refuse to answer
02:28:35BornInWinterSounds like you know you're wrong
02:28:37FromDiscord<Zachary Carter> I already answered it multiple times, you refused to accept my answer
02:28:57BornInWinterYou lied several times
02:29:05BornInWinterYou claimed they started drama, but the logs show otherwise
02:29:12BornInWinterI can go link the irclogs if you want
02:29:29FromDiscord<Zachary Carter> go ahead - if you have nothing better to do - I won't read them and I won't unban this person
02:29:44BornInWinterSo you're wrong, you refuse to listen to reason, and you'll continue to lie?
02:29:52BornInWinterIs that someone who should have control over a community?
02:29:53FromDiscord<Zachary Carter> whatever you want to call it
02:30:01BornInWinterConsider you're proving Simula's point exactly
02:30:07FromDiscord<Elegant Beef> > @beef331 Even if I did want to use any of your trash, it would be a bit difficult since you apparently can't bring yourself to write more than two sentences in a readme, assuming you write anything at all.
02:30:13FromDiscord<Zachary Carter> sure whatever - honestly I don't care about Simula at all
02:30:15FromDiscord<Elegant Beef> I feel like that's a direct attack for no reason
02:30:24BornInWinterYou started it, Beef
02:30:32FromDiscord<Elegant Beef> I really didnt
02:30:33BornInWinterIt's right there in the GH issue
02:30:35FromDiscord<Elegant Beef> I asked to be blocked
02:30:37FromDiscord<Elegant Beef> That was it
02:30:38disruptekjust ignore them so we can talk about nim.
02:30:44FromDiscord<Zachary Carter> agreed
02:30:45disruptekor take it to another room.
02:30:51FromDiscord<Zachary Carter> okay - someone had a question about SDL?
02:30:53shashlickdespite asking to move to offtopic, this goes on
02:31:02BornInWinterI can't use offtopic /shrug
02:31:09disrupteki don't want to have to ignore discord, but i will.
02:31:16BornInWinterI asked a simple question that zach refuses to answer
02:31:27shashlickhow hard is it to register, if it is so important to discuss, at least have the courtesy to follow the norms of these rooms
02:31:41FromDiscord<Elegant Beef> Oh disruptek you'd be lost without me
02:31:42disruptekanyway, i don't have a way to test this sdl code, mattrb.
02:31:45BornInWinterYou have afforded Simula no courtesy
02:31:52BornInWinterWhy should anyone give you any?
02:32:28disruptekhttps://play.nim-lang.org/#ix=2qGd
02:32:56BornInWinterSo zach, what did they do?
02:32:58FromDiscord<Zachary Carter> @mattrb have you tried debugging with gdb / lldb?
02:33:26BornInWinterSo zach, what did they do?
02:33:31FromDiscord<Zachary Carter> not sure what compiler you're using but if you're using clang asan might be an option
02:33:37bungI see he feel offended and feel people not kindly answering his question
02:33:39BornInWinterSo zach, what did they do?
02:34:31FromDiscord<Zachary Carter> bung: let's not discuss that in the main channel, please move it to offtopic as this issue is polluting the main channel
02:34:31bungso he starting request revert his commits, that's not how things goes
02:34:49BornInWinterSo zach, what did they do?
02:34:58BornInWinterbung: they*
02:35:03FromDiscord<KingDarBoja> Bung: not the way, but please let's go to <#371759607934353448>
02:35:15BornInWinterSo zach, what did they do?
02:35:34BornInWinterIt's a simple question, my guy
02:35:46bungok, I did not feel like that, I feel the community very kind.
02:36:20BornInWinterAnd yet, from what I've heard, this is an issue that happens somewhat frequently
02:36:20*muffindrake quit (Ping timeout: 246 seconds)
02:36:34BornInWinterenough that mratsim and krux have had issues with it
02:36:51FromDiscord<KingDarBoja> Bung: yeah but things can be misunderstood, but let's go to <#371759607934353448> or avoid the topic, this channel is for Nim related questions
02:37:48FromDiscord<Zachary Carter> and krux a mratsim handled their issues as adults do
02:37:52FromDiscord<flywind> Someone knows how can use `nim-gdb` in ubuntu?
02:37:56bungok, I joined there, see what I can do make things more clear
02:38:11BornInWinterZach: so you admit you aren't an adult, or do you just not handle things like an adult?
02:38:22FromDiscord<Zachary Carter> I was referring to you and Simula
02:38:34FromDiscord<Zachary Carter> and how you're handling this
02:38:34*muffindrake joined #nim
02:38:44BornInWinterYou're the one who refuses to answer a question
02:38:59FromDiscord<Zachary Carter> I've already answered it several times, you only hear what you want to hear, and that isn't something I can help
02:39:02FromDiscord<KingDarBoja> He already answered man
02:39:07BornInWinterWhat has Simula done that others have not? From my POV, SImula was polite and mature, right up until other uses started insulting behind their back
02:39:11BornInWinterno, you lied several times
02:39:13FromDiscord<KingDarBoja> Please move to offtopic channel
02:39:25FromDiscord<Zachary Carter> I didn't lie - I can go pull links to IRC logs just like you can
02:39:27BornInWinterSimula started nothing. Yard and Beef did
02:39:30BornInWinterdo it, fam
02:39:36FromDiscord<Elegant Beef> I did something?
02:39:38FromDiscord<Zachary Carter> I'm not your fam
02:39:43BornInWinterplease, go right ahead my guy
02:39:48FromDiscord<Zachary Carter> I'm not your guy either
02:39:52FromDiscord<Zachary Carter> and Simula isn't getting unbanned
02:39:53BornInWinterI tried to do that earlier and you said you wouldn't read, bro
02:39:58FromDiscord<JackFly26> ok what does the error ```nim↵Error: A nested proc can have generic parameters only when it is used as an operand to another routine and the types of the generic paramers can be inferred from the expected signature.```
02:39:59FromDiscord<KingDarBoja> BornInWinter: Simula can reply on IRC, let him speak if so
02:40:11FromDiscord<Elegant Beef> Hey guys, shut the fuck up, actual nim problems
02:40:12FromDiscord<JackFly26> mean
02:40:16BornInWinterNow you're just being a transphobic asshole
02:40:26BornInWinterI have corrected you multiple times
02:40:35BornInWinterAnd you have acknowledged that
02:40:36FromDiscord<Zachary Carter> BornInWinter is Simula just FYI folks
02:40:45FromDiscord<Elegant Beef> Yea i can do 2+1 = 4
02:40:56FromDiscord<KingDarBoja> Wtf has to do transphobic lol
02:40:58*cyraxjoe quit (Ping timeout: 256 seconds)
02:41:01FromDiscord<flywind> I find `gdb` can't print beautiful variables. I can use `nim-gdb` in windows. But I have issues in using `nim-gdb` in ubuntu.
02:41:07BornInWinterYou continue to misgender a trans person despite the corrections
02:41:13*cyraxjoe joined #nim
02:41:17FromDiscord<Elegant Beef> you didnt change the pronoun which is apparently considered transphobic although you didnt discriminate
02:41:19FromDiscord<Elegant Beef> So...
02:41:24*notandinus quit (Quit: ERC (IRC client for Emacs 26.3))
02:41:30BornInWintermisgendering is discrimination, thanks for playing
02:41:35FromDiscord<Elegant Beef> Actually it's not
02:42:00BornInWintersure buddy
02:42:01FromDiscord<Zachary Carter> Do we have no US IRC mods?
02:42:14disruptekjackfly26 it means that nim needs some way to infer types of generic parameters.
02:42:23FromDiscord<Zachary Carter> disruptek: are you not an IRC mod?
02:42:30disruptekare you kidding?
02:42:34FromDiscord<Zachary Carter> lol
02:42:35BornInWinterWondering why the discord allows transphobia but not... getting mad at people for insults
02:42:51disrupteki'm not trusted to operate scissors myself.
02:42:57disrupteki have to have my mom cut my steak.
02:43:02disruptekfuck no, i don't have ops.
02:43:06FromDiscord<Elegant Beef> Does she chew it for you too?
02:43:14disruptekwhen i'm lucky.
02:43:15FromDiscord<Zachary Carter> regurgitates it into his mouth
02:43:54BornInWinterConsider that Simula simply asked to not be bothered, and your refusal to honor that has allowed this to spiral out of control
02:44:06FromDiscord<KingDarBoja> 🧐
02:44:07BornInWinterSo what've they done, zach, my guy?
02:44:20FromDiscord<Rika> We're still at this topic?
02:44:29FromDiscord<Elegant Beef> I mean, the issue was made, and was being addressed, there was no reason to act like a GUI element is causing distress that needed to be addressed
02:44:29BornInWinterdo y'all also allow slurs in this server, or just the misgendering?
02:44:33FromDiscord<Zachary Carter> Well Simula is BornInWinter - I banned Simula from discord
02:44:41FromDiscord<KingDarBoja> I moved everyone to offtopic Rika-sensei
02:44:44BornInWinterfor what?
02:44:48FromDiscord<Zachary Carter> and we don't have any ops in IRC atm to ban BornInWinter
02:45:06FromDiscord<KingDarBoja> We don't care about gender
02:45:09BornInWinterWhat did sim do to be banned that others haven't done? why do you allow transphobia?
02:45:12FromDiscord<KingDarBoja> We care about code
02:45:17FromDiscord<Elegant Beef> There hasnt been any transphobia
02:45:17BornInWintersure bud
02:45:20shashlickhow come #nim-offtopic needs users to be registered but not #nim
02:45:25BornInWintermisgendering is transphobia, child
02:45:29disruptekit's a fair question.
02:45:30FromDiscord<Elegant Beef> > Transphobia encompasses a range of negative attitudes, feelings or actions toward transgender people or transness in general.
02:45:37FromDiscord<KingDarBoja> You are being childish
02:45:44BornInWinterhttps://en.wikipedia.org/wiki/Transphobia
02:45:48FromDiscord<Elegant Beef> Misgendering is not negative attitude, simply just the way people speak
02:45:51BornInWinteryou are misgendering a trans person, my guy
02:45:54FromDiscord<KingDarBoja> Yup
02:45:57BornInWinterwords have multiple meanings, pedant
02:46:06FromDiscord<KingDarBoja> No one ever know You we're trans
02:46:06disruptekmaybe yard is asleep. i guess this is a good wake up call.
02:46:07FromDiscord<Rika> What the hell
02:46:19FromDiscord<KingDarBoja> And we don't care
02:46:21FromDiscord<Elegant Beef> People call inanimate gendered pronouns
02:46:23BornInWinterking, youve misgendered knowingly, multiple times
02:46:26FromDiscord<Zachary Carter> Araq dom96
02:46:33disruptekthat we need to figure out ops and bridge buckets and whatnot.
02:46:35FromDiscord<Elegant Beef> Weirdly people prefer using gendered pronouns
02:46:36FromDiscord<Zachary Carter> @Yardanico
02:46:40BornInWinterwhy do you allow transphobia, zach?
02:46:42FromDiscord<Zachary Carter> need some IRC mod pronto
02:46:47FromDiscord<Elegant Beef> God
02:46:47BornInWinterwhy do you allow transphobia, zach?
02:46:48FromDiscord<KingDarBoja> Please stop this Simula or BornInWinter
02:46:54BornInWinterthen stop misgendering
02:46:57BornInWinterwhy do you allow transphobia, zach?
02:46:59FromDiscord<Rika> It's probably a mistake, we didn't even know you were trans
02:47:06disrupteki mean, it's fine for irc people. just switch to irc.
02:47:08BornInWinteri corrected him multiple times, rika
02:47:09FromDiscord<Zachary Carter> just stop feeding the troll
02:47:16FromDiscord<Rika> Who is he
02:47:17FromDiscord<Elegant Beef> Anywho
02:47:18FromDiscord<Elegant Beef> Nim
02:47:20FromDiscord<KingDarBoja> He thinks that we should refer to him as "They"
02:47:23FromDiscord<Zachary Carter> BornInWinter = Simula
02:47:26BornInWinterwhy do you allow transphobia, zach?
02:47:27BornInWinterwhy do you allow transphobia, zach?
02:47:27FromDiscord<KingDarBoja> Yup
02:47:27BornInWinterwhy do you allow transphobia, zach?
02:47:28BornInWinterwhy do you allow transphobia, zach?
02:47:29BornInWinterwhy do you allow transphobia, zach?
02:47:29FromDiscord<Rika> @KingDarBoja and why not
02:47:29BornInWinterwhy do you allow transphobia, zach?
02:47:30FromDiscord<KingDarBoja> Ignore him
02:47:30BornInWinterwhy do you allow transphobia, zach?
02:47:31BornInWinterwhy do you allow transphobia, zach?
02:47:34BornInWinterwhy do you allow transphobia, zach?
02:47:34BornInWinterwhy do you allow transphobia, zach?
02:47:35BornInWinterwhy do you allow transphobia, zach?
02:47:35BornInWinterwhy do you allow transphobia, zach?
02:47:36BornInWinterwhy do you allow transphobia, zach?
02:47:37BornInWinterwhy do you allow transphobia, zach?
02:47:38BornInWinterwhy do you allow transphobia, zach?
02:47:38BornInWinterwhy do you allow transphobia, zach?
02:47:39BornInWinterwhy do you allow transphobia, zach?
02:47:39BornInWinterwhy do you allow transphobia, zach?
02:47:40BornInWinterwhy do you allow transphobia, zach?
02:47:40BornInWinterwhy do you allow transphobia, zach?
02:47:41BornInWinterwhy do you allow transphobia, zach?
02:47:43BornInWinterwhy do you allow transphobia, zach?
02:47:43BornInWinterwhy do you allow transphobia, zach?
02:47:44BornInWinterwhy do you allow transphobia, zach?
02:47:44BornInWinterwhy do you allow transphobia, zach?
02:47:45BornInWinterwhy do you allow transphobia, zach?
02:47:45BornInWinterwhy do you allow transphobia, zach?
02:47:46BornInWinterwhy do you allow transphobia, zach?
02:47:46BornInWinterwhy do you allow transphobia, zach?
02:47:47BornInWinterwhy do you allow transphobia, zach?
02:47:47BornInWinterwhy do you allow transphobia, zach?
02:47:57FromDiscord<Rika> Someone contact an official freenode mod
02:47:59BornInWinterwhy do you allow transphobia, zach?
02:47:59BornInWinterwhy do you allow transphobia, zach?
02:48:00BornInWinterwhy do you allow transphobia, zach?
02:48:00BornInWinterwhy do you allow transphobia, zach?
02:48:01BornInWinterwhy do you allow transphobia, zach?
02:48:01BornInWinterwhy do you allow transphobia, zach?
02:48:02BornInWinterwhy do you allow transphobia, zach?
02:48:02BornInWinterwhy do you allow transphobia, zach?
02:48:03BornInWinterwhy do you allow transphobia, zach?
02:48:03BornInWinterwhy do you allow transphobia, zach?
02:48:04BornInWinterwhy do you allow transphobia, zach?
02:48:04BornInWinterwhy do you allow transphobia, zach?
02:48:05BornInWinterwhy do you allow transphobia, zach?
02:48:05BornInWinterwhy do you allow transphobia, zach?
02:48:06BornInWinterwhy do you allow transphobia, zach?
02:48:06FromDiscord<Zachary Carter> on it
02:48:06BornInWinterwhy do you allow transphobia, zach?
02:48:07BornInWinterwhy do you allow transphobia, zach?
02:48:07BornInWinterwhy do you allow transphobia, zach?
02:48:10disruptekthat's a smart idea.
02:48:29*BornInWinter quit (Remote host closed the connection)
02:48:37disrupteklol
02:48:45FromDiscord<Rika> @KingDarBoja legitimately, why not call them a they then what?
02:49:07disruptekboy, this person really makes me look good. and i LOVE that about them.
02:49:19FromDiscord<Zachary Carter> lol
02:49:20FromDiscord<KingDarBoja> Rika: because I usually call everyone "he"
02:49:23FromDiscord<Zachary Carter> you're a saint in comparison
02:49:33*zacharycarter joined #nim
02:49:34FromDiscord<KingDarBoja> "they" are to refer to several people
02:49:45FromDiscord<KingDarBoja> Unless he is a "she"
02:49:50FromDiscord<KingDarBoja> Period.
02:49:52FromDiscord<Zachary Carter> I guess they got themself kicked?
02:49:53disruptekdon't you remember when Simula used to hang out here?
02:50:35FromDiscord<Zachary Carter> okay, back to Nim discussion please - offtopic for whatever else
02:50:42disruptekFern & Simula (They/Them)
02:50:44FromDiscord<Rika> dunno, that sounds kinda dated as a method, but w/e
02:50:54FromDiscord<Rika> careful with pronouns for certain people
02:51:00FromDiscord<Zachary Carter> go talk about pronouns in offtopic please
02:51:04FromDiscord<Rika> some of them are really toucy about it
02:51:17FromDiscord<KingDarBoja> Agreed. Period. Back to Nim
02:51:58nisstyredoes nim have a way of doing dynamically scoped variables?
02:52:41bung`block:` ?
02:53:00nisstyrewill that reset to the previous value once you leave it?
02:53:12nisstyreI'm thinking something similar to (parameterize) in racket, or parameters in haskell
02:53:25FromDiscord<Elegant Beef> well if you declare a variable inside of a block it will use that variable instead of the outside one afaik
02:53:34FromDiscord<Elegant Beef> so the outside one isnt touched
02:53:36nisstyrehmm, that could work
02:53:52nisstyreI was thinking of porting a thing I did in Racket to Nim
02:54:16FromDiscord<Elegant Beef> Small example↵https://play.nim-lang.org/#ix=2qGm
02:54:28nisstyreit's a DSL for scripting ssh stuff, and you can do like (cd blah (foo working-dir)) and it gets reset once you leave that block
02:54:48nisstyrevery much similar to ansible, but without the yaml crap
02:55:07FromDiscord<Elegant Beef> there is a nim dsl for shell
02:55:23bungyou mean you want some like js scope lookup chain?
02:55:30nisstyreno
02:55:32FromDiscord<Elegant Beef> https://github.com/Vindaar/shell
02:55:35FromDiscord<Elegant Beef> If curiousu
02:56:08*vicfred quit (Quit: Leaving)
02:56:52FromDiscord<Elegant Beef> Dont recall if this DSL does actually support that return after
02:56:53*rockcavera quit (Remote host closed the connection)
02:57:10nisstyreso this isn't dynamic scope
02:57:13nisstyrehttps://play.nim-lang.org/#ix=2qGn
02:57:23nisstyreit should be 12 10
02:57:26nisstyrenot 10 10
02:57:28nisstyreif it were dynamically binding it
02:57:34FromDiscord<Elegant Beef> Well no you're using global scoped A
02:57:44nisstyreright, it's not dynamically scoped
02:57:52nisstyreit's global
02:57:54nisstyreor lexical
02:58:01FromDiscord<Elegant Beef> The block just indents and redeclares the variable
02:58:15nisstyreyou'd need some new syntax to say 'a' is dynamic
02:58:26FromDiscord<Elegant Beef> well you could make a macro like defer
02:58:35nisstyreyeah I just don't know how I'd do that
02:59:22FromDiscord<Elegant Beef> Well the way i write macros is i use `dumptree` and write the desired code inside
02:59:27FromDiscord<Elegant Beef> then replicate that with nodes 😄
02:59:53nisstyreI meant more how I would actually make it work
03:00:04nisstyrethere are some considerations you'd have to make
03:00:17nisstyrelike where the previous value gets stored
03:00:22nisstyreand how it interacts with threads
03:00:35FromDiscord<Elegant Beef> Well that's why i didnt care, threads 😄
03:01:05nisstyreprobably it would be thread local
03:02:11FromDiscord<Elegant Beef> Yea no clue
03:03:28disruptekuse a dirty template.
03:04:03disruptekhttps://play.nim-lang.org/#ix=2qGo
03:04:21nisstyredisruptek: clever
03:04:43disrupteki really don't like to use them.
03:05:12nisstyreI'm not sure if it would be a really bad idea to use
03:05:46nisstyreif I controlled all call sites somehow it might be safe
03:06:08disruptekaraq made me use a dirty template in the compiler and i swear i aged 3 years in only 30 files.
03:06:36FromGitter<ynfle> The compiler should be called the templater
03:06:53disruptekit's one of those things that's fine 90% of the time.
03:06:57disruptekyeah, no thanks, boss.
03:07:02FromDiscord<Elegant Beef> The compiler should be called the evaluator
03:07:08FromDiscord<Elegant Beef> We can continue this regression!
03:10:54FromGitter<ynfle> What's the difference between `nnkStmtList`, `nnkStmtListExpr` & `nnkStmtListType`?
03:16:05*MightyJoe joined #nim
03:16:21nisstyredisruptek: basically something like this https://ideone.com/W11UFB
03:16:25*cyraxjoe quit (Ping timeout: 264 seconds)
03:16:39nisstyreI wonder if this would be possible to do sanely in Nim
03:16:49nisstyresorry for bad indentation
03:17:04disruptekseems pretty trivial.
03:17:28disruptekbut... why?
03:17:31FromDiscord<Technisha Circuit> I'm planning to implement a way to use braces in Nim today-
03:17:44nisstyredisruptek: do make a DSL like this for sysadmin stuff is one example https://github.com/weskerfoot/Bolt
03:17:58nisstyrebut not necessarily the only thing you could do
03:18:44nisstyreI think dirty templates would be the way to do it
03:18:53disruptekyikes.
03:19:33disruptekmaybe you should look at commandant.
03:19:38disruptek!repo commandant
03:19:39disbothttps://github.com/Varriount/commandant -- 9commandant: 11Bash/Command Prompt-Like Program Written in Nim 15 7⭐ 1🍴
03:20:00nisstyrehmm, I wouldn't need an entire shell though
03:20:12nisstyrealthough this could be the underlying basis for executing tasks
03:21:03disrupteki'm more about the logic behind cfengine for this sort of thing.
03:21:05nisstyrethe thing I did just has a really crappy "compiler" to bash
03:21:12nisstyreI basically abandoned it
03:21:18nisstyrebut I was interested in maybe resurrecting it in Nim
03:21:38disruptekhonestly, i'd just write what you need and grow it organically.
03:21:44nisstyreyeah true
03:21:55disruptekthese things are usually a waste of time ime.
03:21:59FromDiscord<Elegant Beef> Tell me something that grows, inorganically 😄
03:22:18disruptekmost of the shit you write, boof.
03:22:20disrupteker, beef.
03:22:27FromDiscord<JackFly26> depends on the definition of organically
03:22:36nisstyredisruptek: it might be worth it to have a Nim DSL as a shell though
03:22:38FromDiscord<Technisha Circuit> (boof-)
03:22:39FromDiscord<Elegant Beef> 110% of what i write is shit so...
03:22:44nisstyreif you want to write Nim instead of bash
03:23:00disruptekwhat is this DSL of which you speak?
03:23:12nisstyreI mean use Nim as your shell
03:23:24disruptekyes, i want to write nim instead of shell.
03:23:25nisstyrelike an interpreter
03:23:28disrupteki do so frequently.
03:23:37nisstyreinteractively?
03:23:46disruptekyou can use inim, `nim secret`, or nimscript.
03:23:53nisstyrefair enough
03:24:01FromDiscord<JackFly26> so is a type mismatch between `Parser[proc (x: int): int{.noSideEffect, gcsafe, locks: 0.}]` and `Parser[proc (x: T): U{.closure.}]` a calling convention thing?
03:24:19disrupteki personally prefer to write startProcess ... because it gives me control at modest expense.
03:24:42leorizeok, I'm a bit out of the loop, but what the hell is #14876?
03:24:43disbothttps://github.com/nim-lang/Nim/issues/14876 -- 3Please revert my commit
03:24:55nisstyredisruptek: how do I get out of `nim secret` ?
03:25:01FromDiscord<impbox> @mattrb you might need to setupForeignThreadGC()
03:25:01disruptek!last leorize
03:25:02disbotleorize spoke in 12#nim 18 seconds ago 12https://irclogs.nim-lang.org/02-07-2020.html#03:24:43
03:25:09disruptekleorize: read today's logs.
03:25:12FromDiscord<Elegant Beef> Leorize it's a shitshow
03:25:15FromDiscord<flywind> Maybe this helps in writing a shell https://www.oilshell.org/blog/2018/01/28.html
03:25:15disrupteklike, the last 12hrs.
03:25:17FromDiscord<Elegant Beef> Have fun leorize
03:25:23disrupteknisstyre: dunno, i don't use it.
03:25:34nisstyreI just tried it and I can't exit without killing it lol
03:25:39nisstyreeven Ctrl+d doesn't work
03:25:44disruptekquit(0)
03:25:52FromDiscord<impbox> @mattrb when using SDL2's audiocallback it runs in a separate thread
03:25:55*slackytude[m] joined #nim
03:25:55nisstyrethat makes sense
03:25:59disrupteki mean, that's what i'd try.
03:26:03disrupteki've never run it.
03:26:13nisstyreyeah that works
03:26:42disruptekJackFly: dude, those signatures don't match. not even close.
03:27:57leorizeok I've just scrolled up a bit and this looks messed up
03:28:07FromDiscord<Elegant Beef> It is indeed
03:28:27FromDiscord<JackFly26> are they that different
03:28:32FromDiscord<JackFly26> theyre both a proc
03:28:39FromDiscord<JackFly26> and they both take one argument
03:28:44FromDiscord<JackFly26> one is just generic
03:30:04FromDiscord<Elegant Beef> Generic != int
03:30:53FromDiscord<JackFly26> well i put them backwards
03:30:58FromDiscord<JackFly26> so one should fit into the other
03:31:12FromDiscord<JackFly26> as in a proc from int to int should fit in a proc from T to U
03:31:29FromDiscord<JackFly26> if my understanding is correct
03:34:21FromDiscord<Rika> the issue is the pragmas not the type
03:34:38*waleee-cl quit (Quit: Connection closed for inactivity)
03:34:42FromDiscord<JackFly26> thats what i figured
03:34:50FromDiscord<JackFly26> im not sure how to make them compatible tho
03:35:15FromDiscord<JackFly26> i define the int -> int one like `pure(proc(x: int): int = x + 1)`
03:35:19FromDiscord<JackFly26> with sugar imported
03:35:24FromDiscord<JackFly26> wait
03:35:29FromDiscord<JackFly26> i removed the sugar for testing
03:35:46FromDiscord<JackFly26> and that goes into `lhs: Parser[proc(x: T): U]`
03:38:31Zevvwow that was a rough night on #nim
03:38:39Zevvwas there a drunk majority?
03:38:58disruptekmornin' zevv?
03:39:27nisstyreZevv: I'm drunk right now but I don't remember causing any drama
03:39:40disruptekthat's some good shit you're drinkin'.
03:41:26ZevvI cant remember this channel exhausing my scrollback buffer in one night
03:41:26*thomasross quit (Ping timeout: 260 seconds)
03:41:43disruptekyour buffer needs a breather, huh?
03:41:57Zevvso about this cps
03:42:19FromDiscord<JackFly26> how can i get the pragmas to line up?
03:42:22Zevvyou love this shit, right
03:42:58FromDiscord<JackFly26> oh i can just put {.closure.} when im not using the sugar
03:43:40FromDiscord<JackFly26> i would like a solution that doesnt involve that though
03:48:51FromDiscord<JackFly26> is there a way to do automatic currying on a proc?
03:49:04FromDiscord<flywind> I pass compilation in devel.
03:49:08FromDiscord<flywind> sent a long message, see http://ix.io/2qGu
03:49:13leorizewe don't really do currying over here
03:49:24leorizesince that requires closures and closures are slow :P
03:49:39leorizebut there are a few fp libs iirc
03:52:12FromDiscord<JackFly26> makes sense
03:52:24FromDiscord<JackFly26> but im trying to make an applicative-style parser combinator lib
03:52:30FromDiscord<JackFly26> which uses currying
03:52:35disruptekZevv: cps wut
03:52:54FromDiscord<JackFly26> and im kinda doing `(proc(x: int): proc(y: int): int {.closure.} =↵ return proc(y: int): int {.closure.} = x + y)` rn
03:52:58leorize!repo func
03:52:59disbothttps://github.com/FedericoCeratto/wave_function_collapse -- 9wave_function_collapse: 11Wave function collapse library for Nim 15 9⭐ 0🍴 7& 1 more...
03:53:01FromDiscord<JackFly26> which i feel could be done better
03:53:14leorizeok I don't know if we have any library ready for this :P
03:53:21FromDiscord<JackFly26> ok lol
03:53:31leorizebut if we don't you have to do it yourself :p
03:53:38FromDiscord<JackFly26> yeah
03:53:48FromDiscord<JackFly26> i mean this is what i get for trying to code nim like haskell
03:54:01disruptekit's not a big deal to write it.
03:54:17FromDiscord<JackFly26> its just a macro but im not too good at macros
03:54:30disruptekdon't overthink it.
03:55:06FromDiscord<JackFly26> wdym
03:56:01leorizemacros are "easy" to write, just dumpTree the AST you'd like to generate/process then replicate it :P
03:56:19FromDiscord<JackFly26> well yeah
03:56:26FromDiscord<JackFly26> but i just havent really used them
03:56:55disrupteki have still never done it that one. i guess i'm the idiot.
03:57:13disruptekgood to know i'll have a job in some village, somewhere...
03:57:35FromDiscord<JackFly26> what lib is dumptree in
03:57:46FromDiscord<JackFly26> oh
03:58:42FromDiscord<JackFly26> its not dumping?
03:58:45FromDiscord<JackFly26> am i doing this wrong
03:59:54*zedeus quit (Read error: Connection reset by peer)
04:00:00*zedeus_ joined #nim
04:00:24FromDiscord<Zachary Carter> macros I think?
04:00:35FromDiscord<JackFly26> i imported macros
04:00:38FromDiscord<JackFly26> its just not printing
04:00:42FromDiscord<Zachary Carter> echo it
04:00:50FromDiscord<Rika> you dont need to echo a dumptree
04:00:53FromDiscord<Zachary Carter> oh
04:00:53FromDiscord<JackFly26> yeah
04:00:59FromDiscord<JackFly26> its supposed to print by itself
04:01:03FromDiscord<Rika> it outputs during compilation
04:01:11FromDiscord<JackFly26> does nimble break that?
04:02:18FromDiscord<JackFly26> no it doesnt even work on the playground
04:02:39FromDiscord<JackFly26> wait
04:02:44FromDiscord<Rika> press "output" in playground
04:02:44FromDiscord<JackFly26> it works if i switch to debug
04:02:47FromDiscord<Rika> yeah
04:02:49FromDiscord<JackFly26> got it
04:02:55FromDiscord<Rika> debug shows compilation output
04:03:00FromDiscord<Rika> output shows runtime output
04:03:05FromDiscord<JackFly26> what is Par
04:04:26FromGitter<ynfle> Parentheses node
04:04:40FromGitter<ynfle> Like (1+1) /2
04:04:53FromDiscord<JackFly26> ok
04:05:01FromDiscord<JackFly26> seems weird that that needs to be a node
04:05:15*justsomeguy joined #nim
04:05:42FromGitter<ynfle> What else should it be?
04:06:02*supakeen quit (Quit: WeeChat 2.8)
04:06:10FromDiscord<JackFly26> sent a code paste, see https://play.nim-lang.org/#ix=2qGx
04:06:18FromDiscord<JackFly26> the tree structure itself shows the precedence
04:06:40*supakeen joined #nim
04:07:13FromGitter<ynfle> `dumpTree` is untyped
04:07:19leorizeturns out Nim don't use special nodes like those :)
04:07:29FromDiscord<JackFly26> wdym
04:07:31*BlameTheRoomba quit (Quit: Default Quit Message)
04:07:35leorizeall of our operators are just procs
04:07:44FromDiscord<JackFly26> well yeah ik
04:07:47FromDiscord<JackFly26> i just made it simple
04:08:18FromDiscord<JackFly26> it could easily be replaced with something like `Infix (Ident "/")`
04:08:19leorizedumpTree print the real AST, not a prettified version of it :P
04:08:49FromDiscord<JackFly26> still, a Par node shouldnt be needed
04:09:00FromDiscord<Elegant Beef> Why not
04:09:15FromDiscord<JackFly26> because the actual tree structure shows the precedence
04:09:23FromDiscord<JackFly26> just put the addition lower in the tree
04:09:23leorizeit doesn't
04:09:38FromDiscord<Elegant Beef> but the parnode can be anywhere unrelated to math
04:09:57FromDiscord<JackFly26> but its there to distinguish precedence, right?
04:10:00leorizenope
04:10:02FromDiscord<JackFly26> which isnt needed in a tree
04:10:04FromGitter<ynfle> https://play.nim-lang.org/#ix=2qGy
04:10:06leorizeit's there because you wrote it in :)
04:10:44FromDiscord<JackFly26> oh so is the Par thing not actually in the AST?
04:10:50FromDiscord<Elegant Beef> sent a code paste, see https://play.nim-lang.org/#ix=2qGA
04:10:53leorizeit's in the AST
04:11:00FromDiscord<Elegant Beef> That's a normally defined (int,int)
04:11:10FromDiscord<Elegant Beef> but if you so wished inside the macro you could take that as whatever you want
04:11:27leorizethe AST from dumpTree is basically what the compiler sees :)
04:11:40leorizeit's untyped by default, meaning that the compiler has not acted on it yet
04:11:47FromDiscord<JackFly26> oh
04:11:55FromDiscord<JackFly26> but even then
04:12:05FromDiscord<JackFly26> im not entirely sure
04:12:06FromDiscord<JackFly26> idk
04:12:12FromDiscord<JackFly26> im not on the compiler team
04:12:18FromDiscord<JackFly26> or any team
04:12:19leorizethis preserves almost everything from the written code, which helps when you're writing some advanced macros :)
04:12:20FromDiscord<JackFly26> :)
04:12:31leorizeit's really just data preservance :)
04:12:32nisstyrethe compiler would still need to know there was a parenthesized node for infix parsing
04:12:38FromGitter<ynfle> @JackFly26 `("hello" + name + "world").replace("a", "b")`
04:12:41nisstyrewhich would happen later usually
04:12:51FromGitter<ynfle> Not about precedence over there
04:12:54nisstyre* precedence parsing I should say
04:13:10nisstyrewhat do you mean
04:13:11leorize@ynfle that's invalid nim :P
04:13:20nisstyreyeah, and & still has a precedence
04:13:25nisstyreit just doesn't really matter as often
04:13:30FromDiscord<JackFly26> well thats what im saying; the parens dont need to be in the ast to show precedence
04:13:39nisstyreyes they do
04:13:44FromDiscord<JackFly26> the actual structure of the AST shows the precedence
04:13:51nisstyreonly after precedence parsing takes place
04:14:07FromDiscord<JackFly26> does that happen later?
04:14:08nisstyre1 + 2 * 3 / (4 - 6)
04:14:11nisstyrefor example
04:14:21leorizefwiw the AST structure doesn't show any precedence :)
04:14:22FromDiscord<Rika> well its more complicated for the "first pass" to swap the places of nodes instead of putting a par node
04:14:25nisstyreif you just parse that into a tree without taking into account precedence
04:14:27nisstyreyou get something wrong
04:14:39FromDiscord<JackFly26> i know
04:14:48FromDiscord<JackFly26> but once the parsing is finished
04:14:52FromDiscord<JackFly26> including precedence
04:14:54nisstyrethen it does another pass I guess
04:14:59nisstyreas was mentioned
04:15:02FromDiscord<JackFly26> i guess
04:15:10nisstyrepersonally not how I would do it
04:15:14nisstyrebut it doesn't really matter much
04:15:14leorizenote that precedance doesn't happen until the semantic check pass happens
04:15:21FromDiscord<JackFly26> seems weird to do operator precedence on teh second pass
04:15:22leorizewhich won't until later in the compile stage
04:15:24FromDiscord<JackFly26> oh that makes sense
04:15:36FromDiscord<JackFly26> seems weird that it doesnt happen earlier
04:15:45FromDiscord<JackFly26> probably has to do with user-defined ops
04:15:56leorizeif semcheck happen earlier some macro-possible code will not work :)
04:16:16FromDiscord<JackFly26> like stuff that reorders precedence?
04:16:16leorizesince a lot of constructs used in advanced macros are invalid Nim constructs
04:16:23leorizeso semchecking them is impossible
04:16:25FromDiscord<JackFly26> makes sense
04:16:40FromDiscord<JackFly26> well yeah semcheck happening after makes sense
04:16:52FromDiscord<JackFly26> it just seems weird that precedence parsing is part of semcheck
04:16:52nisstyrethat's the macro expansion phase, it makes sense to do that as early as possible
04:17:10leorizeit's not really precedence perse
04:17:17leorizennkPar have more use than just precedence
04:17:17FromDiscord<JackFly26> ok
04:17:24FromDiscord<JackFly26> aight
04:17:31FromDiscord<JackFly26> i kinda get why its like that now
04:17:32FromDiscord<JackFly26> thanks
04:17:36leorizefor example, nnkPar is also the tuple constructor :)
04:17:47FromDiscord<JackFly26> oh cool
04:17:51nisstyreis , an infix operator then?
04:18:05FromDiscord<JackFly26> also why does lambda have a bunch of empty args
04:18:29FromDiscord<JackFly26> actually why does everything have empties
04:18:41FromDiscord<JackFly26> is that for pragmas and stuff that isnt there?
04:19:00FromGitter<ynfle> It's a RoutineDef
04:19:14FromDiscord<JackFly26> that doesnt help me sorry
04:19:15FromDiscord<JackFly26> is there a spec on ast nodes somewhere i can look at?
04:19:34FromGitter<ynfle> Yes https://nim-lang.org/docs/macros.html
04:19:42FromDiscord<Elegant Beef> Shit 1 second late!
04:19:58FromDiscord<JackFly26> thx
04:20:01*marnix joined #nim
04:20:27FromGitter<ynfle> Specifically https://nim-lang.org/docs/macros.html#statements-procedure-declaration
04:20:49leorize~macro
04:20:50disbotno footnotes for `macro`. 🙁
04:20:52leorize~macros
04:20:52disbotno footnotes for `macros`. 🙁
04:21:44FromGitter<ynfle> RoutineDef Tree: ⏎ Ident | Postfix(\*, Ident) (proc name) ⏎ Empty # Related to Term rewriting macros which are not supported ⏎ Empty | GenericParams ⏎ ... [https://gitter.im/nim-lang/Nim?at=5efd60d8fa0c9221fc72659e]
04:21:56FromGitter<ynfle> Those are my notes based off of the docs
04:23:02FromDiscord<Elegant Beef> In my experience just writting the code then using dumptree teaches a ton
04:23:03FromGitter<ynfle> Sorry the indentation got ruined
04:23:04FromGitter<ynfle> https://play.nim-lang.org/#ix=2qGD
04:24:16FromDiscord<Elegant Beef> I dont know how to learn the advanced stuff though 😛
04:28:16leorizenisstyre: `,` is not an infix op
04:28:24leorizeit's not even an op actually :P
04:29:31FromDiscord<JackFly26> is it just used to aid parsing here
04:29:49leorizeit's a token separator, yea
04:30:08leorize(more than just token, but you get the idea) :P
04:41:49FromDiscord<flywind> https://dev.to/xflywind/sweet-sweet-sweeeeeet-nim-nh9
04:44:17FromDiscord<KingDarBoja> 👍 🙂
04:44:29FromDiscord<KingDarBoja> Too Bad Mobile sucks hahaha
04:44:35FromDiscord<KingDarBoja> Mobile view*
04:45:26FromDiscord<flywind> @KingDarBoja Thanks. I spend the whole morning writing this article.😜
04:46:01FromDiscord<Chiqqum_Ngbata> Nice @flywind
04:46:27FromDiscord<Elegant Beef> Yea nice article
04:47:40FromDiscord<flywind> Sorry for mobile view. I don't other platforms is suitable for articles. I try medium, but its experience is bad.
04:47:40FromDiscord<flywind> Thanks @Elegant Beef @Chiqqum_Ngbata
04:47:40FromDiscord<KingDarBoja> Make your own blog(?)
04:48:03*NimBot joined #nim
04:48:05FromDiscord<KingDarBoja> That too
04:48:48FromDiscord<KingDarBoja> I know there is one from the NimConf btw
04:48:56FromDiscord<Rika> ngl, you need a proofreader
04:48:56FromDiscord<KingDarBoja> I forgot the name x↵X
04:49:05FromDiscord<KingDarBoja> (edit) 'x↵X' => 'x.x'
04:49:42FromDiscord<Elegant Beef> Yea as rika pointed out there are many gramatic/spelling errors
04:49:52FromDiscord<Elegant Beef> And that's coming from me! 😄
04:50:23FromDiscord<flywind> I can't avoid it, because I'm not a native speaker.
04:50:37FromDiscord<Elegant Beef> I mean shoot it over to someone that is 😄
04:50:45FromDiscord<KingDarBoja> I understood it so that's what matters
04:50:49FromDiscord<KingDarBoja> 😄
04:51:04FromDiscord<KingDarBoja> But I slighty dislike dev.to hahahah
04:51:37FromDiscord<Elegant Beef> Also you need to quote words less
04:51:40FromDiscord<Rika> maybe ask a friend to help you with the grammar errors
04:51:43FromDiscord<KingDarBoja> I need to get my free time projects more attention x.x
04:52:12FromDiscord<Elegant Beef> > This will cause a "war"...↵> Why is Nim so "sweet"?
04:53:17FromDiscord<flywind> I mean it is not really, so I use quote.
04:53:32FromDiscord<Elegant Beef> Yea but not actually being doesnt really need to be quotes
04:53:45FromDiscord<treeform> It appears that discord users out number the irc users now....
04:54:04FromDiscord<Elegant Beef> Since in english things arent always literal
04:54:41FromDiscord<Elegant Beef> Plus in english sweet can mean awesome or cool, so even with the non flavour related sweet it's fine
04:55:01FromDiscord<KingDarBoja> _Toasty_
04:55:15FromDiscord<flywind> Sorry for my poor English. Thanks for your advice. @Elegant Beef
04:55:25FromDiscord<flywind> I will change it.
04:55:33FromDiscord<Elegant Beef> Dont apologize, i dont apologize when i write bad nim code 😄
04:55:47FromDiscord<KingDarBoja> https://media.discordapp.net/attachments/371759389889003532/728111654985793636/5130faf81b5b1c16c6b798cea7b5466e389dfe07_00.jpg
04:56:00FromDiscord<KingDarBoja> If You didnt catch the joke
04:56:31FromDiscord<KingDarBoja> @flywind You good mate, no need to apologize
04:57:02FromDiscord<flywind> 😜
04:57:17FromDiscord<Yardanico> What is going on this morning
04:57:24FromDiscord<Yardanico> I didn't expect to wake up to this
04:57:26FromDiscord<KingDarBoja> Yard: nothing
04:57:27FromDiscord<Elegant Beef> Also in the image you included you massively mispelled `favourite`
04:57:38FromDiscord<Yardanico> @KingDarBoja yeah don't worry I already read most context
04:57:45FromDiscord<Elegant Beef> `faviourite`
04:57:46FromDiscord<KingDarBoja> Favourite is british afaik
04:57:53FromDiscord<Elegant Beef> not massively but meh
04:58:01FromDiscord<Elegant Beef> Well non American
04:58:16FromDiscord<Elegant Beef> in anything but US english it'll be `our`
04:58:21FromDiscord<Elegant Beef> but they have a second `I`
04:58:26*team\andinus joined #nim
04:59:10FromDiscord<Yardanico> And I don't have op rights in Nim IRC anyway @Zachary Carter . There are actually commands to ban people in Discord from IRC, but not the other way
04:59:23FromDiscord<flywind> @Elegant Beef Nice catch. I hurry to finish and don't notice it.🤣
04:59:27FromDiscord<Chiqqum_Ngbata> "favorite" is how it's spelled in American English (in case it's unclear to flywind). Doesn't really matter anyway
04:59:29FromDiscord<Zachary Carter> yeah - I wasn't sure
04:59:52FromDiscord<Elegant Beef> yea choosing either or is fine, just should be spelled correctly in atleast on of the englishes 😛
05:03:02FromDiscord<flywind> I have learned English for 12 years only for examinations. I never speak English with other people.🤣
05:04:17FromDiscord<Yardanico> Heh
05:04:45FromDiscord<Elegant Beef> I'd also argue that an article shouldnt have emojis, but meh 😄
05:06:40FromDiscord<flywind> I can't stopping suing emojis. Because I am afraid to offend others.🤣
05:07:07FromDiscord<Elegant Beef> Eh i use them to mark insincerety aswell, but in an article you're mostly being sincere
05:07:54leorizeyou don't need "--quote myself", just "-- myself" is enough
05:09:50FromDiscord<flywind> lol
05:10:43FromDiscord<Elegant Beef> i didnt know about the `with` feature so thanks
05:11:01*zacharycarter quit (Ping timeout: 264 seconds)
05:11:33FromDiscord<flywind> Thanks all. Nim community is so kind.
05:12:11FromDiscord<Elegant Beef> Also feel free to shoot the next article my way and i'd happily do the same as i did here 😛
05:16:46FromDiscord<flywind> Thanks again. I follow advice and finish my article. Next time I will use vscode-plugin to check spell errors first.
05:17:22TongirIt'd be cool to have something like Black https://github.com/psf/black
05:18:28leorizeyou mean nimpretty?
05:18:36*team\andinus is now known as notandinus
05:18:49leorizewell though nimpretty don't mandate any particular style
05:19:14leorizeit's more of a "consistifier" and a "beautifier"
05:26:02*vicfred joined #nim
05:26:23*opal quit (Ping timeout: 240 seconds)
05:27:02*vicfred quit (Max SendQ exceeded)
05:27:25*B4s1l3 joined #nim
05:27:25*B4s1l3 is now known as opDispatch
05:27:32*vicfred joined #nim
05:27:52*ofelas quit (Quit: shutdown -h now)
05:29:42*jackfly26[m] joined #nim
05:30:36*marnix quit (Ping timeout: 265 seconds)
05:31:04Tongirnimpretty is nice and I do use it, but the hard autoformat to a consistent style is pretty cool as well
05:35:08*pietroppeter joined #nim
05:39:20leorizeit's kinda hard to do that for Nim since we don't have an universal style, and it's super flexible as well :P
05:39:52leorizelike, how are you gonna deal with 3-4 style of function calls :P
05:40:02TongirYeah, the super flexibility would definitely be pretty hard to *always* format correctly, haha
05:41:26*maier joined #nim
05:42:10FromDiscord<Elegant Beef> Tongir were you the person that was annoyed with no member functions?
05:43:39FromDiscord<Elegant Beef> Cant remember who was, just curious if after using they've had a change of heart
05:43:41TongirHmmm, I don't recall haha. I don't think so
05:44:12TongirDon't really need member functions for Nim I've found
05:44:28FromDiscord<Elegant Beef> Yea someone coming from python was a bit annoyed with member functions not existing
05:46:59*marnix__ joined #nim
05:47:23FromDiscord<Elegant Beef> try to find who it was but no avail
05:59:31*ssbr joined #nim
06:02:39Araq"Early versions of Black used to be absolutist in some respects. They took after its initial author. This was fine at the time as it made the implementation simpler and there were not many users anyway. Not many edge cases were reported. As a mature tool, Black does make some exceptions to rules it otherwise holds."
06:03:14Araqaha
06:03:47FromDiscord<Varriount> @Elegant Beef Eh, if you really look at member functions in Python (aka methods) you'll notice it's all smoke and mirrors anyway
06:04:22FromDiscord<Elegant Beef> I'm not the user that wanted it 😄
06:04:33FromDiscord<Varriount> All a member function really is, is a regular function with the first argument "closed over".
06:06:26FromDiscord<Varriount> (think a closure that captures the object instance in its scope, then simply wraps the regular function)
06:06:48FromDiscord<Elegant Beef> They wanted it for organization and apparently a block wasnt a valid solution 😄
06:07:54FromDiscord<Varriount> @Elegant Beef I'll admit the lack of methods + UFCS was something I couldn't wrap my head around when I first saw Nim.
06:08:22FromDiscord<Varriount> (Python-like methods, anyway)
06:08:52FromDiscord<Elegant Beef> I mean i came from C# with similar logic, but i quickly learned that UFCS is fucking rad
06:09:10FromDiscord<Elegant Beef> No need for extension methods, cause UFCS makes them identical!
06:09:30FromDiscord<flywind> I don't like OOP, I think it is better to separate attributes and behaviors. But I need `interface` instead of `streamObj` to make library extensible.
06:10:26Araq„The main reason to standardize on a single form of quotes is aesthetics. Having one kind of quotes everywhere reduces reader distraction.“ really? where are the studies that prove it makes a difference. I doubt it’s measurable when you use syntax highlighting.
06:10:59FromDiscord<Elegant Beef> I do like my interfaces, being able to quickly store variables in a collection is nice, especially with similar functionality
06:11:03FromDiscord<Rika> well they did say it was super opinionated
06:11:24FromDiscord<Elegant Beef> I know there is interfaced, but it'd be nice if there was a core module with it
06:11:28ssbrAraq: studies on PL design tend to be really hard to pull off even when the differences ought to be obvious
06:11:43FromDiscord<Varriount> @Elegant Beef interfaced?
06:12:22FromDiscord<Elegant Beef> It's a module someone made to make interfaces (i guess go like)
06:12:33FromDiscord<Elegant Beef> https://github.com/slangmgh/interfaced
06:12:51FromDiscord<Rika> why would it be better if it were a core module
06:13:00FromDiscord<Elegant Beef> It'd be nicer not better
06:13:09FromDiscord<Rika> whats the difference of a regular module and a core module
06:13:33FromDiscord<Elegant Beef> Well it's in the stdlib
06:13:40FromDiscord<Elegant Beef> So you dont have to add anything
06:14:29FromDiscord<Elegant Beef> Especially since this isnt a nimble package, and unlicensed
06:14:33FromDiscord<flywind> There also exists https://github.com/b3liever/protocoled
06:14:35FromDiscord<Rika> then youll need to update nim to update the package 😄
06:15:31Araqssbr: yeah well, people should be more cautious with their claims. some of us can distinguish between science and superstition
06:17:29FromDiscord<Elegant Beef> Well interfaced appears more like inheritance than the interfaces im used to
06:18:06FromDiscord<Elegant Beef> i mean protocoled
06:20:19*zedeus_ is now known as zedeus
06:22:50*JustASlacker joined #nim
06:23:22Araqflywind: Stream(Obj) is fine
06:23:28FromDiscord<Elegant Beef> Just my small OOP brain not knowing a nicer modular way of handling application of logic
06:24:29JustASlackerhttps://github.com/Pebaz/Nimporter looks nice
06:25:31ssbrAraq: making personal estimations of the truth based on your own experience isn't superstition, even if it isn't science either! It's nearly 100% of actual software development. :)
06:26:24YardanicoJustASlacker: don't forget to star https://github.com/yglukhov/nimpy which Nimporter is based on too :) but they're both great projects, true
06:27:04JustASlackerYardanico: yeah, saw that too. agreed, looks very promising. Cant wait to stick some nim in my python
06:27:21Yardanicowell I just mean that nimporter uses nimpy for actual python<->nim bridging
06:28:23FromDiscord<flywind> `steamObj` is fine. But it is not the natural way for people from Python, java, C++. If i am familiar with C, I will like `streamObj` too.😜
06:33:16Yardanicohmm I wonder why forum updater broke
06:33:19*ForumUpdaterBot quit (Remote host closed the connection)
06:33:26*ForumUpdaterBot joined #nim
06:34:52*solitudesf joined #nim
06:46:10*PMunch joined #nim
06:47:12Araqhttps://techxplore.com/news/2020-06-hyperdimensional-core-in-memory.html scary stuff :-)
06:49:33*gangstacat quit (Ping timeout: 272 seconds)
07:28:52zedeus@Zachary Carter you here?
07:38:59Yardanicozedeus: he's offline :(
07:41:51*gangstacat joined #nim
07:48:51*haxscramper joined #nim
07:50:02*opal joined #nim
07:52:05*nikita` joined #nim
07:53:13*opal quit (Excess Flood)
08:00:41*opal joined #nim
08:04:55*FromDiscord quit (Remote host closed the connection)
08:05:15*FromDiscord joined #nim
08:13:36*fredrikhr joined #nim
08:16:19*lbart quit (Ping timeout: 272 seconds)
08:16:51*solitudesf- joined #nim
08:16:51*solitudesf quit (Read error: Connection reset by peer)
08:17:29*lbart joined #nim
08:19:18FromDiscord<mratsim> @Araq, lot's of buzz words and completely ignoring reinforcement learning
08:30:32PMunchHmm, I remember some discussion around allowing "nim command" to run "nim-command" or "nimcommand" if it wasn't an actual command. To sorta "extend" the compiler, but I can't find any of the discussion around it on the issue tracker or in the RFC repo. Anyone else remember this discussion?
08:33:54*JustASlacker quit (Ping timeout: 240 seconds)
08:39:07*Senny quit (Ping timeout: 272 seconds)
08:44:01*vicfred quit (Quit: Leaving)
08:47:28*JustASlacker joined #nim
08:53:34*JustASlacker quit (Ping timeout: 258 seconds)
09:03:23*zacharycarter joined #nim
09:06:32*JustASlacker joined #nim
09:11:07*Trustable joined #nim
09:11:48FromDiscord<lqdev> I think it was about nimble, not nim
09:25:22*notandinus quit (Remote host closed the connection)
09:27:56*team\andinus joined #nim
09:29:19*team\andinus is now known as notandinus
09:31:09*oddp joined #nim
09:36:15*abm joined #nim
09:41:42*zacharycarter quit (Ping timeout: 260 seconds)
09:43:04*JustASlacker quit (Ping timeout: 246 seconds)
09:53:50PMunchAah, that makes sense
09:56:18*JustASlacker joined #nim
10:11:50*zacharycarter joined #nim
10:13:28*hyiltiz quit (Remote host closed the connection)
10:14:34*hyiltiz joined #nim
10:14:34*hyiltiz quit (Changing host)
10:14:34*hyiltiz joined #nim
10:15:58*zacharycarter quit (Ping timeout: 246 seconds)
10:39:54ZevvWell, there I go - need to throw out my Nim proto and do it again in Golang :/
10:40:20ZevvClear sign that the company has outgrown me - time to find new customers!
10:40:55dom96Wow, so a lot happened last night and yesterday. I haven't had a chance to read everything (because there is a lot). While I read all of this I would like to ask trans members of our community (if you feel comfortable) to let me know what their thoughts are about what happened.
10:46:17*zacharycarter joined #nim
10:49:47FromDiscord<Rika> theyre overreacting
10:51:13*zacharycarter quit (Ping timeout: 264 seconds)
10:53:04FromDiscord<dom96> Feel free to PM me on IRC or Discord if preferred btw 🙂
11:07:57*flaviu joined #nim
11:08:20*flaviu is now known as Guest8383
11:08:43*Guest8383 quit (Client Quit)
11:12:18*Vladar joined #nim
11:15:44*muffindrake quit (Quit: muffindrake)
11:17:01*opal quit (Remote host closed the connection)
11:18:20*opal joined #nim
11:32:40AraqZevv: ouch, pains me to hear that
11:33:11PMunchWhy do they specifically want it in Go anyways?
11:36:32*JustASlacker quit (Ping timeout: 260 seconds)
11:43:21haxscramperHow do I specify custom CSS in `nimdoc.cfg`?
11:45:34*Senny joined #nim
11:45:43PMunch-d:nimdoccss="filename" I think
11:46:27PMunchOh wait, maybe not
11:48:33*muffindrake joined #nim
11:50:03haxscramperThere is a single thread on the subject: https://forum.nim-lang.org/t/4308 , but I could't figure how to apply example to my case. I tried adding `doc.head_style = """ ...` but it does not seem to work.
11:51:25*NimBot joined #nim
11:51:43*FromDiscord quit (Remote host closed the connection)
11:52:05*FromDiscord joined #nim
11:52:07Yardanico~restarted the discord bridge for a security update~
11:52:08disbotno footnotes for `restarted`. 🙁
11:52:20Yardanico123
11:52:42FromDiscord<Yardanico> 123
11:52:43Yardanico12344
11:52:55*FromDiscord quit (Remote host closed the connection)
11:53:10*FromDiscord joined #nim
11:53:18*FromDiscord quit (Remote host closed the connection)
11:53:47*FromDiscord joined #nim
11:54:56PMunchhaxcramper, where did you get head_style from?
11:55:28PMunchIf you want you can check out my JSON output branch and generate your own HTML docs from that: https://github.com/nim-lang/Nim/pull/14871
11:55:29disbotJSON output now parses description and moduleDescription as JSON
11:55:55FromDiscord<mratsim> haxcramper, in the old Arraymancer, I just referred to the CSS in my header: https://github.com/mratsim/Arraymancer/blob/a0bdf4ecd79c615403a8db387b171ade3d426221/nimdoc.cfg#L17-L25
11:56:14*krux02 joined #nim
12:03:34*sacredfrog quit (Quit: ZNC 1.8.1 - https://znc.in)
12:04:51Yardanicorestarting the bridge again, sorry
12:04:53*FromDiscord quit (Remote host closed the connection)
12:05:07*FromDiscord joined #nim
12:05:08Yardanicodone (that was a security update :P)
12:05:26*muffindrake quit (Quit: muffindrake)
12:05:54*sacredfrog joined #nim
12:06:02*supakeen quit (Quit: WeeChat 2.8)
12:06:11Yardanico!getlastid
12:06:12*nikita` quit (Quit: leaving)
12:06:13FromDiscordDon't have info for the current channel yet.
12:06:40*supakeen joined #nim
12:12:53haxscramperHow does `doc.*` work in nim doc configuration? `doc.file` completely replaces generated output. Using `doc.body_toc` modifies only section. I though that using `doc.head_style` I will alter styling configuration. And example in the forum thread (https://forum.nim-lang.org/t/4308) uses `$content` and $tableofcontents` in the HTML, which makes me think that some kind of templating is also supported.
12:16:07haxscramperPMunch: I think generating own docs from JSON is a bit overkill for my case: I just want to automatically add `table th.docinfo-name {text-align: left;}` to style, not some kind of complete redesign of documenation. I know I can just put `.. raw::` at the start of file but it is just annoying.
12:35:35*rockcavera joined #nim
12:38:13*zacharycarter joined #nim
12:39:46PMunchhaxscramper, I'm just trying to get someone to do it :P
12:39:57PMunchTo check if its even possible with the current output
12:51:55*vr0n joined #nim
12:52:48haxscramper`nimdoc.out.css` is copied from `~/.choosenim/stable/<your current version>/doc/nimdoc.css`. It seems like this behaviour is hardcoded via `nimpaths.docCss` const (?) - defined as `"$nimr/doc/nimdoc.css"`. For my case it was sufficient to add `@import url("user-css.css");` to this file and them put custom CSS whenewher I need. It probabily won't work for more complicated things (my case was very simple).
12:55:10*zacharycarter quit (Ping timeout: 256 seconds)
12:55:46*zacharycarter joined #nim
12:57:05*muffindrake joined #nim
12:58:46*krisppurg joined #nim
12:59:45vr0nso, i've written some underlying database logic in nim, and i think it would be cool to give it a text user interface (like r2 or gdb, but obviously not as complex). What's the best way to go about that in nim? haven't tried before, and i found myself a little stumped
13:00:41vr0nreally, i just wanna know if its possible. if so, ill go and do more research. but i couldnt find a similar prject in pure nim
13:06:13PMunchDefinitely possible
13:07:25PMunchIf you look at my stacklang project you can see a terminal application that behaves that way
13:07:34PMunchTakes input line by line and returns stuff
13:07:40PMunchIt doesn't do any background work though
13:09:14*Vladar quit (Quit: Leaving)
13:09:41vr0nis your github pmunch?
13:09:49vr0nill take a look at it for reference, if that's ok with you
13:09:49PMunchYes
13:09:54vr0nok. thank you!
13:10:05PMunchOf course, it's all open source and available, do whatever you want with it :)
13:10:18PMunchThis thing: https://github.com/PMunch/stacklang
13:10:40vr0nthanks, mate. ill post a link to my app once it's done (assuming it works ok)!
13:10:52*justsomeguy left #nim (#nim)
13:12:48*tin92 joined #nim
13:17:28*marnix joined #nim
13:26:17krux02PMunch, so is it better that calc in emacs :P
13:26:54*marnix quit (Ping timeout: 256 seconds)
13:27:15PMunchstacklang?
13:27:26PMunchI've never tried calc in emacs, so hard to tell
13:27:33krux02well you can
13:27:38krux02sudo pacman -S emacs
13:27:43krux02run it
13:28:12krux02Alt-x calc <Enter>
13:28:21krux02and off you go
13:28:26krux02it is a stack based calculator
13:28:28PMunchHmm
13:28:32krux02programable of course
13:28:46PMunchOoh, I like the calculator trail
13:29:08krux02me too
13:29:24krux02but I hardly use it
13:29:36PMunchI actually wanted to implement something similar in stacklang
13:29:46PMunchBasically infinite undo
13:30:41PMunchAnd a way to pull a number out of an earlier stack and push it to the current one
13:30:42krux02The problem with these calculators is, I don't use them regularly, and when I need a calculator I use a tool that I already know. That is then again not calc.
13:31:02PMunchSo many times I calculate a sum, then do something with it, and realise I need it later on
13:31:36PMunchMhm, I know the feeling
13:31:51krux02I like the Mathematica like workflow
13:32:09krux02it is in IPython and IJulia as well
13:32:13PMunchI tried to use forth and other stack based languages as a calculator, but I kept getting stuck on syntax stuff
13:32:17FromDiscord<lqdev> I wish `calc` had that
13:32:24FromDiscord<lqdev> (not emacs calc, just calc)
13:32:48PMunchThat's why I tried to give stacklang the most simple syntax passible
13:32:58FromDiscord<lqdev> rn I just use the up arrow as much as I need, but it's annoying
13:33:55PMunchEverything that looks like a number is a number, anything else is a label. If a label is tied to a function (e.g. '+' for addition) it will be automatically called when it's pushed to the stack unless escaped.
13:34:07krux02well if I do use a calculator I use my Texas Instrument Voyage 200.
13:34:15krux02because it has symbolic caclulation.
13:34:22*endragor quit (Read error: Connection reset by peer)
13:35:26krux02But since I hate the fact that it has a super slow CPU and that is the bottleneck and I sit in front of a supercomputer (in comparsion, not in reality) I forced myself to use maxima instead.
13:35:46*thomasross joined #nim
13:36:20PMunchHmm, symbolic calculation?
13:36:25krux02PMunch, I thought also once about a stack with a negative about of elements.
13:36:35PMunchA negative amount?
13:36:51PMunchOoh
13:37:00krux02so: 2 3 + will yied 5, but 2 + 3 would also yield 5 because after the + the stack has -1 elements.
13:37:07PMunchYeah
13:37:09PMunchJust realised
13:37:14PMunchThat would actually be pretty cool
13:37:38PMunchSo "2 +" would leave an unresolved operation that would apply to the next argument
13:37:49krux02I thought about that as a syntax for a statically compiled languae. Never implemented it, but put some thoughts into it.
13:37:50PMunchKinda like partial evaluation in e.g. Haskell
13:38:09krux02The drawbacks are: no overloading
13:38:41krux02yes you can also interpret it as partial evaluation like in Haskell, even though I did not.
13:38:51PMunchWait, why no overloading?
13:38:56krux02I thought a line must always be complete.
13:38:58PMunchBecause you resolve early?
13:39:03PMunchMhm
13:39:15krux02well if you have foo with 2 and with 3 arguments
13:39:19krux02and then you put foo on the stack
13:39:27krux02does the stack now have -2 or -3 elements?
13:39:38krux02could not solve that.
13:39:49PMunchAah, overloading like that
13:39:56*endragor joined #nim
13:39:58PMunchI thought you meant string or int argument
13:40:03PMunchBut same number
13:40:11krux02yea
13:40:16PMunchStack based languages typically don't have overloading anyways
13:40:18*BlameTheRoomba joined #nim
13:40:34krux02It is normal to think about the things that would be better and totally forget about the drawbacks.
13:40:42PMunchI have a version of it in stacklang, where you can pass in an index or a label
13:40:45krux02probably for that reason.
13:41:35PMunchBasically all variable argument functions in stacklang takes either a label or a positive or negative index
13:41:35krux02I also thought about how much can you make a programming languae like a normal language.
13:42:02krux02certainly talking to a computer is fundamentally different than talking to a human.
13:42:14PMunchI think I might've mentioned this for you before, but did you see the poetry language talk in our FOSDEM room?
13:42:18*thomasross quit (Ping timeout: 256 seconds)
13:42:18krux02But that doesn't mean that you need end a command with a ; instead of a .
13:42:26FromDiscord<lqdev> krux02: ever heard of Skript?
13:42:42krux02lqdev: no
13:42:48PMunchMhm, I think a lot of languages have moved more towards the human end of speech lately
13:42:56PMunchJust look at Ruby for example
13:43:04krux02I only heared about the Shakespear language, and that is just stupid.
13:43:05alehander92_"come on man try to call x()"
13:43:15FromDiscord<lqdev> it's basically minecraft plugins using plain english
13:43:16alehander92_"give me that .. value over there "
13:43:24PMunchWith things like '?' for checking a value, and "x = 10 unless y == 100"
13:43:49FromDiscord<Yardanico> @lqdev oh yeah I used it a bit on my MC server some years ago
13:43:53FromDiscord<Yardanico> It's a cool thing
13:44:03alehander92_yeah dsl-s sounding like english
13:44:03PMunchProblem is that often you end up with very verbose things, because human language is overly verbose compared to actual meaning
13:44:04krux02well I think the `=` as assignment operator is wrong, because it is an equality sign.
13:44:07alehander92_but this has its limits
13:44:20*zacharycarter quit (Quit: Lost terminal)
13:44:27alehander92_krux02 you're right but
13:44:31alehander92_i thought for something
13:44:32PMunchkrux02, you and large parts of the functional language community :)
13:44:40alehander92_how do we actually write assignment in math proofs?
13:44:46alehander92_or "aliasing"
13:44:47krux02it should be `assign x to 10 unless y = 100` or something like that.
13:44:50FromDiscord<lqdev> := ?
13:44:58FromDiscord<lqdev> like pascal
13:44:59krux02yes
13:45:01alehander92_isn't it again something like "let x = (y + z) in this expr"
13:45:08alehander92_i am talking about math
13:45:13alehander92_i didnt use `:=` when i was in school
13:45:13FromDiscord<lqdev> yeah
13:45:31krux02an arrow is also ok I guess
13:45:34alehander92_so `=` does seem math-y to me
13:45:35krux02a <- b
13:45:41alehander92_but i really don't remember well proofs
13:45:50krux02a <-store- b
13:45:51FromDiscord<lqdev> well we have assignments to variables using plain language "let x be the number of blablabla"
13:46:01krux02a <~
13:46:21krux02lqdev, that is declaration
13:46:28FromDiscord<lqdev> but it doesn't apply to proofs doesn't it
13:46:30FromDiscord<lqdev> hm
13:46:47alehander92_i mean, substitution
13:46:50PMunchYou use = in maths to assign as well, but you can't reassign later
13:46:55alehander92_ah exactly
13:46:57PMunchWell, not in the same "scope"
13:47:04alehander92_so it's more like lisp probably
13:47:10krux02and how do you access member variables if you want to use the `.` and the end of the command (sentence).
13:47:12alehander92_and the `let stuff be other in this expr`
13:47:34krux02programming languages should also have an official reading.
13:47:41alehander92_otherwise `<-` does sound good
13:47:48alehander92_but then you can have `->`
13:47:52krux02in math ∀ reads as `for all`
13:47:54alehander92_`e() -> a`
13:48:02alehander92_which might make sense
13:48:10alehander92_in async futures
13:48:14FromDiscord<lqdev> that's whar R does iirc
13:48:16krux02in programming you can just skip all symbols and hope people still understand it if you read it.
13:48:18FromDiscord<lqdev> for variables
13:48:19alehander92_e.g. `~>` might be "assign after ready"
13:48:24FromDiscord<dom96> Hey @Rika, can I PM you? (You've got Clyde banning any DMs right now :))
13:49:10krux02assign when ready
13:49:22krux02assign ... , when ready.
13:49:27krux02put the when ready at the end.
13:50:13krux02The trend towards a human language doesn't only improve readability, it improves talking about a programming language, and it improves writeability in a language.
13:50:35krux02writeability in terms of keyboards.
13:50:36alehander92_yeah but symbols are good
13:50:41alehander92_math uses a lot more symbols
13:50:48alehander92_and seems a lot more like perl
13:50:51PMunchProblem is that in speech you assume people read everything
13:50:55PMunchWhich isn't really true for code
13:51:00krux02symbols are good, most keyboards only have a shitty ASKII set available.
13:51:05alehander92_i think haskell has words
13:51:07alehander92_for more symbols
13:51:12PMunchI have been confused multiple times from the "unless" suffix syntax in Ruby
13:51:13alehander92_one can have that in tooling
13:51:20alehander92_like hovering on an operator
13:51:27alehander92_and seeing how it is supposed to be pronounces
13:51:35PMunchCompletely throw me as I read the first part of a statement only to realise it doesn't always happen
13:51:37alehander92_or a bigger expression
13:52:08PMunchWhen I read code I tend to semi-evaluate it as I read, so that "unless" at the end means I now need to step back through and mentally "undo" things
13:52:11PMunchWhich is a pain..
13:52:14alehander92_e.g. i've seen notes like "you read this rust type definition this way" etc
13:52:31alehander92_yeah its a bit strange
13:52:38*muffindrake quit (Quit: muffindrake)
13:53:01krux02¬∨∧
13:53:11krux02I like them over && || !
13:53:45alehander92_i am so used to `&` being and
13:53:51alehander92_that its hard for me to imagine what else
13:53:53PMunchOh well, I've gotta run
13:53:58*PMunch quit (Quit: Leaving)
13:54:00alehander92_(yeah and string interpolation in nim)
13:56:48FromDiscord<exelotl> I like Lua's `..` for string concatenation. Guess it doesn't work cause it's the slice operator in nim
14:05:51FromDiscord<lqdev> well, Nim's & operator makes sense
14:06:16FromDiscord<lqdev> "a" & "b" reads as "a and b" and results in a and b ("ab")
14:09:04*lritter joined #nim
14:09:16*rockcavera quit (Remote host closed the connection)
14:26:09AraqI still like 'and' and 'or' better because they are more like 'if' than they are like * and +
14:26:34Araq'and' is control flow and '*' isn't
14:33:08disruptekinteresting, i don't perceive `and` the same way.
14:42:37*tin92 quit (Remote host closed the connection)
14:43:03FromDiscord<exelotl> I quite like 'and'/'or', never thought about it that way but it makes sense
14:43:23FromDiscord<exelotl> still have to think super hard whenever I use shl/shr though. :(
14:43:26FromDiscord<impbox> Araq's logic seems sound,
14:43:27FromDiscord<impbox> (edit) 'sound,' => 'sound'
14:43:41FromDiscord<impbox> @exelotl shl/shr same because i forget left and right =)
14:43:46FromDiscord<impbox> (edit) 'forget' => 'mixup'
14:43:54FromDiscord<impbox> the << >> arrows are more clear
14:44:07AraqI don't like that I made them keywords
14:44:10FromDiscord<impbox> and they're not control flow
14:44:22Araqbut I personally need to translate >> and << into shr and shl
14:44:36Araqthe direction is super unclear to me
14:44:40FromDiscord<exelotl> its really tough being a left/right mixer-upper xD
14:45:14Araqin fact, I combine the 'r' with "div like" and skip the direction entirely
14:45:37FromDiscord<Rika> For both shr shl and >> << I have to figure out in what way the bits are shifting
14:46:00FromDiscord<Rika> Ngl, wish it was shift msb-wise or shift lsb-wise
14:46:06FromDiscord<Rika> Easier for me to think in that way
14:46:42Araq*shrug* shifting is stupid, I wrap it in 'setBit' and friends
14:47:00FromDiscord<Shucks> am I blind or isnt there any documentation for the property pragma
14:48:02Araqthere is no such pragma, most like you use a library where 'property' is a custom annotation
14:48:08Araq*most likely
14:48:18FromDiscord<Shucks> oh
14:48:55FromDiscord<Shucks> ideed
14:48:57FromDiscord<Shucks> indeed*
14:49:01FromDiscord<Shucks> ```macro property*(x: untyped): untyped =↵ ## Add property macro to proc as pragma so that getters/setters can access↵ ## as nim's style.```
14:53:24FromDiscord<Zachary Carter> what library is that from?
14:55:29*sentreen quit (Quit: sentreen)
14:57:47*crem quit (Ping timeout: 260 seconds)
14:58:28FromDiscord<Shucks> winim
14:58:41FromDiscord<Shucks> well, a sublib wAuto
14:58:52*vicfred joined #nim
15:02:14krux02regarding pragmas, this PR would be important to be merged first.
15:02:15krux02https://github.com/nim-lang/Nim/pull/11526
15:02:17disbotgetCustomPragma is split up in more usable chunks
15:05:13*Vladar joined #nim
15:12:48*vesper11 quit (Max SendQ exceeded)
15:16:42*NimBot joined #nim
15:17:13*xace joined #nim
15:17:14*synthmeat joined #nim
15:17:33*sknebel joined #nim
15:20:17krux02can somebody help me with the nim.cfg syntax?
15:21:02FromGitter<ynfle> What do you want to do
15:21:06FromGitter<ynfle> *?
15:22:38krux02passing command line arguments
15:23:39krux02ok, by guessing I found it out.
15:23:43krux02but the syntax is weird.
15:23:48krux02would be nice to be able to look it up.
15:24:14*maier quit (Ping timeout: 240 seconds)
15:24:25FromGitter<ynfle> I think it's just regular command line arguments
15:24:40FromGitter<ynfle> You can use config.nims if that's easier
15:24:57*sentreen quit (Quit: sentreen)
15:25:04krux02no it is not
15:25:14krux02I tried to do regular command line arguments and it complained.
15:25:44FromGitter<ynfle> Curious which?
15:26:00krux02instead of --path:/a/b/c it was --path="/a/b/c"
15:26:12krux02weird as I said
15:26:48*Ekho joined #nim
15:31:34*BlameTheRoomba quit (Ping timeout: 240 seconds)
15:31:45Araqkrux02: in a nutshell: the .cfg syntax uses the Nim lexer
15:31:53Araqnot the Nim parser though
15:32:16AraqI know it's not a substitute for documentation but I hope it helps
15:32:37FromGitter<ynfle> for me `--outdir:bin` worked unless that's because `bin` was defined in the .nimble file
15:33:31*marnix joined #nim
15:34:28*endragor quit (Remote host closed the connection)
15:35:14krux02well I could write my configuration file as I wanted and I can throw away my run script.
15:40:55FromDiscord<Skaruts> does dynamic dispatch also apply to properties, or is it just for methods?
15:43:40krux02propertios are compile time aren't they?
15:43:53*endragor joined #nim
15:47:17FromDiscord<Skaruts> I have no idea
15:48:43*endragor quit (Ping timeout: 244 seconds)
15:49:41FromDiscord<lqdev> you can't dynamic dispatch properties
15:50:31FromDiscord<lqdev> or actually, what 'properties' are we talking about?
15:50:37FromDiscord<lqdev> fields?
15:51:32FromDiscord<Skaruts> yes
15:51:49FromDiscord<lqdev> they don't need to be dynamically dispatched
15:52:00FromDiscord<lqdev> because they're inherited
15:52:17FromDiscord<lqdev> it's simply memory access, there's no procedure call involved
15:52:24FromDiscord<lqdev> unlike with procs/methods
15:52:37FromDiscord<lqdev> where you need to know the procedure ahead of time
15:52:56FromDiscord<Skaruts> ah ok
15:53:00*WilhelmV1nWeiner quit (Quit: leaving)
15:53:24*WilhelmVonWeiner joined #nim
15:53:39FromDiscord<Skaruts> nice to know, so I can have some inheritance without any dynamic dispatch in what I'm doing
15:54:12FromDiscord<Skaruts> won't need any polymorphism
15:55:52*marnix quit (Remote host closed the connection)
15:58:05FromDiscord<Shucks> sent a code paste, see https://play.nim-lang.org/#ix=2qIn
15:58:18FromDiscord<Shucks> any trick to check if that string is empty?
15:58:34FromDiscord<Shucks> or more like is full of nullchars
16:01:48FromDiscord<Shucks> str[0] == '\0'
16:01:52FromDiscord<Shucks> guess thats fine.
16:04:52*sentreen joined #nim
16:06:15FromDiscord<aolko> so i heard httpbeast leads in the benchmark
16:06:27FromDiscord<aolko> how high load is it?
16:13:10*xet7 quit (Quit: Leaving)
16:13:29vegaileads what?
16:15:59vegaiit's 8th in plaintext, 5th in json
16:16:25vegaiheh, V seems to be doing pretty well in the latest round
16:16:37*endragor joined #nim
16:19:34disruptekit took me 18mins to download all dependencies for hugo (static site generator in go) and build it.
16:19:45disrupteki'm on 150mbit fibre.
16:20:05disruptekwhat's wrong with this picture?
16:21:02*endragor quit (Ping timeout: 246 seconds)
16:22:39FromDiscord<Zachary Carter> 🤔
16:23:00vegaiodd, took less than a minute here
16:23:38vegaiwith a much less powerful net
16:25:59disruptekseems like gentoo's ebuild might be pointing at some stale mirrors.
16:26:59disruptekor there's some kinda weird go proxy/mirror bs goin' on.
16:42:42*BlameTheRoomba joined #nim
16:43:19*tane joined #nim
16:44:38*audiophile_ joined #nim
16:47:50*BlameTheRoomba quit (Ping timeout: 256 seconds)
16:47:55*audiophile_ is now known as BlameTheRoomba
16:48:29*krisppurg quit (Quit: Connection closed for inactivity)
16:49:36planetis[m]Which buildsystem is recommended for a small app (game) nimscript or nake?
16:50:00FromDiscord<Zachary Carter> I'd use nimscript personally
16:50:27disruptekagree.
16:50:28FromDiscord<Zachary Carter> and which backend are you targeting?
16:50:31planetis[m]any examples?
16:50:52planetis[m]Natice (C)
16:50:53FromDiscord<Zachary Carter> um you can look at `https://github.com/zacharycarter/frag` `config.nims`
16:51:09planetis[m]Thanks!
16:51:29FromDiscord<Zachary Carter> it's probably not the most streamlined build config in the world and it's doing some stuff that you probably won't be interseted in - like compiling assembly code but it shows how to create tasks etc
16:51:35*fredrikhr quit (Ping timeout: 258 seconds)
16:52:56*JustASlacker joined #nim
16:54:01*fredrikhr joined #nim
16:57:33*Senny quit (Ping timeout: 272 seconds)
17:17:35*fredrikhr quit (Ping timeout: 244 seconds)
17:26:28*a_b_m quit (Ping timeout: 258 seconds)
17:41:10*Oddmonger joined #nim
17:41:36Oddmongerhello
17:41:46Oddmongerwhat is your use case for nim ?
17:42:07disruptekgames, trains, and automobiles.
17:42:19disruptekgonna wait and see what happens with boeing before i put nim in the air.
17:42:29disruptekgotta see just what my risk is, you see.
17:42:49disrupteki can't really afford to be losing half a trillion dollars.
17:43:20disruptekhonestly, i spent a few minutes tossing sofa cushions for loose change this morning.
17:43:26FromDiscord<Rika> its what i solely use nowadays
17:43:33disruptekso that's kinda where i'm at right now.
17:43:53solitudesf-i wrote irc client in nim that filters disruptek's messages
17:43:59*solitudesf- is now known as solitudesf
17:44:10Oddmongerseems interesting :)
17:44:24FromDiscord<Rika> lol
17:44:26disruptekone day at a time, im finna give john heywood a run for his money.
17:45:00disruptekbetter late than never.
17:49:45*waleee-cl joined #nim
17:49:52*Trustable quit (Remote host closed the connection)
18:00:02JustASlackerI use it as a faster and slightly cooler python
18:00:15JustASlackerOddmonger: ^
18:07:04FromDiscord<lqdev> I write games in it.
18:07:40FromDiscord<Rika> i write dumb (and usually useless) shit in it 😛
18:11:22FromDiscord<Zachary Carter> this ^
18:11:42Oddmongerok , i'm interested in Nim for replacing Lua in administration scripts
18:12:05disruptek!repo commandant
18:12:06disbothttps://github.com/Varriount/commandant -- 9commandant: 11Bash/Command Prompt-Like Program Written in Nim 15 7⭐ 1🍴
18:12:14disruptek!repo lunacy
18:12:15disbothttps://github.com/disruptek/lunacy -- 9lunacy: 11a hack to let me work with some lua data more naturally 15 6⭐ 0🍴
18:12:24disruptek!repo asynctools
18:12:25disbothttps://github.com/cheatfate/asynctools -- 9asynctools: 11Various asynchronous tools for Nim language 15 58⭐ 20🍴
18:12:33Oddmongerbut there are really people making games with Nim ?
18:12:46Oddmongeris there something like löve2d, for Nim ?
18:13:25Oddmongerthanks for the link disruptek
18:13:38disruptekhttps://github.com/nim-lang/Nim/wiki/Curated-Packages
18:13:39*bung quit (Ping timeout: 256 seconds)
18:13:58disruptek~curated is a curated list of interesting Nim packages at https://github.com/nim-lang/Nim/wiki/Curated-Packages
18:13:59disbotcurated: 11a curated list of interesting Nim packages at https://github.com/nim-lang/Nim/wiki/Curated-Packages
18:14:10disruptek~curated is an awesome list of interesting Nim packages at https://github.com/nim-lang/Nim/wiki/Curated-Packages
18:14:11disbotcurated: 11an awesome list of interesting Nim packages at https://github.com/nim-lang/Nim/wiki/Curated-Packages
18:14:13go|dfishOddmonger: vim3d!! https://github.com/oakes/vim_cubed
18:15:06FromDiscord<Rika> ngl i love the
18:15:08Oddmongerah…… no DB2/400 access in Nim, alas (contrary would have amazed me)
18:15:16FromDiscord<Rika> "How do i stop the cube from spinning"
18:15:17FromDiscord<Rika> no
18:15:25FromDiscord<Varriount> Hm, how feasible would it be to make a shell script DSL in Nim?
18:15:31FromDiscord<Rika> oddmonger: the heck's db2/400 😛
18:15:55disrupteki'd like to have an "expect" dsl in nim.
18:16:15FromDiscord<Varriount> `grep --recursive /path/to/somewhere` is technically valid syntax
18:16:27FromDiscord<Rika> disruptek: any reason lunacy needs cpp?
18:16:35disrupteki forget.
18:16:42disrupteki doubt it.
18:16:49FromDiscord<Varriount> disruptek: I want something as frictionless as bash, but not quite as brain-dead.
18:16:57disruptektry fish.
18:17:02OddmongerRika: or at least unixodbc :)
18:17:25FromDiscord<Rika> ah yeah, it works with c as shown in the nimble file
18:17:25FromDiscord<Varriount> disruptek: And ideally with the remoteing capabilities of ansiblee.
18:17:28*endragor joined #nim
18:17:49FromDiscord<Rika> Oddmonger: these letters dont make sense to me!
18:18:38*rockcavera joined #nim
18:19:12Oddmongerah ok, it's the native database used in iSeries, a midrange computer still used today
18:20:58disrupteksubtext: it's old.
18:21:22FromDiscord<willyboar> 👋
18:21:35FromDiscord<Rika> i see
18:22:13FromDiscord<Rika> what the hell the thing's roughly 1.5x older than me
18:22:25*endragor quit (Ping timeout: 264 seconds)
18:22:34*maier joined #nim
18:37:43BlameTheRoombathat openapi generator in nim is very interesting
18:40:17*bung joined #nim
18:40:49disrupteki probably wouldn't implement it the same way if i did it today.
18:40:56disruptekit was one of my earliest projects.
18:41:37disruptekit's a bit brute-force-overengineered. it will last until a better replacement is ready.
18:42:41alehander92_<3
18:42:51alehander92_i am so happy.
18:43:08disrupteksweet.
18:43:45FromDiscord<Vindaar> @Varriount https://github.com/Vindaar/shell/ ?↵disruptek, I've been meaning to add `expect`...
18:46:50*bung quit (Ping timeout: 256 seconds)
18:48:55FromDiscord<willyboar> alehander92_ is nice to be happy
18:50:20*Senny joined #nim
18:50:32*nikita` joined #nim
18:51:12*bung_ joined #nim
18:53:22BlameTheRoombadisruptek could I trouble you for a high level explanation of how it works? I wasn't able to grok it from the readme
18:55:05disruptekit turns json api schema into a nim library wherein calls and their associated machinery are unique types that can be composed together or extended into clients.
18:56:03disruptekhttps://disruptek.github.io/github/github/github_v3.html
18:57:25disruptekthe api call itself is a 1st-class type.
18:57:28*Senny quit (Ping timeout: 246 seconds)
18:57:34BlameTheRoombawow
18:57:36*bung_ quit (Ping timeout: 256 seconds)
18:58:02disruptekmaybe that sounds like more of a mindfuck than it really is.
18:58:05BlameTheRoombaso under the hood you have your http api calls but this library converts them to types in a new library
18:58:17disruptekright.
18:58:19BlameTheRoombabig brain disruptek
18:58:25BlameTheRoomba🧠
18:58:32disruptekyou can replace the underlying transport with whatever you want.
18:58:49disrupteki don't think it's that smart; i couldn't come up with any other way to do it.
18:58:58BlameTheRoombathis is the first time I've heard of something this cool for api wrappers
18:59:01disruptekit has to support thousands of apis with very shady quality.
18:59:08BlameTheRoombabut it works^TM
18:59:15BlameTheRoombathanks! :D
18:59:20disruptekhonestly, it works really well.
18:59:30disruptek!repo atoz
18:59:31disbothttps://github.com/disruptek/atoz -- 9atoz: 11Amazon Web Services (AWS) APIs in Nim 15 19⭐ 0🍴
18:59:34disruptek!repo gcplat
18:59:35disbothttps://github.com/disruptek/gcplat -- 9gcplat: 11Google Cloud Platform (GCP) APIs in Nim 15 3⭐ 0🍴
18:59:37disruptek!repo bluu
18:59:38disbothttps://github.com/disruptek/bluu -- 9bluu: 11Microsoft Azure Cloud (MAC) APIs in Nim 15 0⭐ 0🍴
18:59:41BlameTheRoombanow throw a webscraper on top of it and you can get apis for everything haha
18:59:45BlameTheRoombaoh nice
18:59:51disruptekthat's many, many megabytes of apis that are completely automated.
18:59:53BlameTheRoombahow does it handle the oauth dance
19:00:07BlameTheRoombayeah I was surprised when I opened a code file to see github not support the size
19:00:13disruptekyou can look at how a wrapper is implemented in the github repo.
19:00:28BlameTheRoombaok will do!
19:00:41BlameTheRoombamy nim isn't up to par with what you're doing for sure
19:00:45BlameTheRoombaso I will def revisit
19:00:53*JustASlacker quit (Quit: Leaving)
19:00:57disrupteki bet you're wrong.
19:01:13BlameTheRoomba🤔💭
19:01:25disruptekthis is the whole generator for the github api:
19:01:27disruptekhttps://github.com/disruptek/github/blob/master/generator.nim
19:01:46disruptekomg i just found a stupid bug.
19:02:02BlameTheRoombaoh it isn't this one? https://github.com/disruptek/openapi
19:02:15BlameTheRoombaoh it does import this
19:02:17disruptekit uses that to build an api and authenticate to it.
19:02:17BlameTheRoombanvm
19:02:34disruptekbut it doesn't require it for the output library.
19:02:57BlameTheRoombaoh I see!
19:03:34BlameTheRoombaIm guessing the metaprogramming strength of nim was very useful when you wrote this lib
19:03:35disrupteki mean, you seemed like you might want an example of how to do authentication, etc.
19:03:47BlameTheRoombaoh I'm just curious is all
19:03:55disruptekyeah, it would be a huge pain in the ass to do it with another language.
19:03:56BlameTheRoombathe premise is very very cool and interesting
19:04:07*bung joined #nim
19:04:12BlameTheRoombaglad to see crazy things being made possible with nim haha
19:04:16disruptekactually, someone did do it, for nim, in another language. i think it was java.
19:04:51BlameTheRoombaoh java outputting nim code?
19:05:22disruptekyeah, same thing i did but, y'know, different. and i think they wrote it in java as a module for an openapi generator. but i really don't know the specifics.
19:05:37disrupteki felt it was silly to do it that way, though it may have been more expedient.
19:05:49disrupteki think a lot of people would prefer the output to mine.
19:06:00BlameTheRoombayeah this method uses nim's features
19:06:29disruptekmy stuff is more bizarre. i dunno...
19:06:49BlameTheRoombahow long did you spend on this
19:06:59BlameTheRoombaI could prob find from git commit date range tho
19:07:05disruptekmaybe people are only really using this with well-formed openapi they generate from their clouds.
19:07:54BlameTheRoombahmm
19:08:08disrupteklooks like a couple months.
19:08:24BlameTheRoombaoh haha you too use `#? replace(sub = "\t", by = " ")`?
19:08:34disrupteki guess i did then.
19:08:40FromDiscord<lqdev> uh oh
19:08:52FromDiscord<lqdev> somebody call the Nim police
19:08:57FromDiscord<lqdev> we have an outlaw
19:09:08solitudesfthats bannable
19:09:40BlameTheRoombaoh no what have I done
19:09:51BlameTheRoombarip disruptek 2001-2020
19:10:09disruptekyou're looking at an older version, i guess.
19:10:18BlameTheRoombafirst commit of openapi
19:10:19disrupteki don't have any scf in HEAD.
19:10:26BlameTheRoombahave ye repented since then?
19:10:30disruptekaye
19:10:48BlameTheRoombayou are forgiven child
19:10:53disruptekthank you, father.
19:11:17BlameTheRoombaxD
19:12:04disruptekthere was an effort to write the aws apis in nim without using macros.
19:12:13*bung quit (Ping timeout: 264 seconds)
19:12:30*bung joined #nim
19:13:46BlameTheRoombawhy though
19:13:57BlameTheRoombaoh
19:14:05BlameTheRoombadid your openapi generator kill the other effort?
19:14:11BlameTheRoombahaha that would be funny
19:14:26disruptekno, i waited for a few months for the guy to finish it but he never did.
19:14:42BlameTheRoombaI joined your twitch stream a while ago and you were messing around with a fork of nim(?) iirc how's that coming along
19:14:51disrupteki mean, i thought it was done, but he vanished and i waited and came to find that it was very incomplete.
19:15:07BlameTheRoombaand that's when you pressed the shiny green 'generate' button :D
19:15:16disruptekah, krux02 is the one working on a fork.
19:15:25BlameTheRoombaoh were you in the mic chat then?
19:15:34BlameTheRoombaidk there were 4 other ppl but I dont remember who
19:15:34disrupteki mean, yeah.
19:15:50disruptekprobably yardanico and clyybber.
19:16:09BlameTheRoombayeah those names!
19:16:46disrupteki'm thinking as i type this that i don't want to ping them, but y'know, that's just ridiculous. if you don't want to get pings on your name, don't turn on name pings.
19:16:51disruptekwtf.
19:17:05disruptekwhy do i have to engage in an arms race with you to be social.
19:17:17disruptekyou do your thing and i'll do mine.
19:17:30krux02disruptek, working on it, is a bit of an exaggeration.
19:17:46krux02Yes it is a fork, but I try to not work on it as much as possible.
19:17:49disrupteksee, it's handy to mention people.
19:17:54disruptekhey krux02
19:17:57BlameTheRoombakrux02
19:17:59BlameTheRoombatesting
19:18:13BlameTheRoombasorry, I just couldnt resist
19:18:29krux02np
19:18:34krux02I doen't hear a ping
19:18:44BlameTheRoomba:(
19:18:48krux02my messenger just gets an exclamation mark icon
19:18:49BlameTheRoombathen it's not satisfying for us
19:18:51disruptekoh you just happened to have irc open?
19:18:53krux02I see it.
19:18:55disruptekahh
19:19:12krux02I really hate everything with ping and blinking.
19:19:27krux02if something blinks, I kill it.
19:19:33disruptekbecause of the seizures?
19:19:33BlameTheRoombayour eyes
19:19:36krux02unix command kill
19:19:43BlameTheRoombakill -9 krux02's eyes
19:19:55krux02I just hate this "hey here I am important now" attitued.
19:20:06disruptekkrux02 is so cool he wears shades while coding.
19:20:40BlameTheRoombain soviet russia nim code you
19:21:02BlameTheRoombaany russians here plz dont take me out
19:21:14krux02I don.t think so.
19:21:15disruptekoh, he only wears sunglasses while coding nim?
19:21:22disruptekbecause it's so brilliant?
19:21:35krux02yea probably
19:21:36BlameTheRoombano dark mode
19:21:40disruptekor glaringly bug-ridden.
19:22:04BlameTheRoombayou know how cool people walk away from explosions without looking at em
19:22:04krux02you know, I know how to control the brightness of my screen.
19:22:36disrupteksometimes i have to turn up the volume when i read Araq's code.
19:22:42*bung quit (Ping timeout: 260 seconds)
19:22:50BlameTheRoombanow now dont you go pinging him
19:23:00disruptekwhy not?
19:23:02BlameTheRoombahe's busy with nim
19:23:10BlameTheRoombabusy man
19:23:12disruptekthis /is/ #nim.
19:23:12*bung_ joined #nim
19:23:34BlameTheRoombaevery time you ping him, nim development takes +1 manhour and... a kitten also dies
19:23:42BlameTheRoomba:P
19:23:45disruptekhe can take a break to come down off his mountaintop and bury this fucking kitten.
19:23:50BlameTheRoombaouch
19:24:06BlameTheRoombaArack is a good homonym for him
19:24:19disrupteki'm not touching it. i hate cats and the last pussy i touched was over a year ago.
19:24:32BlameTheRoombapussy?
19:24:42BlameTheRoomba:/ we have kids here
19:24:44disruptekkrux02: is he talking to you?
19:24:56disrupteki know he don't mean me.
19:25:01BlameTheRoombaI do
19:25:10BlameTheRoombait's okay I'm done
19:25:12BlameTheRoombaback to work
19:25:24disruptekme too, i'm hungry.
19:26:07alehander92_willyboar
19:26:15alehander92_yeah right!
19:27:50alehander92_i constantly do Araq
19:28:14alehander92_i mean he knows to ignore me
19:28:18alehander92_except when i have a brilliant idea
19:28:23alehander92_which i usually no
19:28:33alehander92_i really have to fix my english
19:28:55krux02I don't ping anybody, because I know it really can be annoying.
19:29:30krux02instead of pinging you can also write proposals and issue reports.
19:29:53alehander92_yeah, but then peopkle would be like
19:30:18alehander92_it's a good point
19:30:26alehander92_reminds me to go back sending my resume
19:31:26*bung_ quit (Ping timeout: 264 seconds)
19:32:11*Senny joined #nim
19:32:39BlameTheRoombaAraq do you get fanmail
19:36:20*Senny quit (Ping timeout: 246 seconds)
19:37:14*muffindrake joined #nim
19:41:26*bung_ joined #nim
19:49:38*bung_ quit (Ping timeout: 246 seconds)
19:50:30*bung joined #nim
19:54:39*bung quit (Ping timeout: 244 seconds)
19:56:01FromGitter<ynfle> Anyone have the config file for debugging ni in VS code?
19:56:14FromGitter<ynfle> Or a tutorial in how to do it with gdb
19:56:55*bung_ joined #nim
19:58:39*lritter quit (Ping timeout: 246 seconds)
20:01:22*bung_ quit (Ping timeout: 244 seconds)
20:03:16*lritter joined #nim
20:04:04krux02I know how to do it with gdb
20:04:47krux02@yynfle: do you know how to use gdb?
20:05:29krux02@ynfle: https://www.youtube.com/watch?v=PorfLSr3DDI
20:05:31FromGitter<ynfle> I officially used in a class once
20:05:37krux02ok
20:05:42FromGitter<ynfle> Is that for nim or gdb or both
20:05:53krux02then you just use nim-gdb instead of gdb to start it.
20:06:04FromGitter<ynfle> Is that on nimble ?
20:06:09FromDiscord<Shucks> `https://paste.sh/pkwP2tOw#EDxIMKIp5nir7wJdaX5OcN3j`
20:06:10*Vladar quit (Quit: Leaving)
20:06:16krux02nim-gdb makes gdb load a python module to pretty print nim types.
20:06:41krux02no nim-gdb is a script in the bin directory of nim
20:06:51FromGitter<ynfle> ok
20:06:59krux02it is in the git directory of nim.
20:07:15FromGitter<ynfle> @Shucks, is that the lauch.json file
20:07:28FromGitter<ynfle> Thanks! @krux02
20:07:36krux02then it is just gdb that things it debugs C code.
20:07:40*bung_ joined #nim
20:08:08krux02nim supports the -g compiler flag to get line information and debug symbols.
20:10:34krux02if nim-gdb was properly loaded you should be able to call the nim compiler from within the gdb interpreter
20:11:11FromGitter<bung87> does it worth write a nim lib like css in js?
20:11:34FromDiscord<Rika> what?
20:12:21FromGitter<bung87> css programing way I mean
20:13:58FromGitter<bung87> am not sure it worth or not write such a lib in nim
20:14:50*bung_ quit (Ping timeout: 246 seconds)
20:18:19*endragor joined #nim
20:19:45*bung joined #nim
20:22:54*endragor quit (Ping timeout: 260 seconds)
20:22:58*memoryhole joined #nim
20:23:30memoryholehello
20:23:51memoryholeI'm attempting to add nimpretty
20:24:01memoryholeas a nimble task
20:24:06*bung quit (Ping timeout: 244 seconds)
20:24:47*bung_ joined #nim
20:25:01memoryholeand what I've found is that nimpretty will only work on a single file, so I attempted to use walkPattern to enumerate my source files call with nimpretty
20:25:16memoryholebut walkPattern is not available from nimscript
20:25:32FromGitter<bung87> !repo stage
20:25:33disbothttps://github.com/ducdetronquito/phoon -- 9phoon: 11An early-stage Nim web framework inspired by ExpressJS 🐇⚡ 15 34⭐ 1🍴 7& 1 more...
20:25:51memoryholeis there a better way to go about this? or is it advisable to use something like make for this type of thing
20:26:15FromGitter<bung87> https://github.com/bung87/stage
20:26:25FromGitter<bung87> check this
20:26:53memoryholeok thanks!
20:29:24*bung_ quit (Ping timeout: 256 seconds)
20:30:33memoryholehmm, does your module actually depend on nim 1.3.3? that's an unreleased version
20:33:05FromGitter<ynfle> The odd versions are devel versions
20:33:15FromGitter<bung87> it is the version when i develop it
20:33:46FromGitter<ynfle> I think they are now on 1.3.5 on the devel branch
20:33:48FromGitter<bung87> mostly version unrelated
20:33:52*bung joined #nim
20:35:01*BlameTheRoomba quit (Quit: Default Quit Message)
20:36:24memoryholeyes I forked it and changed the version and looks fine, ok we can follow up in github. I'll submit a PR.
20:37:04FromGitter<bung87> thank you!
20:37:58*xet7 joined #nim
20:38:28*bung quit (Ping timeout: 256 seconds)
20:39:37*vsantana joined #nim
20:40:55*bung_ joined #nim
20:44:46*sagax quit (Excess Flood)
20:45:17*bung_ quit (Ping timeout: 244 seconds)
20:49:10*bung_ joined #nim
20:58:12*bung_ quit (Ping timeout: 244 seconds)
21:02:07*maier quit (Quit: leaving)
21:04:01*bung_ joined #nim
21:10:11*vsantana left #nim (#nim)
21:10:28*bung_ quit (Ping timeout: 246 seconds)
21:14:37*bung_ joined #nim
21:18:25*marnix__ quit (Ping timeout: 265 seconds)
21:21:27*tane quit (Quit: Leaving)
21:26:17*BlameTheRoomba joined #nim
21:28:44FromGitter<ynfle> Why is nim-gdb not in path with choosenim?
21:31:16*audiophile_ joined #nim
21:34:26*BlameTheRoomba quit (Ping timeout: 264 seconds)
21:34:27*audiophile_ is now known as BlameTheRoomba
21:41:34*solitudesf quit (Ping timeout: 240 seconds)
22:10:25*vr0n quit (Ping timeout: 264 seconds)
22:11:41*chemist69 quit (Ping timeout: 272 seconds)
22:12:05*chemist69 joined #nim
22:14:18*memoryhole quit (Remote host closed the connection)
22:18:02*thomasross joined #nim
22:19:21*endragor joined #nim
22:24:06*endragor quit (Ping timeout: 256 seconds)
22:24:54*pietroppeter quit (Quit: Connection closed for inactivity)
22:29:37FromGitter<ynfle> Is there a way to debug nimvm at compile time? I want to see that call stack of a macro expansion
22:30:01*B4s1l3 is now known as opDispatch
22:32:43*BlameTheRoomba quit (Ping timeout: 246 seconds)
22:37:41FromGitter<bung87> `--expandMacro` flag ?
22:48:14*axion joined #nim
22:48:35*axion quit (Client Quit)
22:49:05*axion joined #nim
22:52:56bung_memoryhole merge for now ?
23:01:56*vr0n joined #nim
23:04:14*Cthalupa quit (Quit: ZNC 1.6.6+deb1ubuntu0.2 - http://znc.in)
23:09:57*vr0n quit (Ping timeout: 272 seconds)
23:12:42*Cthalupa joined #nim
23:16:15FromGitter<ynfle> `--expandMacro` Doesn't show me *how* the macro is evaluated
23:22:05*axion quit (Ping timeout: 246 seconds)
23:22:13FromGitter<bung87> dont know now, guess you can throw an error it will print stack trace right?
23:34:01*krux02_ joined #nim
23:36:07*krux02 quit (Ping timeout: 240 seconds)
23:36:08FromDiscord<Technisha Circuit> Uh... Guess what stupid thing i said i will do :P
23:36:47FromDiscord<KingDarBoja> Your own tank game?
23:36:58FromDiscord<KingDarBoja> World of Tanks Blitz(?)
23:37:00FromDiscord<Technisha Circuit> I'm now gonna make it so a .nims file will look exactly like a json file :P
23:37:31FromDiscord<Technisha Circuit> This is definitely possible with Nim's power, right?
23:39:30FromDiscord<KingDarBoja> Yes I think
23:40:06FromDiscord<KingDarBoja> Well I don't know but probably
23:40:20FromDiscord<Technisha Circuit> Yeah, that's what i think too :P
23:51:28*krux02_ quit (Remote host closed the connection)