Giving an answer in spite of not having been addressed
because I just criticized the reasoning that I thought
was based on that word’s meaning (dispute resolved privately):
Two vectors are orthogonal if the projection of one onto the other is 0.
In colloquial terms, it means “there is no part of one in the other”.
As it’s symmetric you could also say “they don’t share a common part.”
Likewise for the (mis?)use in different contexts.
Orthogonal vectors are also said to be “independent” which imo is a
more appropriate choice in many of the instances you are referring to.
So translating to “independent” should work in pretty much all cases.
Am 18.01.23 um 20:43 schrieb 'Smith, David I.' via Programming:
Dear Mr. Stone:
I am increasingly seeing the word "orthogonal" used in various computer forums. Looking
up the word in various online dictionaries does not help, as there are usually several definitions.
What do you mean here by "orthogonal"? Thank you.
-----Original Message-----
From: Programming <programming-boun...@forums.jsoftware.com> On Behalf Of
Elijah Stone
Sent: Tuesday, January 17, 2023 7:24 PM
To: programm...@jsoftware.com
Subject: [EXTERNAL] Re: [Jprogramming] Closures; WAS: Verbs returning verbs
(To be clear, closures are orthogonal, from a language perspective, to
syntactically first-class functions. But they often appear together, and I
think the former more important, which is why I took the opportunity to bring
it up.)
On Tue, 17 Jan 2023, Henry Rich wrote:
I don't follow any of this thread, because I don't understand what is
missing from standard J. I find J adequate for everything I want to
do. What am I missing?
I can see that if you want to write all-tacit code you have trouble if
you need to feed a verb result into a modifier.
Suppose though that I am content with writing explicit definitions.
What do I need beyond the standard language, and for what use case?
Henry Rich
On 1/17/2023 9:23 PM, Elijah Stone wrote:
(Curried modifiers, as you say, are a solution, but, again, another
half-solution.)
On Tue, 17 Jan 2023, Raul Miller wrote:
Here, I suspect that you're only getting noun values in your closure
-- you'll have to sprinkle those noun references with something like
`:6 if you want anything else. That's probably not a huge problem.
But, thinking about this, personally I'm not seeing a lot of
motivation for this approach, either. (What problems would this solve?
I'm sure there are some great motivating examples out there. And
closures certainly have a lot of popularity. But... position in a
list can be thought of as being conceptually analogous to a
variable, so it should be apparent that we already have some support
for the algorithmic role of closures.)
(I should perhaps also note, here, that conjunctions and adverbs
which have verb results are self-currying.)
Anyways... I'm not thinking particularly deep thoughts here -- I'm
just reflexively reaching for motivating examples (which might
assist in forming some of those sorts of thoughts).
Thanks,
--
Raul
On Tue, Jan 17, 2023 at 7:01 PM Elijah Stone <elro...@elronnd.net>
wrote:
I suggest:
[x] u &:: (k;v;k;v...) y
Will evaluate u with bindings kvkv... (raveled) active. Should work
for both explicit and tacit. Implementation is allowed to
coalesce; e.g., u
&:: (k;v)
&:: (k;v) `'' may be rendered u &:: (k;v;k;v), deduplicated, &c.
Substitution also ok; eg (f%#) &:: ('f';+/`'') becomes +/%#.
I would like for verbs defined inside of explicit verbs to be
implicitly closed; this is obviously a compat break, but.
On Tue, 17 Jan 2023, Elijah Stone wrote:
I don't love the proposal, as I think a conception of verbs as
first class
should involve _less_ hackery with representations, not more.
But
I don't
feel that strongly either way.
More fruitful, IMO, would be to work out how to add closures, as
I
think
there
is a more urgent need for that (u./v. is a band-aid). Perhaps
taking inspiration from kernel (but skipping the mutation!).
On Mon, 16 Jan 2023, Henry Rich wrote:
I have never understood the zeal for having verbs return verbs,
but it
must be real if some are willing to use dangerous backdoor hacks
into JE
to achieve it. ARs make it possible to pass verbs around, but
executing
them requires dropping into explicit code. To remedy this, I
offer a
proposal, backward compatible with older J:
1. (". y) and Apply (x 128!:2 y) to be modified so that if the
result of
execution is not a noun, it is replaced by its AR (instead of ''
as previously).
2. (". y) and Apply to be modified so that if y (for ".) or x
(for
Apply) is boxed, the sentence is executed as usual except that
each box
is converted using (box 5!:0) before being put onto the
execution
stack.
The idea is that you can execute (".
expr-producing-AR,exp-producing-AR,...) without having to get
any modifiers involved.
Sentence execution can produce ARs, and can take ARs created by
verbs to
represent verbs and modifiers. That sounds pretty classy to me,
but I
don't know whether it's first-class.
Henry Rich
-------------------------------------------------------------------
---
For information about J forums see
https://gcc02.safelinks.protection.outlook.com/?url=http%3A%2F%2Fww
w.jsoftware.com%2Fforums.htm&data=05%7C01%7C%7C924b7dc16f654488c648
08daf90379b8%7Ce95f1b23abaf45ee821db7ab251ab3bf%7C0%7C0%7C638096090
572346667%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luM
zIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=rnq9jrGkjcn
kQEo2oiDw1vYBn1PllaUmA87ujbYS81U%3D&reserved=0
-------------------------------------------------------------------
---
For information about J forums see
https://gcc02.safelinks.protection.outlook.com/?url=http%3A%2F%2Fww
w.jsoftware.com%2Fforums.htm&data=05%7C01%7C%7C924b7dc16f654488c648
08daf90379b8%7Ce95f1b23abaf45ee821db7ab251ab3bf%7C0%7C0%7C638096090
572502872%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luM
zIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=lwZ356ri0eF
6yNpz9uyJluZjc%2FWeL2YuMgAnAU1BmA0%3D&reserved=0
-------------------------------------------------------------------
--- For information about J forums see
https://gcc02.safelinks.protection.outlook.com/?url=http%3A%2F%2Fww
w.jsoftware.com%2Fforums.htm&data=05%7C01%7C%7C924b7dc16f654488c648
08daf90379b8%7Ce95f1b23abaf45ee821db7ab251ab3bf%7C0%7C0%7C638096090
572502872%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luM
zIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=lwZ356ri0eF
6yNpz9uyJluZjc%2FWeL2YuMgAnAU1BmA0%3D&reserved=0
--------------------------------------------------------------------
-- For information about J forums see
https://gcc02.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww
.jsoftware.com%2Fforums.htm&data=05%7C01%7C%7C924b7dc16f654488c64808
daf90379b8%7Ce95f1b23abaf45ee821db7ab251ab3bf%7C0%7C0%7C638096090572
502872%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiL
CJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=lwZ356ri0eF6yNpz
9uyJluZjc%2FWeL2YuMgAnAU1BmA0%3D&reserved=0
---------------------------------------------------------------------
- For information about J forums see
https://gcc02.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.
jsoftware.com%2Fforums.htm&data=05%7C01%7C%7C924b7dc16f654488c64808da
f90379b8%7Ce95f1b23abaf45ee821db7ab251ab3bf%7C0%7C0%7C638096090572502
872%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBT
iI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=lwZ356ri0eF6yNpz9uyJl
uZjc%2FWeL2YuMgAnAU1BmA0%3D&reserved=0
----------------------------------------------------------------------
For information about J forums see
https://gcc02.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.j
software.com%2Fforums.htm&data=05%7C01%7C%7C924b7dc16f654488c64808daf9
0379b8%7Ce95f1b23abaf45ee821db7ab251ab3bf%7C0%7C0%7C638096090572502872
%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6I
k1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=lwZ356ri0eF6yNpz9uyJluZjc%
2FWeL2YuMgAnAU1BmA0%3D&reserved=0
----------------------------------------------------------------------
For information about J forums see
https://gcc02.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.jsoftware.com%2Fforums.htm&data=05%7C01%7C%7C924b7dc16f654488c64808daf90379b8%7Ce95f1b23abaf45ee821db7ab251ab3bf%7C0%7C0%7C638096090572502872%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=lwZ356ri0eF6yNpz9uyJluZjc%2FWeL2YuMgAnAU1BmA0%3D&reserved=0
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
--
----------------------
mail written using NEO
neo-layout.org
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm