« first day (1471 days earlier)      last day (1480 days later) » 
00:00 - 18:0018:00 - 00:00

00:40
@Adám I have a question for you
A← 'ABC', 'AB' 'AC'
A⍳'AB'
0 1
A⍳⊆'AB'
3
A⍳⊆'A'
0
A⍳⊆('A',' ')~' '
5
this is my question
What is the question?
How exactly is ⊆'A' not found in A in the last example?
⊆'A' not boxed
but ⊆('A',' ')~' '
boxed
and why isn't it found in A
'A' is a scalar, so boxed (nested) 'A' is still 'A'
yes
but in the last example I said
But ('A',' ')~' ' is a length-1 vector
00:43
('A', ' ')~' '
Should be a scalar but isn't
its a 1 element vector
because you formed a vector first in ('A',' ')
I get that
that isn't my question
a vector ~ anything is still a vector
my question is how, that's what I need to do, but how do I do that?
I'm not asking for an explanation
I'm looking for an answer to my problem
I understood the explanation
You didn't explain what you want to achieve
00:45
but I need to do the thing I'm trying to do
yes I did
I want to look things up in my list and find the index of them
and I want to looking up the index of things that may have been vectors
the demonstration exhibits that inquiry plainly
It didn't, at least to me
A⍳⊆('A',' ')~' '
5

this result for the A provided makes no sense
I expect 0
or rather
I should like to have 0
because obviously a single character 'A' is in my vector A
I think it's better to normalize A (the array to search for) to have only vectors
´that isn't possible
so e.g. you could do A←,¨A
Why?
00:48
I see
yes that does the trick
much obliged
 
1 hour later…
02:18
0
Q: Visualizing a List in APL using HTTP-Endpoint for Alexa

KitzngI am currently building an Alexa Skill using my own .NET-Backend, which should return an AlexaTextList with dynamic contents from my service. The request by Alexa looks the following: { "version": "1.0", "session": { "new": false, "sessionId": "amzn1.echo-api.session.d5f8d9ee-bdd0-4c70-96...

 
2 hours later…
Oh, that's a pretty awesome page for writing APL submissions
thanksss
I should tweak the line height for boxing
04:31
The best part is that it supports v18
yeah the tryAPL runner does
@Adám the tio link for ⎕OFF here in APLcart is wrong
Oh I remember that CMC...
which cmc?
05:02
There was something about extracting-locals(globals?)-from-tradfn thingy
though I now realize the TIO is simply about the built-in ⎕REFS
05:37
ah yeah
06:32
@user41805 31 bytes
07:00
(oh whoops, the bounty is specifically for dyalog apl)
@Razetime Thanks, fixed.
07:18
cool
Also, thank you for your ]APLcart feedback. -url works now.
yay APL influencing
For those that get an instant headache from a dark interface, it is quite nice to be reminded how to access the white theme directly:
      ]aplcart -gui=w -url
aplcart.info?w
And then you can Ctrl+click on that URL to open in your default browser too.
Anything using -url works even without internet connection.
@Razetime Should I add -open to open in your default browser?
sure, that's also cool
07:51
@chrispsn i just worked through it using the docs, cool stuff
08:31
Any last feedback?
      ]aplcart -??
───────────────────────────────────────────────────────────────────────────────

]TOOLS.APLcart

Search APLcart for how to do things

]APLcart [<terms>] [[-list[=n]] [-raw[=all]] | [-url]] [-browser] [-window] [-theme=b|w]

<terms>      space separated search terms (use /term/ for regex)

-list         list all results (not valid with -url; default: 10)
-list=<n>     list no more than <n> results

-raw          return raw two-column matrix (not valid with -url)
-raw=all      return raw eight-column matrix
There we go.
No, looks great, I think that'll be a very useful feature, the only potential issue in my mind is ease of discovery
C"M"C: golf a chess engine in APL; use d2d4 algebraic style for movements, add some sort of board display, promotion to queen, no en passant, no castling, the engine is valid if it can beat a minmax depth=2 engine most of the time.
bonus points if the resulting program is smaller than a kilobyte :p
can't you then just implement a minmax depth 3 engine lol
I say 'just', obviously that's still hard
i didn't want to force the implementation method
but yeah, that's what i wanted
@rak1507 Same problem as with everything else. It'll be in the release announcements, and we're adding a "Getting Started" entry to the Help menu. This takes you to a webpage that mentions APLcart.
08:43
Great
Amended example uses:
]APLcart remove blanks -l=5  ⍝ list first five results for "remove blanks"
]APLcart /highest|lowest/    ⍝ list up to 10 results for "highest" or "lowest"
]APLcart -b                  ⍝ open APLcart in browser
]APLcart -w -t=b             ⍝ open black APLcart GUI
]APLcart -u                  ⍝ internet address for APLcart
]table←APLcart -r=all        ⍝ database dump
Did you fix that WS FULL error?
Yes.
What was the cause?
It was using ⎕S'%' and so if an entry had N matches for a term, it would return N copies of that entry. This was repeated for every term…
08:47
That's what caused the whole thing to be much larger than it really is as well right?
Yeah.
The solution was very simple: ⍠'ML'1 (Match Limit=1) so as soon as an entry had one match, it'd be included and we proceed to look at the next entry.
makes sense
Interesting LoC facts of the implementation:
Data fetcher: 7
Query engine: 12
Help system: 30
Interface: 75
75 for the interface is surprising to me, do ucmds not have something built in to handle it?
09:08
Sure, I wasn't counting that. These are APLcart specific needs:
Check modifier conflicts: 5
Construct URL: 5
Open browser/window: 12
Limit and messages: 8
Header and footer: 10
Format output: 10
Ah right
Also, my lines are rather short. If we trim away indentation, then my median line length is only 17 characters.
About 3900 characters total, of which 2200 are strings.
That's a median of 7 non-string characters per line.
09:27
shorten everything hnnng
how can i optimize this dfn: {1=≢∪{⍵[⍋⍵]}¨(10∘⊥⍣¯1)¨⍵×⍳6}
* Benchmarking "⍸{1=≢∪{⍵[⍋⍵]}¨(10∘⊥⍣¯1)¨⍵×⍳6}¨⍳200000"
             (ms)
 CPU (avg):  2336
 Elapsed:    2346
i wonder if i can try out these parallel features for this
the thing I see there is ¨
10⊥⍣¯1 works on arrays
so figure out a way to get that to work and it'll be a lot faster
  ⍸{1=≢∪{⍵[⍋⍵]}¨↓⍉(10∘⊥⍣¯1)⍵×⍳6}¨⍳200000 → 8.9E¯1 |    0% ⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕
  ⍸{1=≢∪{⍵[⍋⍵]}¨(10∘⊥⍣¯1)¨⍵×⍳6}¨⍳200000  → 2.4E0  | +166% ⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕
nice
@KamilaSzewczyk I had:
    f←⍸{1=≢∪{⍵[⍋⍵]}¨(10∘⊥⍣¯1)¨⍵×⍳6}
    g←⍸{1=≢∪{⍵[⍋⍵]}⍤1⍉10⊥⍣¯1⊢⍵×⍳6}
    ]runtime -c f¨⍳2e5 g¨⍳2e5

f¨⍳2e5 → 2.9E0  |   0% ⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕
g¨⍳2e5 → 8.5E¯1 | -71% ⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕
sigh, rank operator
09:34
lol
@KamilaSzewczyk Not a huge difference:
    h←⍸{1=≢∪{⍵[⍋⍵]}¨↓⍉(10∘⊥⍣¯1)⍵×⍳6}
    ]runtime -c f¨⍳2e5 g¨⍳2e5 h¨⍳2e5

f¨⍳2e5 → 2.5E0  |   0% ⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕
g¨⍳2e5 → 6.2E¯1 | -75% ⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕
h¨⍳2e5 → 8.5E¯1 | -66% ⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕
Today's crash seems to have a new error code, normally 137
yeah
@xpqz segfault city
09:35
@xpqz Can you consistently repro?
@Razetime Is this using github.com/kueblc/LDT ?
isn't 137 OOM?
@RikedyP No, CodeMirror.
Sort of. Start a fresh interpreter. Do nothing. Leave over night. Crashed in the morning.
@Adám OK so was it decided that LDT wasn't very good? I half saw some chat earlier but didn't see the conclusion
09:36
@RikedyP It had issues with a dynamically resizing textarea, but TryAPL doesn't have that.
@xpqz Did your computer sleep?
Yes.
I wonder what happens to the network connection between RIDE and the interpreter then…
If I actually use it, it occasionally crashes, too, but I just can't see any particular pattern.
:-(
      ⍸{1=≢∪{⍵[⍋⍵]}⍤1⍉10⊥⍣¯1⊢⍵×⍳6}IÏ⍳200000
ISOLATE ERROR: All processes are in use
oops
09:40
So my observations have been: got much more frequent after upgrading to 18. Frequency decreased after increasing the ws size from its default.
Some days it survives the night, so I don't think it's the sleep aspect.
@KamilaSzewczyk You're trying to launch 200000 OS threads!
sorry, i'm too used to erlang processes :p
@KamilaSzewczyk How to they work?
they aren't real threads and the BEAM vm executes some of them in a single thread and some of them in separate threads
09:44
      cmpx'{⍵+⍸{1=≢∪{⍵[⍋⍵]}⍤1⍉10⊥⍣¯1⊢⍵×⍳6}¨⍵+⍳1e5}¨0 1e5' '{⍵+⍸{1=≢∪{⍵[⍋⍵]}⍤1⍉10⊥⍣¯1⊢⍵×⍳6}¨⍵+⍳100000}IÏ 0 1e5'
  {⍵+⍸{1=≢∪{⍵[⍋⍵]}⍤1⍉10⊥⍣¯1⊢⍵×⍳6}¨⍵+⍳1e5}¨0 1e5      → 5.6E¯1 |   0% ⎕⎕⎕⎕⎕⎕⎕⎕⎕⎕
* {⍵+⍸{1=≢∪{⍵[⍋⍵]}⍤1⍉10⊥⍣¯1⊢⍵×⍳6}¨⍵+⍳100000}IÏ 0 1e5 → 7.4E¯2 | -87% ⎕⎕⎕⎕⎕

      {⍵+⍸{1=≢∪{⍵[⍋⍵]}⍤1⍉10⊥⍣¯1⊢⍵×⍳6}¨⍵+⍳100000}IÏ 0 1e5
┌┬──────┐
││142857│
└┴──────┘
      {⍵+⍸{1=≢∪{⍵[⍋⍵]}⍤1⍉10⊥⍣¯1⊢⍵×⍳6}¨⍵+⍳1e5}¨0 1e5
┌┬──────┐
││142857│
└┴──────┘
i think cmpx is broken with isolates
but they are spid.
i think for projecteuler i'm going to make some sort of load balancer with isolates for my bruteforcy submissions
feels like a little bit of a cop out to me
yes, absolutely
but it's fun!
part of the fun is trying to optimise a solution
what problem is this btw
52
@rak1507 but it's unfair
a Julia solution to the same problem executed in 0.1s with the same search range
and my search range which was around 2000x smaller executed in 20 seconds :p
fair enough
09:48
i think that was problem 50
problem 50 is fast if you do it properly :p
my solution is ~12 ms apparently
well i checked the thread
and there wasn't much interesting stuff there
Maybe I should post ⌈/a/⍨p∊⍨a←∪|,∘.-⍨a/⍨1e6>a←+\p←⍸10 pco 0 1e6 then
@rak1507 This is the truth. APL is fast (if you do it properly).
wha
i used sliding window and it was balls slow :p
09:53
If you were testing all window sizes idk what the time complexity is but I feel like it'd be pretty bad because it'll have to 'loop' through the vector several times
so you take primes from 0 to 1000000, store them in p, then scan it all with + and store it in a
and remove everything greater than 1 million, then take outer product with subtraction, ravel it, take the absolute value and take unique values and store it again in a for some reason
lol my problem 52 answer makes dyalog freeze for a sec but it gets the answer eventually
what is it
⍸{∧/∧/2=⌿[2]{⍵[⍋⍵]}⍤1⊢10⊥⍣¯1⍤0⊢⍵×⍤0 1⍳6}{⍵+10*1+⌊10⍟⍵}⍳100000
@KamilaSzewczyk The APL expression for that would be much easier to type than that long sentence!
09:55
yes, i know
tbh I don't have a clue what that does so I'm going to redo it
⍵+10*1+⌊10⍟⍵ omega plus #digits of omega+1?
oh that gets the wrong answer lmao it needs to be a higher ⍳
so it just prepends the number with 1
oh right, so it does get the right answer after all
lol
maybe
the output of ⊥⍣¯1 on a matrix is confusing
dyadic transpose ftw
10:05
@rak1507 (With a scalar left argument) it is simply one major cell per digit.
So if the result needs three digits to represent the longest number of a matrix, you get an array consisting of three matrices.
@RikedyP it works pretty fine on a static textarea with a scrollbar
{⍵/⍨∧/∧⌿⍤2⊢2=⌿⍤2{⍵[⍋⍵]}⍤1⊢2 0 1⍉10⊥⍣¯1⊢⍵∘.×1+⍳6}100000+⍳100000 @KamilaSzewczyk
nice
i get a domain error
there's probably a way to do it without the dyadic transpose but that made it easier to reason about
⎕IO←0 :)
aaaaaaaaaaa
10:10
should work with ⎕IO←1 if you do ⍳6 and 3 1 2⍉
according to cmpx yours is 80% faster
@rak1507 Look at that, three Rank applications and a dyadic transpose. I'm sensing a true array programmer in the making.
lmao
i used dyadic transpose a few times
but i still don't understand rank
rank with one argument is super simple, apply to rank whatever cells of the argument
{⍵[⍋⍵]}⍤1 sort on rank 1 cells, =⌿⍤2 apply the reduction on each matrix
10:15
i tried using +/ with various ranks, but for 5 5⍴⍳25 it all returns the same result as +/ without the rank
i also tried to make a 3d matrix using 5 5 5 but this doesn't help much
@KamilaSzewczyk Because Rank is only effective on leading axis functions. / is trailing axis.
Use +⌿ instead.
⋄ +⌿2 3 4 ⍴ ⍳120 ⋄ +⌿⍤1 ⊢ 2 3 4 ⍴ ⍳120 ⋄ +⌿⍤2 ⊢ 2 3 4 ⍴ ⍳120
@rak1507
┌→──────────┐
↓14 16 18 20│
│22 24 26 28│
│30 32 34 36│
└~──────────┘
┌→───────┐
↓10 26 42│
│58 74 90│
└~───────┘
┌→──────────┐
↓15 18 21 24│
│51 54 57 60│
└~──────────┘
Essentially, / has an implied ⍤1
. o O (i wonder what leading axis is)
i never understood it
10:16
@KamilaSzewczyk leading axis=good. trailing axis=bad :)
i tried to read the aplwiki article but it's a bit unclear
The leading axis is simply the first dimension, first element of left arg/result of
basically, leading axis functions use e.g. a matrix as a list of its rows. Trailing axis functions treat it as a list of its columns
@dzaima I wouldn't say a list of columns.
10:19
      +/5 5⍴⍳25
15 40 65 90 115
      +⌿5 5⍴⍳25
55 60 65 70 75
      5 5⍴⍳25
 1  2  3  4  5
 6  7  8  9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
i see now
generally if I get stuck I'll use , and then you can see what gets grouped together
i'd normally use +/⍉ instead of slash bar, probably
I'd say leading axis functions use their n dimensional argument as a vector of (n-1) dimensional arrays, while trailing axis functions use their n dimensional argument as an (n-1) dimensional array of vectors.
@rak1507 Safer to use {⍺⍵} or the new ,⍥⊂
true, works fine for numeric matrices though
@rak1507 what does the right tack do here
10:21
prevents stranding
i see
in my APL "derivative" i decided to drop matrices and replace them with nested boxes
i think that's how it works in J
No, wait, you have no rank-2 arrays, only vectors of vectors?
@Bubbler Can I screenshot this for a blog post? chat.stackexchange.com/transcript/52405?m=54176799#54176799
@Adám yes
and the "rank" operator will pick the nesting of vectors a function works on
@KamilaSzewczyk that's how it works in k, and Rankless APL Derivative
10:26
@KamilaSzewczyk That's my proposed Depth operator (J calls it LevelAt, L:).
@KamilaSzewczyk What is ⍉⍉0 0⍴0?
@dzaima TIL
11:11
@RikedyP Yeah, no problem :)
@Bubbler Yay thank you
Basically that statement is still true to me
codegolf.stackexchange.com/questions/167596/… @Bubbler seeing as this was a while ago would it be possible to know the solution or should people still try and crack it
Hey, we just passed 150 thousand messages. That's 100 thousand for the first 3.5 years, and 50 thousand for the last half year.
@rak1507 The hint sounds like unique mask
but idk
11:24
@Adám wow that's quite a few messages
@Razetime nah that's pretty commonly used
hmm really?
I was thinking one of ⌹⍠⌶
11:44
@rak1507 If you still want to crack it, I'll wait until you crack it or give up
I'll give it a go but I'm pretty stumped
@rak1507 Correct (and it was written before Dyalog 18 release, so nothing like Unique Mask)
it must be variant... time to read the docs
idk it can't be it barely does anything
Then I guess I'll reveal it when I get to PC. It's hidden in the post itself anyway
maybe it's a clever mathsy thing with ⌹
11:50
Half right, it uses matrix divide but I don't think it's clever; I just tried random stuff until I got a nontrivial sequence, so it's pretty unfair
 
1 hour later…
13:31
@Adám Yay I'm famous
lol
'not a single person who I consider to be a real prospect for writing substantial new application code in APL has brought up a single one of these issues as a reason why they might not want to adopt APL' survivors bias 'no one who plans to use APL to write an application has these complaints!'
13:46
Time for us to build a real competitor... or maybe not :P
Or maybe write a heavily optimized BQN
@Razetime that's definitely probably a thing that will happen at some point fwiw
@MortenKromberg Dyalog never need to apologise for (or justify) looking after their customer base first.
@dzaima wee
@dzaima (though last message here was 8 days ago :/)
13:49
Never really like the TopAnswers UI
@Razetime me neither. I've heavily customized it ¯\_(ツ)_/¯
I see. css file pls
@dzaima Maybe suggest those changes on Meta?
@Razetime here. warning: much of it is still very ugly and unfinished
@Adám it's by necessity very hacked together, and is intentionally changing intentional design to a different one
the actual q&a part of that style is extremely unfinished & ugly, but at least it's (somewhat) dark-themed. chat is more what I cared about
i've also thought about just making an external chat app, allowing connecting to SE, TA, and Matrix within the same interface
@dzaima isn't matrix supposed to bridge everything
14:02
@Razetime 1) it doesn't have bridges to SE and TA (and even if it did, chatting from it would look ugly, like the current IRC bridge does; also on my todo lists is to finish my SE↔Matrix bridge, but that still won't help with TA); 2) its GUI options suck
or maybe just use separate sites
@dzaima idk, looks nice to me
@Razetime i guess i have higher standards then
@dzaima I've been working on it some, though. I have half of a post walking through how the compiler would interpret (?) a short program, so maybe I'll see if I can finish that and post it.
Progress on the Idris draft is kind of slow because parsing in a pure functional language is annoying, and because I think anything able to demonstrate stuff at all will require closures, which are difficult without mutable data.
why choose it then?
14:16
Will probably switch to a scriptier language once I have the types completely worked out.
@Marshall is there nothing like Parsec?
@dzaima I find I pretty much need ADTs to reason through all the data structures, so I wanted a language that supports and checks them well.
@rak1507 There are parser combinators, but then I have to learn how parser combinators work, which comes too close to yak-shaving territory for comfort.
Although if you know them and are willing to help then it probably wouldn't be too hard.
if you're using a pure functional language why wouldn't you use parser combinators?
I don't think I've done anywhere near enough with them to actually be able to use them outside of tiny examples
ngn
ngn
@Marshall just a couple of sample programs and what they should compile to, would be enough for me
@ngn Okay, I'll finish that post.
14:51
Posted.
how can i golf ((⊢,((2ׯ1↑⊢)+(⊃¯2↑⊢)))⍣⍵)
what does it do
link to the challenge?
the same as ({⍵,(2ׯ1↑⍵)+⊃¯2↑⍵}⍣⍵)
it just iterates a mathematical function
generating a series of length omega with two starting values
@KamilaSzewczyk +(⊃…)+∘⊃…
@KamilaSzewczyk I meant as a high level description
14:59
also you have redundant parentheses around the rhs of ,
i'm solving problem 57 and i want to try code golfing it :p
@KamilaSzewczyk I think you can replace (2ׯ1↑⍵)+⊃¯2↑⍵ with 2⊥⌽¯2↑⍵ here.
so in the end i get ((⊢,2⊥∘⌽¯2↑⊢)⍣⍵)
nice
Or 2⊥2↑⌽⍵, which makes a nice train.
15:05
((⊢,2⊥2↑(⌽))⍣⍵) i want to somehow get rid of the paren around circle stile
but i'm not sure how to do it
@KamilaSzewczyk Use the backspace key?
5
... i swear it didn't work without it
i'm a bit stupid at times
A parenthesis around a single token should never do anything (but sometimes in the LHS of assignment it matters).
@rak1507 did you finish problem 57
is it possible to do it without using bignums?
16:08
What does the following tacit phrase mean? ⊢⍤/⍨ -- and what would it look like in dfn?
@xpqz Same as /⍨ or {⍵/⍵}/{⍵/⍺}
Why the rank?
It isn't Rank, it is Atop when used with a function right operand.
⊢⍤/ is generally used in trains to force / into being a function.
Yes, that's where I found it 1↓,⊢⍤/⍨1(⊢∨⌽)0,≠
My brain sees ⍤ and thinks rank.
Pro-tip: For monadic atop, you have 4 options, but you should use or (f g) unless you're writing backwards compatible code.
16:20
thank you very much
@PeterHull and @sodimel Hi there. Interested in APL?
Practicing my un-taciting skills, I got from 1↓,⊢⍤/⍨1(⊢∨⌽)0,≠ to {1↓(⍺,⍵)/⍨x∨1⌽x←0,⍺≠⍵}
Excellent work.
It's a bit "the good, the bad and the ugly" -- good: it seems to be right, bad: it took me a while, ugly: the tacit original :)
It was the longest tacit I could find with a quick browse in APLCart.
16:35
You can unswap / in the dfn.
Yes, good point
@xpqz Did you search for tacit and scroll to the bottom?
I feel a little bit sick.
(,⊢⍤/⍨(⊢=⍴⍴⌈⌿)<\⍤,⍤∧⊢=∘⍉⌽∘⍴⍴⌊/)
How about (2*∘÷⍨((≢×+.*∘2)-2*⍨+⌿)÷≢ׯ1+≢) (monadic)?
Ok, I think if one can do those, the work here is done...
16:42
Next step is going the other way, no?
Yes, I find that a bit harder but it also feels a bit less important right now -- I want to be able to read tacit that others (incl APLCart) write, but for code I write myself I'm usually ok with dfns.
@user5314949 If you want to participate here, email [email protected]
@xpqz Fair enough, but I'm telling you, once trains become natural to you, they'll become a tool of thought. You'll start "seeing" forks and overs etc.
@Adám we need a term for the "Seeing" part
Trainspotting
hahha yeah
16:54
@Adám good movie
I can agree with that term
@xpqz How would you write the dyadic function ⊣,⍥(2*∘÷⍨+.×⍨)⊢÷2⍨ as a dfn?
I'll let you know in half hour
@KamilaSzewczyk yes I used a matrix maths method with bignums but I'm going to redo it at some point
@xpqz I agree with adam, once you get used to it, certainly short tacit functions become a lot more 'simple' than the equivalent dfn (⊣÷⍥!-) vs {(!⍺)÷(!⍺-⍵)}
17:13
@Adám maybe {⍺,⍥{(⍵+.×⍺)*0.5}⍵÷2}?
17:28
genius
@xpqz wow wow wow. neat.
ngn
ngn
@xpqz it would look more proper with every other letter in orange :D
CUQ: How many of you have watched Trainspotting?
ngn
ngn
@Razetime between 0 and 14
17:36
@ngn b⍥⍥⍥⍥⍥⍥⍥⍥⍥
@Razetime The. Worst. Toilet. In. Scotland.
@Razetime Somehow despite parts of it being filmed in the city I live in, I still haven't seen it
@xpqz YES
how good is big from dfns
17:39
are there some better alternatives to it
Yes, using a vector of digits
i found it slow
@KamilaSzewczyk using dzaima/APL
It is much faster and also still fairly easy
17:40
i kinda want to roll my own bignums for APL
I don't know how dfns.big manages to be so sluggish, but I reckon that would be pretty easy at least for basic operatiosn
Official dzaima/APL simp™️
ngn
ngn
just do this one in python
Blasphemy!
Which one is it?
17:43
uhhh
ngn
ngn
57?
i came up with a really good solution to 75
but it overflows
and the moment i realized it i kinda hhhhhh'd
Currently redoing 49 please stand by for an unspecified amount of time
17:44
 euler49←{
     q←0 3330 6660
     p←(∊∧.∧∊⍨)⍥(10∘⊥⍣¯1)
     m←{(b c)←⍵ ⍵+1↓q ⋄ ⍵×(b p c)∧(⍵ p b)∧(∧/1∘pco¨⍵ b c)}
     {10000⊥q+⍵ ⍵ ⍵}(⊃(m¨1489+⍳1850)~0)
 }
this was my 49
i'm quite proud of that one
ngn
ngn
pco is cheating. you should impl your own sieve :)
i don't mind cheating, i just want it to produce a solution quickly
if i rolled my own sieve it'd take ages for me to optimize it
      2.5 +big 3.6
711
welp
⊃,/⍕¨1⌷n⌿⍨∧/⍪2=⌿⍤2{⍵[⍋⍵]}⍤1⊢2 0 1⍉10⊥⍣¯1⊢n←(n,s)⌿⍨p∊⍨s←b+b-⊃a b←↓⍉n←↑⊃,/(1+⍳≢p)↓¨↓∘.,⍨p←1000+⍸10 pco 1000 9999 here's mine
(⎕IO←0)
seems to only be marginally faster
realising that ∧/∧⌿⍤2⊢ could be ∧/⍪ was nice
I've never really used ⍪ much
17:53
well, that's one rank operator less :)
@rak1507 is just ,⍤¯1
right makes sense
00:00 - 18:0018:00 - 00:00

« first day (1471 days earlier)      last day (1480 days later) »