Nanolang

  • 1 Replies
  • 131 Views
*

Zero

  • Trusty Member
  • ********
  • Replicant
  • *
  • 730
    • Thinkbots are free
Nanolang
« on: October 08, 2018, 10:34:52 am »
No no, it isn't lisp, really. But it uses parentheses.

Any decent programmer could survive with just assignment, loops, and conditionals, would you agree?

This is a symbol:
a

This is a list:
(a b c)

This is a quoted symbol:
'a

Quoted symbols don't evaluate, as usual.

Lists starting with a defined symbol execute this symbol:
(+ 1 2 3 4)

This is a sum, which evaluates to 10.

Here is the fun part.

Assignment
Lists starting with a quoted symbol assign their cdr to the symbol:
('toys ("a ball" "a cowboy" "a doll"))

Conditional
Lists starting with a boolean evaluate their cdr if the boolean is true:
((< age 80) print "Forever young!!!")

Loop
Lists starting with a 2 elements list evaluate to a for-each loop:
((toys t) print (& "I have " t))

Zip.
Thinkbots are free, as in 'free will'.

*

Zero

  • Trusty Member
  • ********
  • Replicant
  • *
  • 730
    • Thinkbots are free
Re: Nanolang
« Reply #1 on: October 09, 2018, 08:26:12 am »
There was a mistake in the loop form (the iterator t should be a symbol 't) + I went a little further.

Next step was obvious, what's a language without function? Ok, we can't live without them, but they rock.

Assignment
Lists starting with a quoted symbol assign their cdr to the symbol:
('toys ("a ball" "a cowboy" "a doll"))

Conditional
Lists starting with a boolean evaluate their cdr if the boolean is true:
((< age 80) print "Forever young!!!")

Loop
Lists starting with a 2 elements list evaluate to a for-each loop:
((toys 't) print (& "I have " t))

Lambda
Lists starting with a quoted list of symbols evaluate to a lambda:
('(x y) sqrt (+ (sqr x) (sqr y)))

Unlike Lisp, a function body made of several expressions returns the first available value, instead of the last. This is because IFs have no ELSEs (if the THEN part is executed, the function returns its value, else it continues evaluation of its body until it has something to return).
Thinkbots are free, as in 'free will'.

 


What kind of abilities will AGI have?
by korrelan (General AI Discussion)
Today at 09:35:04 am
ETHICS
by Hopefully Something (General AI Discussion)
Today at 08:12:23 am
A big Hi to all bot lovers and makers!
by DemonRaven (New Users Please Post Here)
October 13, 2018, 09:08:26 pm
BOOST
by Art (General Chat)
October 13, 2018, 01:59:09 pm
collaborators wanted.
by DemonRaven (AI Programming)
October 13, 2018, 12:16:52 pm
XKCD Comic : Rock Wall
by Tyler (XKCD Comic)
October 13, 2018, 12:00:36 pm
How many lines of code will AGI be?
by Hopefully Something (General AI Discussion)
October 12, 2018, 11:16:25 pm
ChatbotML on Twitch
by squarebear (Home Made Robots)
October 12, 2018, 09:26:00 am
Tag... you're it...
by LOCKSUIT (AI News )
October 14, 2018, 11:52:37 pm
In need of a psychological coach?
by ruebot (AI News )
October 13, 2018, 01:33:37 pm
Leela Chess Zero
by Art (AI News )
October 08, 2018, 03:30:42 pm
Alpha GO Zero
by Art (AI News )
October 08, 2018, 02:48:32 pm
Detecting fake news at its source
by Tyler (Robotics News)
October 06, 2018, 12:00:55 pm
Phase Change Memory
by Art (AI News )
October 05, 2018, 01:21:59 pm
Model helps robots navigate more like humans do
by Tyler (Robotics News)
October 05, 2018, 12:01:40 pm
Regina Barzilay, James Collins, and Phil Sharp join leadership of new effort on machine learning in health
by Tyler (Robotics News)
October 04, 2018, 12:00:23 pm

Users Online

33 Guests, 1 User
Users active in past 15 minutes:
korrelan
[Trusty Member]

Most Online Today: 107. Most Online Ever: 208 (August 27, 2008, 09:36:30 am)

Articles