« first day (185 days earlier)      last day (4282 days later) » 

12:30 AM
@Rojo are you around?
 
12:55 AM
@Mr.Wizard Hey
Pinging is working weird for me some times lately
 
lol -- I was just leaving. (but I'm staying now)
 
Hehe
Whats up Wiz
 
Sorry, I was trying to find the link again. Please take a look at this answer: mathematica.stackexchange.com/a/1997/121
 
@Mr.Wizard Read it, now rereading it to understand it better
(the question yet, I'm slow)
Oh, I see
He wants to do stuff like f[x_]=sth, but being sure that x doesn't have a value
Nice one
Now, your answer
@Mr.Wizard That's a great one
Now, the comments
 
I wasn't seeking approval, but thank you. Also, you're very thorough, which is probably why I'm about to ask for your help. :-)
 
1:05 AM
@Mr.Wizard Tell me
 
Okay, background. Set evaluates its LHS argument, but in a special way. Consider:
pat = x_;
head = f;
f[_] = "Fail";
head[pat] = {x, 2};
?f
 
Yeah
 
I'd like to extend localSet to handle a case like this, meaning that x would be localized.
 
I see
 
I cannot think of an elegant way to do this. It seems like either it's going to evaluate too far, or I'm going to have to get rather fancy about it. (e.g. my step evaluator, etc.)
(pardon, be right back)
 
1:09 AM
I don't see how you can avoid using something involving explicit blahValues yet
Brb
Oh
No
Pattern is HoldFirst, so it shouldn't be any problem
An untested idea before I go to the toilet
Prepend this definition
localSet[head_[args___],
rhs_] := {head, {args}} /. {h_, {a___}} :> localSet[h[a], rhs]
 
@Rojo I think we'll need a /; ! TrueQ[$...] but that should work! I don't know why I didn't think to separate the head and its arguments.
 
@Mr.Wizard Tail recursive is nicer
localSet[head_[args___], rhs_] :=
localSet[{head, {args}} /. {h_, {a___}} :> h[a], rhs]
 
I wonder if this can be made to work with Leonid's concerns about UpValues.
 
Let me read
I see
 
@Rojo I don't follow; how is that supposed to prevent recursion?
 
1:20 AM
Forget my last comment on tail recursive, wouldn't work and makes no sense
 
Someone once told me: "The best minds make the best mistakes."
That would be Sjoerd, right here.
 
@Mr.Wizard Was he the one that also told you that you code perverse MMA?
 
@Rojo Let me check; I think that was Simon.
 
Ok, let's try to make this work with upvalues
 
@Rojo Confirmed, Simon.
@Rojo I didn't ask you to do that; you already cleared my mental-block regarding this.
 
1:25 AM
Oka
:)
 
Thanks, collaborator. :-)
 
No prob. Any interesting thing I may have missed this week?
 
Probably, but my memory's none too good. I'll ping you when I think of something.
 
 
9 hours later…
10:06 AM
Ciao @MrW
I don't really know how to implement what you're asking for, but I don't see how Set has this property. Let me read again with more care.
 
Hello @Szabolcs
 
Hello
 
I'm tired and probably not thinking too well. I'm mixing different meanings into one I'm afraid and that's probably causing confusion.
 
It's 3 AM there. Get some sleep :-)
 
First up, my sloppy "leak" example was a last minute shorthand for this:
_[___, up2, ___] ^:= "Hidden";
TracePrint[f[1, up2] = 2,
 TraceInternal -> True]
In the output of that command we see Hidden indicating that at some point the DownValue was either evaluated or otherwise "viewed."
Do you see that as well?
 
10:13 AM
Yes, I see what you mean. Let me try it with a HoldAll function, out of curiosity.
It does not happen in that case.
Attributes[h] = {HoldFirst}
TracePrint[h[x[up]], TraceInternal -> True]
It's something specific to Set that it evaluates the UpValue.
 
@Szabolcs Yes, exactly.
 
Moornin
 
@Rojo Already?! ;-)
hello
 
Yeah, woke up early it seems :)
Go on, go on
 
Okay, suppose I simply want to mimic the behavior of Set: myfunc[ f[. . ., up, . . .] ] and have it evaluate all the arguments of f besides up. Does that make sense?
 
10:18 AM
I don't think that "Hidden" is being evaluated
 
This is actually where I started on this, but then I thought this could be extended to the function f itself (assuming HoldAllComplete).
@Rojo Apparently not (see failed "leak" example) but what then?
 
I think that
it's a Trace thing
running something like
Print@HoldForm@up
 
Of course! I see it now. Duh. :-s
Blah... okay, time to delete that from my question.
@Szabolcs does my question make sense to you now or not?
 
Yes, it does.
 
I think I'll leave it there then and get some rest. Please correct any other obvious foolishness you find.
bye guys!
 
10:31 AM
@Mr.Wizard my gf is annoyed that I spend too much time here, I have to go ...
 
 
2 hours later…
12:05 PM
Any ideas how to make the image uploader ad both eye catching and pretty? I'm not really happy with what I manahed to make... :-(
The background is just a random selection of recently uploaded images.
 
 
1 hour later…
1:19 PM
@Szabolcs Hi!
 
Hi @belisarius
 
Trying your amazing Image Uploader Super Collider now
 
@belisarius Wait for 1 min please, I just uploaded a new version.
 
@Szabolcs Ok! So I will test the upgrade feature :)
 
@belisarius Okay, you can download now. If you didn't, then please try if the update check button works!
It doesn't auto-upgrade yet, it just checks if there's a new version.
 
1:22 PM
yep. The version test worked
let's see if it upgrades flawlessly
 
It should simply tell you that there's a new version, and stay reddish (I changed the colour now to LightMagenta, it reminded me of errors too much)
 
it IS reddish indeed
Any special care for upgrading?
or should I just overwrite and reinstall?
 
This new version will automatically check for updates every 5 days now (if you open the palette). It shouldn't complain about errors if something is wrong, and it's put in TimeConstrained. Let's see if people will complain ...
@belisarius Just download the archive again, open the notebook, evaluate it, Palettes -> Install palette ..., and use the same name. It'll overwrite it.
I'll make this easier to do in the future.
 
@Szabolcs Re: Just download the archive again .... Overwriting the old one, or in a new folder?
 
@belisarius You can overwrite the new one, but make sure that you extract all files---the .nb, the .m and version. The open the .nb, and evaluate it in full. It'll create a palette. You can install this palette over the old one in the palettes menu.
I think I'll just distribute the palette notebook from now on ... it should be easier.
 
1:28 PM
I guess so
 
I hope there won't be problems with the "enable dynamic" thing if I do that.
The postman was here.
Yes, you're right: it's too complicated as it is. I think I'll distribute the palette notebook only and make it auto-upgrade (if you want it to) instead of just notify about the update.
 
@Szabolcs I think that will be a good idea. I don't work with palettes, and the upgrade process is somewhat confusing
@Szabolcs Ok. The upgrade failed. Probably I failed to use the same name. How could I uninstall everything I installed (meaning the two versions) and start all over again?
Is there an "uninstall palette" thing?
 
@belisarius You're on WinXP, right? Type %appdata%\Mathematica\SystemFiles\FrontEnd\Palettes into a Run... box (just open that folder)
The palette notebook should be there. Just delete it.
 
yep, both are there
ok
 
Wait, I'll give you the palette notebook directly
@belisarius Drop this notebook there instead: dl.dropbox.com/u/38623/SE%20Uploader.nb Then restart the front end.
@belisarius Try this link if your browser gives you trouble downloading . .. I need to learn how to do these things properly...
@belisarius Is it okay now?
It's good you told me that it's not easy to handle. I'll try to make it easier to install today.
 
1:49 PM
@Szabolcs Yes, sorry but I did it "the old way"
 
that's fine too
 
@Szabolcs Anyway, I blame my lack of expertise on palettes and not the install method
 
I want it to be easy to use!
 
@Szabolcs So, the "update check" should be gone ... schedule a check for new version and upgrade automatically ... works for idiots like me
 
I'll keep it a manual process. It'll automatically check for updates every 5 days. If there is an update, the button will highlight. If you press the button, it'll give you the option to automatically update.
 
1:53 PM
@Szabolcs A question ... where are you saving the history?
@Szabolcs Seems fair enough
 
@belisarius I use two places for persistent storage. The history goes into the TaggingRules of the palette, which is saved into a special place for palettes that are installed (see here). The history will persist even after you upgrade.
@belisarius The latest online version and the time of the last update check are stored in the tagging rules of the front end. Try CurrentValue[$FrontEnd, {TaggingRules}].
 
hehe "SEUploaderLastUpdateCheck" -> 3.5518563737155000*10^9
 
Also try CurrentValue[$FrontEnd, "PalettesMenuSettings"].
 
Heike's torn paper thing would be a great addon
 
It's planned!
 
1:56 PM
Yep. I saw
I think it could be very nice if all our images are neat on the site
 
First I want to implement the update, then the image cropper, then the torn paper effect, maybe code uploader, then finally better reasterization for Mac/Linux (it's important but it's difficult to do)
 
@Szabolcs It's a pity I can't contribute. I will start learning something about palettes. It's time ...
 
I'm also learning at the same time as doing it. UI building was new to me.
 
MMa has too many things to learn :)
A history delete feature should be part of the roadmap someday
 
Oh yes, that too.
 
2:02 PM
@Szabolcs I'll show you
 
With Grids? What exactly would you like to do with grids?
 
upload that
@Szabolcs without rasterizing first
 
@belisarius Got it now. Try selecting the grid using a sweeping motion of the mouse, the same you use when you select text. The selection outline should be orange now. (I.e. click to the right of the grid, keep holding the button, drag the mouse left.) Now it should work.
 
hehe nice
I didn't know a grid can be selected as a graphics
@Szabolcs You made quite a nice app! Congrats!
 
Actually it is graphics. It's a Graphics with Insets, I think.
Thanks :-)
 
2:12 PM
Yep. a graphic with insets. That is it
 
 
3 hours later…
4:59 PM
I just don't know where to host the file to be updated. I tried using GitHub's Downloads section, but Import seems to cache the file, so the new version won't show up until a restart.
 
@Szabolcs I don't think Import[] uses a cache, perhaps it's elsewhere
 
@belisarius Perhaps Java does it. I import a file containing 1, then replace it on the server by a file containing 2. I verify that my web browser downloads 2. But Import still gives me 1 until I restart Mathematica.
This happens on GitHub. It does not happen with Dropbox.
 
uh uh
 
I tried Google Code, but not even my web browser gives me the new version.
Going to try BitBucket now.
Same as Google Code.
 
would you like me to try?
perhaps it's a problem with your caches ..
 
5:08 PM
Just a sec...
@belisarius What do you see here?
If you see 123, that's not good. It means the server is caching it.
 
I see asd
Wait ... Why don't you post the code into mathematica.SE and then extract the
<pre><code> ..... </code></pre>
thing
so it's auto-contained
into this site
 
hm.. it's some server-side caching, maybe slow distribution in the content delivery network
 
welcome to the cloud :(
 
I don't want to just post it on SE because the palette file contents are not really human readable, and the code is quite big too. People will try to copy it by hand, they'll mess it up ...
I think I'll use GitHub anyway
but only tomorrow, got to go not to be late from the jazz festival! :-)
 
@Szabolcs Enjoy!
 
 
5 hours later…
10:17 PM
Any mod around?
Any 10K user?
darn
 
10:34 PM
@belisarius I can see deleted questions, what do you need?
 
@Szabolcs I deleted a question ... I forgot I lost the privilege to view it again :(. I just wanted to edit it offline. Shame on me
 
@belisarius I don't know how to find self-deleted questions. I can see moderator deleted questions through the mod tools.
 
@Szabolcs Are you a mod?
 
ok. Thanks Sza. Let's wait if can do it
 
10:39 PM
I can see deleted questions if I have their address, but I can't find out their URL if they're self-deleted and I haven't bookmarked them before deletion
 
Damn. I hope I didn't lose it :(
 
Hola!
 
@VitaliyKaurov Hi!
 
I think yesterday I deleted a question and could not find it even through "recently deleted" link.
 
@VitaliyKaurov here is the answer. you need a mod
6
Q: Why are self-undeleted posts not shown in the 10k tools?

lunboksI can understand not dragging self-deleted content into the spotlight. If there were problems with it, it's deleted anyway and they don't matter now, and the OP probably had their own private reasons for deleting it. Nothing wrong with self-deleting answers if you know they're bad. But why are s...

and me too ...
 
10:48 PM
haha i see. So basically the only way now is to ask a mod to un-delete it - correct?
 
@VitaliyKaurov Hmmm .. not sure whether he can undelete the q. But at least he can recover the content and send it to you
 
11:04 PM
@wreach will you join me?
 
@Mr.Wizard Hey! I need a mod!
 
@Mr.Wizard hi
 
Hello WReach. :-)
@belisarius what's up?
 
@Mr.Wizard I deleted a question (mine), and forgot I am a poor plain user here. want to undelete it
 
@Mr.Wizard I corrected my comment (twice) while you were typing yours. But I was on my iPad so it is a... pa...in..f..ul process :)
 
11:08 PM
@belisarius it deletes the question and then wants us to undelete it? What shall we do with it?
 
@Mr.Wizard Kill him
 
OK, which Q? :-)
 
@Mr.Wizard something about exclusions
 
@belisarius yeah, I was looking for that question - where did it go? - now i know ;)
 
@belisarius Done.
 
11:09 PM
@VitaliyKaurov hehe
@Mr.Wizard Thanks! You will get a beer when you come here!
 
@WReach I see that your method works but I wonder how it works, just as I do with Set -- do you understand the mechanism used by RuleCondition to evaluate its first argument?
@belisarius Your beer is safe as I'm not a world traveler.
 
@Mr.Wizard I don't understand how RuleCondition works, I have only observed that it has non-standard evaluation that can be used to good effect in held contexts. I was surprised that it worked with my proposed change to Szabolcs answer. But it does.
 
@Mr.Wizard What a pity! It was coupled with a nice roasted pig ...
 
@belisarius Those sausages looked nice too...
 
@Mr.Wizard I am leaving for a nice bbq in half an hour. Mouthwatering now ...
 
11:18 PM
@Mr.Wizard In particular, I expected the evaluation of hci to suppress the up-values, but then I would have thought that another round of evaluation would kick in and the up-values would be applied. Apparently, RuleCondition prevents the additional round of evaluation somehow. I'd sure like to see the internals of some of these built-ins :)
 
@WReach Thanks, that's exactly what I was wondering about too.
I think Rojo showed the only non-black-box method for doing what I asked. I wonder if something similar is done internally by Set and RuleCondition. I guess we just have to wonder, unless you can hack .mx files. :^)
 
@Mr.Wizard I liked your "if we can't beat, join 'em" approach by bending Set to your will in your solution. Another clever trick. I always wonder whether any of these clever tricks that we find will just quietly disappear some day with some new release of Mathematica (like the change in Return that you and I stumbled across a while back).
 
@WReach I worry about that as well. It is of course more robust to do it in the language directly without these tricks, which is why I will probably be Accepting Rojo's answer.
 
O let the soul her slumbers break,
Let thought be quickened, and awake;
Awake to see
How soon this life is past and gone,
And death comes softly stealing on,
How silently!
Swiftly our pleasures glide away,
Our hearts recall the distant day
the pain
The moments that are speeding fast
We heed not, but the past,—the past,
More highly prize.
 
@Mr.Wizard I agree, Rojo's answer is my favourite so far.
@belisarius WRI needs you to write their error messages :)
 
11:33 PM
@WReach Well, not me
Jorge Manrique (c. 1440 – 1479) was a major Spanish poet, whose main work, the Coplas a la muerte de su padre (Stanzas about the Death of his Father), is still read today. He was a supporter of the great Spanish queen, Isabel I of Castile, and actively participated on her side in the civil war that broke out against her half-brother, Enrique IV, when the latter attempted to make his daughter, Juana, crown princess. Jorge died in 1479 during an attempt to take the castle of Garcimuñoz, defended by the Marquis of Villena (a staunch enemy of Isabel), after Isabel gained the crown. Man...
 
@belisarius shhhh, i was prizing the past
 

« first day (185 days earlier)      last day (4282 days later) »