RIDE is a dumb HTML renderer. It is actually the interpreter that controls everything, and simply tells RIDE what to show and do. From RIDE, you can save your session using 2⎕NQ⎕SE'FileWrite'
@PyGamer0 It is not meant in a bad way, or anything. I don't know how else to briefly note that RIDE as little idea about what's going on. It isn't like a normal IDE that manages your code. It simply hands off almost everything to the interpreter.
This model was necessary because of the tight integration of the language and the environment.
@Adám at Dyalog 18 there was a presentation on the future of RIDE (here). On slide 17 it mentions work to support the Language Server Protocol and debug extensions (now an open standard). Did that work get shelved?
@RikedyP for integers, there's no difference, an implementation can choose to special-case it. For floats, I think dyalog just doesn't guarantee it being equal to {⍺+⍵}\
@dzaima Awesome thanks - so something about the order (or ability to compute the cumulative sum in chunks rather than as scalar-by-scalar) is what makes it work. I saw Marshall's talk on reductions which makes sense sense the end result will be the same since + i commutative, but it's not obvious to me how it still works with scan since you need the intermediate results from the right order
@RikedyP Take the first number and put in result. Add the second number and append to result, add the third number and append to result… Voila: Linear.
you can make all sorts of such fancy hacks for linearizing most useful scans
@RikedyP Dyalog doesn't actually appear to do that for +\ - ⎕ct←0 ⋄ a←?1000000⍴0 ⋄ (+/a)≡⊃⌽+\a is always 1, which means it must still be doing it scalar-by-scalar
@RikedyP f\a b c d = a (a f b) (a f b f c) (a f b f c f d) which due to the RTL nature of APL evaluation needs to calculate each one separately unless (a f b) f c = a f (b f c) which allows it to be special cased
@Adám the two are equivalent reasons for the difference. And I'd assume that the origin of the behavior of +/ was accidental, because of the assumption of associativity
Afternoon all. Not sure if I'm missing something super simple here. I'm setting up a task to test out communications with the Microsoft Office OLE on Windows Server 2019 (been having some problems for a client). I run a WinFile.PolishCurrentDir (essentially setting the cd to that of the workspace). That allows me to read my INI file using a relative path, but when I go to work with a sample Word doc, it's looking in the wrong place (under my user folder).
myWordDoc←Word.Documents.Open⊂'./Data/Test.rtf' yields DOMAIN ERROR: Sorry, we couldn't find your file. Was it moved, renamed, or deleted? (C:\Users\james\Documents\Data\Test.rtf)
@Adám Essentially I was hoping that things would look relative to the current directory (F:\APL_Dvlp\Tasks\TestMSoffice). But Word is looking under my documents. Is this just a feature of the Word OLE?