Author Topic: Uiua !  (Read 952 times)

0 Members and 1 Guest are viewing this topic.

Offline SiliconWizardTopic starter

  • Super Contributor
  • ***
  • Posts: 14438
  • Country: fr
Uiua !
« on: October 22, 2023, 03:00:18 am »
It's been a while... so, it's time for a new programming language. I think this one's gonna blow you away.
Yes, it's just as cool as it sounds. Uiua.

https://www.uiua.org/
 
The following users thanked this post: Ed.Kloonk, newbrain

Online JPortici

  • Super Contributor
  • ***
  • Posts: 3461
  • Country: it
Re: Uiua !
« Reply #1 on: October 22, 2023, 06:55:02 am »
at least "+" is add.. or is it that + is add and + is a variable name, or something
 

Online Nominal Animal

  • Super Contributor
  • ***
  • Posts: 6227
  • Country: fi
    • My home page and email address
Re: Uiua !
« Reply #2 on: October 22, 2023, 10:21:51 am »
I find it extremely funny that you cannot read about the language in your browser unless you have JavaScript enabled.

As to blowing me away... nah.  Brainfuck is way superior in every way.  Using underscore instead of nested array brackets to define two-dimensional arrays?  Using ' ' (U+2008 punctuation space) or '‧' (U+2027 hyphenation point) would have been innovative, and '‿' (U+203F undertie) would have been elegant; underscore lacks any kind of innovation, style, or finesse.

Using '․' (U+2024 one dot leader) as the second dimension separator , '‥' (U+2025 two dot leader) as the third dimension separator, and '…' (U+2026 three dot leader) as the fourth dimension separator, would have allowed up to four-dimensional arrays instead of just the current two.

Naming the language 'Uiua' instead of say '⁓' (U+2053 swung dash) or '⁃' (U+2043 hyphen bullet) shows a fatal lack of imagination, in my opinion.
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5894
  • Country: es
Re: Uiua !
« Reply #3 on: October 22, 2023, 12:38:33 pm »
TL;DR.
Like Python and other modern languages, I hope it follows their nosense behaviour, like getting broken by mixing tabs/spaces or non-matching identation :)

I always end rewatching this masterpiece:
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 
The following users thanked this post: Ed.Kloonk, eutectique

Offline tggzzz

  • Super Contributor
  • ***
  • Posts: 19462
  • Country: gb
  • Numbers, not adjectives
    • Having fun doing more, with less
Re: Uiua !
« Reply #4 on: October 22, 2023, 01:33:18 pm »
TL;DR.
Like Python and other modern languages, I hope it follows their nosense behaviour, like getting broken by mixing tabs/spaces or non-matching identation :)

Never forget the very common place where different types of whitespace are semantically significant. In makefile syntax a tab character has a different meaning to one or more space characters.

Long live ASR33 teletypes :)

https://www.gnu.org/software/make/manual/make.html#Rule-Introduction
There are lies, damned lies, statistics - and ADC/DAC specs.
Glider pilot's aphorism: "there is no substitute for span". Retort: "There is a substitute: skill+imagination. But you can buy span".
Having fun doing more, with less
 

Online Nominal Animal

  • Super Contributor
  • ***
  • Posts: 6227
  • Country: fi
    • My home page and email address
Re: Uiua !
« Reply #5 on: October 22, 2023, 02:03:59 pm »
Unicode General Punctuation block adds twelve more distinct whitespace characters, from ' ' (U+2000 EN QUAD) to ' ' (U+200A HAIR SPACE), ' ' (U+205F MEDIUM MATHEMATICAL SPACE), which gives plenty of opportunities for new programming language designers.

When someone designs a language where one uses Unicode combining diacriticals (U+0300 to U+036F) for operators applied to objects (obviously represented by single-character variables for brevity; for example, ̾ applied to ℄ would be written as ℄̾), I might take notice.
 

Offline tggzzz

  • Super Contributor
  • ***
  • Posts: 19462
  • Country: gb
  • Numbers, not adjectives
    • Having fun doing more, with less
Re: Uiua !
« Reply #6 on: October 22, 2023, 02:17:10 pm »
Unicode General Punctuation block adds twelve more distinct whitespace characters, from ' ' (U+2000 EN QUAD) to ' ' (U+200A HAIR SPACE), ' ' (U+205F MEDIUM MATHEMATICAL SPACE), which gives plenty of opportunities for new programming language designers.

When someone designs a language where one uses Unicode combining diacriticals (U+0300 to U+036F) for operators applied to objects (obviously represented by single-character variables for brevity; for example, ̾ applied to ℄ would be written as ℄̾), I might take notice.

Unicode is, in general, a can of worms surprises.
https://www.trojansource.codes/
https://queue.acm.org/detail.cfm?id=3478522
There are lies, damned lies, statistics - and ADC/DAC specs.
Glider pilot's aphorism: "there is no substitute for span". Retort: "There is a substitute: skill+imagination. But you can buy span".
Having fun doing more, with less
 

Online Nominal Animal

  • Super Contributor
  • ***
  • Posts: 6227
  • Country: fi
    • My home page and email address
Re: Uiua !
« Reply #7 on: October 22, 2023, 04:26:11 pm »
Unicode is, in general, a can of worms surprises.
Absolutely.

It is excellent for visual representation, but horrible for exactness or distinguishability of words/phrases/tokens.
Very good for fuzzy use like conveying human languages, horrible for exact uses like identifiers, passphrases, tokens, programming languages.

Can you tell the difference between "finance" and "fⅰnance"?  I can't.  (The second letter of the latter is U+2170 small roman numeral one, from the Unicode Number Forms block, and thus not caught by language-block Unicode filters.)
« Last Edit: October 22, 2023, 04:30:57 pm by Nominal Animal »
 

Online newbrain

  • Super Contributor
  • ***
  • Posts: 1717
  • Country: se
Re: Uiua !
« Reply #8 on: November 01, 2023, 12:56:07 pm »
It's been a while... so, it's time for a new programming language. I think this one's gonna blow you away.
Yes, it's just as cool as it sounds. Uiua.

https://www.uiua.org/
APL + Forth, my misspent youth languages.
Yummy!

Order of execution is a bit surprising:
/+.
duplicate then sum-reduce

/+
.
sum-reduce, then duplicate.

It's probably following a modified form of APL rule.
Nandemo wa shiranai wa yo, shitteru koto dake.
 

Offline dferyance

  • Regular Contributor
  • *
  • Posts: 180
Re: Uiua !
« Reply #9 on: November 01, 2023, 06:36:25 pm »
It is fun creating new programming languages. Lots of languages have grown by borrowing ideas first pioneered in a different language. Depending on how the interpreter is written, it might be good for embedding in other applications.

As a matter of taste, I dislike languages that have high-level constructs that are built into the language itself. I'd rather have the language have powerful fundamentals for designing libraries and then high-level constructs can be included in the libraries. It is a preference, not some absolute. And what is the best fundamentals is a challenging design question. But it allows for creating a large application in a language and not having to stop and re-write it for a new language feature provided in a different language. Seeing a feature of "audio" being part of the language, causes me to loose interest here.
 

Offline SiliconWizardTopic starter

  • Super Contributor
  • ***
  • Posts: 14438
  • Country: fr
Re: Uiua !
« Reply #10 on: November 01, 2023, 09:42:27 pm »
It is of course largely a matter of taste and preferences, although arguably some programming languages have taken a very, uh, odd direction.
Yes it appears to be a fun activity. Just realize that most attempts are ending in the trash bin, and probably most of them do not deserve any better.
It's just that with the Internet and the habit we got to publish just anything because it's easy and cheap (or free), a lot of stuff we would otherwise have just worked on and kept for ourselves ends up for everyone to see, even those that don't care to. :popcorn:
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf