Collection of "funny" Jmp newbie questions... for which I did not find an answer in the help or community within 15 minutes.
edit:
I changed the title from JSL newbie questions to Jmp newbie questions.
[More Topic Containers like this]
Data Blending and CleanupRe: Collection of "funny" JSL newbie questionsGood point, I hadn't noticed that before.
When moving the Jmp window from the left to the right, there is already a small area on the left of the screen where menus open to the right ☛ (highlighted in blue).
In the remaining area of the screen the windows are opened to the left ☚ (highlighted in red).
Almost seems that as soon as there is enough space on the left - the submenu will flip to the left.

Re: Collection of "funny" JSL newbie questionsIt has been my experience that if you move the window you are selecting the man menu option too, to the left edge of your monitor screen, JMP will open the submenus to the right
Re: Collection of "funny" JSL newbie questionsThe submenus of my Jmp installation always open to the left of the main menu:

Where is the setting to move submenus to the "right"?
add-on question: what is the background of them opening on the wrong side?
Re: Collection of "funny" JSL newbie questions
@hogi wrote:
Why do FitYbyX and GraphBuilder use different color codings?
answer: Re: What-is-graph-builder's-color-ordering-different-than-other charts?
If this is an issue, it can be "fixed" by switching to Jmp Blue Red Green:
https://community.jmp.com/t5/JMPer-Cable/Graph-Builder-color-theme-add-in/bc-p/626423/highlight/true#M846

Re: Collection of "funny" JSL newbie questionsIn the Join Tables Platform, what's the difference between Update main table with data from second table and
Merge same name columns?

Update main table with data from second table assumes that the user wants to Merge same name columns.
So, it's kind of a special case of Merge same name columns.
If Merge same name columns is selected, then any selected columns from the Main Table [will be] Updated with data form second table.
So, no Merge same name columns without Updat[ing] main table with data from second table.
Re: Collection of "funny" JSL newbie questionsLocal data filter just has a local effect. I don't understand why the effect with 'select' was more confusing than the effect with 'include' enabled. Why confusing at all?
Local include determines which data is displayed in the current plot. Local select would determine which data is highlighted in the current plot.
Opposite to the general data filter, it's not the intention of a local data filter that anything in the underlying data table is selected / excluded 
Hm, if "don't confuse the user" was indeed the argument why the option got disabled ...
then I would be happy if there was an option to re-enable the Select option (e.g. very hidden, by Shift Right-Click or so)
I mean: For those useful applications where the user will not be confused, but thrilled by the new possibilities 
my wish:
Local Data Filter - don't disable the SELECT option
Re: Collection of "funny" JSL newbie questionsThe 'Local Data Filter' applies to just the report from which you call it up, and a table may have multiple reports open at the same time. Allowing row selections this way could be confusing! On the other hand, there can only be one 'Data Filter' for a given table, and it affects all child reports of that table (so long as they don't have their own Local Data Filter).
Re: Collection of "funny" JSL newbie questionsWhy is the data table object removed from Application Builder if I close the respective data table?
(leading to a non-functional Application)
edit: Hm, perhaps it's possible to change the behavior - here is the wish

Re: Collection of "funny" JSL newbie questionsWhy is there no Select mode in the Local Data Filter - like the one from (global) Data Filter?
vs. 
Re: Collection of "funny" JSL newbie questions-
Re: Collection of "funny" JSL newbie questionsWhy do FitYbyX and GraphBuilder use different color codings?

Re: Collection of "funny" JSL newbie questionsLock Columns (jmp.com) might work
Re: Collection of "funny" JSL newbie questionsanother one:
Is there something in JMP like freeze pane in Excel?
(in JMP it just makes sense wrt. columns:
i.e. to have some index columns visible on the left, independent of the actual position in the table.)
Re: Collection of "funny" JSL newbie questionsHi,
in the Scripting Index, there is a button "see also" which suggests the interested user alternative functions in the context of an initial found function.
Unfortunalely, there are some "links" missing between the entries. e.g.
get <-> set clipboard
N Args <-> Head
I posted a "container" wish to collect such missing links such that they can be added:
Scripting Index and online Help: "see also"
Did it happen to you as well that you search a function in the Scripting Index for some while and found out that you cannot find the right term to search it?
If you found the correct function afterwards by luck, could you please add a screenshot to the "container" wish to help other users to find the function faster ...
... and support the idea with a Kudo : )
Re: Collection of "funny" JSL newbie questionsThe inconsistencies in JMP are unfortunately a known issue. The positive side is that when new releases come out, over time one sees that efforts are made to clean up the inconsistencies. I strongly suggest that your observations be added to the JMP Wish List. That way they get officially noted to those that can actually make changes.
Re: Collection of "funny" JSL newbie questionsYes, that's right, your posts live the spirit of "How do I do it" 
I am always totally thrilled how you think out of the box and manage to get to the other side of a locked door, like such manually concatenated Strings plus a
parse( )
and that's it.
It's just that the need for "please read the Help and check the scripting index" would be less if the "easy doors" were all unlocked by default 
Alternative approach: detour signs in the scripting Index
https://community.jmp.com/t5/JMP-Wish-List/Scripting-Index-and-online-Help-quot-see-also-quot/idi-p/559430
Re: Collection of "funny" JSL newbie questionsI am not even sure that if the original developers of the syntax in question responded, that they would be able to say precisely why
new data table()
isn't the syntax to use.
Having worked my whole career with software systems developed by other people and organizations I find it is more productive to as "How do I do it", rather than "Why doesn't it do it this or that way". The only real answer to the later question is "Because I wasn't the software developer, someone else was"
Re: Collection of "funny" JSL newbie questionsI edited the original text to make it clearer.
I wondered why it is not</CODE></P><PRE><CODE class=" language-jsl">new <STRONG>data</STRONG> table()
Re: Collection of "funny" JSL newbie questionsI assume it is because 2 different developers created the 2 different applications.
Re: Collection of "funny" JSL newbie questionsWhen I import a text file without header - why are the column names

and when I import the same file via "Import Multiple Files ...", they are

?
Re: Collection of "funny" JSL newbie questions@Mark_Bailey : Sure, there is no difference at all between N row(dt) and the non-existing dt << n rows
... from the point of view of what you get.
But this post is about idioms of the jmp language which can make it hard for newbies to get what they want.
Sometimes, there are tiny "walls" or you get stuck in front of a locked door - this can be frustrating or irritating.
I could imagine that during the Trial Period some potential users of JMP got lost to other languages like Python or Matlab because of such difficulties.
The benefit of messages:
Let's imagine that a user has a data table dt and knows already that he can send messages like << get name to the object.
He also knows that typing
dt << get
and pressing CTRL+Space will help him to get possible candidates for what he wants.
And indeed, there is a << get rows() for data tables.
Unfortunately, this function does something else 
Therefore, he keeps searching and searches the Scripting Index for other messages like Nitems, Length, Dimensions and so on.
Nothing - along the idea: If you don't know the correct function name, I cannot give you the correct info.
Then he just selects the data table object and scans all these messages, which can be sent to a data table. A huge list, but none of them does what the user wants. This takes a while ...
Another user uses the Scripting index and tries


then:

and scans the first 10 entries. Hm ...
(compare: https://www.google.com/search?q=length+data%20table+python)
As a next step, both go to the JMP Community:
https://community.jmp.com/t5/forums/searchpage/tab/message?q=data%20table%20number%20rows
and find out that they were not the only ones who had this problem - what a relief!
And that's not all.
Fortunately, there are people who passionately help other users with their problems 
From now on, both can tell other people that the function is not "length()", "dimensions()", "len()", "size()" .... , but N row().
And that dt << N Rows() is not available because it would just be the same as N row(dt)
... or N Rows(dt).
Re: Collection of "funny" JSL newbie questionsA function is a subroutine that you can call anywhere in a script. It might take one or more arguments. It returns a value. It might have a side effect, like instantiating a display box.
A message invokes a method implemented by an object.
It doesn't make sense (to me) to necessarily have a message to duplicate every function if that is what you are suggesting. What additional benefit does the message, dt << N Row, provide that you cannot get from the function call, N Row( dt )?
You must learn the syntax, keywords, functions, and protocols for any computer language.
Re: Collection of "funny" JSL newbie questionsWorkaround for add row(with values):
collect the info in a Table Box, then use

and copy the data to a data table.
Re: Collection of "funny" JSL newbie questionsThis is an example of one of the inconsistences in JSL. Not all functions have a message equivalence. I suggest that when you come across an inconsistency that you add a request to the JMP Wish List to resolve the inconsistancy
Re: Collection of "funny" JSL newbie questionsI don't understand your
current data table()
data table("my name")
issue.
Re: Collection of "funny" JSL newbie questionsIt is a simple matter to slice matrices
names default to here(1);
mat = [10 20 30 40 50, 15 25 35 45 55];
show( mat[1,0]);
show( mat[1,2::4]);
/*:
mat[1,0] = [10 20 30 40 50];
mat[1,Index(2, 4)] = [20 30 40];
Re: Collection of "funny" JSL newbie questionsRe: Collection of "funny" JSL newbie questionsThe message
Obj << Add Row( {values, .....} )
is a valid message for the Display Object, Table Box
The message
Obj << Add Rows( ,n., ,At Start|At End|After(m)> | { list of ( column name = value ) pairs } ))
is a valid message to add rows to a data table.
Both messages allow for the adding of rows, but in different formats, since the objects are very different in functionality
Re: Collection of "funny" JSL newbie questionsWhy does add row add a row to a data table - but doesn't add the values *)?
*) adding values with the same syntax just works for Table Boxes
dt = New Table( "Untitled" );
dt << add row( {1} );
New Window( "test",
tb = Table Box( String Col Box( "string col", {"a"} ),
Number Col Box( "number col", {1} ) )
);
tb << add row( {"b", 2} );
edited: wish to provide a shortcut function like add row(list of values) also for data tables
(very convenient for data collection in for loops - e.g. for debugging)
https://community.jmp.com/t5/JMP-Wish-List/easy-way-to-add-rows-amp-values-to-a-data-table/idi-p/559082
Re: Collection of "funny" JSL newbie questionswhy are there so many messages that I can send to a data table but not
dt << n rows()
just working:
n rows (dt)
edit: wish
https://community.jmp.com/t5/JMP-Wish-List/lt-lt-n-rows-to-get-the-rows-of-a-data-table/idi-p/559101
Re: Collection of "funny" JSL newbie questionswhy is it
current data table()
data table("my name")but
new table()
(without "data") - because there is no data yet in the table? 
Here it seems that "tables" and "data tables" are something similar, but this is definitely not true:
https://community.jmp.com/t5/Discussions/Collection-of-quot-funny-quot-JSL-newbie-questions/m-p/559063/highlight/true#M77234
Re: Collection of "funny" JSL newbie questionsIs there a tutorial how to "slice" matrices?
I just found infos like this one
https://www.jmp.com/support/help/en/16.2/?os=win&source=application#page/jmp/subscripts-2.shtml
with some basic indexing like
mat[from::to, from2::to2]
Is indexing also possible "relative to the end" (minus sign doesn't work) or indexing with open start or end (leaving the slot empty doesn't work)?
mat[1::-1];<BR /><BR />mat[1::];<BR /><BR />mat[::]
edit: wish
https://community.jmp.com/t5/JMP-Wish-List/new-slicing-options-for-matrices/idi-p/559090#M2563