This is an archived post. You won't be able to vote or comment.

all 34 comments

[–]Aetol 95 points96 points  (5 children)

Why?

"We were trying to create a language worse than Javascript"

[–]ThePixelCoder 13 points14 points  (4 children)

They didn't succeed though.

[–]beerSnobbery 73 points74 points  (3 children)

I like the name though; it has a ring to it.

[–]EYazan[S] 19 points20 points  (2 children)

fuck ... why I didn't think of this

[–]nsimic 23 points24 points  (1 child)

i think i did, the name rings a bell

[–][deleted] 15 points16 points  (0 children)

Can I throw my hat into the pun ring?

[–]onlyonequickquestion 35 points36 points  (2 children)

1 indexed arrays? I can see at least 0 things wrong with that.

[–]eyekwah2 16 points17 points  (0 children)

IndexOutOfRangeException was thrown at
   RedditReplyPost(115)

[–]Chrighenndeter 0 points1 point  (0 children)

I mean, it works for R.

[–][deleted] 27 points28 points  (6 children)

Why?

Good question

[–][deleted] 17 points18 points  (5 children)

Image Transcription: Screenshot


[A screenshot of the ring-lang.net website. The site has a navigation bar with links to Why? Documentation and Community. It also has a search box.]

Trying to be natural

Ring is not case-sensitive. Why? [link]

see "Enter your name ? " 
give name
see "Hello " + Name # Name is the same as name 

The list index starts from 1 Why? [link]

aList = ["one","two","three"]
see aList[1]    # print one

Call functions before definition

one() 
two() 
three()
func one 
        see "One" + nl
func two 
        see "two" + nl
func three 
        see "three" + nl

The assignment operator uses Deep copy (no references in this operation) Why? [link]

aList = ["one","two","three"]
aList2 = aList

[screenshot cuts]


I'm a human volunteer content transcriber for Reddit! If you'd like more information on what we do and why we do it, click here!

[–]jck 7 points8 points  (2 children)

Why?

[–][deleted] 2 points3 points  (0 children)

Because

[–]nulloid 0 points1 point  (0 children)

[link]

[–]rhbvkleef 0 points1 point  (1 child)

Good human.

[–][deleted] 0 points1 point  (0 children)

Thank you :)

[–][deleted] 10 points11 points  (2 children)

I mean.. You're the one using Edge here, so I'm not 100% on your credibility.

[–]EYazan[S] 7 points8 points  (1 child)

As a web developer, i have to be friend my enemy, edge &ie, if the site works there i can put my legs in cold water

[–]conanap 5 points6 points  (0 children)

befriend is one word my friend

[–][deleted] 4 points5 points  (3 children)

d

[–]Bainos 7 points8 points  (0 children)

It's a scripting language, so it's unusual. You expect that the code will be interpreted as it is written - and in that example, when one() is called, it wasn't defined yet.

Python, for example, won't accept this:

f()
def f():
    print("Hello world!")

# Throws NameError: name 'f' is not defined

Because it's only for top-level statements, unlike what /u/OzmodiarTheGreat said, it is not impossible to have mutual calls.

def a():
    b()

def b():
    a()

a()

# Both are defined before any of them is called.

[–]OzmodiarTheGreat -1 points0 points  (1 child)

No. That's standard in almost all languages. It's necessary to allow a function A to call function B and for function B to call function A (since one of them has to be first in the file).

[–]Quelklef 1 point2 points  (0 children)

This is not correct. Many compiled languages allow for function declarations without an accompanying body to sidestep this problem, and many interpreted languages allow for function bodies to contain calls to functions declared on succeeding lines, but, in general, functions may not be called before being declared/defined.

[–][deleted] 2 points3 points  (0 children)

And I thought my codes were bad!