« first day (667 days earlier)      last day (1108 days later) » 

01:48
@mathcat We should probably do magnitude or something
 
3 hours later…
04:31
Since you last saw the codepage, I've shifted some things around, and added some more greek characters
  0123456789ABCDEF
  ----------------
0|¡¿¤¢€©®§¶æð▲▼ƒ⟨⟩
1|λƛΩΛµ∆øÞŒʑʒʓ×÷£¥
2| !"#$%&'()*+,-./
3|0123456789:;<=>?
4|@ABCDEFGHIJKLMNO
5|PQRSTUVWXYZ[\]^_
6|`abcdefghijklmno
7|pqrstuvwxyz{|}~¦
8|ȦḂĊḊĖḞĠḢİĿṀṄȮṖṘṠ
9|ṪẆẊẎŻȧḃċḋėḟġḣŀṁṅ
A|ȯṗṙṡṫẇẋẏż≤≥≠⁼→←‡
B|₀₁₂₃₄₅₆₇₈₉«»⌐₩₳⊻
C|⁰¹²³⁴⁵⁶⁷⁸⁹⁺⁻⁾√∑Π
D|ẠḄḌẸḤỊḲḶṂṆỌṚṢṬạḅ
E|ḍẹịḷṃọṛṣṭ±□‛“¯≈ı
F|‹›βεδζξστχω↑↓∥∦≡
Example program:
₁ƛ35fḊkFḢḍṀ
Honestly I think a lot of stuff should stay the same if possible
₁ƛ35fḊkFḢḍṀ
₁           ⍝ Push 100 to the stack
 ƛ          ⍝ To each item n in the range [1, 100]:
  35f       ⍝   Push the digits of 35
     Ḋ      ⍝   And push whether n is divisible by each
      kFḢ   ⍝   ["Fizz", "Buzz"]
         ḍ  ⍝   Dot product of the two (a shortcut for ×∑)
          Ṁ ⍝   Dyadic maximum
@emanresuA And it mostly is, except for a few things I always wanted to fix
Hm okay
(like ↑↓?)
Those are modifiers now
Here's some of the key changes:
- Dotted uppercase comes before dotted lowercase
@lyxal wait is that the APL comment
04:38
IMO # is a good comment character for polyglotting and source layout
@PyGamer0 yes, because as suggested in an issue, comments won't be part of the codepage
i mean lol flax
has the same character
Yes, but isn't in the codepage
it's merely a utility for comments
If you submit in a program, you'd have to use UTF-8 scoring
@emanresuA sounds like a flag idea
... I guess
@lyxal a flag to change comment chars o_O
04:42
@emanresuA but you can still polyglot though
#<element><rest_of_code>
# is a modifier
What does it do?
so it just modifies the next item
@emanresuA to be determined
Hmm okay
04:44
It's in my list of 34 characters to be modifiers
¡¿¤¢€©®§æðƒ"#)/\]}~¦βεδζξστχω↑↓∥∦≡
Modifiers are postfix right?
In version 3, most probably
I say most probably because I'm yet to fully decide whether or not auto-closing can be accounted for with postfix
e.g. λ<lambda_code>v wouldn't vectorise the whole lambda
True...
so I had the idea of λv<lambda_code>
but I don't know how easy that is to parse
Or just <lambda-code>λv
04:48
no
lambdas are structures
Hmm okay
and besides then how would it know where the lambda starts?
the <lambda_code> is to be replaced entirely
the < and > are part of the placeholder
λv... should paint a clearer picture
I know, but didn't you want a modifier that parsed until start of line?
yes, and that'll be implemented
but what about those edge cases where you can't use that modifier?
but you still need an auto-closed structure
this method would also work for other structures
[v<onTrue>|<onFalse>
(<variableName>|v...
True...
04:57
I never finished my key changes list for the codepage, so here it is in its entirety:
- Uppercase dotted letters now come before lowercase dotted letters
- `₉` is now included in the subscript numbers range.
- There's a full range of superscript numbers too.
- Bitshifting stuff is now monospaced.
- A lot of the non-monospaced characters have been swapped out.
- More greek letters!
- A fifth lambda type can now be used.
- The global array commands are no longer fractions.
- Downdot letters exist. Now you can updot _and_ downdot.
- There's now a different srting type for dictionary compression.
@lyxal What's the fifth lambda type?
@emanresuA reduce by at this stage
Is it obvious that will be parallel apply?
05:24
@lyxal 35 modifiers o_O
oh wait i have 20 quicks
@lyxal yes
@lyxal Now that you've told me :P
@emanresuA you didn't recognise that it's the mathematical symbol for parallel?
@lyxal well i thought || is the symbol
@PyGamer0 it is.
is a single unicode character
|| !=
yes but pretty sure there was a vertial version of that?
05:28
that is vertical
no it isnt
yes, it is
its oblique (frick you fonts)
for me
∥ omg it is vertical
05:29
is vertical
whytf was it rendering oblique
admittedly that's a screenshot from vs code
also, you just gotta zoom in
and i assume you use consolas
^ is from chat
with a little zoom
^ it looks like that for me
05:32
yikes
that's a big F from me
even with my dark mode extension and all the userscripts I have turned off, it still renders properly
Ugh light mode chat is an ugly sight to behold
 
4 hours later…
09:35
@lyxal amogus comment!!!
@lyxal which userscript are you using?
09:47
@mathcat I'm using a chrome extension
I'll get it for you when I'm next at my computer
ok, thanks
Idea: make another context variable, which acts as a counter for loops, maps, etc.
Is an element worth that?
10:22
What is the fastest way to join like A,B,A (without repeating A)?
!!/run 2 1J 2J
@mathcat 212
!!/run `abc``def`J`abc`J
@mathcat abcdefabc
Use over?
Ȯ
@mathcat I was thinking making that m
nice thanks
@lyxal yeah, currently it's 2 bytes for every usage
somehow my program is actually working
10:34
hai
@mathcat That's about (once in a blue moon)¹⁰
im start learning in around 2 days time @lyxal
Very good
oop wrong reply
but right person
looks scary
I'll get used to it
so used to it that you'll not be able to use light mode SE lol
10:44
Lyxal opened PR #730 (Vyxal/Vyxal) (Vyxal:2.8.3-version-bump → Vyxal:main): Version 2.8.3
just a simple version bump so that the pypi package update doesn't error
when was it released?
in maybe half an hour
oh, it's not released yet?
10:46
I have to do the version bump before writing the release notes
@mathcat exactly
I usually just force merge it with alts
but you can approve it if you want
Tams-Tams approved on PR #730 (Vyxal/Vyxal): "***I can approve***"
Lyxal merged PR #730 (Vyxal/Vyxal) (Vyxal:2.8.3-version-bump → Vyxal:main): Version 2.8.3
Lyxal deleted branch Vyxal/2.8.3-version-bump
Good
now I can write the release notes
which is really just clicking a button
and fixing any mistakes
very helpful button
there we go
with a little luck, the pypi will be updated properly and there won't be any workflow issues
good, v2.8.3 is live on PyPi
10:53
Very important: Do not merge the v3-planning-documents branch into main - that'd delete everything, and we don't want to do that.
4
@lyxal so everything we plan goes there?
and will v3 be interpreted?
@PyGamer0 that's correct
and it will be interpreted
wooo interpretation
@lyxal wait the should be rewritten
so we are basically rewriting the entire thing
not entirely
some stuff can be taken from there
the experimental branch was my first attempt at version 3 planning way back in June 2021 when everything wasn't broken
@lyxal 404
@lyxal question: will classes support inheritance?
no. Only composition
unless someone can present a reason why inheritance is absolutely necessary, I don't think so.
@lyxal wdym
pxeger presented reasons why not to have inheritance for classes
@lyxal oh boy i got a weird idea: implement only the structures and the most necessary commands and the rest can be made from those commands
kinda like BQN
@lyxal i saw that, i want to know the meaning of class composition
11:05
classes containing instances of other classes to mimic inhertiance
besides, it makes class implementation easier
has everyone agreed to use scala? or is there a chance we will use python?
scala is our language of choice
11:10
but I don't think it was actually officially agreed upon
wait why is Seggan making a vyxal implementation in java
let me poll everyone
CMP: Scala for version 3? (Asking because it wasn't actually officially confirmed)
3
!!/hyperping
@AaronMiller @AaroneousMiller @Allxy @Ausername @Milk @PyGamer0 @Wansen @astonearachnid @emanresuA @grandBagel @hyper-neutrino @math @pxeger @rues @user ^
@PyGamer0 it's a side project
also, I need to be on the ping list
!!/ping me
@lyxal I have put you on the ping list.
11:11
thank you vyxal bot much appreciation
wait I'll try something
lets use C++/Rust for v4
!!/ping me
@mathcat I have put you on the ping list.
11:12
!!/pong me
I'm a twice now in the ping list?
@mathcat no
!!/ping me
@PyGamer0 I have put you on the ping list.
@mathcat well kind of
11:13
!!/ping list
@mathcat your old username is on there
which just happens to be a subset of your current username
oh no
meaning that it will still ping you
go away math
but you only get one notification regardless
11:13
!!/don't ping me
@mathcat I have taken you off the ping list.
@mathcat only removes your old username if you currently have that username
math is still on the list
mathcat isn't
@hyper-neutrino Help me defeat math!
@mathcat did you mean "mathcat"
no "math"
and math too because maths is better
 
3 hours later…
14:46
@PyGamer0 wait you're using Scala? Is it gonna be interpreted or compiled?
!!/ping me
@Seggan I have put you on the ping list.
15:03
@Seggan i am not using scala
vyxal v3 is planned to be in scala
because of @user
15:38
@Seggan interpreted
mhm
I twisted lyxal’s arm :p
Scala compiles to JS so we can have a frontend-only interpreter on github pages
I’m also thinking of adding a debugger
Interpreting may make debugging easier
@Seggan is that a good mhm or a bad mhm?
just a neutral mhm
I don't really care, I've just run speed tests of Jyxal and Vyxal, for the same program, Jyxal is on average ~130 ms, Vyxal ~2050 ms
*1050 ms
!!/rm ping math
@hyper-neutrino done
15:50
@Seggan Damn, nice
I suspect the Scala impl will end up being around 1000-2000 ms
Nowhere near Jyxal, though
Tthe program was ⟨1|2|3⟩:+1+, if you're interested
Although including the time taken to compile increases Jyxal's time to ~540 ms
still 2x faster
That's still pretty good
16:09
@hyper-neutrino thanks
!!/ping me
@mathcat I have put you on the ping list.
16:27
CMP: Relating to above link: is the K flag still wanted?
4
Flag R: Treat numbers as ranges if ever used as an iterable. Isn't that already the case?
 
6 hours later…
22:58
@Seggan no, sometimes numbers are treated as a a list of digits

« first day (667 days earlier)      last day (1108 days later) »