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?
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?
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm