« first day (463 days earlier)      last day (1000 days later) » 

12:31 AM
me and the boys defining a sinh function be like
@sinh:1|N"∆e¯½;
for the full hyperbolic trig library:
@sinh:1|N"∆e¯½;
@cosh:1|N"∆e∑½;
@tanh:1|@sinh; n @cosh; /;
these aren't built-in, just cool little demonstrations of function syntax
 
12:47 AM
@lyxal what is intended behavior for [a|b|c|d|e|f]
 
hmmm
I think a = true, b = false and ignore the rest
 
hm okay that's sensible
would you consider parsing that into an if-elif*-else chain?
wait hold on
does [] pop a value and switch on it
or does it switch on a function?
 
switch on the value
 
? 2% 0= [`even`|`odd`]
 
12:49 AM
ok so if-elif chain wouldn't make sense. unless... [a|b|c] could do like if a(pop()): b \ else: c
 
[inital true|sub condition 1|sub condition 1 true|sub condition 2|sub condition 2 true | else]?
e.g. n 15 % 0= [`FizzBuzz`|n 5 % 0=|`Buzz`|n 3% 0=|`Fizz`|n],
because then the last expression is always the else
and the first expression is always the if pop(stack): block
 
okay, this makes sense
do the blocks of if right now receive the popped value and then return the TOS?
and what if they empty the stack
 
[] will discard the value
if they empty the stack, it just takes implicit input
 
hm. ok
!!/run 1[|0]W
 
@hyper-neutrino ⟨⟩
 
12:55 AM
!!/run 1[ |0]W
 
[@hyper-neutrino: 58701152]
0

STDERR:
expected an indented block (<string>, line 7)
Most recently popped arguments: []
Final stack: []
 
._.
 
:)
ah so [...] always pops, and pop will just take input if it needs to?
 
correct
 
and if it runs out of input it just cycles
 
12:56 AM
correct
 
cool, makes sense :D
 
 
1 hour later…
2:05 AM
@hyper-neutrino what do you think of my list of potential token types?
 
 
2 hours later…
3:37 AM
@lyxal those are more so parse tree node types but in terms of that those look good
basically what I envision is
the tokenizer will just take the code and produce a list of tokens
it will be responsible for grouping literals (and decoding them where applicable) and digraphs
and then the parser will take these tokens and turn it into a structure similar / ideally identical to what parse.py's Tokenize does right now
oh, btw, what does variables_are_digraphs do?
and can multicharacter variable names exist, and if so, what characters should be legal
 
@hyper-neutrino those are the default
Upper-case, lower-case and underscore
@hyper-neutrino that's for if you want to use the flag that makes it so that variable names are only 1 letter long
 
ah
so you can avoid needing the space
i see
 
@hyper-neutrino so then how do you su-
ggest grouping names?
e.g: function names and variable names
 
3:49 AM
oh yeah, i forgot that was a thing
i mean those can be done by the parser
by just grouping tokens that are alnum
although that is rather hacky
 
Python tokenises names before parsing
 
yeah, so the tokenizer will need context
 
That's where I got some of those token names from
@hyper-neutrino context?
 
like, if it scans a set/get variable it needs to start grouping a name
 
That's what I was imagining it would need to do
 
3:58 AM
i forgot vyxal had that
most languages either group identifiers always (practical) or never (most golfing languages)
 
 
1 hour later…
5:13 AM
parser.py and parse.py¿
 
yes
parse.py is the old file
lexer.py and parser.py are the new files i am creating
... I did put them in my branch, right?
 
@hyper-neutrino we should create a parser/tokeniser spec first
Detailing how the pipeline works
And detailing what turns into what
 
yeah, it's marginally more complicated than what i anticipated due to variable and function naming
that's probably a good start, at which point i can also probably abandon the current format
 
Put it in the specs folder on the fb branch
I'll add my input to it later today
 
> I've probably missed a whole lot in my attempts to obtain a 69 readability score within Grammarly. I failed btw.
 
5:22 AM
Of course, I can make the first draft later if you want
@hyper-neutrino shush it was late at night
 
i'll probably draft up something in a bit
@lyxal lol imagine being up late at night
 
@hyper-neutrino There's no pressure to do so
 
it's alright i'm just playing genshin impact right now anyway, i have nothing important to do xD
 
@AaronMiller @Ausername @PyGamer0 @hyper-neutrino @lyxal @math @pxeger @user ^
 
5:35 AM
Shouldn't the hyperping have ^^ instead of just ^
 
¯\_(ツ)_/¯
there are many better ways it could be done
 
Also, a message should be allowed to be passed as an argument
 
 
2 hours later…
7:19 AM
@AaronMiller How does that work in the first place?
Btw Vylight fixes / doc stuff are ok to push directly to main right?
Also can we have flags for rendering the output as HTML / evaling as JS (both iframe), and a couple of builtins to go with that? (e.g. 'p', 'Hello world' => '<p>Hello world</p>')?
Just since graphical output is a no-go right now...
The flags would have to be implemented on the static side...
 
All after the rewrite
Open an issue with all these feature requests
That way, we can quickly refer to these later oj
 
*on
 
!!/run oj
 
[@Ausername: 58702212]
STDERR:
[POST /execute] returned 500
 
7:24 AM
Wait what?
What happened to the server...
 
!!/run kH
 
[@hyper-neutrino: 58702228]
STDERR:
[POST /execute] returned 500
 
!!/run kH
 
@lyxal Hello, World!
 
Y'all are just bad
 
7:27 AM
kekw
 
No I totally didn't delete the sessions directory and refresh the Web app on pythonanywhere, y'all are just bad :p
 
thonk
 
!!/run `kekw
 
@lyxal kekw
 
!!/hug
 
7:36 AM
@lyxal ⊂(◉‿◉)つ
 
:)
 
!!/:)
!!/run lyxal
 
7:54 AM
!!/hug
 
@lyxal ༼ つ ◕_◕ ༽つ
 
When the vyxal bot is adorable 🥺
!!/hug
 
@lyxal ⊂((・▽・))⊃
 
8:25 AM
 
8:40 AM
@PyGamer0 hehe that's not my account :p
My twitch account username has no similarities to mine here
 
8:52 AM
@lyxal ik
 
When I have 40 notifications on Twitch although I've never visited the site before now
When I have a bajillion screenshots
Haha!
Oh wait I still have that one
 
9:41 AM
I just realised I left the Vyxapedia webserver running locally... for two weeks.
3
 
 
3 hours later…
12:34 PM
@lyxal why
 
!!/run `⟑ɽ λ†
 
@Ausername why not
 
!!/run «=Ṫi≠Ċ'ṁẋP¾c*℅±‛«\@p
 
@Ausername (output was empty)
 
!!/run `@ƛ≠ do λ• λ† λƒ h℅ȧ
 
12:37 PM
@Ausername @user do you not like hugs
 
!!/hug
 
@Ausername ⊂((・▽・))⊃
 
@user Why does this specifically break? (try modifying it)
 
Parsing probably
@user because we show our love for vyxalbot
 
12:42 PM
@Ausername I think this was fixed in the v2.5.x parser
Problem is that v2.5.x is completely broken
 
I tried manual compression but that does something entirely different
@lyxal Idk why it happens tho
change one character and it works
 
@Ausername presumably due to the at the end
 
Oh
I've encountered that a lot before...
anyway 'night
 
'night
 
1:32 PM
Wow so gpt3 is crap at writing reflective monologues
A year ago, if you had told me that Vyxal would become a popular language on code golf, I would have said "That's impossible, it's too difficult to parse."

But, here we are.

In fact, Vyxal is now the 11th most popular language on golfscript.

In addition to having a parser that is hard to write, Vyxal has a very unique kind of syntax.

There are no parentheses, operators, or keywords.

Only a single token that is repeated, creating a list of lists.

The token is the letter V.

For example:

[VVVVVVVVVVVVVVVVVVVVVVVVVV]
The part where it's no longer my own text is at the first quotation mark
 
@Ausername The backtick put most of the program in a string, then due to a parsing bug, the k and the would become a diagraph, which did nothing, then the ; would close the lambda, then the rest of the program would just push a string. The parsing stuff is fixed now, but I found a different way to do it.
> the 11th most popular language on golfscript.
High praise right there.
 
@lyxal wow nice idea for a language
i think i know how to fix #187
 
@PyGamer0 Do you want me to assign you to the issue?
 
Here we go
A motivational speech
By gpt3
12 months ago, if you had told me that Vyxal would grow to have an amazing community, increased code golf popularity and a whole kind of ecosystem on github, I would have said "haha, good joke". But here we are: we have a great community, a whole kind of ecosystem, and people who have been using Vyxal on a daily basis. It's been a really great year for Vyxal, and I have a feeling that 2018 will be even better.

Here are some things that I think Vyxal did well in 2017:

A lot of code golfers have gotten into Vyxal because of the course on the Golf Club
Nevermind the fact that Vyxal was only released in 2020
Ai text starts after the first quotation mark
!!/'night
 
@lyxal o/
 
1:49 PM
@lyxal Gpt3 predicted your plans to make a new website. :p
 
@lyxal This sounds weird at times but is surprisingly accurate
@VyxalBot I hate hugs
I hate most physical contact
 
@user ok
 
 
7 hours later…
8:43 PM
" You can also expect me to make some more videos about Vyxal, and I will probably stream more Vyxal matches on Twitch."
"not very intuitive"
A speech from GPT-2:
12 months ago, if you had told me that Vyxal would grow to have an amazing community, increased code golf popularity and a whole kind of ecosystem on github, I would have said "I hope he never grows up." Well, not really.


For the most part Vyxal is a very open developer. He gets to create code, write things, and then he works on the original code. It is really good! He has a great vision and he has a pretty creative side to him. His team is awesome, his community is super awesome, he's been doing that for a long time, and I truly believe that if anyone ever comes up to me asking to do som
 
9:18 PM
Wait what? Vyxal is a person now?
 
9:40 PM
Somehow
 
 
2 hours later…
11:25 PM
hyper-neutrino pushed a commit to Vyxal/Fresh-Beginnings: add python gitignore
 
11:57 PM
hyper-neutrino deleted branch Vyxal/hyper/parser-rewrite
 

« first day (463 days earlier)      last day (1000 days later) »