Hm, yes, I hadn't realised both cases could be specified implicitly, that's
really useful.
Another one for the FAQ!

On 1 December 2012 04:37, Alex Giannakopoulos <[email protected]>wrote:

> Great, thanks, hadn't seen that technique before!
>
>
> On 1 December 2012 04:35, km <[email protected]> wrote:
>
>> About your closing question, you can do
>>
>>    isint =: (= <.) : [:
>>    isint 2 0.5
>> 1 0
>>    2 isint 3
>> |domain error: isint
>> |   2     isint 3
>>
>>
>> The definition of isint specifies [: as the dyadic case, and [; rejects
>> every argument with a domain error.
>>
>> Kip Murray
>>
>> Sent from my iPad
>>
>>
>> On Nov 30, 2012, at 10:14 PM, Alex Giannakopoulos <
>> [email protected]> wrote:
>>
>> > On 30 November 2012 16:17, Bo Jacoby <[email protected]> wrote:
>> >
>> >> J is a rich language, and it might be a good idea to define an
>> elementary
>> >> subset for beginners.
>> >
>> >
>> > Couldn't agree more.
>> > A simple startup configuration file.  Define verbs for trig functions so
>> > they don't look stupidly arbitrary.
>> > Some other elementary functions too, like polar2rect and rect2polar
>> > conversions that act on vectors (none of this xfy binary stuff here
>> > please), you know, stuff like you can find on *calculators*.
>> > Define dot-product, matrix-multiplication, cross-product, determinant,
>> etc,
>> > as user-friendly built-in verbs.  When I am a beginner, I DO NOT, repeat
>> > NOT want to know about the . operator at the level of the jdict, it is a
>> > highly advanced subject, intriguing - yes, but not for newbies.  Yet I
>> do
>> > want to do matrix ops.  I was told this was a language for linear
>> algebra.
>> > It would probably be a good idea, then, if we could do some linalg -
>> > straight out of the box - without serious brain damage.  I have had
>> abuse
>> > hurled at me by math teachers who have seen J's linalg primitives (LOL).
>> > Add some nice libs for equation solving while we're at it.  Simultaneous
>> > and also some numeric solvers.  This is what people want.  A language,
>> not
>> > an assembler for a language.
>> >
>> >
>> >> J is a nice calculator for elementary computations. You can do a lot of
>> >> computing without knowing anything about binomial coefficients and
>> taylor
>> >> expansions and capped forks.
>> >
>> >
>> > Agree with the first two, NO way on the third.  Even the 13 verb gives
>> you
>> > capped verbs, there is no way to begin learning J without it.  Also they
>> > solve the problem of having to figure if you should use At or Atop,
>> > invaluable for a beginner who hasn;t quite mastered rank yet.
>> >
>> > This problem, which once again gives rise to a long thread, could
>> easily be
>> > solved by a highly visible Programming FAQ page, with lots of links to.
>> > Deal with capped forks, @ and @:  and why you can't have things like
>> +/ a
>> > b c   You know, the questions people *keep asking*.   Remove ancient
>> > irrelevant stuff like the use of x. and y.   We are not at J401 any
>> more.
>> >
>> >
>> >> If you need to understand everything in order to be happy, then you
>> may be
>> >> unhappy. I taught my son elementary APL when he was 10 years old, and
>> he
>> >> loved it!
>> >
>> > Would he have been just as happy at 14 when he had to use the cosine
>> rule
>> > to solve a triangle?  Would he really prefer
>> > cosrule_getang =: 13 : '_2&o.(((+/*:}.y)-*:{.y) % */ 2, }.y)'
>> > or
>> > cosrule_getang =: [: _2&o. (([: +/ [: *: }.) - [: *: {.) % [: */ 2 , }.
>> > to
>> > cosrule_getang := (Aa,B,C) -> acos((B^2+C^2-Aa^2)/(2.0*B*C));
>> > Just wondering...
>> >
>> > These are simple enough things to do, and I speak as a J newcomer.
>>  There's
>> > not many languages you can say that about after two and a half years!
>>  The
>> > Zen of J, grasshopper.
>> >
>> > Incidentally, is there a way to cap a monadic hook on the left?
>> > For example (=<.) was mentioned, but obviously it allows dyadic
>> arguments,
>> > and fails if they are offered.
>> > Short of wrting monad : 'y=<.y'  is there a way I can keep it monadic
>> (and
>> > implicit)?
>> > ----------------------------------------------------------------------
>> > For information about J forums see http://www.jsoftware.com/forums.htm
>> ----------------------------------------------------------------------
>> For information about J forums see http://www.jsoftware.com/forums.htm
>>
>
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to