This site is not a competitor to codepen, jsfiddle, etc. It's main purpose is to allow play with programming languages you'd otherwise have to install locally -- specifically, it's extremely helpful when browsing https://codegolf.stackexchange.com/ -- the author is a prolific and impressive contributor to that site.
It's sad to see a simple, well-designed, free, open-source project embracing the values of the HN crowd ("The TIO web app is free of charge, ad-free, and doesn't use tracking cookies or third-party analytic scripts.") -- and the top comment, as well as many others, are essentially a nitpick about a bug that can be trivially fixed.
No it's not. The top comment is a bug report because people are using the app. It also got fixed, which, for a comment chain, is about as much value as possible.
Looks like getting mentioned on Hacker News is an excellent way to get your servers overloaded. :) I've added a couple of additional servers.
I'll work on the issues that were brought up here asap. TIO only has two developers at this point (and only one of us works on the web app), so "asap" might take a little while.
Just because /etc/passwd can be read doesn't mean there is no sandboxing - it's just not too restrictive, probably to allow many programming languages to run (bash is one of languages after all - so process execution has to be allowed). Just having access to /etc/passwd doesn't mean the service is hacked. Check other tools like this like ideone, they allow you to read /etc/passwd as well.
Try running `ps aux` for instance and notice that you can only notice runner's processes. Try writing a file in your home, and notice that it doesn't persist between runs. Run a process in background, it doesn't stay running. Essentially every change to the runner (account on which scripts are running) is undone after provided script is done running.
Not really, with SELinux, which is what TIO uses. TIO can be deployed pretty much anywhere SEL is supported. Instructions here: https://github.com/TryItOnline/tiosetup
TIO looks great. However, it's probably serving different purposes than Repl.it, here are some differences as I see them:
- repl.it is interactive, which means that not only a process and a container is booted up that stays with you the whole session time but also means that the program state is saved when you're executing code from the repl console. This enabled interactive games like text games and cli programs.
- support for third party modules starting with pipy and npm (you can import any module from those registries).
There are many other small features that's worth checking out. But to sum up, Repl.it is not just trying to be a code execution service but an actual programming environment.
Repl.it sounded really epic... except it's not REPL, at least not for the first language that I wanted to repl: C (https://repl.it/languages/c).
Still, I like the website better than TIO. At TIO I picked PHP to test and it gives me options like headers, options (without a list of options/settings to modify, just an "Add" button)... I just want to type code in an editor and run it. Repl.it also has syntax highlighting.
(For those who don't know, REPL is read-evaluate-print-loop, so it takes an input (e.g. "int i = 0;"), evaluates it (runs it), prints any output, and loops back to the start.)
For languages like C that don't ship with a repl we don't currently implement one -- although we probably should, since a lot of them have third-party repl libraries.
Check our most of our other languages. They're proper repls I promise ;)
I wrote about the distinction you're talking about when we released swift support:
No love for Common Lisp? Please add Common Lisp :).
Anyway, pretty nice collection of languages you have there; a lot of which I want to play with but don't feel like installing a proper toolchain yet. So I'll definitely use the service :).
Usually when I go to repl.it it's to do something in a python console if I'm at a computer that doesn't have python installed: https://repl.it/languages/python
It's actually quite simple: 'options' are command line options that you can supply, I don't know PHP but for Ruby it might be `-p` for example. Header and Footer are just glued to the code by newlines.
Options are what get passed to the interpreter. Arguments get passed to the program.
How the interpreter gets called for most languages roughly goes like:
Input is StdIn. Arguments are command line arguments. Header and Footer are glued to code by newlines. Output is StdOut, Debug is StdErr and timing information.
Please contact @Dennis, the maintainer of TIO in talk.tryitonline.net, and tell him what isn't working. Fixes and language requests tend to be resolved within a day, because Dennis is awesome.
I really look forward to using this. It would be a great help to mobile users if uneeded options, e.g., 'header', could be made to disappear to save screen real estate.
The site is usable but can be made a lot better simply by changing the priorities.
Hide all those compiler flags etc in the first page. The idea is if any one needs such advanced settings surely the source code will be multi page source code, even for the special use case it would be in the 1 % users.
Include some template code which is readily compilable. THis is will be useful
The sharable link should be integrated with reddit, google +, etc to be more resistance free sharing.
I think the default execution time should probably be less than 60 seconds. Most simple programs that people run on this kind of site should have an execution time of less than a second, so ~10 seconds should certainly be enough by default. This would free up some resources on your end and would inform people more quickly that they may have an infinite loop in their code.
The reason it's the first time you've seen might be because it's stupidly difficult to get that effect to work on IE/Edge. You might notice that there's a different effect on the run button for those browsers.
You can ping the site's maintainer, @Dennis, in talk.tryitonline.net. Bug reports and language requests tend to be resolved withing the same day of them being submitted, because Dennis is awesome.
It's not meant to be an editor. That sounds like unnecessary feature creep - the point is to run snippets of code in different languages through your web browser, not to be an IDE.
I think syntax highlighting makes sense. People do write code right into things like this. In that case, syntax highlighting helps if that's what you're used to. Also it is helpful even if copy pasting for readability if you're normally used to syntax highlighting.
But people still need to type those snippets. Typing up fresh code in online code runners (as opposed to pasting in pre-written code) is extremely common.
(Disclaimer: client is by me) but I have an alternative front-end for TIO which supports syntax highlighting and indentation for popular languages: https://vihan.org/p/tio
TIO is powered by Fedora Linux, and unfortunatly the site's maintainer was unable to get the Linux port of Swift to work. This may change in the near future, however.
Double-tapping back sometimes works on sites where the landing page immediately forwards you to something else, but this site appears to actively hijack the back/forward buttons. For shame.
Yeah, I don't see this as an attempt to be another Codepen or jsfiddle. This is just a way to easily test out features of a language, without going through the (sometimes very tedious) installation and setup processes required to code in certain languages locally.
This site is not a competitor to codepen, jsfiddle, etc. It's main purpose is to allow play with programming languages you'd otherwise have to install locally -- specifically, it's extremely helpful when browsing https://codegolf.stackexchange.com/ -- the author is a prolific and impressive contributor to that site.
It's sad to see a simple, well-designed, free, open-source project embracing the values of the HN crowd ("The TIO web app is free of charge, ad-free, and doesn't use tracking cookies or third-party analytic scripts.") -- and the top comment, as well as many others, are essentially a nitpick about a bug that can be trivially fixed.