« first day (2681 days earlier)      last day (1793 days later) » 

12:07 AM
I'll write a blog post detailing how I do it in EasyIDE I think...
 
12:40 AM
Does someone have a rational expression, why JSON needs to escape slashes in file-names?
ExportString[
 Association["Dir" -> $InstallationDirectory],
 "JSON"
 ]
 
@Szabolcs Yeah, it's really a big step. But I wonder if they've been ready for the flood of bug reports? :D
 
@xzczd l o l
1000% not
But with their (hopefully) new open bug tracker it'll be easier to see which of the reported flood of reports are fixed.
I mean every time there's a new release between successive reports the case number jumps like 5 billion
 
 
3 hours later…
3:57 AM
@halirutan That doesn't show that JSON needs to escape slashes in filenames. Indeed, JSON does not: `ImportString["{\"Dir\":\"/Applications/Mathematica \
12.app/Contents\"}", "JSON"]` There is still the question of why they do it, though.
 
 
3 hours later…
7:21 AM
Hey, it's my MMA.SE birthday! Visited the site 365 days now :)
In 1 year 1 month, apparently. Which means it's about 1 year and 3 months since I picked up WL for the first time :)
 
7:53 AM
@andre314 I further wonder what are the CPU/process/etc limits on the Wolfram Engine for Developers... I wouldn't really want to activate an installation for this purpose only, I'm trying to build a "nice" system that packages things on Amazon Web Services and would avoid continuously sending license transfer requests to WRI.
Then again, I could of course create throwaway email addresses for this purpose... :I
Hmmh... that Jupyter integration is probably useful for my ambition on integrating cloud-based "headless" WE instances on a desktop version...
LocalSubmit and other Tasks functionality advertises to be pre-emptive multitasking. Does it really work? Traditionally Mma kernel has been pretty non-pre-emptive in nature with long computations...
 
8:28 AM
Wolfram Engine (for Developers) needs a new tag. But what? As usual, terminology used by WRI isn't very specific. I think they consider Desktop Mathematica a product which includes Wolfram Engine, but clearly there's need for categorizing questions involving the "headless" runtime they're now advertising...
 
@kirma Does it need a new tag? Is there anything that's truly specific to it?
What do we do with this? mathematica.stackexchange.com/q/198837/12 The screenshot looks weird (look at the e's), he says he doesn't know how to post code (or the system won't let him). @Kuba any tips?
@kirma The "Engine" name is not new, it's been present on the Raspberry Pi too. But it's just the kernel (in this case with the ability to run the FE as a slave for graphics rendering purposes).
 
Also not clear to me that it definitively needs a new tag. It's not like we have one for wolfram|one, and the one for the development platform (RIP) is just an alias for wolfram-cloud
I would expect that if anything the [scripting] tag is the closest
 
What's practically specific to it is issues with using it through Jupyter (which seems to be the most practical way to use it). But Jupyter can be used with the full Mathematica too. So that would be a jupyter question, not a wolfram engine question.
 
@Szabolcs I think it's sufficiently specific subset of functionality that a tag would be useful... but then again, well...
Most questions would be probably relevant to anything where kernel is used without FE (and FE kernel).
 
then again I feel like there might be some new users (who picked up WL via the engine) who might instinctively tag their posts wolfram-engine
 
8:39 AM
@kirma I think it has all the functionality of the full Mathematica (sans notebooks). We already had several command line specific questions (e.g. people using it on a remote machine they ssh into). Wouldn't it be the same (or very similar) situation?
 
@Szabolcs Probably. Maybe just with a little more prominence after being advertised as a product.
 
I just wrote up the tag wiki (the tag was already there)
 
@CarlLange That's pretty impressive how fast you mastered it. I've been using Mathematica since freshman calculus in 1991 and I'm still a hack
 
@ChrisK Thanks! I'm a long way from mastery though :) I was lucky enough to pick it up at a time when I had a lot of free space in my brain to put all the symbol names
 
 
5 hours later…
1:39 PM
@b3m2a1 Here you would use _?QuantityArray`QuantityArrayQ.
I don't quite see the point based on your example though, surely it is easier to just type f[obj_Integer] than to go through the gymnastics needed to replace the pattern in the resulting downvalue
 
2:34 PM
@b3m2a1 I don't have an update for you yet. The 'Wolfram Engine' project has been eating up a lot of my time. I am checking to see where we are with this.
@kirma We're updating the FAQ (wolfram.com/engine/faq) to clarify this (it's not updated yet at the moment).
2
 
3:07 PM
Please help me with this question

https://stackoverflow.com/questions/56250062/how-to-calculate-the-double-integration-in-r
 
Anyone else having trouble activating the wolfram engine behind a proxy? I get "(7) Unable to connect". My regular Mathematica works well in the same computer.
 
@noob you're in the wrong place - this chat room isn't about R.
 
Suppose I have a long computation, and I started a dialog computation by pressing F7. Normally, when the dialog computation completes, the long main computation resumes. In my case I started a dialog computation that takes much more time than I expected. Is it possible to abort it without aborting the main computation?
 
Dataset functionality put into use on AWS EC2 spot prices:
Dataset[Association /@ ("SpotPriceHistory" /. ImportString[%, "JSON"])] //#[
      All, {"Timestamp" -> DateObject, "SpotPrice" -> ToExpression}] & //
   GroupBy[#AvailabilityZone & -> ({#Timestamp, #SpotPrice} &)] //
  Map@TimeSeries // DateListPlot[#, GridLines -> Automatic] &
From AWS CLI JSON output... with less that optimal format.
 
3:58 PM
... and even that was a bit too long.
 
 
1 hour later…
4:59 PM
@JasonB. Yeah but Integer is less "safe". The case I'm most interested in, though, is complex types or specialized types. Remembering these patterns is entirely feasible (and I currently do), but I figure there's a use case for a more sophisticated and extensible type patterning system. It can remember QuantityArray`QuantityArrayQ and StringPattern`StringPatternQ and add on some explicit Head matching to speed things up a bit, too.
I need to think about how exactly it'd be best to implement it, but I'm thinking about something like the core function being TypePattern[...] and then also providing a bunch of conveniences and shorthands that can be layered on top of that but in a subsidiary context.
For my packages at least, this would mean I can declare a TypePattern for any given object I create and then elsewhere in that package I can just use TP[ObjHead] or TP[stringID] or something.
Then if I want to change my type pattern signature at any point, doing so is simply a one-line change rather than having to do a full refactor.
 
 
1 hour later…
6:09 PM
I go for something like defining a package-private validation function that I define once (like quantityArrayQ) and then just use that in function definitions. And later when they change the head of quantity array or some other silliness I can change that one function.
I can definitely see the appeal of this from a meta-programming perspective - I'm interested in being able to write readable WL definitions (like you get from the general utilities PrettyForm) from templates
much like Szabolcs' LTemplate does for the C++ wrapper code, so I would use the type patterns in that
> Yeah but Integer is less "safe".
I always see people saying this, that you shouldn't use _String you should use _String?StringQ but I don't see it as all that important
if someone passes String[3] to your function, and it breaks like crazy, just seems like an edge case
 
@JasonB. it really isn't all that important for like 90% of cases since String isn't a constructor on its own
But for things like SparseArray of course it is actually important
 
and also Association
 
Yeah I almost always use _?AssociationQ
but I'm too lazy to write _Association?AssociationQ as I should
But if I introduce some simpler syntax for it, I just might start doing it.
 
there you could define a private associationQ[a_Association] := AssociationQ[a];associationQ[_]:=False
 
Well that's less the issue and more the fact that it's like .0001% faster to do the head match first
I can also introduce autocompletions on my type templates though which should speed things up.
Or I could add a bunch of input alia to my IDE...
Honestly I should probably do both
Speaking of I should suggest that on @halirutan's plugin suggestions question as a completion it'll do for you automatically
 
 
1 hour later…
7:24 PM
@Szabolcs I closed it because it needs anything to work with. I hope that can be clarified in the chat.
 
@gdelfino Have you tried setting the proxy in your shell? E.g. export https_proxy=https://your.proxy.server:port/
 
 
1 hour later…
8:30 PM
@ArnoudBuzing Thank you Arnoud! I just activated it by temporarily setting those env variables. But this is not ideal in an enterprise environment (Windows) where the proxy is set via a PAC file. This is basically script that decides what to send to the proxy depending on the domain. The Wolfram Engine should automatically get this proxy information from Windows just like in Mathematica.
 
9:27 PM
ok, thanks for that suggestion (probably a good question for the FAQ as well)
 
 
2 hours later…
11:11 PM
@halirutan I think it is a hold-over from an old trick used to embed Javascript (and by extension, JSON) within HTML script tags. example.
 
@WReach If you wonder, why I'm asking: The Jupyter kernel file for the Wolfram Engine is a JSON file created by Mathematica and it's escaping these characters.
But it seems to work and your explanation makes sense.
 

« first day (2681 days earlier)      last day (1793 days later) »