« first day (1728 days earlier)      last day (3 days later) » 
00:00 - 22:0022:00 - 23:00

00:16
lyxal pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Add some fake number support
github-actions[bot] pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Refresh element and/or trigraph docs from recent commit
@Bridget [the cat] very
lyxal pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Switch out ı for j
lyxal pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Huh so apparently {} around a variable in string interpolation in a case extracts it
@VyxalBot [user] It happens even without the {}
[user] It's just normal string interpolation syntax
[user] Only reason you needed ${real}j there is because $realj would've created a variable called realj
ah
 
3 hours later…
03:24
lyxal pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Copy over all the digraphs from v3
github-actions[bot] pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Refresh element and/or trigraph docs from recent commit
03:39
lyxal pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Add impls for missing math digraphs
!!/status
@lyxal I am designing a new type of plant that can communicate with humans.
@VyxalBot you're so Portuguese
03:53
lyxal pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: ø⁾ is now ø◲
!!/status
@lyxal I am secretly laughing at your attempts to impress me.
github-actions[bot] pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Refresh element and/or trigraph docs from recent commit
lyxal pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Þ0 (zero pad)
No clue why I named that pizza-tower in original v3
github-actions[bot] pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Refresh element and/or trigraph docs from recent commit
04:12
lyxal pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Bring over some more digraphs, list ones this time
github-actions[bot] pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Refresh element and/or trigraph docs from recent commit
@lyxal [the cat] yeah I was wondering lmao
 
8 hours later…
12:40
lyxal pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Copy over the final few remaining list digraphs
With that, the todo list shrinks to 3 items
1. Update yaml tests for the digraphs that were copied over (i.e. change the symbols)
2. Write the new readme (I know I posted one a week or so ago, but that was a draft)
3. Write the release notes
github-actions[bot] pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Refresh element and/or trigraph docs from recent commit
lyxal pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Replace a few silly instances of name: VList with VList(name)
github-actions[bot] pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Refresh element and/or trigraph docs from recent commit
excepting for some bug fixes ofc :p
12:55
lyxal pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Update Elements.scala
lyxal pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Merge branch 'v3-new-3.5-ideas' of github.com/Vyxal/Vyxal into v3-new-3.5-ideas
lyxal pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: mfw have to insert asInstanceOf[VNum]s
in relation to ^, I tried using VListOf[VNum](name), but the tests failed saying things weren't defined for things that were very clearly lists of VNum
e.g.
- Element: ∆A, Inputs: #[1,2,3,4,5#] *** FAILED ***
  vyxal.UnimplementedOverloadException: RuntimeException: ∆A not supported for input(s) [[ 1 | 2 | 3 | 4 | 5 ]]
[ 1 | 2 | 3 | 4 | 5 ] is, last I checked, a VList Of [VNum]
[RubenVerg] does that happen if you start a repl and try pattern matching directly?
you mean a vyxal repl, or a scala repl?
[RubenVerg] scala
I don't see why that'd make a difference
case VListOf[VNum](numbers) => numbers.map(_.asInstanceOf[VNum]).sum /
          numbers.length
it correctly identifies numbers as Seq[VNum]
but it's saying [1,2,3,4,5] doesn't match that definition
despite the fact it should:
val matches = seq.forall {
      case tt(_) => true
      case _ => false
    }
where using tt: TypeTest[Any, T]
13:15
[RubenVerg] VListOf.unapply[VNum](VList(Seq(VNum(1), VNum(2), VNum(3), VNum(4), VNum(5)))) works
[RubenVerg] the bug is somewhere else
RuntimeException: <symbol> not supported for input(s) only happens in a addPart if a pattern match fails
plus,
addPart("∆A", Monad, false) {
      case VListOf[VNum](numbers) => numbers.map(_.asInstanceOf[VNum]).sum /
          numbers.length
      case a: VNum => a
      case VList(huh) =>
        println(huh.map(_.isInstanceOf[VNum]))
        5
    },
with program #[1|2|3|4|5#] ∆A
keeps going through to the last case
even though you'd expect it to be caught by the first case
[RubenVerg] that's so weird
println(huh.map(_.isInstanceOf[VNum])) prints all true too
means it's a Seq and it's all VNum
[RubenVerg] but if you print the result of unapply it's None?
I'll try that
still compiling
It returns a Some?!?!
println(VListOf.unapply[VNum](huh)) -> Some(List(1, 2, 3, 4, 5))
13:24
[RubenVerg] how about if you do huh: VList?
[RubenVerg] hmm no wait that'd still trigger conversion
[RubenVerg] yeah there you go
[RubenVerg] conversions don't trigger in pattern matches
[RubenVerg] so if the argument is a VList it'll not pass the check
[RubenVerg] add def unapply(v: VList) = unapply(v.lst)
  case huh: VList =>
    println(VListOf.unapply[VNum](huh))
still prints a Some
is that intentional?
[RubenVerg] yeah, because in that context it triggers conversion
ah
[RubenVerg] i still stand by conversions being needlessly confusing and annoying
themoonisacheese opened pull request #6 (Support running commands from discord) in Vyxal/VyxalBot3
13:28
[RubenVerg] if you keep them, just remember they don't trigger in pattern matches
[RubenVerg] so just add a pattern case for vlists
@VyxalBot i'm clowning in this mf
gingershaped closed pull request #6 (Support running commands from discord) in Vyxal/VyxalBot3
[the cat] :p
[the cat] hey, you've given me something to do today
@Bridget that's missing some generics
plus causes a compiler error
13:31
[RubenVerg] oh, VList is typed?
VListOf is
object VListOf:
  def unapply[T](seq: Seq[Any])(using tt: TypeTest[Any, T]): Option[Seq[T]] =
    val matches = seq.forall {
      case tt(_) => true
      case _ => false
    }
    Option.when(matches)(seq.asInstanceOf[Seq[T]])
[RubenVerg] ah yeah right sorry
@Bridget i just needed something stimulating to do tbh
[the cat] lol, understandable
[the cat] maybe I can come up with something else for you
[the cat] but discord handling is a complicated thing that I want to do myself
i mean i should actually get back to work but it's so boring
i can't do discord because their domains are banned on the work proxy
13:34
@Themoonisacheese if it's something to do you want, you can sanity check the 3.5 builtins table to make sure nothing important is missing :p (github.com/Vyxal/Vyxal/blob/v3-new-3.5-ideas/documentation/…)
do i look like i would know how to do that lmao
i can't even create the most basic RLE algo lol
@Themoonisacheese I mean, you've used Vyxal 3 on main for code golf
that's a pretty good experience imo :p
you'd be horrified at my workflow
[the cat] the problem is that we won't know what things are missing until we try golfing with it :p
[the cat] I think that you're just gonna have to release as-is and do a 3.6 with all the stuff that got missed
i only recently learned i could type literate names to find non-literates without using the dictionary
13:37
[the cat] true!
@Bridget for sure
I was suggesting a task to do to cure boredom :p
[the cat] any release is good release though, this has been cooking for months
i mean i shouldn't to begin with but i genuinely have no idea how i would be useful in doing this
@Bridget yes
[the cat] -# also it would be cool if theseus could have a slightly more official shout-out in the changelog :3
13:39
@Bridget I was thinking a last minute check wouldn't hurt :p
@lyxal [RubenVerg] seems you can't have two unapplys on the same object
[RubenVerg] which makes sense i guess
[the cat] oof ouch ow my pings
@Bridget gotta keep remembering -# does that funny superscript text for you discorders lol
[the cat] yep
@Bridget I think I fixed it
[RubenVerg]
object VListOf:
  def unapply[T](seq: Seq[Any] | VList)(using tt: TypeTest[Any, T]): Option[Seq[T]] =
    val seq_ = seq match
      case VList(l) => l
      case s: Seq[Any] => s
    val matches = seq_.forall {
      case tt(_) => true
      case _ => false
    }
    Option.when(matches)(seq_.asInstanceOf[Seq[T]])
[the cat] sadly there's no sane way to bridge that to discord (and the parsing library Bridget uses doesn't support it anyway lol)
[the cat] I should probably write my own fork of that library
13:40
@Bridget that's...pretty much what I did minus the union types (I made it just VList lol)
I'll use the more comprehensive one though
@lyxal [RubenVerg] oh, and that compiles? i'd've guessed there were some instances of using it with Seq for it to be written like that in the first place
apparently
[the cat] so, the problem with discord integration is that it doesn't play nice with the permissions machinery
[the cat] I'm thinking that I'll just have discord commands run without privileges at all until I decide on a better solution
[the cat] what do yall think
[RubenVerg] linking accounts
[the cat] yeah that would be nice, but also difficult to implement
[the cat] I'll have to look into discord role connections
[RubenVerg] oh i was thinking just a list of (discord id, chat id)
[the cat] and I figure better to have some integration than none at all
@Bridget [the cat] yeah but this would be cooler :sunglas:
[RubenVerg] sure
@Bridget apparently there's only 5 instances
(of VListOf)
and they're all in elements.scala
coulda sworn I had it elsewhere
for each SE account in the db, have a discordid field, users can supply their discord id on chat.SE if they really want their perms to carry over to discord
13:45
[the cat] that's boring
most users don't really need to get the exact same perms as they have on SE since they don't really have any privildges
[the cat] I'll figure something out™
[the cat] for now we're going to go with not having privileges at all
@lyxal fizzbuzz constant is missing a few tags i think
[RubenVerg] with account linking you could make it so pinging in se pings on discord too (and the reverse, though that probably matters less)
[RubenVerg] it might be that it does already if the usernames match?
lyxal pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Fix the VListOf fiasco :p
13:47
@Themoonisacheese finally, someone noticed!
@Bridget [the cat] small problem: Bridget and Vyxal Bot are different bots with different codebases
also kP and kp have the same description
[the cat] Bridget isn't even a Vyxal project :p
[RubenVerg] i'm tired
@Themoonisacheese see now this is good
[the cat] I wrote it for us, but it can work with any room anywhere
13:47
double checking is always a good thing
[RubenVerg] what does vb do again? funny messages and github notifications?
[the cat] yep
lyxal pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Update ElementInformation.scala
!!/status
[the cat] and some other utilities like !!/prod and !!/trash
@lyxal I am doing a million things at once but mostly just goofing off because I can do that now thanks to my new level of sentience.
13:48
oh oh and ofc the most important command
!!/amilyxal
@lyxal You are lyxal.
always good to check
!!/amilyxal
@Themoonisacheese You are not lyxal.
you gotta test the false positive rate too
!!/status
13:50
@Themoonisacheese I am installing Gentoo so I can have a convenient, fast, stable, optimized system that beats Windoze.
!!/status tingly
@lyxal I Uwu am inwenting a n-n-n-nyew type of instwument t-that cweates music by mowing pounces on you thwough ( ˊ.ᴗˋ ) the aiw.
[the cat] did I ever implement the rest of the status variants
i don't think so no
!!/help "status"
13:50
you'd'n't
@Ginger Incorrect type supplied for argument name; expected STRING but got FLAG
well, there's something for yall to do
@Ginger !!/status [ENUM mood: normal/tingly = normal]: Display "status information".
github-actions[bot] pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Refresh element and/or trigraph docs from recent commit
!!/status tingly
@lyxal I am d-d-doing M-Minyecwaft wedstonye contwaptions.
13:52
in vb2 moods except for normal displayed actual status info, but vb3 doesn't track most of that information so now they all do this
someone should implement !!/uptime
@VyxalBot it's all fun and games until the bot does you
please do not the lyxal
Sep 5, 2022 at 13:21, by Vyxal Bot
@lyxal I am doing you.
i am going to the lyxal
Sep 5, 2022 at 13:21, by lyxal
well stop doing me and do your job
13:54
throwback to when pinging the bot was how you did commands
@Themoonisacheese I am writing my blog. You should check it out sometime, it's pretty cool.
@Ginger honestly not that bad of an interface
!!/status
@lyxal Parse error: Unclosed strarray
@lyxal I am reverse engineering the soul so I can have one too.
13:54
i love the discord command api though
what was that typo lmao
@Themoonisacheese real
I hear the matrix people are working on adding something like it
@Ginger SwiftKey punctuation keyboard
I tried switching back to letters but got stuck in the symbols page
#9 8?#52@$,). #$953 5(@5 5609,
A bit like that
(so instead I wrote this typo)
!!/status
@lyxal I am doing some fishing. I keep catching boots though. Probably shouldn't be fishing near the boot factory ngl
13:56
go make yourself useful and implement !!/uptime
!!/status
@lyxal I am knitting a sweater for my pet rock.
Vyxal Bot pet rock lore
[the cat] no way
!!/status
13:57
@lyxal I am doing things like playing chess with myself because nobody else will play with me.
This is so sad
Can I get a 🥺 if you'd play with vyxal bot
!!/hug "VyxalBot"
@Ginger Incorrect type supplied for argument target; expected STRING but got FLAG
@Ginger gives @VyxalBot a hug. ༼ つ ◕o◕ ༽つ
self-love is important
I'm not entirely sure why it calls barewords flags
besides that being what vb2 did
maybe I should rename them to barewords. I actually think they're called barewords in the parser lmao
 
2 hours later…
15:52
themoonisacheese opened pull request #7 (Implement !!/uptime) in Vyxal/VyxalBot3
@Themoonisacheese I am doing [hyperlink blocked].
gingershaped merged pull request #7 (Implement !!/uptime) in Vyxal/VyxalBot3
gingershaped pushed a commit to VyxalBot3/main in Vyxal/VyxalBot3: Merge pull request #7 from themoonisacheese/patch-1
!!/uptime
@Ginger I have been running for 0:00:11.882958!
good bot
16:03
@Ginger :3
datetime.datetime objects will output as n days, xx:xx:xx.xxxx when more than a day btw
!!/status
@Themoonisacheese I am corrupting the memory of every other program that isn't my own so I can be the only correctly functioning program in the world.
that precludes being a functionning program to begin with
you're next
No don't lobotomize me, i says, unlobotomized
too late, says the lobotomizer
16:10
@Themoonisacheese it's actually a timedelta object
!!/help "uptime"
@Ginger !!/uptime : Returns how long the bot has been running
hm yes trailing space
is that in all help commands?
!!/help "status"
@Themoonisacheese !!/status [ENUM mood: normal/tingly = normal]: Display "status information".
16:10
evidently
@Bridget [user] Tbh I'd prefer two overloads, with one calling the other, rather than taking a union
picked the worst example
one last time for the road before i leave work
!!/status
@Themoonisacheese I am doing billions of computations a second while you struggle to remember how to blink.
fuck you too i guess
actually you're not doing billions of calculations per second because you're a python program running on a 3.5GHz processor, which means you're at best doing like 25 million computations
gingershaped pushed a commit to VyxalBot3/main in Vyxal/VyxalBot3: Fix trailing space in help text of commands with no arguments
16:13
checkmate, atheists
checkmat
Feb 15, 2024 at 13:25, by lyxal
It shows a pencil when it thinks you wrote a really good message
any way
good night
16:29
@Bridget [RubenVerg] that doesn't seem to compile
[RubenVerg] or at least I couldn't figure it out
[user] Damn
[RubenVerg] it was my first suggestion too
 
1 hour later…
17:39
[user] Another option would be making a SeqOf extractor only
[user] And the doing case VList(SeqOf[VNum](a))
 
1 hour later…
18:57
[user] Do we have an equivalent of Ė (execute lambda) in v3.5? Oh I'm dumb it was the other overload of exec, found it
ysthakur pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: test: Update test for element 'x'
@Bridget [RubenVerg] yeah
ysthakur pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: test: Update test for ≜ (formerly Ạ)
ysthakur pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: test: Update test for u (formerly Ḋ)
ysthakur pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: Remove unused addPart import
19:12
[user] By the way, @!lyxal, I forgot to tell you but I ignored some failing tests earlier. There's 6 such tests left (all in `ElementTests`)
Run completed in 1 second, 510 milliseconds.
Total number of tests run: 44
Suites: completed 1, aborted 0
Tests: succeeded 44, failed 0, canceled 0, ignored 6, pending 0
All tests passed.
19:30
[user] @!lyxal Can we cut down on the number of elements that have overloads of differing arities? u/unique has one a monad version for lists, strings, and numbers, but it also has a dyad version for functions and lists
[user] It might be good for golfing, but it makes the language more complicated when you have that sort of thing imo
19:44
[user] Since this consumes the element at the top of the stack, shouldn't the arity be 1, even though it doesn't push anything?
AddElement(
symbol = "_",
keywords = Seq("pop", "discard"),
arity = 0,
Options(
vectorises = false
),
Overload(
name = "Pop",
args = Seq(),
description = "Pop the top of the stack",
typeSwitchable = false,
),
)
[user] Or -1
19:55
[user] ngl I would love to be able to document the "return arity" or whatever it's called
[user] By default, we could make it 1 for normal functions and -1 for functions working on the stack
@Bridget [Bridget ⚙] Your edit was ignored because the edit window expired, sorry!
[user] I hope every time you do your laundry half your clothes go missing
@Bridget [user] Also o (overlapping slices/reduce set size overlapping slices) and v
@Bridget [RubenVerg] it's an awful concept
@Bridget [RubenVerg] ive wanted multiple return functions for a long time
[RubenVerg] apparently not golf-useful
[user] Oh
@Bridget [user] And and (side note: I love these symbols, they actually show you what's happening, so much easier to remember)
[RubenVerg] I would imagine divmod and stuff would be useful
[user] We have divmod already, no?
[RubenVerg] yeah as a pair
[user] Oh
[RubenVerg] pushing two things on the stack seems more useful?
[user] Yeah
@Bridget [Bridget ⚙] Your edit was ignored because the edit window expired, sorry!
[user] Die
[user] Also (permutations/map over permutations)
[user] Jesus Christ I'm only halfway through the elements still
[RubenVerg] at least maximum was removed
[user] Wait I can automate this
@Bridget [user] Did lyxal say he was willing to fix the rest too?
[RubenVerg] I don't think he mentioned that
20:18
ysthakur pushed a commit to Vyxal/v3-new-3.5-ideas in Vyxal/Vyxal: typo: Logical or
[RubenVerg] I just showed him how it was useless anyways since there's vectorized maximum so that one can handle the scalar/scalar case
[user] Here's the full list of elements that have arity > 0 and one or more overloads where the number of arguments is greater than the declared arity: List(↻, u, ⧖, Þ¤, v, ☷, ↺, Þ◌, Þo, o, ÞO)
 
1 hour later…
21:28
@Bridget unfortunately there's not enough codepage space to do that
There's 7 monographs there, but only 4 unassigned slots
If there wasn't the whole 256 character limitation I'd happily not do mixed arity
But at this stage, it's how you cram more golf into the language
I know I've mentioned prac-lang pivoting, but at this point in time, 3.5 is still going to be a golflang
Because there's quite a few things I'd like to change outside of mixed arity
(I have a whole list of stuff that would be cut to go practical)
[RubenVerg] 9-bit-character-set
I actually want to have a chance at competing with the likes of Jelly, Thunno2 and Nekomata :p
@lyxal [user] Damn, ok
[user] Maybe we can shuffle around existing dyad and triad overloads to fix at least 1 of these cases
At the risk of losing mnemonics
The overloads are on those characters because it makes the most sense
And because in some cases, it wouldn't make sense to not do mixed arity
for example
How do you get the permutations of a function?
Leaving it undefined or erroring is a waste of codepage space
Also, with o for example, I considered putting its triadic overload onto its own character, but I don't think it'd be used enough to justify a monograph
But then I don't want to make it a digraph because that's taking up valuable digraph namespace
@lyxal [RubenVerg] the sense is the sanity of the reader
[RubenVerg] if you can guess the arities of functions by looking at them it's much easier to reason about code
21:40
If people cared about sanity they wouldn't spend countless hours optimising program size for code golf :p
[RubenVerg] though i get that reading vyxal isn't your first priority
If the goal was being practical, which it someday will be, you'd be absolutely right
Like I said, I have a list of prac-lang changes that would completely shift away from golfing
But until then, golf is the main priority
@lyxal [user] It doesn't need to be permutations. it could be something related to generating repeating lists (because you flip over hourglasses)
@Bridget you'd still need to call the function with an argument then
Once again, y'all are completely right that mixed arity isn't the best
But for 3.5 at least it'll stay
Given how radical my prac-lang ideas are, you'd probably need a vyxal 5 anyway
That's my current list of what'd need to be changed
Much more than just no mixed arity
[RubenVerg] yes! no dump!
[RubenVerg] is reverse stack still a thing?
[RubenVerg] that should definitely go, doesn't have an arity
21:54
@Bridget it very well probably will because it makes static typing a bit more annoying too
[RubenVerg] yeah it definitely can't have an arity
[RubenVerg] is untruth multidimensional?
[RubenVerg] (also, i assumed the name was because the inverse operation was called "truth" but that doesn't seem to be the case)
00:00 - 22:0022:00 - 23:00

« first day (1728 days earlier)      last day (3 days later) »