u@v is one verb, and it has rank ("_1)  (!.n) is an adverb which like all 
adverbs would apply to the entire verb phrase preceding it.  When you 
selectively grow one item in a list, all of the other items get fills, and the 
full result of the verb includes those fills.

for (f g h)!.n , this could usually work with (f g!.n h), though as above 
paragraph, if (f g h) is applied to items that cause other items to need fills. 
 99% of the reasons you need to deal with fills is exactly due to uneven length 
data within a single data structure, and the effects that item manipulations 
cause on that data structure.


interestingly, this also doesn't "work": (I guess because fills only apply on 
overtake within the function)

   {.(!.'*')^:('c'={.)"1 ] 3 2 $ 'abc' 
ab 
c 
bc

but could be defined for:

   {.^:('c'={.)"1(!.'*') 3 2 $ 'abc' 
ab 
c* 
bc



----- Original Message -----
From: Henry Rich <[email protected]>
To: [email protected]
Cc: 
Sent: Thursday, August 28, 2014 9:29:16 PM
Subject: Re: [Jprogramming] fit conjunction

You would need another conjunction, not !.  .

Consider  (u@v)!.f

What verb would the !.f apply to?  Answer: u@v.

Should the !.f apply to u and v also?  Answer: no (consider (f g h)!.f).

But what about verbs that have rank but already use !.?  Example: {.!.f

Would the !.f apply to the {. or to the collection? ???

To avoid the ambiguity, you would need a Framing Fill conjunction

u!..f

which is defined as 'u, but with f used for the framing fill'.

If there were a Council Of The Wise Men Of J, we could debate the merit 
of this proposal.  If the Council decided it was useful, we would need 
some way to implement it and promulgate the change.  Since neither the 
Council nor the implementation methods exist, I consider the idea moot.

Henry Rich

On 8/28/2014 9:15 PM, 'Pascal Jasmin' via Programming wrote:
> The problem is getting fills on functions that cause fills in the other items 
> processed by that function
>
>     ,(!.'*')&'d'^:('c'={.)"1 ] 3 2 $ 'abc'
> ab
> cad
> bc
>
> if !. could apply to fills of any function then it could be written like this 
> (without a domain error):
>
>     ,&'d'^:('c'={.)"1(!.'*')  3 2 $ 'abc'
> ab*
> cad
> bc*
>
>
>
> ----- Original Message -----
> From: robert therriault <[email protected]>
> To: [email protected]
> Cc:
> Sent: Thursday, August 28, 2014 8:52:42 PM
> Subject: Re: [Jprogramming] fit conjunction
>
> Hi Pascal,
>
> Would something like this not be the way to deal with trailing blanks?
>
>     8{.!.'*' 'ab'
> ab******
>
> My guess is that the ways you are considering its use would lead to 
> inefficiencies if this solution was used, but I thought I'd toss the idea out 
> anyway.
>
> Cheers, bob
>
> On Aug 28, 2014, at 5:05 PM, 'Pascal Jasmin' via Programming 
> <[email protected]> wrote:
>
>> I have no idea how much work it is, but I was assuming it wasn't much.  The 
>> benefit is being able to use unboxed data when your data will not have _ in 
>> it.  That is you gain an ability to remove fills later.
>>
>> As for a specific example, quicksort using power was what I would have liked 
>> to implement without boxing.  But this can happen with strings too, where 
>> trailing space might be meaningful.
>>
>>
>>
>>
>> ----- Original Message -----
>> From: Raul Miller <[email protected]>
>> To: Programming forum <[email protected]>
>> Cc:
>> Sent: Thursday, August 28, 2014 7:27:45 PM
>> Subject: Re: [Jprogramming] fit conjunction
>>
>> But this is saying the feature is needed because the feature is needed.
>>
>> The question is: what is a compelling example of a significant problem
>> which would be made easier by this change? (Note also that my understanding
>> is that this change would involve a lot of work - so you can think of my
>> question as being really about the topic: why would that work be more
>> compelling than other work?)
>>
>> Thanks,
>>
>> --
>> Raul
>>
>>
>> On Thu, Aug 28, 2014 at 7:20 PM, 'Pascal Jasmin' via Programming <
>> [email protected]> wrote:
>>
>>> fills are a core part of the language or working with arrays.  Being able
>>> to fill with _ is very convenient if 0 is a normal data item that needs to
>>> be distinguished from.  Always Be Boxing avoids these issues, and so I can
>>> just keep on Always Be Boxing...
>>>
>>> Maybe there is a way to invoke # (copy) in such a way that it creates
>>> fills, but its not clear how !. was meant to apply to it in the first place.
>>>
>>>
>>> ----- Original Message -----
>>> From: Raul Miller <[email protected]>
>>> To: Programming forum <[email protected]>
>>> Cc:
>>> Sent: Thursday, August 28, 2014 6:28:46 PM
>>> Subject: Re: [Jprogramming] fit conjunction
>>>
>>> I guess the issue here is: what problem would this solve?
>>>
>>> (There's a generic problem with solving tautological problems. So it's good
>>> to have some larger situation in mind, to avoid cluttering up the language
>>> with overspecialized forms of generality.)
>>>
>>> Thanks,
>>>
>>> --
>>> Raul
>>>
>>>
>>>
>>> On Thu, Aug 28, 2014 at 1:44 PM, 'Pascal Jasmin' via Programming <
>>> [email protected]> wrote:
>>>
>>>> It is a domain error to place the fit conjunction elsewhere.  Perhaps a
>>>> useful language enhancement would be that fit is defined for arbitrary
>>>> verbs outside of the "whitelist" to be fill?
>>>>
>>>>
>>>> ----- Original Message -----
>>>> From: Raul Miller <[email protected]>
>>>> To: Programming forum <[email protected]>
>>>> Cc:
>>>> Sent: Thursday, August 28, 2014 1:38:07 PM
>>>> Subject: Re: [Jprogramming] fit conjunction
>>>>
>>>> The 0 comes from the derived verb, not from #
>>>>
>>>> Thus:
>>>>
>>>>       2#^:|"+ 1 2 3
>>>> 1 1
>>>> 2 0
>>>> 3 3
>>>>       2(1+#^:|)"+ 1 2 3
>>>> 2 2
>>>> 3 0
>>>> 4 4
>>>>
>>>> So you'll have to synthesize the _ on your own. Perhaps something like
>>>> this:
>>>>
>>>>       (+_*_1&=)<:2(1+#^:|)"+ 1 2 3
>>>> 1 1
>>>> 2 _
>>>> 3 3
>>>>
>>>> Thanks,
>>>>
>>>> --
>>>> Raul
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On Thu, Aug 28, 2014 at 1:21 PM, 'Pascal Jasmin' via Programming <
>>>> [email protected]> wrote:
>>>>
>>>>>              (2#(!._)])^:(2|])"0 ] 1 2 3
>>>>> 1 1
>>>>> 2 0
>>>>> 3 3
>>>>>
>>>>> the fit conjunction here has no effect, is there a way to get the 0
>>> fill
>>>>> to be replaced with _
>>>>> ----------------------------------------------------------------------
>>>>> 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
>>>>
>>> ----------------------------------------------------------------------
>>> 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
>>
>> ----------------------------------------------------------------------
>> 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
>
----------------------------------------------------------------------
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