« first day (574 days earlier)      last day (1201 days later) » 

02:58
good
@Razetime turns out I haven't documented that yet
hmm ok
I'd say triadic
what does wrap in lazy list mean
do I just list() thisthing
just a second and I'll give you an example
def truthy_indicies(lhs, ctx):
    """Element T
    (any) -> indicies of truthy elements
    (num) -> lhs * 3
    """

    if vy_type(lhs) == NUMBER_TYPE:
        return lhs * 3

    lhs = iterable(lhs, ctx=ctx)

    @lazylist
    def helper():
        for i in range(len(lhs)):
            if lhs[i]:
                yield i

    return helper()
so basically, whenever you have a generator with yield, apply the @lazylist decorator.
but that's only for once you've created a niladic helper function
03:04
so i just add @lazylist before pi digits and everything is ok
oh wait no its not
what if i just turn it into a normal list
that works fine
def pi_digits(x: int):
    """Generate x digits of Pi. Spigot's formula."""
    @lazylist
    def gen():
        # code
    return gen()
like that
the decorator just turns the generator function into the data type Vyxal uses
it's the same as
def pi_digits(x: int):
    """Generate x digits of Pi. Spigot's formula."""
    def gen():
        # code
    return LazyList(gen())
LazyList is just a wrapper for all the different kinds of generators in python
because map != filter != generator != itertools.whatever
and having a custom wrapper means it can account for custom indexing (e.g. wraparound and negative indexing) and other stuff
mmkay
i'm gonna add this tutorial in the code guide
@lyxal I don't wanna have context in the helper function so i added that in a lambda
that's messy though
because process_element tries to use function names
03:11
hm ok
ain't gonna work with a lambda
you could wrap it in a string though
"∆I": process_element("pi_digits(lhs)", 1),
just not a raw lambda
hm, i'll just go with your suggestion
no no wrapping in string is probably better in this case
because then you don't need to have context for the helper
which is preferred
aaaaaaa
03:15
dude
Lyxal merged PR #270 (Vyxal/Vyxalrazetime/Vyxal) (razetime:fresh-beginnings → Vyxal:digraph-implementation): add "Number Stuff primitives from #160
i still need to do the vectorizing things
that's fine
I can do that
unless you want to
03:16
bruh you merged it so quik
aight you do it
03:28
@Razetime also, fun string overloads with sympy
@Razetime I may or may not be a bit too quick sometimes
03:50
oh well
still, thanks for the help!
every contribution makes things go way quicker
04:34
👍
04:44
All digraph docs complete, I thinl
 
1 hour later…
05:51
@lyxal why did you star my fork lol
Because I can
well thats a valid answer
so i wont question further
Should I update Vylight?
(New stuff / old bugfixes)
@emanresuA of course
Ok :P
Time to reclone it
06:07
@emanresuA yes
Get it ready for 2.6
Ok. Also, please check your code's actually valid:
Also, can we pull the Vylight JS from the Vylight repository?
(As in <script src=https://raw.githubusercontent.com/Vyxal/Vylight/master/mode-vyxal.js></script> or something)
@emanresuA no one
@emanresuA sure
If that works that'd be great
Just then less files to host and when I update vylight, we don't have to recopy it
Idea: What if SCCs had special highlighting?
As in `ø… is ¨∑a` the the two pairs get special highlightng?
06:28
Sure
Actually nvm, IMO it's not very helpful and could be a bit annoying when you're dealing with dictionary-compressed strings.
chunkybanana closed issue #1 (Diagraph highlighting ignores newlines, Vyxal/Vylight)
chunkybanana closed issue #2 (Constants and compression make highlighting no, Vyxal/Vylight)
Finally.
Can I add the frontend in now?
as in create templates/...
06:44
If you want to, sure
Ok. I have a couple of things I want to do. @AaroneousMiller Sorry but I'm going to have to move your rickroll code as it's obfuscating everything else.
06:56
@emanresuA did you suggest ∆ε - Evaluate polynomial equation with coefficents and variable in #160?
because if so, what do you mean by that?
Nope
You can check the revision history, it's a general feature request issue and people just edit stuff in ther
it was aaron
yo @AaroneousMiller wdym by ∆ε - Evaluate polynomial equation with coefficents and variable?
07:30
hey so remember that scrabble challenge?
I found a working 5 byte for 2.4
ṖvKf↔
idk how it managed to work, but it does
I found it implementing ∆K for 2.6 lol
08:32
I'm rewriting the filter code.
It's regenerating the html and reassigning all the event listeners every time the query changes.
AND it's generating a regex 256 times
Well yes
Btw I'm just hosting the scripts / css files / svg icons from github (via jsdelivr)
</input> ಠ_ಠ
09:03
Frontend is complete!
(Untested tho, if someone can get an instance of the server up and running that'd be great)
 
4 hours later…
13:07
@lyxal that wasn't me
that suggestion was added by @emanresuA on September 1
6 hours ago, by emanresu A
Nope
 
5 hours later…
18:11
@AaroneousMiller I don't remember adding that. Also, we need random bit back because random choice converts to ranges now.
Idea: Expression-based compilation for less stack manipulation
Basically, we take each block of code that doesn't include any stack manipulation / structures and compile them to expressions
For example, +5*- would be compiled to:
arg1, arg2, arg3 = pop(stack, 3, ctx=ctx)
stack.append(subtract(arg1,multiply(add(arg2, arg3), 5))
I just realised - if we go with Bubbler's idea of interpreting with RustPython, we'll have Vyxal interpreted in Python interpreted in Rust compiled to Javascript compiled to C.
2

« first day (574 days earlier)      last day (1201 days later) »