Den 2017-11-19 kl. 22:30, skrev Andrew Dabrowski:
Thanks for your comments.
On 11/19/2017 03:42 PM, Erling Hellenäs wrote:
4. Therefore the language can really only be used comfortably in
domains where functions of arity higher than 2 are rare.
Since the variables are generalized arrays, arrays which can contain
other arrays, the arity is no problem. You can have any number of
left and right arguments, just box them. However, with tacit J, it
gets a little tricky because you can't name them when they are used.
You can write named access functions, but that is not commonly used.
Like this:
Name=: [: > 0 { ]
SocialSecurityNumber=: [: > 1 { ]
Print=: 'Name: ', Name, (13 { a."_) ,'Social Security Number: ' ,
SocialSecurityNumber
Print 'John Smith';'12345'
Name: John Smith
Social Security Number: 12345
And this is preferable to Python how exactly?
I just say it is possible to do like this, not that it's good.
8. The failure to clearly distinguish at the syntactic level between
monadic and dyadic verbs, along with the laconic culture, makes tacit
definitions almost unreadable for a beginner. This could have been
avoided, but it seems the drive to score an eagle won out over the
desire for clarity.
Yes, maybe it is also way to make the interpreter less complicated.
I've never worked on an interpreter, but doesn't ambiguity make the
task harder rather than easier?
Part of the interpretation is moved into the verbs. When the interpreter
only has one verb type to handle it can be less complicated. This is
what I think. I didn't study the interpreter functionality in detail.
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm