Comments by "p11" (@porky1118) on "Object Oriented Programming vs Functional Programming" video.

  1. I think, there is still potetntial for a general purpose programming language having more influences from natural language, but not how the old approaches worked. The old programming language, which tried to make programming languages more like natural languages, did it, by translating function calls and macros to a limited set of common phrases, often making it less flexible and clear. I think, SQL is a good example, even if not a general purpose language. I would rather try to add features of natural language into programming languages. The most important feature of natural languages, which has not been implemented in any programming language, is a way to nest complex phrases without the need of explicit brackets (might be words, which act like brackets). In natural language, every word has some implicit relation. An adjective (A) always relates to the next object, which might consist of multiple words. In some languages a verb (V) at the end of a sentence or subsentence ends it. And relative pronouns (R) start a new subsentence. And Nouns (N) represent simple objects. So lets assume, we have a sentence of this structure: N1 A1 N2 R1 A2 A3 N3 N4 V1 V2 By strictly applying the rules (the description would have to be more accurate, but you should get the point), the nesting (restructured, so the verbs are written like function calls) would be something like this: V2(N1, A1(N2), V2(R1, A2(A3(N3)), N4) Even if it's not english grammer, I can try to insert some english words: English: I like the blue boat, which swims from the great island fast. Structure: I blue boat which from great island fast swim like. Nesting: Like(I, blue(boat), swim(which, from(great(island)), fast) (I know, "fast" is not a noun, and "from" is not an adjective, but it's difficult to have complex sentences, which use a structure like this and make sense.) So how would I use this in a programming languare? I'd add about three kinds of words, one which opens a bracket (like R), one which closes a bracket (like V) and one, which does none of it or both (like N or A). Maybe more. And everything you define will belong to one of these word kind.
    2
  2. 1
  3. 1
  4. 1
  5. 1