« first day (2181 days earlier)      last day (2654 days later) » 

12:00 AM
@wizzwizz4 really, the problem here isn't IP, but BGP
IP is the routing protocol for people who trust each other, it works fairly well
whereas BGP is the routing protocol invented to ensure that companies who are actively trying to sabotage each other usually get at least some data through
 
@ais523 My protocol is like IP, except for paranoid people.
 
introducing a new protocol is unlikely to help because it won't prevent the major Internet providers messing with each other
(for reference, the most common cause for rifts in the Internet is providers playing chicken with their BGP settings, each daring the other to back down and compromise first)
 
Many, smaller ISPs?
 
A network that does not rely on central providers would be cool. But probably too slow.
 
@ais523 The new protocol eliminates ISPs.
 
12:03 AM
it's nearly always the big ones; the reason is that small ones nearly always pay a big one to handle "all other traffic"
 
Sort of.
 
and so if they get in a row with each other, then they end up paying in Internet usage fees, rather than just having the connections break
whereas if the tier 1 providers get in an argument, there's nobody to pass the buck to
 
Best artist is actually pegboard nerds
 
They haven't made anything good in like 3 years.
A shame.
 
i know
It was so great tho
 
12:11 AM
hmm, seeing a closed homework question reminded me of a reverse homework question I had (and solved) a while back
which would probably be ontopic here if not for being language-specific
 
I think my favorite is Hero
Which is actually only two years old now that I think about it.
 
(it was a reverse homework question in that I'd written a sandbox for marking other people's homework, and then needed to do some operations inside my own sandbox as part of the marking)
the problem was to convert a character to a string in OCaml without using the standard library (or any other library; the restriction was syntactic, i.e. no module names anywhere)
 
Does anyone know why str(i**2 for i in range(30)) returns '<generator object <genexpr> at -Memory location->'?
 
and with help from IRC, I figured it out in the end
 
@WheatWizard Which language?
 
12:13 AM
@Pavel Oh python
 
I did not know you could python like that.
 
@WheatWizard You're stringfying a generator expression
 
I think it's because i**2 for i in range(30) isn't a number or array or anything similar
 
@quartata Why is that different from str([i**2 for i in range(30)])?
 
@WheatWizard cuz parens instead of brackets make generator instead of list
the parens are implicit in a function
 
12:16 AM
Because that's a list not an iterator
yeah ^^
 
Ok I didn't know you could make generators like that
so you can do [x**2 for x in y**3 for y in range(12)]?
 
Oh man you're one of today's lucky ten thousand. Generator expressions are the bomb
 
So am I
 
I have used generators before I just never knew that the list comprehension syntax was a generator
but now that I know I have so many questions
 
@WheatWizard if you use [] that's still a normal list
 
12:19 AM
No no list comprehension syntax makes a list. If you use parens it makes a generator.
gah ninja'd
 
Oh ok
 
I mean, most if not all languages don't have an exit code for every possible crash.
And some exit codes, such as 2 aren't caused by the code itself unless as a return, and are caused by the system.
 
exit(int(input()))
python3
 
You just need to support a minimum of exit codes 1 and 0. You just get a significantly better score if you support more codes
 
python2 is shorter
 
12:32 AM
@DestructibleWatermelon "You may not call anything which is intended directly for exit code output"
 
You need to get it to error or crash with that error code.
 
1
Q: Exit Code Golfing

VoteToCloseInspired by this default for IO. The Task Write a program that, given an input integer x between 0 and 255, crashes with exit code x. Restrictions You may not call anything which is intended directly for exit code output (System.exit(x), returning from main, etc.). Instead, your program must...

 
python2 answer, covers 0 and 1
[0][input()]
 
@VoteToClose Is signal allowed?
 
12:36 AM
Hmm...
 
!.(1' )
Turtlèd answer covering 0 and 1
 
I think I can get 2
 
Question about earlier discussion: when would you use a generator over a list?
 
the interpreter errors when the grid is empty and it is cutting away the empty lines and stuff
it's not a bug its a feature
 
@Pavel Do you know how generators work?
 
12:37 AM
not really
 
wait, I have shorter thing I think
 
@quartata Whot?
 
The idea is that it only calculates the list when you need it.
 
wait something is wrong with my first program sorry
 
@VoteToClose Like kill.
 
12:39 AM
!.(1' d)
this one works
 
@quartata Well, the intent of kill is to end the program with a certain exit code, no?
 
shorter Turtlèd answer covering 0 and 1 only still
!.(0
it looks like a golfing lang! :P
 
@VoteToClose No merely to send a signal.
The name is misleading at best.
 
@quartata Hmm. If it isn't causing the exit code, then I don't see an issue.
 
Not directly at any rate.
 
12:41 AM
Yes. :P
That's what I meant.
 
time to find if there are other ways my interpreter can error...
 
Division by 0?
 
kill -$(128 - $1) $$ is the winner I think
I have to find out which signals cause crashes though.
 
You can't actually call kill.
 
ooh, I found another length 4 answer for Turtlèd
 
12:42 AM
@quartata Can you explain this code to me? :P
 
Signals that cause crashes usually cause an exir code of 128 + signl number
 
Anyone care to compare their golflang with pgs?
 
So 128 - n
 
@quartata Yeah no that's basically calling an exit with some code.
 
12:44 AM
wow, I'm finding length 4 answers all over the place
 
That is the intended effect of the command. :P
 
Except not all signals cause exit codes. It's a side effect.
Off the top of my head this only gets 7 exit codes
 
Wait, how can it not have an exit code?
 
@quartata I'm a little confused by what you mean. Is it purely coincidental in implementation?
 
@Pavel Well non zero.
 
12:46 AM
But the intended purpose is to exist with a certain code.
 
@VoteToClose No but kill is not responsible for it in any way. It's up to the kernel's implementation.
 
2
Q: The Eratosthenes Shuffle

H WaltersChallenge Write a function or program that accepts a line of input, performs a very specific and oddly familiar shuffle on its characters, and outputs the result. The required shuffling can be described using the following algorithm: Label each character in the input with a 1 based index. Wri...

 
@Pavel The program must support exit codes zero and one. Further exit codes improve the score significantly, though.
@quartata That's scary. But cool. :D Post ahead.
Not one hour. Sixty minutes exactly.
 
I have to add an if for 0 but no handling is needed for 1 luckily. Pretty sure kill itself will exit with 1 on an invalid signal num
 
Would I rude to make an tag?
I know that it fits in with other challenges, so it wouldn't be unique to my challenge.
 
12:55 AM
@VoteToCode Actually on second thought it appears there are 19 terminating signals in POSIX currently.
 
@VoteToClose Not rude (although don't retag posts at a high rate because it bunmps them); however, challenges involving errors tend to lead to disputes
 
So 34/(21!).
Oops.
 
@quartata Geez
 
this is a good example, does throwing the error from outside count?
 
Actually 37. Forgot the fi :P
 
12:57 AM
in Linux, signals have a field specifying who threw them, you could disallow signals specified as being thrown by the user
but that's probably OS-specific
 
@ais523 Yeah not so sure anymore.
 
@ais523 If you're directly throwing errors in your own written code, it's an issue.
 
Although I do know of lanuages that throw signals on exceptions so
I think using signals directly should probably be banned. I feel cheaty
It isn't a terrible ingenious solution and it goes against the intent of the challenge IMO
 
@quartata I'll disallow it before any get posted.
 
Also it's pretty implementation specific since I don't know if exiting with 128 + signal num is part of POSIX
@ais523 Do you know if that's always the case?
 
1:02 AM
it's surely got to be, loads of portable programs assume that (including Perl)
although "exit code" is ambiguously defined
wait (which lets you get at exit codes) returns a bitfield
seven bits are used for the code itself, and one as a tag that determines whether the code is an exit code or a signal number
lots of programs, such as bash, interpret that as an 8-bit integer
but I don't know whether it's correct to call the whole thing the exit code
and the exact packing is implementation-dependent
actually, I just looked up POSIX; it specifies the use of macros to unpack the exit code
hmm, I'm really tired and not 100% sure any of the above is correct
 
But not the implementation of the macros themselves? So it could really be any bit not just leading?
 
especially as POSIX is defining WEXITSTATUS as 8 bit
 
@DestructibleWatermelon You can use <s></s> for strike through unless the --- is for irony.
 
brb inventing kernel that uses second msb for signal bit
 
I'm fairly sure that POSIX doesn't place constraints on how the macros work though
 
1:07 AM
@VoteToClose it was an accident removing it
 
@DestructibleWatermelon Just checking. :P
 
I was editing it at that time
 
I had figured, but I couldn't tell.
 
1:12 AM
Saw it in the Bridge already
 
is that legit
 
Oh yes
 
"The number 3 must not be said" -Gaben, 2016
 
Gabe has done AMAs in the past you know
I think my personal favorite quote is "Robin, we found the Ricochet fan"
6 Treants and Gabe never having heard of VNN are runnerups
 
1:27 AM
wait he hasn't heard of VNN?
 
It was a joke
 
Not until today apparently.
 
I actually like Ricochet
 
@Pavel ?
 
Didn't he then also reply to a comment by VNN with feedback?
 
1:28 AM
Yes.
 
That was after.
 
yay, Chelsea Manning is going to be free!!! Freedoooooom!! \o/
 
I can't say I'm surprised -- VNN was tiny until about 6 months ago.
 
Wait, who is chelsea Manning?
 
1:29 AM
What is this VNN you speak of?
 
Valve News Network
 
(insert haha I was there from the beginning gag)
 
(I was tho)
 
@Pavel transgender ex-soldier accused of treason
 
Oh okay I was getting white supremacy networks
 
1:30 AM
@Pavel a soldier who revealed how the US was killing civilians in Iraq
 
They chose a really poor acronym lol
 
I love how Jelly casually uses all 257 unique values of a byte.
 
@ATaco O.o
 
@ATaco it only uses 256 values, but one of them is used for two different purposes
 
I know.
But I love the concept.
and \n are the same byte, but mean two different things.
 
1:33 AM
I have a likely-abandoned golflang which has a 6-bit character set with 128 different characters in it
it determines which of the two possibilities for each character is being used from context
 
@Pavel orly
@ais523 Is this the Prolog one?
 
was an early plan for a golfed-Prolog
yes
 
I want to try to write a Tacit language now.
 
but I'm now more interested in making a sort of cross between Jelly and Prolog, which would be more reliable in beating records
 
That would be so cool. I had plans for a golfy version of Erlang that really put emphasis on making pattern matching concise but it never panned out
 
1:37 AM
I've already started writing parser documentation (the parser itself is unstarted, though), and I already have a working and tested character encoding
 
@ais523 that's actually quite cool
 
What about a MultiByte Jelly with just more predefined functions.
 
soooo mathematica?
 
JellyMatica
A 16bit Codepage.
 
1:40 AM
@ATaco Jelly already has two byte functions
 
Only kind of.
It has the two byte functions which use the prefix functions.
 
come to think of it, a golfing language which used Mathematica as its standard library would do pretty well
 
But that doesn't take use of the potential of a 16bit codepage.
 
i.e. the language itself has nothin to do with Mathematica, but you can "shell out to" a Huffman-encoded Mathematica to access its functions
 
@ais523 That exists, it's called mthmtca
 
1:40 AM
Tips and Tricks for asking Processing questions on SO: Put the tag into the question, otherwise you won't get an answer.
 
Burlesque has a 16 bit codepage
 
@ATaco 16-bit codepage is a waste of space. Jelly just does it by appending a character at the front. æ_
 
No one uses it 'cause it's really hard to work with and Mathematica is expensive.
 
They haven't gotten close to depleting those yet
 
1:44 AM
Jolf has like 5 different multibyte character thingies
 
A 16-bit codepage is a waste of space if you don't have 63k commands.
But think of the possibilities!
 
TIL Processing if made for tiny projects and can't properly support anything larger than 4 or 5 files
 
But it's really good at Genetic Algorithms.
 
@ATaco Pls why
3
 
2:09 AM
@mınxomaτ :/ you killed Browser Disapproval?
> The false information lasted for six years in Wikipedia and came to be propagated by hundreds of websites, several newspapers (one of which was later cited as a source in Wikipedia)
 
Great, I made a Tacit language based on lua.
 
> lasted... in wikipedia... later cited as a source in wikipedia
 
Citeosis.
 
That one.
It's an actual term used by Wikipedia now.
[Citation Needed]
 
2:20 AM
what, '[Citation-needed]'?
are you saying that was based off xkcd?
 
That Citogenesis is used by Wikipedia.
 
and 'citogenesis' is not fwiw, the usage dates back a while
ninja'ed sorta
 
0
Q: Display OEIS sequences

Super ChafouinThe On-Line Encyclopedia of Integer Sequences (OEIS) is an online database of integer sequences. It contains nearly 280000 sequences of mathematical interest. Examples of sequences: positive integers (A000027) prime numbers (A000040) Fibonacci numbers (A000045) Your task is to write a prog...

 
user165474
Hey, I finally have 1k rep! :D
 
nj
 
2:36 AM
congrats
2
 
user165474
@EᴀsᴛᴇʀʟʏIʀᴋ Thanks
 
Who starred "congrats" >_>
2
 
user165474
Not I.
 
Presumably the same person who starred my message, I suppose.
 
user165474
It could be DestructibleWatermelon, wat, VoteToClose, or ATaco. Or me, if I'm lying to you.
 
2:44 AM
I'm here too :P
 
@Pavel Different person, actually
 
but it wasn't me
 
user165474
Okay, there are more people here than I thought.
 
Well, now we know one the people was Trojan.
 
And me!
 
2:44 AM
lol
 
user165474
The thingy bar on the side doesn't behave the way I expected...
 
I've got an idea for a control flow to replace exceptions, but I'm unsure what to call it. Basically, a function can have "cases" that are declared, and the caller needs to handle them.
 
Many of us practice an ancient technique known as "lurking"
 
If it's faded, it means the person is here but hasn't said anything in a while.
 
user165474
Cool.
 
2:45 AM
@AlexL. It only shows you how long it's been since that person posted a message. It tells you nothing about whether or not they're looking at the room (or starring stuff).
 
user165474
So it could be Geobits, Mego, Dennis, Doorknob, etc......
 
user165474
@El'endiaStarman Oh okay.
 
@AlexL. Theoretically, yes. They don't usually star such stuff though.
 
@AlexL. But probably not.
 
it could be Andrew Savinykh
 
2:46 AM
@NathanMerrill How do you mean?
 
fun parse(xml: String): Obj case InvalidXML
 
It was probably Dennis' fault. We all know he's a massive troll.
 
its like mixing exceptions and enums?
but you can have multiple cases
and they don't just have to be error cases
 
user165474
That looks kinda like the java syntax for a method: void something() throws Exception{}, but I'm not sure if it's the same thing as what you're referring to.
 
right, its somewhat similar to that
 
user165474
2:48 AM
Okay.
 
So it's like syntactic sugar for switch statements blended with multiple try-catch blocks?
 
except that there's no such thing as making an exception class
right
"cases" have a name, and have to be declared in the function definition
if you don't handle them in your function, you have to declare them as well
 
You don't need exception classes in C++
 
user165474
Is this a language you're making?
 
user165474
2:49 AM
Sounds interesting. Is its syntax similar to any common language?
 
I don't know the syntax yet
nor a term to use
 
user165474
Okay.
 
I'm still trying to flesh this out, and I'm curious if there are other languages that do something similar
(outside of exceptions, which I'm familiar with)
 
user165474
As far as I'm aware, it's just Java, but that's with exceptions, so not what you're looking for.
 
I'm disappointed at Processing :(
I can't even import Processing files
 
user165474
2:51 AM
I guess the files can't be processed
 
user165474
sorry that was really bad
 
also, cases are ...function specific. Like, you can declare a case and handle it in the same function
 
Yeah, as I understand it, Nathan is figuring out how he wants his language to work, then designing the syntax from that.
 
kind of like a in-function goto
 
@AlexL. :(
 
2:52 AM
or a label jump for goto-haters :P
 
welcome @EᴀsᴛᴇʀʟʏIʀᴋ
 
er thanks I got the ping notice
I'm outta here now though, got stuff to do
 
user165474
bye
 
@Qwerp-Derp To import java files, you have to give them a package declaration
 
2:53 AM
who enters a room and then just leaves it right away
 
tee-hee
 
Please don't ping people for no reason.
 
@TrojanByAccident ne
 
oh I totally do. I open chat, then think "I need to get work done", and immediately close it
 
user165474
ok sorry
 
user165474
2:54 AM
I open it and then leave it in background for 10 hours.
 
I can't do that anymore with chrome's blue dot
 
@NathanMerrill I open chat, then think "I need to get work done" and continue chatting
 
I now know instantly anybody chats,
which is very distracting
 
@TrojanByAccident do you use chrome? do you pin tabs?
 
2:55 AM
@AlexL.: If you haven't already, read the Chatiquette. Pinging people unnecessarily is one of the "don't"s.
Might as well learn what the other "don't"s are.
 
@NathanMerrill I use chrome. I'm not sure what you mean by pinning tabs.
 
right click tab->pin tab
 
interesting. never used it
 
Pinned tabs have the functionality of reopening after you close chrome
 
2:56 AM
pinning tabs is so useful. It lets me keep certain windows open without using up a bunch of space for other tabs
 
I never close chrome
 
Or restart your computer
 
like, I always have my email pinned
 
The point is, if the title of the tab changes, it will display a blue dot on the icon.
 
@Pavel There's also a "reopen tabs after closing" option somewhere in the settings, which I chose.
 
2:57 AM
I just restore from the previous chrome session
 
So you know something has happened.
 
right, so if I were to pin TNB, anytime somebody chats, the title changes (with an asterisk), and I get the blue dot :)
 
@El'endiaStarman I personally don't use it much. I'm just explaining what it does.
 
@El'endiaStarman (back to my language, sorry!) Can you think of a good name besides "case"? I want to avoid exception-based words, because I want to expand people's minds to what is possible
 
user165474
So, can you provide a snippet of what a function with the "case" syntax might look like?
 
2:59 AM
@NathanMerrill Simple solution: leave it unpinned, like I do. :P (With it unpinned, I can also see how many messages have been posted since the last time I saw it.)
 

« first day (2181 days earlier)      last day (2654 days later) »