I believe that this discussion was about something different.

Thanks,

-- 
Raul

On Wed, Jul 19, 2017 at 3:45 AM, Louis de Forcrand <[email protected]> wrote:
> K supports first-class verbs; one can make an array of verbs, index one out, 
> and apply it to something using the same syntax as for normal function 
> application.
> This is feasable in J, but only by using a special "apply" verb (perhaps 
> gurus know another way?).
> Not trying to go full tacit,
>
> apply=: 4 : 0
>  x`:6 y
> )
>
> for example.
>
> While this is more clunky, we must remember that:
> 1) K function application looks like this:
> user_defined_function[arg1;arg2;arg3;etc.]
> 2) K does not support tacit programming like J does. More specifically it 
> does not support trains. J would not be able to do this if there were no noun 
> / function / operator hierarchy:
> f ; g
> would that be a list of f and g or the train as we know it? The hierarchy 
> allows paren-free parsing rules and infix as well:
> f @ g instead of @[f;g]
>
> All in all, clunky first-class verbs are a price I am (and most Jers I assume 
> are) willing to pay in order to get trains. Like you say, a little 
> inconsistency can be very practical.
>
> Louis
>
>> On 18 Jul 2017, at 20:23, Raul Miller <[email protected]> wrote:
>>
>> Specifically, what you call "first class verbs" are, according to the
>> dictionary, supposed to be trains.
>>
>> That this glitch seems useful says something, I think, about the value
>> of inconsistency.
>>
>> Thanks,
>>
>> --
>> Raul
>>
>>
>> On Tue, Jul 18, 2017 at 6:52 PM, Jose Mario Quintana
>> <[email protected]> wrote:
>>> Louis, call me Pepe (which is the nickname for Jose); that is how friends
>>> call me.
>>>
>>> Even if first-class verbs are not in compliance with the J Dictionary,
>>> official interpreters allow them but one has to wrestle with the
>>> interpreters.  Using first-class verbs, one can operate on verbs [0] in a
>>> similar way one can operate on nouns [1].  Jx extensions make their use
>>> more pleasant and goes beyond first-class verbs; Jx also facilitates to
>>> pass verbs, adverbs and conjunctions to verbs, adverbs and conjunctions to
>>> produce verbs, adverbs and conjunctions.
>>>
>>> [0] Tacit (unorthodox) version
>>>    https://rosettacode.org/wiki/First-class_functions#Tacit_.
>>> 28unorthodox.29_version
>>> [1] Tacit (unorthodox) version
>>>    https://rosettacode.org/wiki/First-class_functions/Use_
>>> numbers_analogously#Tacit_.28unorthodox.29_version
>>>
>>>
>>> On Tue, Jul 18, 2017 at 12:36 AM, Louis de Forcrand <[email protected]>
>>> wrote:
>>>
>>>> I’d guess is that by “unstable” he meant “currently being modified".
>>>> In any case, thanks for the link Jose (what should I call you? Pepe?).
>>>> If there was one thing I could add to J it would be better support for
>>>> first-class verbs (arrays of verbs, passing verbs as arguments), if only
>>>> for the beauty of it, but I know this is neither easy nor practical in
>>>> reality.
>>>> However trying out your new version of Jx is; I’ll take a look at it if you
>>>> release it. In the meantime I’ll look into your J701 version when I have
>>>> the time!
>>>>
>>>> Louis
>>>>
>>>>> On 17 Jul 2017, at 20:21, HenryRich <[email protected]> wrote:
>>>>>
>>>>> Unstable?  If you have a bug in J8.06, please post it at
>>>>>
>>>>> http://code.jsoftware.com/wiki/System/Interpreter/Bugs
>>>>>
>>>>> I don't see any bugs that are new in 8.06, and plenty that are fixed
>>>> from previous versions.
>>>>>
>>>>> Henry Rich
>>>>>
>>>>>> On 7/17/2017 7:06 PM, Jose Mario Quintana wrote:
>>>>>> Louis, a Jx interpreter implements extensions to the language.  It
>>>> supports
>>>>>> tacit programming full-heartedly and embraces first-class verbs.  There
>>>> are
>>>>>> publicly available patches for Jx extensions, as well as, a pre-built 32
>>>>>> bit Windows dll and Pre-built 32 and 64 bit Linux libs at
>>>>>>
>>>>>> http://www.2bestsystems.com/foundation/j/jx0/index.html
>>>>>>
>>>>>> but it is an early version of Jx based on the J701 source.  Jx has
>>>> evolved
>>>>>> (e.g., the primitives =.. and =:: were added afterwards) and J's core
>>>>>> engine has evolved rapidly as well; it has been very difficult to catch
>>>> up.
>>>>>> ("Be careful what you wish for.")  :)
>>>>>>
>>>>>> The current unreleased version of Jx is based on the unstable official
>>>> J806
>>>>>> beta source and there are some relatively minor Jx glitches.  We were
>>>>>> planning to wait for the official J806 to become stable and resolve the
>>>> Jx
>>>>>> glitches but I might decide instead to release a current version, as is,
>>>>>> soon.
>>>>>>
>>>>>>
>>>>>> On Mon, Jul 17, 2017 at 7:40 AM, Louis de Forcrand <[email protected]>
>>>> wrote:
>>>>>>
>>>>>>> A lot has been said on these forums about Jx and Unbox.
>>>>>>> They are unofficial J interpreters (with extensions to the language),
>>>> are
>>>>>>> they not?
>>>>>>> Are they publicly available? I couldn't find anything about them on
>>>> Google
>>>>>>> except older messages in the forum archives, but then again
>>>> unfortunately
>>>>>>> this language's name makes it sometimes hard to look up on the web.
>>>>>>>
>>>>>>> Thanks!
>>>>>>> Louis
>>>>>>>
>>>>>>>> On 16 Jul 2017, at 15:37, Raul Miller <[email protected]> wrote:
>>>>>>>>
>>>>>>>> Sure, and the biggest problem here is the use of globals for
>>>> arguments.
>>>>>>>>
>>>>>>>> The verbs themselves can be pure, but all we're really doing is
>>>>>>>> rearranging the deck chairs.
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>>
>>>>>>>> --
>>>>>>>> Raul
>>>>>>>>
>>>>>>>>
>>>>>>>> On Sun, Jul 16, 2017 at 3:33 PM, Jose Mario Quintana
>>>>>>>> <[email protected]> wrote:
>>>>>>>>> At least we agree, I think, on one thing " in explicit programming
>>>>>>>>> [typically] names refer to arguments while in tacit programming they
>>>> do
>>>>>>>>> not."  Thus, is not just a matter of tacit aesthetics, there are some
>>>>>>>>> consequences which might be difficult to evade:
>>>>>>>>>
>>>>>>>>>  ('`u v') =: +/`*:
>>>>>>>>>  u@:v f.
>>>>>>>>> +/@:*:
>>>>>>>>>
>>>>>>>>>  ('`u v') =:: +/`*:  NB. Jx
>>>>>>>>> ┌───────┬──┐
>>>>>>>>> │┌─┬───┐│*:│
>>>>>>>>> ││/│┌─┐││  │
>>>>>>>>> ││ ││+│││  │
>>>>>>>>> ││ │└─┘││  │
>>>>>>>>> │└─┴───┘│  │
>>>>>>>>> └───────┴──┘
>>>>>>>>>  u@:v f.
>>>>>>>>> +/@:*:
>>>>>>>>>
>>>>>>>>>  ('`u v') is +/`*: NB.
>>>>>>>>> |domain error
>>>>>>>>> |   (m)    =:y
>>>>>>>>>  is
>>>>>>>>> 1 : '(m)=:y'
>>>>>>>>>
>>>>>>>>> So, assuming I understood the intended use of your adverb  is, I am
>>>>>>> afraid
>>>>>>>>> your adverb cannot be used without typical limitations.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>
>>>>>> ----------------------------------------------------------------------
>>>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>>>
>>>>>
>>>>> ---
>>>>> This email has been checked for viruses by AVG.
>>>>> http://www.avg.com
>>>>>
>>>>> ----------------------------------------------------------------------
>>>>> 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