« first day (1029 days earlier)      last day (747 days later) » 

00:04
oh dang they're removing teams discussions on github
in The Nineteenth Byte, 12 mins ago, by lyxal
Anyone had a chance to look at how merge queues work on github yet?
Okay so I've done some testing with them, and I think I get how they work now
and they're actually pretty cool
and we'll be using it because it just makes life easier
"how does it make life easier?", you ask
so in the past, when there's been multiple PRs open at once, you've had to click "update branch" whenever something gets merged before everything else
and you had to do that each and every time you merged something
so if you had 4 PRs open, you would merge the first, click "update branch" on at least one of the PRs, merge a second, click "update branch" on at least one of the remaining PRs and so on
The merge queue automates that
and merges things in a nice order
there's a few settings that can be configured for how many things are merged at a time and how long until batches are merged, but for now I set it to the default settings
If a PR has failed checks while in the queue, it'll be removed from the merge queue, meaning it won't be attempted to be merge
which is basically what would happen manually
The perks of having an organisation :p
For now, I've enabled merge queues on main and version-3
and on the sandbox main branch
if it works the way I think it works, it should basically go unnoticed
this would have been hella useful over the last 2 years
@user there's no cookie, but I tested an infinite loop of printing 1s and it worked well
huh looks like I broke it by placing calls to worker.terminate in cancelWorker
turns out that wasn't the case
I think what was happening was that the scala was sending so many messages so fast that even after terminating the worker, messages were still being processed by main.js
so now, if the play button isn't spinning, messages are ignored
huh
the messages are now going into subsequent executions
gonna have to implement a sort of sessions thing
00:52
it works
@user you asked before why not just use a function object
because sessions
Yeah
it's going to have to be a string now
Can't the function know the session?
you'd have to pass session to Vyxal.execute
session is just a string btw
a sort of identifying code
if a message coming from the worker doesn't have the session code that's currently being used, it's ignored
So the function passed to Vyxal.execute will have to take both a session and the thing to be printed?
00:55
yes
@lyxal Wait actually, why not let it keep printing even after you hit stop?
because then what's the point of stopping a program
and you don't get to view the entire output
because it keeps resizing the output box
Well the program would still be stopped
It's just that you get to see what it was processing before it died
that's a good idea in theory, but not when it starts going into the next program
Ah yeah
00:57
and also, what if you have an infinite loop, and it's sent what's probably tens of thousands of messages
tens of thousands
you'll be getting new output appended for a long time
and it'll keep scrolling to the top of the output
meaning you don't even get to see what's in the output box
silently reload the page every time you stop
I've pushed it all to the PR
I made a mistake making the PR myself lmao
You should've been the author
I didn't know i was going to add all this when you made it :p
this is one big miracle that it works at all
and that it wasn't too complicated
like it's kinda pain, but it could have been a whole lot worse
@user is there anything else you wanted to add to the PR?
Not really, you've done pretty much everything!
01:03
marked as ready for review
poggers
@emanresuA would you be able to give the js in the pr a quick check to make sure I'm not doing anything too cursed with webworkers?
@lyxal Oh btw can you add instructions on how you did this to the docs somewhere? It'd be very helpful
well you see it was very simple
I installed node
cd'd to the vyxal directory
and typed http-server
that's it
Huh, didn't know it was that easy
01:05
you visit 127.0.0.1:8080/, and firefox allows you to use webworkers
it's mostly just to make it so that it's "hosted" and not offline
that's the only reason to use http-server
Wait, does that mean webworkers won't work with GitHub Pages?
it does work
because it's hosted
Okay cool
it's when you open raw html files in firefox that it says "nuh uh that's like not secure"
Weird
01:08
@user could have even used flask to just spit out the website
I hope after this, I never have to touch another webworker in my life
That's how you curse yourself to become a frontend developer dealing with webworkers everyday
Thanks
I'll wait for steffan's review until merging I think
omg it's beautiful
Good idea, this is a big change
01:14
@user you've seen it in action? :)
Just ran it
> Code terminated by user
the funny part is that the live output is an unintended cool feature
It even knows your SE username!
@user I thought you'd say something like that when I wrote the string in the code lol
@lyxal it's not live output for the sake of live output, it's live output because I couldn't think of any other way to make stopping programs work ;p
@user it's so nice having it work for once. It's theoretically built into the v2 site, but pythonanywhere makes it not work, so having it in the v3 site will be nice
Serendipity always feels great
01:18
I've forgotten how good the feeling of seeing an online interpreter working properly for the first time feels
02:06
So I think I got passing printFunc as a function working
Trying to generate the vyxal.js thing directly in pages/ to make life easier
02:25
👍
Probably ready to re-review now
02:40
I think so too
03:08
@user moving index.html to /pages won't change the URL will it?
No
You'll ust have to cd there before running httpserver locally
good
Before, the workflow to deploy had to move everything there before deploying anyway
it can't find the worker locally
oh
yeah right need to cd into pages
 
1 hour later…
04:13
We may be able to use GitHub Packages to store each version of the generated Scala.js
Although we'd have to put it in an npm package or something
I think for TiB, Bubbler was using Netlify (free tier) and had it set up so each branch would get its own page
Oh wait we don't need to make a whole package
We can just make artifacts for each release
 
8 hours later…
12:22
@user seems promising
12:39
#1599 exists
it's to make it so that literate mode can actually be used for byte counts
because currently, it doesn't generate the golfiest program
theoretically, it should do so now 99% of the time
wait how can literate mode be golfier than normal mode?
no I mean when literate is turned to sbcs
that isn't the golfiest transformation
huh isn't it?
12:47
3 5+
one byte shorter
100λ3 5;%0=}M
I quite like the } as the closing structure.
it was originally going to be ;, but it was decided here that } was better
Quick vyxal question: I have two lists, a nested list of numbers ⟨ ⟨ 1 | 1 ⟩ | ⟨ 4 | 3 ⟩ | ⟨ 1 | 1 ⟩ | ⟨ 4 | 3 ⟩ ⟩ and a list of bases ⟨ 24 | 60 ⟩. How can I apply "to base 10" from the bases of the second list to each element of the first list?
So 1 from base 24, 1 from base 60, 4 from base 24 etc.
If this is for that challenge about times, you should only need base 60
... wait I forgor lol
anyways
that makes things a lot easier
12:54
@mathcat also, I don't think you can
at least not yet
huh
I haven't still figured out how vectorisation works for dyads with nested lists.
lhs.map(x => f(x, rhs))
Y'all if the online interpreter PR doesn't get merged soon, I'll end up just adding more and more stuff! :p
I've now added literate mode scoring to the online interpreter in the PR
so if you have the l flag enabled, it'll say "xx literate bytes" instead of "yy bytes"
in the live byte count
it'll also insert "(link is to literate version)" in your post markdown template
it's big brain
13:17
It did work for a while, but now I'm unable to figure it out
Make sure to eval the halves first
That's what I noticed when I had a play with solving the challenge
I didn't come up with a full solution though
Only partial ideas
So I thought "I'll leave this one for other people lol"
Hopefully that tip helps
Also I won't be able to answer any more questions until the morning because I'm off too bed
o/
\o
ugh
The worst thing is, I did get 91 once, but forgot to copy the code.
... I'm so dumb
please don't read the transcript, you probably have better things to do
13:52
I give up, it's too long for its own good.
40 bytes doesn't seem right.
 
2 hours later…
15:24
@mathcat lmao
Read a few messages below that
GitHub Packages isn't necessary, we can use tags and get it from github.com/Vyxal/Vyxal/blob/whatever or from releases
Which would allow us to run code from branches other than version-3
Only problem is that the artifacts generated by workflows are zips
@lyxal Drat, you caught us, that was our plan all along
Just leave it open for a year while lyxal adds every feature on the planet, including an entire port of sympy to Scala/JS
@user am I blind or smth
help
No, you're mathcat
ಠ_ಠ
 
3 hours later…
18:30
tmw sbt can't do something that mill can
I hate you sbt
I hate you more than myself
If you were a person I would steal your lunch every day and put bugs in your bed
Wait what
sbt can do vyxalNative/run only when you use the shell instead of sbtn
I hate sbt
Uh-oh
I made a commit on the v3-remove-dom-from-scala branch when it should be on a new branch
@user #relatable
ngl, it feels satisfying when you screw up with some Git-related thing but manage to get out of it
19:03
hi
I'm going to (maybe) work on the Vyxal Bot rewrite today
noice
Vyxal weekend
@lyxal is the bot rewrite still go?
@user what's this and does it have any relation to Crosshatch?
19:38
@Ginger yes
(source: I said I would do it and lyxal told me you were, so I'd take that as approval for you to do it lol)
19:50
cool and good
first up: rewrite sechat, because 2022 Ginger was an idiot, like they always are
@Ginger It's going to become Crosshatch for v3, I guess
wait, that's my job! :b
/srs I'm happy to make Crosshatch for v3, seeing as I can do Scala development now
Awesome
This PR is just for making a single REPL for both JVM and Native targets, so don't worry, you're not missing out on anything
@lyxal could you use your magic AI powers to make a logo for Vyxal Bot 2?
 
1 hour later…
21:32
@Ginger it is still g9
*go
@Ginger I'll get on to that later today
cool and good
@lyxal For a moment I thought that was a chess move lol
it is now
Yep I just extended the g file
And only the g file
me when g
22:13
btw when are the community ads again?
We don't know
Not even the mod team knows for sure
in The Nineteenth Byte, Feb 6 at 13:40, by caird coinheringaahing
@Adám Don't expect any ads refreshes in the first half of the year, is the response I got back from a CM
That's all we know
22:32
what's the deal with the ads again? I forgor 💀
Basically the community gets to decide what ads are shown on the sidebar to people who don't have ads disabled
huh
-9
Q: Community Ads for 2021

JNatSeptember update: Community Ads are now live network-wide. All ads with a score of 6 or higher, or with a score of 4 or higher and no downvotes will be displayed (except for any that have a note from the CM Team explaining why it wasn't selected). Go to the main post on MSE for a list of the ads ...

well, our current ads don't really look all that good :p
It's supposed to be every year
But they didn't last year
22:34
f
That's what we submitted last time
I saw that
Those are drafts for the next run
Oh the repo doesn't have the nice ones
so I see :b
22:52
@Ginger have you seen the new style?
nope
hmm
with proper cropping and syntax highlighting of course
include Crosshatch in the ads
22:54
those are two examples of the format
@Ginger might unironically do this :p
one for the language, one for the repl
I'm sure there wouldn't be any canines that would object to that
it's fiiiiiine
wait why would rydwolf object to that?
Advertising a single language doesn't really seem like a good idea to me. Vyxal's the only one with an advertisement, so it might give some people the impression that it's "the official CGCC language" or something. — Rydwolf Programs Jul 27, 2021 at 14:08
in The Nineteenth Byte, Sep 1, 2021 at 2:27, by Browncat Programs
@BrowncatPrograms I do have a mild case of "vyxal bad" syndrome :p
how about we do ones created by The Vyxal People™
wdym?
if people object to a single programming language, why not advert multiple
22:59
true
23:14
@lyxal and then hyper refuted it q:

« first day (1029 days earlier)      last day (747 days later) »