@emanresuA I was finally able to take a look at this. When vectorising, it gets the arguments for the vectorised function using wrapify, and the number of stack elements to wrap is the arity of the function, function_A.arity. In this case, the arity is 0, so nothing gets passed to the function. When it tries to run the function with no lhs, it errors. Fixing it will probably just be a matter of special casing niladic vectorisation.
Oh, I didn't bother actually setting up a test account, I just followed the link and it seemed to go to the right place
room topic changed to Vyxal: For discussion about Vyxal. Repo: github.com/Vyxal/Vyxal | Org: github.com/Vyxal | Interpreter: vyxal.pythonanywhere.com | Discord: discord.gg/N9AfEF9zz5 | Type !!/info for more info [actually-12-now] [chat-bot] [code-golf] [dank-memes] [discord] [epic-gamers] [joe] [never-gonna-give-you-up] [powered-by-copilot] [rickroll] [short-programs] [too-many-tags] [unicode] [vyxal] [vyxal-bot] [we-currently-have-11]
@AaroneousMiller This also explains why vectorising numbers works fine; as noted in the PR for the monadic filtering, numbers currently are considered to have an arity of 1, rather than 0.
The reason why numbers have an arity of 1 is because of this line where it gets the arity of a command. It gets it from elements.py, but if the command isn't there, as in the case of numbers, then it defaults to an arity of 1. I don't think it should be too hard to special case numbers to have an arity of 0, though.
I'm going to change the character tokentype to string. While I'm doing that, can somebody give me a few test programs using backslashes to make sure it doesn't break anything?
I'm realizing that the idea of e.g. vectorising a command that applies to the entire stack doesn't make much sense, so although I've pretty much figured out how to get this working, I'm not exactly sure what the results should be when using modifiers on full-stack commands.
For instance, looking at the output of this, it's clearly wrong, but what should the result be?
if you run python without any arguments, it brings you into the REPL, where you can just type python commands and it executes them immediately, sort of like a python command prompt
A read–eval–print loop (REPL), also termed an interactive toplevel or language shell, is a simple interactive computer programming environment that takes single user inputs, executes them, and returns the result to the user; a program written in a REPL environment is executed piecewise. The term usually refers to programming interfaces similar to the classic Lisp machine interactive environment. Common examples include command-line shells and similar environments for programming languages, and the technique is very characteristic of scripting languages.
== Overview ==
In a REPL, the user enters...
Fatal error in launcher: Unable to create process using '"c:\program files\python37\python.exe" "C:\Users\jeeva\AppData\Roaming\Python\Python37\Scripts\flask.exe" run': The system cannot find the file specified.
You remember how we figured out that being sleep deprived makes you better at Vyxal? I literally just found this ACE last night around 3 AM, about 15 hours ago
@emanresuA Yeah, and it was only by chance that I noticed it as I was working on other issues. What's funny is that the part that caught my eye isn't even the part that allowed for the ACE, but it is the part that made me think ACE was possible
The R flag makes it so that any time that a number is cast to an iterable, it is a range from 1 to n instead of a list of digits. In this case, it makes it so that using ∑ on 4 returns 10 instead of 4
The ₍ modifier parallel applies the next two elements, and then wraps the results in a list. In this case, it makes it so that ¡ and ∑ are both acting on the implicit input, instead of ∑ acting on the result of ¡.