Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

[probably OT] Perl in Natural Semantic Metalanguage

by liz (Monsignor)
on Sep 22, 2003 at 15:40 UTC ( [id://293159]=perlmeditation: print w/replies, xml ) Need Help??

An article in the Saturday edition of the NRC (one of the national newspapers in the Netherlands) made me aware of the work of Anna Wierzbicka and Natural Semantic Metalanguage. From the Wikipedia article:
The Natural Semantic Metalanguage is an approach to semantic analysis based on reductive paraphrase (that is, breaking concepts/words down into combinations of simpler concepts/words) using a small collection of semantic primes. The semantic primes (below) believed to be atomic, primitive meanings present in all human languages.

Currently the following 61 primitives are recognized (in alphabetical order):

ABOVE, AFTER, ALL, BAD, BECAUSE, BEFORE, BELOW, BIG, BODY, CAN, DIE, DO, FAR, FEEL, FOR SOME TIME, GOOD, HAPPEN, HAVE, HEAR, HERE, I, IF, INSIDE, KIND OF, KNOW, LIKE, LIVE, A LONG TIME, MANY/MUCH, MAYBE, MOMENT, MORE, MOVE, (LONG), NEAR, NOT, NOW, ONE, OTHER, PART OF, PEOPLE/PERSON, THE SAME, SAY, SEE, A SHORT TIME, SIDE, SMALL, SOME, SOMEONE, SOMETHING/THING, THERE IS, THINK, THIS, TOUCH, TRUE, TWO, VERY, WANT, WHEN/TIME, WHERE/PLACE, WORD, YOU

That it is possible to express complex concepts with NSM, was the description of the Dutch word "gezellig" that was mentioned in the article:

Everyone here can think like this: I am here now with some other people. These people are all doing some things at the same time because they want to feel something good. They don't want to anyone here to feel something bad. They all feel something good. I want to be here with these people.

In the past I have been frequently asked to translate the word "gezellig", but never have been able to do so with all the nuances involved. I think this definition is very good.

Anyway, after reading the article I could not help but wonder how you would express Perl with these primitives, especially compared to other programming languages. And thereby conclusively proof that Perl is a better programming language ;-)

Liz

Update:
Someone pointed out to me that in my example about the Dutch word "gezellig", the word "everyone" is not a primitive. That is correct: you don't need to use only primitives in a description. You may also use compounds, as long as these compounds consist of other compounds or primitives. Just as your program consists of subroutine calls, possibly within subroutine calls. In the end, they're all Perl statements.

Getting back to "everyone", that of course is a compound, described by "all people".

Replies are listed 'Best First'.
Re: [probably OT] Perl in Natural Semantic Metalanguage
by simonm (Vicar) on Sep 22, 2003 at 16:27 UTC
      After poking around a bit more, it looks like the 61 primitives in NSM correspond to 41 words in Toki Pona; some of the overlap comes from merging ideas such as "like" and "want", but the biggest change is use of compound phrases for things like places and times -- using "small time" for "brief" and "near me" for "here".
      ala - NOT ali - ALL anpa - BELOW ante - OTHER ijo - SOMETHING/THING ike - BAD insa - INSIDE jan - PEOPLE/PERSON; SOMEONE (jan wan) jo - HAVE kama - HAPPEN; AFTER (kama la) ken - CAN; MAYBE; IF (ken la) kute - HEAR lili - SMALL, SOME lon - THERE IS, TRUE luka - PART OF lukin - SEE ma - WHERE/PLACE (or tomo for indoor places) mi - I moli - DIE mute - MANY/MUCH, MORE, VERY ni - THIS nimi - WORD pali - DO, LIVE pilin - FEEL, THINK pini - BEFORE poka - NEAR; SIDE; TOUCH; HERE (poka mi); FAR (poka mi ala) pona - GOOD sama - THE SAME, KIND OF sewi - ABOVE sijelo - BODY sina - YOU sona - KNOW suli - BIG; LONG tan - BECAUSE tawa - MOVE tenpo - WHEN/TIME; A LONG TIME (tenpo suli); FOR SOME TIME (tenpo wa +n); MOMENT (tenpo lili ni); NOW (tenpo ni); A SHORT TIME (tenpo +lili) toki - SAY tu - TWO wan - ONE wile - LIKE; WANT
Re: [probably OT] Perl in Natural Semantic Metalanguage
by allolex (Curate) on Sep 23, 2003 at 06:48 UTC

    Yes, I proposed a slight formalization of NSM to Cliff Goddard in a class he taught a few years ago, but the appeal of NSM to many is precisely it's ability to express quite complicated and culturally-embedded concepts in less formal terms.

    NSM has gone to great lengths to discover universal semantic primes. This granted, its main strength seems to be in the fact that by deciding to apply NSM, the linguist limits the amount of processing he or she has to perform to describe language meaning. And since it is in the spirit of a metalanguage to make description clearer and easier, I propose the expansion of the morphosyntactic and pragmatic constraints on NSM descriptions suggested in (and by) this paper. By creating rules apart from lexical constraints, NSM can also be a useful and productive method of doing semantics even for novice practitioners.
    (Davison, Damon Allen. 2001. A Reassessment of German ``Anger'' Verbs. Unpublished term paper from the 2001 LSA Institute.)

    At first guess, I would say that neither Perl nor any other programming language is complicated enough to require such description. Or in other words, Perl is already formalized, so such a description is not necessary. I know the primes are tempting, but Perl's "semantic primes" are the list of operations Perl can do, which should ultimately the C vocabulary. I think a lot of the monks are interested in having specific sigils for operations they use a lot, but Perl's best feature, IMHO, is its ability to let me express myself in non-prime terms.

    What would be interesting to me is a schematic breakdown of the syntax-semantics "interface" in Perl's various contexts, e.g . showing why efficiency for the programmer and the need for unambiguous constructions promote the growth of Perl's lexicon, like in the case of "==", "ne", "eq", etc.

    You might be interested in having a look at Cliff's 1998 introduction to Semantics. He discusses NSM in a lot more detail there.

    --
    Allolex

Re: [probably OT] Perl in Natural Semantic Metalanguage
by sandfly (Beadle) on Sep 25, 2003 at 19:46 UTC
    Very interesting! It seems like there are too many terms for time though, and you could cut a few others out if you traded OPPOSITE for some of the other primitives, such as: ABOVE, BELOW, BIG, SMALL, NEAR and FAR, though this is not really a decomposition.

    The terms "colour", "bright", "dark" and "smell" are curious omissions, given the inclusion of SEE, TOUCH and HEAR. Are there languages where these are not concepts? Anybody like to take a crack at decomposing these into the primitives?

      The Yele language of Rossel Island, Papua New Guinea has no word for colour. In fact all the colour terms are derived from physical objects, sometimes by reduplication (doubling the word). For example, the white cockatoo is "kpaap^i", "white" is "kpaap^ikpaap^i".

      It has no word for "bright", but you can say "it's light is big".

      There is an nice word for "dark", "mg^id^i".

      There is a noun "tuu", which means "smell", but no verb. To say "Can you smell it?" you would ask the equivalent of "Is its smell standing?"

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlmeditation [id://293159]
Approved by broquaint
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others lurking in the Monastery: (5)
As of 2024-03-19 08:08 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found