« first day (1999 days earlier)      last day (2845 days later) » 

6:00 PM
(furthermore your query works on my computer)
 
@NathanMerrill Also output this information: thing being indexed, length of thing, and index.
 
@Dennis Nevermind I got the same error
Just a sec... (sorry again)
 
@El'endiaStarman so, the variable name of the thing being indexed?
 
how does that process work?
 
6:03 PM
@Dennis Nevermind again, I actually don't have the error
 
@NathanMerrill Yes. And stuff like foo[a] too.
 
^^^^ A 60's error message.
 
@NathanMerrill Dunno yet. I haven't even implemented indexing yet...
 
so, lets say I make a class Foo
it has a indexAt(index) function
and it throws a IndexOutOfBounds error
how does it get access to the variable name?
 
@Dennis So there's a problem with your o or hw files (no read access?) or you didn't exactly query swipl -g "consult('brachylog.pl'),run_from_files_no_file('code.brachylog','hw','o')" -t "halt"
 
6:04 PM
^^
 
also, what if I do func_call()[index]
or this.that.joe[index]
 
@NathanMerrill Built-in functions in Pytek (like indexing) generally have access to the full call stack, so it probably won't be terribly hard to get the variable name.
Are you seriously trying to dissuade me from implementing this feature?
 
no. I'm making you think through how it works
I like descriptive error messages :)
@El'endiaStarman are there magic methods?
 
@NathanMerrill Not sure what you mean.
 
(@Dennis not code.brachylog but your code file name (cat) obviously)
 
6:08 PM
@El'endiaStarman aka, if I wanted to make a = MyFoo(); a[0] work, is it possible?
 
@NathanMerrill That's my plan, yes. The error message would use a (along with the line number).
 
@El'endiaStarman so, my class would need some function get(index) where it gets the index passed to it via the brackets
 
First results from my timing experiments: many basic functions (addition, looping) take 0.1 seconds each. The "delay" block takes 0.03 seconds longer than it should, so setting the delay block to "wait 0.1 seconds" actually means it will wait 0.13 seconds.
 
so, then the question is how my get function would know the name of the variable
 
@NathanMerrill Yes. Like Python's __getitem__.
 
6:11 PM
unless that name is automatically printed when you walk up the stack trace
@PhiNotPi lol
 
@NathanMerrill Hmm. Yeah, that probably would happen. I was thinking more in the sense of when you do stuff like foo = [1 2 3]; \print(foo[4]).
 
That time when you try to sort something only to notice the sort function for your language does a deep sort by default
 
@El'endiaStarman what will myvar.\func().accessor[0] print?
 
also, a crucial part of printing error messages is not printing too much.
perhaps you have some ability to indicate which lines should be skipped when printing the stack trace?
 
6:18 PM
@NathanMerrill I definitely want to figure out some way to leave out most lines from a stack overflow. When your problem is that you recursed too deep with your function, being told that fact a 1000 times doesn't help. :P
 
Actually, that 0.03 extra doesn't seem to be a constant number... :(
 
@PhiNotPi I could see some use in it being like 0.001 or something (so that it always occurs after the block it waited on)
but I think you'd do better having it being constant
 
Possibly implemented by way of a loop-detection routine. Which isn't foolproof, sure, but if you intentionally break it, you deserve the Wall-of-China-text.
 
@Fatalize I'm running it as root, so there should be no problems.
tryitonline:prolog_parser# ls -l code.brachylog hw o
-rw-r--r-- 1 root root  0 Jul 20 13:54 code.brachylog
-rw-r--r-- 1 root root 12 Jul 20 13:45 hw
-rw-r--r-- 1 root root  0 Jul 20 14:19 o
tryitonline:prolog_parser# swipl -g "consult('brachylog.pl'),run_from_files_no_file('code.brachylog','hw','o')" -t "halt"
ERROR: Prolog initialisation failed:
ERROR: Unknown message: 'Incorrect variable format.'
 
@El'endiaStarman well, the other issue is that often you don't want the 50 lines of system stack trace
 
6:21 PM
@Dennis well now it's not the same error, what do you have in hw and o?
 
I mean, I think you always print out the top 1 and the bottom 1
 
@Fatalize hw had Hello world in it. I removed that and it prints True. now.
 
@Dennis Ok so it works. Hello world is invalid, "Hello world" would be valid though
 
@NathanMerrill Best case scenario: make the stack trace expandable and only print the first two and last two. Minor issue: this isn't an option with terminals, so it'd have to be a configurable option set by IDEs or whatever.
 
@Fatalize Wait, so the input file also contains code?
 
6:23 PM
@Dennis No, but strings are between quotes
otherwise How do you differentiate a string that contains 42 and the integer 42 in inputs?
 
^ Smells of eval...
 
hi golfers
 
@Fatalize Is the input evaluated in a safe manner or do I have to worry about code injection?
 
@TùxCräftîñg hi part of golfers
 
@El'endiaStarman right, but that's completely up to IDEs (which languages often have little control over)
 
6:26 PM
@Dennis If the input/output isn't a valid string/int/float/list of those, it will error like you saw, and you can't eval code from a string in Brachylog so yes it's safe
 
oooh, what if you print out the important bits first, then everything else after?
 
@NathanMerrill Yes. I do plan on developing a Pytek-specific IDE since I want to try adding other features, like seeing the AST being traversed and inspecting variables at certain points. Basically, I want to expose a lot of Pytek's internal functionality.
 
@Downgoat sorry, I can't.
 
@NathanMerrill Filing that away for consideration...
 
VIB? very important bits...
 
6:28 PM
@Fatalize OK. Just to check: Can the code passed to Brachylog do any unsafe operations (evaluate arbitrary Prolog code, write to files, access the internet, send attack drones)?
 
brb hacking TIO
:P
 
@Dennis Can't write files, can't run prolog code, can't access the internet, so no
it can go in an infinite loop though but that's probably not the only language that can do that
 
Great. Processes get killed after a minute.
 
poor processes
 
One last thing: What should I do with the output file? Should it get displayed?
 
6:30 PM
@Fatalize that's why most processes kill themselves.
 
@Fatalize he didn't cover attack drones, he's hiding something
 
@Dennis the same as with the input file, you pass its name in the query and that's it
 
0
A: Sandbox for Proposed Challenges

TùxCräftîñgLess or more? code-golf Your task is to create a less or more game. This game is pretty simple: The computer generate a random number (if your language don't support random numbers, you can ask for the number) While the user don't enter the correct number, If the number is lesser than the c...

 
@Dennis one short example to understand that: put . in the code, "test" in the input and Z in the output
it should print Z = "test"
 
Oh, so it doesn't actually get output? I assumed the process would write to the output file.
 
6:33 PM
No,
Input and Ouput are just names but you can use both as inputs or both as outputs or one as output, etc
it's just that usually you put your input in Input and you return the answer in Output, hence the names
 
So, WeDo definitely uses real multi-threading.
I'll probably stick to fake multi-threading.
 
@Dennis drools
Thank you very much for integrating this to TIO, it's an honor really
 
My pleasure. :)
Let me know if there are any issues.
Btw, my Prolog is SWI-Prolog version 7.2.3 for amd64. I hope that's at least moderately recent.
 
6:44 PM
[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,GUESS THE MISSING NUMBER,83,89,97]
 
^spoilers
 
there, not entirely spoiled
 
@Dennis Do I ping you in chat if I need you to pull new changes?
 
Yes, please.
 
0
A: Advocate languages to golf in

Agent CrazyPythonJava Java may be verbose, but don't we golfers come to PPCG to have a challenge? Don't we come here to do what was thought to be impossible? We golf not because it is easy, but because it is hard. Winning in Java may not be easy, but succeeding means receiveing supreme glory (i.e. reputation)....

 
6:45 PM
Will do :)
 
golf in java!
 
This took me like an hour to golf down, but I beat osabie!
0
A: Draw a ladder and slide

Dr Green Eggs and Iron ManV, 38, 37, 36, 34, 33, 32 31 bytes é\Àé x2é/4é-òYphx$2Pòdd3GEòjlr\ Try it online! I might catch up with Osabie. One byte shorter than Osabie. \o/ In other news, this is one of the longest strikethrough headers I've ever made. Explanation: é\ "Insert a '\' Àé x "Inse...

 

6
 
@DrGreenEggsandIronMan That's some dedication! The only thing you're missing is a 35-byte solution. :P (Here, have a +1.)
 
@Geobits ?
 
6:56 PM
@zʏᴀʙiɴ101 invisible space ;_;
 
@El'endiaStarman haha, I could make a 35 byte solution if you like.
And then hopefully after that a 30 byte solution.
 
@LuisMendo I was actually considering a GEB pun for the title but didn't come up with one I liked enough to use it :D
 
Technically it should be 30 bytes since "dd" has a shortcut, but I'm not positive it'll work.
Since it's really buggy rn.
 
@LeakyNun I might. It's not actually hard, it just won't be short. :D
 
0
A: Sandbox for Proposed Challenges

aloisdgThe French Farmer in the Dell code-golf string kolmogorov-complexity I used to work with kids and The Farmer in the Dell was a popular song among them. Also, I like challenge like 99 bottles of beer or Polar Bear, Polar Bear, what do you hear?. Try them too! Goal In your programming language ...

 
7:14 PM
@Lynn could you also give an estimate how many bytes you needed for generating the numbers and how many for the layout?
 
In Haskell, exactly the first line is generating numbers and the second two are layout
In Python… I’ll take a look :)
I’d say 28 bytes (orange) are sequence, and 92 bytes (cyan) are formatting
 
@MartinEnder ?
 
Well, not sure what n=input() counts as
 
@Lynn interesting, thanks :)
 
7:23 PM
the last question is legendary
 
@zʏᴀʙiɴ101 for the braid challenge
 
@Lynn Input a number into n, ofc!
 
σ_σ I wrote the code. I mean I don’t know if it counts as “sequence-y code” or “formatty code”
 
^ I guess you could exclude it from both?
 
Maybe. I also, like, reuse the loop both for printing a row and computing terms of the sequence, so that’s shared
(I calculate 3x too many terms, as a result)
 
7:28 PM
1
Q: Count of "a"s and "b"s must be equal. Did you get it , computer?

GLASSICIn this popular (and essential) computer science book, An Introduction to Formal Languages and Automata by Peter Linz , following formal language is frequently stated : mainly because this language can not be processed with finite-state automatons. This expression mean "Language "L" consists a...

 
@MartinEnder Can I do this?
 
Can you do what?
 
@MartinEnder The new challenge
I know you can complete it in seconds
 
well it took me a few minutes :P
 
@MartinEnder Isn't it just ^(a)+(?<-1>b)+(?(1)!)$ ?
 
7:30 PM
I've got 12 bytes
 
@Geobits Uh, how did my dog do an invisible space?
6
 
@MartinEnder impossible
 
or is it...
 
@Geobits hahahaha
Petition to add to the room description (in place of the old abandon all work):
 
tries to rename himself Geobits and finds out that this name is allocated
 
7:33 PM
"Beware of Geobit's magic typing dog..."
 
@MartinEnder ah, recursion
 
@DrGreenEggsandIronMan Completely unintentional for the slashes to line up like that. Hah!
 
realizes that the idea was bad
 
@MartinEnder What about this: you post an answer, showcasing recursion
 
@LeakyNun .NET doesn't have recursion
 
7:33 PM
@MartinEnder what witchcraft did you use?
 
with recursion it would be 11 bytes I think. ^(a(?1)?b)$
@LeakyNun two stages and a loop
 
@CᴏɴᴏʀO'Bʀɪᴇɴ My \golfing folder is immaculate ... there are only ~350 items in it.
 
In PCRE it's just a(?R)?b
 
@MartinEnder Isn't this recursion?
 
@feersum how do you anchor it without ... anchors...
 
7:35 PM
^
 
@LeakyNun "with recursion..."
 
Well, if if a full match is required
 
@MartinEnder how did you do it without recursion?
 
there's an option to replace ^ but I don't think there's one for $
@LeakyNun I think Fry is still trying to figure it out, so I don't want to spoil it yet
 
@DrGreenEggsandIronMan Your turn. Show off your language.
 
7:36 PM
You can post it here, I'll hide away in the Retina room :P
 
@MartinEnder wow.
 
@MartinEnder grep has an option for this.
I can do grep -Px 'a(?R)?b'
 
@MartinEnder Wait... so who posts the 11-byte solution?
 
@feersum convenient :)
@LeakyNun sure
 
7:39 PM
@MartinEnder and you'll post your 12-byte solution
and I'll post my 22-byte solution
deal?
 
@LeakyNun On that meta post? I was planning on it, but not until later today.
 
@DrGreenEggsandIronMan No, the new challenge
 
Hmm the grep one doesn't actually work
 
Oh, recursion?
 
7:40 PM
Just a quick question for the experienced PPCG people: if a Q that is in the sandbox would get instant-closed, people would have down-voted it, right?
 
A lot of the grep options seem to break if you use other options at the same time.
 
@DrGreenEggsandIronMan I don't know what the best approach for your language would be
 
@LeakyNun One byte: ò
 
@CᴏɴᴏʀO'Bʀɪᴇɴ Hey, do it in J!
@DrGreenEggsandIronMan what?!
 
...
please be more specific
 
7:41 PM
Wait, what's the challenge?
 
@CᴏɴᴏʀO'Bʀɪᴇɴ The new challenge
 
there's a couple?
 
6
Q: Count of "a"s and "b"s must be equal. Did you get it , computer?

GLASSICIn this popular (and essential) computer science book, An Introduction to Formal Languages and Automata by Peter Linz , following formal language is frequently stated : mainly because this language can not be processed with finite-state automatons. This expression mean "Language "L" consists a...

@MartinEnder what... the... hell did you do
 
^ Mods can edit chat messages at any time, you can check the history
 
@FryAmTheEggman I know
@FryAmTheEggman He just edited it to reply to a later message
 
7:43 PM
Oh. Well, V doesn't have any truthy or falsy, but you can kinda do it in 4: v.tryitonline.net/…
 
It might have been an accident then :P
 
@DrGreenEggsandIronMan then post it
 
@LeakyNun But does empty string === truthy?
 
@DrGreenEggsandIronMan Well, it's your language...
 
@DrGreenEggsandIronMan V can have truthy or falsy. Falsy is empty buffer, truthy is buffer with content.
 
7:45 PM
@LeakyNun haha, wtf. I have no clue how that happened.
 
@zʏᴀʙiɴ101 Yeah, but that's kinda arbitrary. I could just as well swap the two.
 
Then there could be a logical negation function.
 
@MartinEnder lol
@DrGreenEggsandIronMan Does V have any condition of any kind?
 
@zʏᴀʙiɴ101 That doesn't really make sense in the context of the language. How do you negate a string?
 
@LeakyNun I'm afraid my best attempt is 33 bytes in J
 
7:47 PM
@CᴏɴᴏʀO'Bʀɪᴇɴ just post it and I'll help you golf it if I can.
 
@LeakyNun sorta. It has a "break if error".
 
@DrGreenEggsandIronMan eh... anything else?
 
@LeakyNun Scratch that it doesn't work
 
@LeakyNun It almost supports "do the following n (or 0) times." But not entirely.
 
but I have better and golfier thing
 
7:48 PM
If I really wanted to show off my language, I'd use this:
3
A: Draw a ladder and slide

Dr Green Eggs and Iron ManV, 38, 37, 36, 34, 33, 32, 31 30 bytes Àé r\2é/4é-òYphx$2Pòdd3GEòjlr\ Try it online! I might catch up with Osabie. One byte shorter than Osabie. \o/ Tied with 2sable! In other news, this is one of the longest strikethrough headers I've ever made. Explanation: Àé "Insert 'arg1'...

 
@CᴏɴᴏʀO'Bʀɪᴇɴ I did it in 15 bytes
 
I think I can get that or lower
 
@CᴏɴᴏʀO'Bʀɪᴇɴ ambition agréable
 
merci beaucoup
 
@CᴏɴᴏʀO'Bʀɪᴇɴ How low do you think you can get?
Or I'd post it
 
7:54 PM
I'm looking at 12 bytes if this works
 
@CᴏɴᴏʀO'Bʀɪᴇɴ Ah, one function less.
xx@ is 3 bytes
where xx is a digraph
 
@CᴏɴᴏʀO'Bʀɪᴇɴ try 'aabbb'
 
btw, is error truthy or falsey?
 
7:55 PM
falsey
nice idea
 
@MartinEnder ?
@CᴏɴᴏʀO'Bʀɪᴇɴ so you see why I needed 3 extra bytes
 
yes
<.@ right?
 
@LeakyNun ?
 
@CᴏɴᴏʀO'Bʀɪᴇɴ bingo
48 secs ago, by Leaky Nun
btw, is error truthy or falsey?
@CᴏɴᴏʀO'Bʀɪᴇɴ whatevs, you post it
 
@LeakyNun precisely what I had ._. go ahead and post it, I literally just got it
 
7:56 PM
the error is normally not considered output.
 
you got it first
 
so it depends on what you output in addition to the error
 
@CᴏɴᴏʀO'Bʀɪᴇɴ you post it
 
@MartinEnder well if it errors then it wouldn't output anything
 
7:57 PM
Assuming the error goes to STDERR generally it's falsy (because it's the empty string on STDOUT)
 
you can print to stdout before erroring out
 
@CᴏɴᴏʀO'Bʀɪᴇɴ meaning you can get 12 bytes
 
@LeakyNun no I beat you by 28 seconds :P
 
@MartinEnder Wonderful, so I'll have to edit my answer.
 
8:00 PM
or beat him
 
@CᴏɴᴏʀO'Bʀɪᴇɴ Where do you see the term "four-hook"?
 
oops, four-train
@LeakyNun fixed
 
@CᴏɴᴏʀO'Bʀɪᴇɴ where do you see the term "four-train"?
 
8:05 PM
@TimmyD can't you just use Leaky's regex?
 
@CᴏɴᴏʀO'Bʀɪᴇɴ you might want to link that?
 
oh, sure
linked
 
TIL the existence of Google Spaces.
A way to share things with small groiups of people.
 
@zʏᴀʙiɴ101 -1 for not saying "TIL the existence of Google Spaces"
 
@zʏᴀʙiɴ101 sounds like Google Wave
 
8:09 PM
Official "website" for Google Spaces
 
Looks like another not-yet-failed Google product to me. Give it time.
5
 
You say "failed", but I think Google Docs wouldn't be what it is these days without the technology they developed for Wave.
 
looks lile combination of hangouts, wave, google plus, blogspot and rest of the world
 
Oh no, don't get me wrong. I love Google and its willingness to try things out. It does lead to failed products though, in the pursuit of better ones.
 
true
it's actually quite nice that they can afford to work like that
 
8:12 PM
Should I create a "Space" for PPCG?
 
this only shows that people view ads a lot
 
@zʏᴀʙiɴ101 You can, but I for one won't be joining or participating. Much like other off-site things people have done for ppcg.
 
What's a good syntax for my language? For context, it is based on a series of programming "blocks" (commands), of which there is a limited number, such as add/subtract/call. Each command can optionally be associated with a target variable (represented by a string) and can also optionally be associated with a single argument (also a string). There is no notion of arrays, lists, or any kind of more complex expression, and there's only a single, non-nestable loop structure.
 
@MartinEnder Possibly, but I don't understand it. :p
 
@PhiNotPi Blocks ala Scratch?
 
8:15 PM
@Geobits Okay
 
@Geobits yes, similar to that
 
@TimmyD it adds one capture for each a, then removes one capture for each b (which fails if there are no more captures to be removed, so this ensures #a ≥ #b) and then makes sure that there are no captures left, so that #a == #b
 
It's based off of a drag-and-drop language.
 
Someone should screenshot the three deleted answers
 
So for the PPCG space, I need audience, topics and a cool name.
 
8:16 PM
Everything nice and linear? If so, something like block variable argument seems simple enough.
 
@PhiNotPi Sounds like assembly? -> instruction variable argument delimiter?
 
@zʏᴀʙiɴ101 "The Remaining Bytes"
 
Not like we're users of PPCG (however, the Space will feature PPCG users), discuss PPCG and call the Space "PPCG Stack Exchange".
@Optimizer Cool name.
Now, I need an audience and topics
 
um
are you recreating TNB
 
audience - zyabin and tux. Topic - Trash bin for PPCG messages
 
8:19 PM
^
do it
 
Who's into the audience (right hand) or would like to suggest a topic (left hand)? right hand up left hand down
 
_o_
 
_o_
 
@Lynn is ">v>;" and emoticon I don't understand, or a typo?
 
Dammit, ninja'd to the typo
 
8:21 PM
:D
 
@MartinEnder Oooooohhhhhhhh.
 
that by the way is all the magic there is to balancing groups :P
 
It’s a crazy lynnmoticon. ★ₒ★
 
@CᴏɴᴏʀO'Bʀɪᴇɴ I'm not. o.o
 
lol, fair enough :P
 
8:23 PM
@Lynn You create your own kind of emoticons? :O
 
It's really easy k_k
 
@MartinEnder Your explanation here in chat just now makes 100x more sense in my brain than I got reading your SO post (several times).
That's a really cool feature of .NET regex.
 
O
_O
really easy
 
That looks like a confused muppet.
 
how many pokemons u have?
 
8:28 PM
I have one
 
good job
 
Umm, I've got 76 species maybe? Dunno, servers are looking down right now.
 
the one which u get when u join?
 
Maybe that was a thing when you started playing, but you have to catch your first one now.
Mila Kunis only has two Pokemon
 
But how can you go into the tall grass, my neighbours always warn me that I need a pokemon first...
 
8:30 PM
I don't have Pokemon GO, because 1) even the client is not up in my country and 2) the fad is crazing me!
 
I have Windows Phone.
 
Ouch
That hurts me to hear, and not just for Pokemon reasons.
 
i pretty much like it. except for these usual cases
when the app has no plan for WP
 
@TimmyD well... :/
 
I've created the Remaining Bytes!
 
8:35 PM
no, you've rescued them
 
Ask me for the invite link.
 
guys
I have made the most verbose lang possible
 
@CᴏɴᴏʀO'Bʀɪᴇɴ guy
I want to learn it
 
Here is a function to repeat a number of spaces number times:
print call spaces number 2
exit
label spaces
    init temp
    set i set num arg number 0
    set str empty string
    label loop
        push temp i
        push temp num
        if exec temp -- func less
            goto finish
        push temp str
        push temp space
        set str exec temp -- func add
        push temp i
        set i exec temp -- func inc
        goto loop
    label finish
    yield get str
not golfed fully
 
@MartinEnder No insult intended!
 
8:40 PM
don't worry ;)
 
ven
isup.me
 
That link no working for me.
 
ven
isn't here either
 
8:48 PM
@PaulVargas Obviously no, because the government blocks it for me.
 
@zʏᴀʙiɴ101 Noooooooo!
@CᴏɴᴏʀO'Bʀɪᴇɴ Hey! Thanks! :D
 
no problem :)
Friend: "Play TF2 with me" Me: "I'm almost done with this" Friend: "What are you even doing. In simple words." Me: ... "I am making a program (words that do stuff) that looks at more programs then does stuff based off of whats in those other programs. There is certain word that allows for more words to be repeatedly called any time, and I'm trying to make that word work correctly."
 
Have you tried Overwatch yet?
 
No. does it cost money?
 
Yes
 
8:55 PM
I won't be playing it :P
 
@CᴏɴᴏʀO'Bʀɪᴇɴ This has a very Thing Explainer feel to it. :P
 
yup. that's my only definition of "simple words" haha
 

« first day (1999 days earlier)      last day (2845 days later) »