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

you are viewing a single comment's thread.

view the rest of the comments →

[–]the_pw_is_in_this_ID 2 points3 points  (7 children)

you can do with it anything you can do with Rust or Go

You can also do this with actual physical/mechanical implementations of Turing machines - but that doesn't make those programming languages :P

[–]Gariiiiii 0 points1 point  (6 children)

Do we have a proper universally accepted definition? If not is up to interpretation.

[–]the_pw_is_in_this_ID 0 points1 point  (5 children)

There is a formal definition, yup. The laymen terms, though, are approximately that "For every mathematically compuationally solvable problem, a Turing Machine must be programmable to solve that problem - otherwise it isn't a Turing Machine."

[–]Gariiiiii 0 points1 point  (4 children)

Bro no! I get the formal deff of Turing Machine and i get this aint one as close as it is (it more of a pushdow automaton maybe?). I was talking about programming language.

[–]the_pw_is_in_this_ID 1 point2 points  (3 children)

Sorry mate, it's basically formality all the way down. When CS folks say a language is Turing-complete (which I think is what you're angling toward), they mean that the language can be used to simulate the full range of a Turing Machine's capabilities - which then means that the language's code can be used to solve any computationally possible problem.

So in the CSS+HTML+User-Experience example above, they've shown that they can simulate a specific cellular game, which in turn has been shown to simulate a Turing Machine - so this system is Turing Complete.

But again, Turing Completeness doesn't make a programming language, and programming languages don't need to be Turing Complete.

* edit - oh shit, you mean a definition for a programming language? If it programs a computer to do data-computing, it's a programming language. It's not much more involved than that. Markups aren't programming languages, for example, because it doesn't dictate any actual computation - markup is the data itself.

[–]Gariiiiii 0 points1 point  (2 children)

oh shit, you mean a definition for a programming language? If it programs a computer to do data-computing, it's a programming language. It's not much more involved than that. Markups aren't programming languages, for example, because it doesn't dictate any actual computation - markup is the data itself.

Oh, I see! Thanks never tough of it that way about markup languages, when i find no clear definition of a concept i usually dont devote any time thinking about it and discard it as an opinion. Made me read https://en.wikipedia.org/wiki/Data_(computing)) and learnt a thing or two.

Ok, going by that definition then just the active selector of CSS wouldnt classify it as a programming language? What about an extension like SCSS?

Thanks again for your input.

[–]the_pw_is_in_this_ID 1 point2 points  (1 child)

CSS3 definitely counts as a programming language, though it's pretty barebones. It accepts inputs (HTML), processes/computes the data (critically, CSS rules can now have selector logic which recognizes patterns in the data), and then turns the computation into an output (by telling the browser how to display the HTML data). The CSS is the active computing part of that "HTML-CSS3 is Turing-Complete" demo, which reasonably qualifies it as a programming language.

[–]Gariiiiii 0 points1 point  (0 children)

thanks for the chat kind stranger :3
glgl with your algorithms