57,182 reputation
5161254
bio website mathprogramming-intro.org
location St. Petersburg, Russia
age 37
visits member for 2 years, 7 months
seen 25 mins ago

Ok, an obligatory note: opinions expressed here are mine and not those of my employer.


Jul
27
comment How to avoid nested With[]?
@QuantumDot The Let part comes from an analogy with Lisp, where there is a similar function. The L stands for Leonid, because originally there was a mathgroup thread with different implementations, and I had to somehow differentiate mine from the others.
Jul
26
comment AssociationMap to query Dataset across levels?
@alancalvitti I think, at some point, when you make your queries more and more general, you have two choices: either use internal Dataset wrappers, as you do, or write your own custom transformation, using only raw lists and associations, and not using the Dataset syntax. In any case, for your last comment, the recommendations of WReach may be the way to go.
Jul
26
comment AssociationMap to query Dataset across levels?
@alancalvitti See if my edit works for you.
Jul
26
revised AssociationMap to query Dataset across levels?
Modified keyStrip. Added a slightly different method
Jul
26
comment AssociationMap to query Dataset across levels?
@alancalvitti I was using your own function foo. Now you say you don't want to use it. Your question, precisely, was "Is there a way to avoid inefficient downcasting to Normal and back to Dataset to use AssociationMap?", asked about your last line of code, - and this was precisely what I was answering. I will revisit this later if I have the time. Try to formulate your questions better, at least if you care about me answering them - this is not the first time I found your formulations vague, while I usually do not mis-interpret questions, and certainly have other things to do as well.
Jul
24
revised AssociationMap to query Dataset across levels?
added 19 characters in body
Jul
24
answered AssociationMap to query Dataset across levels?
Jul
23
comment What is the story with Removed symbols?
@VladimirReshetnikov Interesting. Looks like a bug to me (the second behavior). The concept, as I understand it, is to have Removed as a print form, not as a full-fledged head. So that the symbols that have been removed, are cleared from all definitions, and no longer associated with their names (although, apparently, they can still be used in certain ways, as I outlined in my answer).
Jul
22
revised Changing Values in an Association using Map
Added a section on the role of Hold-attributes
Jul
22
revised Changing Values in an Association using Map
Added more on immutability
Jul
21
revised Changing Values in an Association using Map
Added more on immutability
Jul
21
answered Changing Values in an Association using Map
Jul
21
comment Struct equivalent in Mathematica?
@Reb.Cabin All right, then I know whom to bombard with stupid questions when I finally get my hands on it :)
Jul
21
comment Struct equivalent in Mathematica?
@Reb.Cabin I am going to do that, in fact. Clojure stands high on my to do list. Thanks for the suggestion, anyway!
Jul
21
comment How to make use of Associations?
@Nasser No, there isn't. In fact, your suggestion might be better, since it will preserve the order of the key.
Jul
20
comment Why is AllTrue much slower than VectorQ?
@Mr.Wizard Alas, no. There was some other discussion, where I was mentioning the speed of VectorQ[..., NumericQ] in my answer. I seem to remember that Szabolcs also posted an answer there, also mentioning this.
Jul
19
comment Why is AllTrue much slower than VectorQ?
Re: post vs delete - let's see what others think. Actually, this issue has been already discussed in another place here on SE (as a sub-topic of a wider discussion), but I can't find it now.
Jul
19
comment Why is AllTrue much slower than VectorQ?
It is clear both from the absolute timings, and the complexity, that VectorQ[..., IntegerQ] has been specially overloaded on packed arrays to be constant time. In other words, the top-level evaluator doesn't actually evaluate IntegerQ on every element in a list here. But AllTrue has no choice, being more general function, and has a linear complexity, as it should.
Jul
19
comment Normal // Association // Dataset workaround for some user query operators
@Rojo Good point.
Jul
17
comment Defining a sequence slot programmatically
@TeakeNutma AFAIK its not. LetL also supports shared local variables in definitions, as well as macro-expands at definition time, which makes it zero overhead w.r.t. manually-written nested With in function definitions (these are related). Again AFAIK, Where does not have this functionality.