Simplicity vs Complexity in Languages

1037il
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi Auxlangers,

So we've been discussing the merits of simplicity vs complexity,
and Dana, Risto and Leo have mentioned how things can be overly simple,
or rather so simple so as to be cumbersome for humans.  Such as a
binary or trinary number system, which while theoretically optimal for
representing numbers, is not conducive to human usage. Decimal is the
most common, and duodecimal or dozenal is by some considered to be
optimal for human usage -- though some languages like Babylonian,
Hellenistic Greek and French are somewhat sexagesimal.

Similarly in Languages it is possible to get absurdly simple, such as
the Brainf*ck programming language, which is technically turing
complete, and so all computer programs can be expressed in it, and at
the same time it is extremely simple using only 8 glyphs, each of
which is a word.  Brainplus a slightly extended version has been used
for making computer programs which can themselves program computers
http://www.primaryobjects.com/2015/01/05/self-programming-artificial-int
elligence-learns-to-use-functions/
 You could consider it to be the aUI (oligosynthetic language) of the
programming world.

There is also what is known as Machine Language, which is the
binary/hexadecimal numbers which the computer interacts in (1st
generation language), it is generally agreed to be very cumbersome to
write in due to the complex "morphology" of bits. Above that is
Assembly Language (second generation), which varies between various
processors but generally has a few common words.  Assembly languages
often have hundreds of words, though many are special-purpose so in
general-purpose can get by with a few dozen.  You could consider it to
be the Toki Pona (minimalist language) of the computer programming world
.

Humans typically employ third generation computer programming
languages, which itself is split into three subcategories,  low-level,
high-level and scripting. The international standard for low level
languages is C which is perhaps equivalent to Esperanto.
Whereas Java is the most popular "high-level" language, with C++ and
C# being close contenders.
In terms of scripting Python and Javascript are the most popular,
though you are much more likely to encounter Javascript as it is the
main scripting language of the world wide web.
There are also domain-specific languages which are suited for a
particular purpose, including SQL and Matlab,  similar to Laadan the
feminist language.

There is a programming language similar to Ithkuil it is called APL,
it also consists of many strange symbols that can be combined in a
variety of ways making it extremely concise yet at the same time
arduous to learn.
The programming language which Lojban is most similar to is probably
Prolog, the "logical programming language", it has use in certain
domains, particularly in pattern matching, but isn't popular due to
difficulty of use and slowness of execution.

Back to the point of Simplicity vs Complexity, High level languages
like C++ have taken an interesting approach, where people can use the
language in a low-level way (just like low-level C),  but if they like
they can also use more complicated constructs. Indeed, C++, Java and
C# are all languages so vast that no one can or should use all
features in the same program,  generally computer programmers stick to
a certain niche or "paradigm" within the language when writing their
code.
https://en.wikipedia.org/wiki/Comparison_of_programming_paradigms

The trend in computer programming languages has also been towards
supporting ever more paradigms, for instance C supports 2 paradigms,
C++ supports 5, Java supports 6 and C# supports 9 different paradigms.
The idea is that different people solve different problems in
different ways.

Of course one of the issues of having so many paradigms is that if a
programmer is not familiar with a different paradigm then they wont be
able to (easily) understand the code written in it without studying
the paradigm. Though typically reading code in a new paradigm is
easier than writing code in a new paradigm as it requires a different
level of understanding.

That's why I believe an IAL should be like C++, allowing people to
write at a low-level in a simple paradigm, but also at higher levels
in other paradigms.
So in the example of SPEL there is a simple method of composing phrases,
and a very simple way of parsing phrases (each word/syllable is either
two or four glyphs long) but many different ideas and paradigms can be
expressed with it.
I've made a little overview for composition here:
http://wyn.bot.nu/spel/src/vocab/gen/gramTable.html

- -- 
Logan Streondj,
A dream of Gaia's future.
http://joyfullifestyle.ca

You can use encrypted email with me,
how to: https://emailselfdefense.fsf.org/en/
key fingerprint:
BD7E 6E2A E625 6D47 F7ED 30EC 86D8 FC7C FAD7 2729
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)

iQIcBAEBAgAGBQJW1c7BAAoJEIbY/Hz61ycpnrYP+QELFs5QTD2hiVglan/Rohrb
KHyRdkFCg+3jsV/u3xYLueaKCftpUxWGCm6ifpKBENbSMpWmnmEWQy4aai4N2HxB
NlTQzeklcuRVT4qME+QUXDvOU/0N0yyf85NjREWgCcJ9bBBVeWm/QPVX0aclyYoR
a78gc73gBe8kYzuqA4O0R8Vink9hvLXs3L/lO+YjyWNWHrio7x+/HJAiQZyUfx8D
VDUPj5KKbJbs6ihkvT9EdCz8C4D5Tj2/n/ZWrFKxB6mBpVQGFX+6Uft6IuF81AVz
dwJCL3FEOzvGnQ5nqSkQ9q+VGHAWdbB9JqtZgg9mXNpVQC7E6RO6QLjr4WB/k9zI
Zdv2roij1YXKKQj9Xs6MaHfezdyXHQ+q3po8GRQK20mwVA7mHfX28zx429JmgZ0R
tHWPZGyY18YHljxUxuTehXGYpTGx0Xr8S99xglDuveuTROXu7nI1gQG9DlWu8QbH
yzYdr3jGKCQDGEOEG20xUukjgA91dAO9VxrP+4whdQ7+azzRAXyueg9c9FgFlfY1
asUqLxpo5/VfH/F4rDoRWxC6Uvirc/D2LWojaoeRnLjyL3xsk4t3SmcX2XYszL/L
5TQ0/JYSW9rz8WXkW9nn2/6XPQ+rmCRQFtjSq/QjB9EvVMAPn2beRYqaBDkCPnOF
h+BKHTEmN7aVhs8TdWef
=cZYT
-----END PGP SIGNATURE-----

originally posted at https://listserv.brown.edu/archives/cgi-bin/wa?A2=ind1603A&L=AUXLANG&F=&S=&P=1405
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s