GOPHERSPACE.DE - P H O X Y
gophering on hngopher.com
HN Gopher Feed (2017-07-15) - page 1 of 10
 
___________________________________________________________________
TIO: Try it online
166 points by blacksqr
https://tio.run/#
___________________________________________________________________
 
TryItOnline - 1 hours ago
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.
 
jonahx - 2 hours ago
Some clarifications are in order: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.
 
  ouid - 34 minutes ago
  >It's sad to seeNo 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.
 
limeblack - 4 hours ago
The play button turning into a gear that spins is pretty cool.
First time I have seen that.
 
behnood85 - 2 hours ago
I don't like it. I still prefer Codepen and jsfiddle.
 
  ygra - 2 hours ago
  What do they do for languages other than JavaScript?
 
zepolen - 5 hours ago
  cat /etc/passwd    root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin   ftp:x:14:50:FTP
User:/var/ftp:/sbin/nologin   nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-timesync:x:999:998:systemd Time
Synchronization:/:/sbin/nologin   systemd-network:x:192:192:systemd
Network Management:/:/sbin/nologin   systemd-
resolve:x:193:193:systemd Resolver:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:998:997:User for polkitd:/:/sbin/nologin
rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin
abrt:x:173:173::/etc/abrt:/sbin/nologin   sshd:x:74:74:Privilege-
separated SSH:/var/empty/sshd:/sbin/nologin   cockpit-
ws:x:997:995:User for cockpit-ws:/:/sbin/nologin
rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
nfsnobody:x:65534:65534:Anonymous NFS
User:/var/lib/nfs:/sbin/nologin   tss:x:59:59:Account used by the
trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
chrony:x:996:994::/var/lib/chrony:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin   systemd-
coredump:x:993:993:systemd Core Dumper:/:/sbin/nologin
apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin
epmd:x:992:991:Erlang Port Mapper Daemon:/dev/null:/sbin/nologin
runner:x:1000:1000::/home/runner:/bin/bash
tio:x:1001:1001::/home/tio:/bin/bash
 
  chriscappuccio - 5 hours ago
  tee hee hee
 
  GlitchMr - 2 hours ago
  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.
 
  cabaalis - 5 hours ago
  Just a comment overall, I bookmarked the site and think it's
  great.Is it a good idea to present a site that compiles and runs
  code on a remote server to a site dedicated to hackers? :)
 
  dTal - 4 hours ago
  It has Bash - no need for Python subprocess shenanigans.
 
  gluczywo - 3 hours ago
  This was my first thought: sandboxing is gonna be tricky for such
  project.
 
    minxomat - 1 hours ago
    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
 
a-b - 2 hours ago
Code samples for each language would be appreciated
 
meggar - 2 hours ago
no swift?
 
keganunderwood - 5 hours ago
Not a comment about tio but I didn't realize it isn't possible to
write a simple hello world in C# dot net core.What a shitty
situation.What can we do to make it better? Provide a default
csproj file on load? Any better ideas?Microsoft (R) Build Engine
version 15.3.117.23532 Copyright (C) Microsoft Corporation. All
rights reserved.code.cs(1,22): error CS1022: Type or namespace
definition, or end-of-file expected
[/home/runner/project/project.csproj] code.cs(1,22): error CS1026:
) expected [/home/runner/project/project.csproj]Build
FAILED.code.cs(1,22): error CS1022: Type or namespace definition,
or end-of-file expected [/home/runner/project/project.csproj]
code.cs(1,22): error CS1026: ) expected
[/home/runner/project/project.csproj]     0 Warning(s)     2
Error(s)Time Elapsed 00:00:04.92 No executable found matching
command "dotnet-project/bin/Debug/netcoreapp*/project.dll"Real
time: 6.033 s User time: 2.973 s Sys. time: 0.442 s CPU share:
56.61 % Exit code: 1
 
  eterm - 5 hours ago
  Just filling in some default fields in the tio editor would do.
  For example pre-fill the header as:   using System;    using
  System.IO;  and pre-filling Code with   namespace example    {
  public class Example       {          static void Main(){
  }       }    }  (But better names, my naming sucks!)That would go
  a long way, then you could just add "Console.WriteLine("Hello
  World"); for hello world.
 
    milesdyson_phd - 5 hours ago
    You don't even need the namespace or the usings if you just
    want to print hello world either.
 
  fizixer - 5 hours ago
  > Not a comment about tio but I didn't realize it isn't possible
  to write a simple hello world in C# dot net core.Not sure why
  you'd think it's impossible [1]. I even ran it in the TIO C#
  console and it works.[1]
  https://rosettacode.org/wiki/Hello_world/Text#C.23
 
  pavelbr - 1 hours ago
  No issues here:
  https://tio.run/##Sy7WTc4vSv3/PzknsbhYwbGgoLq4JLEkM1mhLD8zRc...
 
  egor598 - 5 hours ago
  This works for me in TIO:public class App { public static void
  Main(string[] args) { System.Console.WriteLine("Hello World"); }
  }
 
razorunreal - 5 hours ago
Breaks the back button.
 
  limeblack - 4 hours ago
  If you are on Chrome right click the back button as a temporary
  solution.
 
  sbierwagen - 5 hours ago
  Yeah, hijacks left-swipe on mobile safari, too. Annoying!
 
[deleted]
 
wink - 5 hours ago
A description would be nice. I tried clojure and it successfully
printed when my code was (+ 1 3) but I didn't grasp the
input/arguments/etc...
 
  pavelbr - 1 hours ago
  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.
 
olalonde - 5 hours ago
Really cool. Would be great if each language had an "hello world"
example which would populate the fields.
 
  gluczywo - 2 hours ago
  For Go: https://tio.run/##S8//X5CYnJ2YnqqQm5iZx5WZW5BfVKKglJZbovQ
  /rT...BTW Do we really need ~540 bits (~90 chars of base62) to
  identify permanent link?
 
    DiThi - 1 hours ago
    Looks like it encodes the whole code instead of storing it
    somewhere, so yes.
 
      [deleted]
 
  runeks - 3 hours ago
  Great idea!For Haskell:
  https://tio.run/#%23y0gszk7Nyfn/PzcxM0/BVqGgtCS4pMgnT0HJAyic...
 
  pavelbr - 1 hours ago
  There already is a collection of `Hello, World!`s for every
  language used in tests, and this feature is planned to be
  implemented soon.
 
sbierwagen - 5 hours ago
Looks like http://repl.it/ but with more languages.
 
  lucb1e - 3 hours ago
  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.)
 
    pavelbr - 1 hours ago
    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.
 
    sbierwagen - 3 hours ago
    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
 
    amasad - 2 hours ago
    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:https://repl.it/site/blog/swift
 
  agumonkey - 5 hours ago
  and less "repl"
 
  amasad - 4 hours ago
  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 multiple
  file with realtime file update. You can plot something for
  example: https://repl.it/site/blog/file-updates- 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.
 
cecicasa - 4 hours ago
This is my code for Hello world in c++
https://tio.run/##HckxCoUwDADQPaeIuigoOGtx9hqSBinEVGqKg/yz96...
 
eridius - 4 hours ago
Looks neat, but the code editor really needs syntax highlighting
and intelligent indentation.
 
_kst_ - 2 hours ago
I was pleasantly surprised to see my own joke language 99 in the
list.https://github.com/Keith-S-Thompson/99I would have been even
more pleasantly surprised if it worked.
 
  pavelbr - 1 hours ago
  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.
 
prodikl - 2 hours ago
am i not getting this? i typed echo "hello"; for PHP and the output
says "echo 'hello';"it just repeated back what i typed instead of
processing the code hmm
 
  robbles - 2 hours ago
  it works exactly like the real PHP interpreter:     "hello"; ?>
 
pepijndevos - 4 hours ago
Would be nice to support Piet.
 
lai - 5 hours ago
This looks cool, but can you guys fix your push state code, I can't
hit back to come back to HN.
 
  dookahku - 4 hours ago
  confirmed. Chrome 59.0.3071.115 on Mac back button is broken.cool
  site, tho
 
    likelynew - 4 hours ago
    Long press back button and select HN.
 
      venning - 3 hours ago
      Doesn't help you on mobile.
 
        riquito - 3 hours ago
        It works on Firefox, give it a try
 
      leipert - 3 hours ago
      THANK YOU. Before Shift-Back (or right click?) would work and
      it stopped working a few versions back.
 
  teekert - 2 hours ago
  Yes, same here, FF 54.01 (64 bit) on Arch Linux.
 
  PhasmaFelis - 2 hours ago
  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.
 
    TryItOnline - 36 minutes ago
    Not intentionally. This was a simple bug: a history.pushState
    that should have been history.replaceState.
 
  isatty - 4 hours ago
  confirmed, safari Version 10.1.1 (12603.2.4) macOS
 
  TryItOnline - 41 minutes ago
  That should be fixed.