Yeah, = is a Scalar Function, meaning that it will compare individual elements of the left and right structures. So 'abc'='acc' returns 1 0 1, while 'abc'≡'acc' just returns 0.
@AidenChow Index Of! It's a really good tool to have in your belt :)
By the way, is ⍳⍨ as shorthand for ⍳∘≢ really abusing ⍳? I don't see it in the idiom list, so I'd assume that the latter is O(1) while the former is O(n).
@Adám BTW, I had a chat with Aaron earlier about Under, since I have lots of thoughts about it. He suggested we form a discussion group, and I propose the name Underground Talk if we do.
wtf is going on with my fork... ive been trying to see the issue for ten minutes and i dont see whats wrong.... so i have this function h define elsewhere
and im trying to do {(h ⍵)/(⊢⍵)} as a fork
now {(h ⍵)/(⊢⍵)} is working perfectly fine
then that look like the fork format (f g h) ⍵ -> ( f ⍵) g ( h ⍵)
so i try h/⊢
and wtffffff??? it dont work now??
do i have some fundamental misunderstanding of what a fork is??
@AidenChow No you don't. It's just because / is a hybrid glyph that can be either a function or an operator, and will be interpreted as an operator if there is a function to its left
e.g. either or both of using sensible variable names and providing comments that explain why your code is doing what it is doing - to aid in demonstrating to the judges your understanding
↑ an example of a positive, actionable advice for improving readability
but I will give an example of where I personally (not an official judges statement) believe that lots of variables in a one liner is less good than some equivalent
@AidenChow right - I think you may be thinking too much about very tiny details. Remember, in APL there is always several ways to express the same thing, so we don't have super specific judging criteria like "always use tacit" and "never use variable" because different styles can be used and be equally readable and good solutions
@AidenChow there is an element of subjectivity - and this is an ongoing debate. We certainly could not writing something like "deduct one point for each new variable used in a phase 1 problem" because that would be nonsense
@RikedyP lol ya, i think yall really need some kind of rubric or scoring system or smth for this... seems very subjective to what the judge like and dont like...
can easily get marked off just becuz the judge dont like smth in my code
@AidenChow we do give scores based on criteria, just not a super specific rubric, and there are a handful of judges of varied experience and taste, so I believe it comes out fair. Obviously we understand that a public rubric would be helpful for contestants, but we would want to write one which continues to allow the flexibility in styles and approaches that we love to see every year.
You're certainly not the first person to raise this issue
although it has only been in the last few years, I don't believe anyone brought it up in the decade before, oddly enough
hopefully we can take that as a sign of interest in the competition having grown
I think most coding competitions have to use some more specific and boring judging criteria like "who submitted solution first" or "wrote the fastest code", so I hope you can understand how we want to preserve what we feel is a pretty unique style of coding competition
yea pretty unique, but also some concern about too much subjectivity. after all thats why these other coding competitions u mention have those criteria in the first place
@AidenChow well, although I said you might be overly worrying about certain details, the fact that you're worrying at all is a good sign that you're likely to have a high quality submission
@RikedyP yea idk if i want to do phase 2... seems like a hassle to get a local copy of apl on my laptop to test everything... and i might need to make my own test case too just to ensure my code is correct
wait u need to submit correct solutions to both problem in phase 2 to qualify for that raffle thing right
You must be a full-time student at the beginning of the competition. You must correctly solve at least one (1) Phase 1 problem. You must correctly solve at least one (1) Phase 2 problem.
there are two phase 2 problems - but you must correctly and fully solve one of them
@Adám Doc for ⎕USING says "The first string specifies the name of a .NET namespace; the second specifies the pathname of an assembly file. This may be a full pathname or a relative one, but must include the file extension (.dll)."
However, dotNET core interface guide has an example like this:
That particular example seems to work, but playing around a bit, supplying the .dll extension seems to cause the assemblies to not be found.
E.g. ⎕USING←,⊂'System.Diagnostics,System.Diagnostics.Process' ⋄ Process.GetCurrentProcess calls the method as expected, but with .dll on the assembly name, it generates a value error.
@AidenChow Ah, okay. I know very little about Windows, unfortunately. I would expect there's a way to install under your own user, though. Until someone else with better knowledge than me comes along, it might be worth searching around for general information about installing software as a regular non-admin user.