« first day (2225 days earlier)      last day (2622 days later) » 

12:02 AM
Should I tag it ?
Probably not
 
Yeah it would be a meta-tag (I know a lot about them in a bad way)
 
@flawr oh cool
what's that room?
@DJMcMayhem change to "imaginary bonus points" or steal helka's "a cookie" for using V/Vim?
bonus points implies a bonus, best clarify there is none
 
@DJMcMayhem 404 challenge not found
user image
5
 
5
Q: Happy Birthday V!

DJMcMayhemV is a programming language that I wrote so that I could use and extend vim for code-golf challenges. The very first commit was on March 3rd, 2016, meaning that today V turns one year old! Woo-hoo Over V's first year of existence, there have been 176 commits from four different contributors, 140...

 
12:20 AM
 
I fixed a typo also
@DJMcMayhem saw that, nj
 
Oh, thanks
@Riker It's a room elendia made (iirc) so we could have less noisy discussion focused on programming/science/math stuff
I lurk there but haven't really posted anything yet
 
I misread that as "worlds" and I wondered why they would segment their server into separate regions.
 
tio.run/nexus/… ... Does anyone know what an "espavel" is?
Is there a way to do a non case-sensitive grep?
 
12:30 AM
@Pavel grep -i
 
Thanks
Welp, this is what I'll be doing for the next hour.
I greped words for TIO and it crashed my browser tab... again...
 
@NewMainPosts Cinnamon Gum does not have reverse string. Cinnamon Gum sad.
 
@DJMcMayhem ah
@Pavel wtf
> punnier
 
@quartata V doesn't either :'(
 
Did you expect that not to be a word?
 
12:37 AM
why is that even in there it's /usr/share/dict/words not /usr/share/dict/puns
 
Well, kinda
 
@DJMcMayhem You should make that change
 
@DJMcMayhem Wait, really?
 
I've been planning on it for a while, but there's a lot of weird edge cases I'm not sure about
 
> punnology
study of puns?
 
12:38 AM
@DJMcMayhem Rank I presume?
 
@Riker I looked it up and yes
 
wtf
that's a real thing?
 
Apparently.
Linux wouldn't lie to us, right?
 
@quartata sort of. There's reverse insert which can paste a register backwards, but it's really ungolfy and inconvenient
 
@Pavel yah
 
12:39 AM
@quartata I have no idea what you mean >_<
 
@DJMcMayhem Like if you have several strings on different lines do you reverse the order of them or not
 
wait oh no charcoal has no reverse either
 
holy shit this is the most detailed reddit css I've ever seen: en.reddit.com/r/thetreesnetwork
 
@quartata Pretty much. Like there could be "reverse this line" or "reverse the order of these two lines" or "Reverse each of these two lines, but keep the order" or "reverse each line and the order"
And that's not even thinking about block mode, ugh
What the hell would it even mean to reverse a block? Reverse each column? Each row? Both?
 
both
 
12:42 AM
@DJMcMayhem Yeah, so that's rank. Rank 0 would simply reverse their order, Rank 1 would go a dimension deeper and reverse each string
J solves this by letting you specify the rank of any operation
<operator>"<depth>
 
Oh, so rank is like depth (in terms of a nested array)?
 
Yeah.
 
Rank says what dimension subarrays an operator works on
 
So, what rank do you use if you want to reverse each subarray and their order?
 
I'd have to use reverse twice
... or flatten the array, reverse, and reshape back
 
12:49 AM
Now that I think about it, it shouldn't be too hard, since vim has linewise and characterwise operations
Frickin autocorrect
 
lol
 
1:09 AM
I need help choosing an operating system.
 
@CheckOutTomato OpenSUSE Tumbleweed
 
@CheckOutTomato Windows ME
 
It is for a server computer that I am setting up. 80GB HDD, 4GB RAM, C2D Pentium E2160
should I use ubuntu, arch, or something else?
 
Everything else is an inferior OS pretending to be worthy
 
1:11 AM
not funny
 
I guess Vista is OK too
 
Still not funny
 
I suppose that means now is not the best time to talk about my undying love of Windows 8?
 
@CheckOutTomato For server I'd go Ubuntu for ease of use, Arch for easyisn and smallish, Tiny core for best performance especially for a server with those specs
 
@ASCII-only I want stability and intercompatibility though, so Arch is out, and IDK about tinycore, but I think it uses a different libc
 
1:17 AM
yeah then i'd go ubuntu
 
@CheckOutTomato prolly ubuntu
or debian
 
OK, I'll install Ubuntu Server 16.04
I guess I'll also install lemp and stuff on it.
What should I do with it though?
BTW I can also upgrade to an E7500 when I get some thermal paste
 
My Girlfriend has been replacing text in a bunch of my files.
That's what she sed.
11
 
@ATaco Wow.
 
1:47 AM
Question: what do you call command that does nothing
There is term for this totally escaping me
 
No-op?
 
@Downgoat Nop
@DJMcMayhem Golfed it for you
 
@Downgoat mcguffin? :P
 
@ChristopherPeart 8/10, don't use pastebin
 
1:55 AM
@pavel there ya go
 
I have a problem
I have created a directory named ~
how to delete :|
 
@Downgoat Navigate to parent directory, rm -r ./~
 
(and type it very carefully)
 
totally did not do rm -rf ~ :|
7
 
Your hooves could cause a lot of pain
 
1:56 AM
idk what has been deleted
 
@DJMcMayhem oops
 
Or, better yet, file viewer.
Some things are safer than the command line.
 
@Downgoat did you actually do that?
 
@DJMcMayhem >_> I should not be allowed to touch any important computer
I stopped it quickly though!
 
1:58 AM
I'm truly sorry for you
 
;_;
 
@Downgoat Goats should not be allowed to touch any important computer in general.
 
okay, now this is just discrmination
 
@Downgoat Why did you feel the need for the -f flag for an empty directory?
 
habit
I always do rm -rf
 
1:59 AM
I do feel sorry for you, but I also find it hilarious. I'm really tired right now, so I can't stop laughing
This is almost as entertaining as the time you removed yourself from the list of room owners
 
Wait, does rm send to trash?
 
wait @downgoat was an owner of this room once?
 
@DJMcMayhem That happened?
*Searches History*
 
@DestructibleWatermelon no, a different room
 
o
 
@Pavel err, totally, we should reelect me :D
 
Holly cow
Slow clap
Good gjob downgoat
 
@Downgoat I'd have voted for you, but you didn't run.
 
2:02 AM
will run in next election
 
@Downgoat good job. I can't belive you did that.
Well good luck on fixing that!
ALso do not let a goat bite the cables
or type
 
@Downgoat That would be kinda sad if we needed more than 13 RO's >_<
 
@ChristopherPeart or goat may die from electrocution
 
They are known for typing rm -rf *
 
and that would be sad
 
2:03 AM
any bye
Yes
 
@DJMcMayhem to be fair a number of ROs are inactive
 
We like goats here
@Downgoat Downgoat in fluff I will add something for goats
 
Yeah, true
 
idk say it is goat safe
 
@Downgoat notice anything critical missing yet?
 
2:04 AM
@Downgoat Modgoat might rm -rf us...
 
So @downgoat I need you to think what you might want my downgoat approved fluff feature to be then tell me
 
@ChristopherPeart goat meme generator
 
@HelkaHomba He'll type userdel downgoat before that happens.
 
@HelkaHomba naaah, only chmod -R 777 /usr/bin
 
@Downgoat Now, I'm new to Linux, but it sounds like that makes every script in /usr/bin/ executable. Which is what you want, since that directory is for executables. Right?
 
2:07 AM
@Pavel well some important things like sudo and all exist in that directory, and doing that would make sudo broken, which ends up breaking a lot more things
 
@DJMcMayhem classic downgoat
 
2:20 AM
CMC: Write a non-piecewise math function f(x) where f(1) = 1, f(2) = 0, f(3) = -1, f(4) = 0
 
@HelkaHomba f(x)=x^3/3−2x^2+8x/3
 
f(x)=sqrt((x-3)^2)-1 or something? does absolute value count as piecewise?
 
@HelkaHomba f(x)=(2-x)%2
 
Does it need to be continuous?
 
@quartata no
@ASCII-only abs is alright, so that works. I just didn't want plain f(x) = 1 if x == 1, 0 if x == 2, etc.
 
2:28 AM
f(x)=abs(x-3)-1+sin(pi*x) and f(x)=abs(x-3)-1+sin(1e100*pi*x) work i think
 
If I have a negative number modulo another number, is the result negative?
 
@HelkaHomba what about the heavside function :P
 
@Maltysen He said it didn't need to be continuous so
I assume that's fine
 
@Pavel It depends on who you ask. Modulo is not very well defined for negative values.
 
My function works assuming that it can give negative values.
 
2:29 AM
@quartata but thats really pushing the deinition of non-piecewise functions...
 
@Maltysen d/dx max{0,x}
 
though i guess you can define it as the integral of the dirac-delta
 
Not sure why'd you do that...
 
CMC: Prove d/dx is TC.
 
well idk looks like it's normally defined by a step function
 
2:30 AM
wut
@ATaco d/dx isn't a computational engine of any kind
 
@quartata i just remember that as one way to emulate pieceise functions from non-piecewise functions
define dirac-delta as limit of normal distribution, integral that to get heavsie, use haveside to make your piecewise
 
It can be described as taking a "simple" function as input and returning a function which gets the delta at point x.
 
f(x) = x^3/3 - 2x^2 + 8x/3
 
@ConorO'Brien ninja'd
 
@ATaco It's not TC, considering it can only ever perform a single operation on the input.
 
2:32 AM
@HelkaHomba f(x)=sgn(abs(3-x)-1)
 
"duplicate answers are allowed"
 
@ATaco This doesn't make a lot of sense but interpreting what you're asking loosely not all computable functions are differentiable so
It can "calculate" any computable function as in d/dx (antiderivative of the function)
But that doesn't actually make any sense at all
 
How do you determine primality with d/dx
 
@WheatWizard Yep. Iirc Python and Java respond differently to -X % Y
 
@Pavel primality of what?
 
2:34 AM
Numbers
@HelkaHomba W|A only returns positives.
 
Man, Wikipedia has some really weird definitions of the ramp function
 
@Pavel oh! i know this one
 
@Pavel You'll have to be more specific. Numbers do not have derivates.
 
My personal favorite:
> The convolution of the Heaviside step function with itself
 
its that thing with e^(x^n/n)
 
2:38 AM
@Dennis That's the point, ATaco said d/dx is TC and I was a bit confused.
 
and if it equals 1 or what
 
@Pavel Saying <not a programming language> is Turing complete sounds intentionally vague. Related:
 
@Dennis Hence, slightly confused.
 
I took "Turing complete" to mean expressing all computable functions as the derivative of something.
Which is only slightly better.
 
@Dennis I feel like some xkcd's onebox larger than others, and that one is the biggest.
 
2:42 AM
@Pavel Don't they all onebox at full size (or the width of chat)?
 
Ugh, yes.
 
I'm not sure why that one is so big
 
user165474
@AdmBorkBork Oh, I was unaware that the post didn't stop showing up; I thought I deleted it. Oh well, yes, I'll edit it to a single line.
 
@HyperNeutrino It may have stopped showing up, it's just that mods and users with high enough rep still see it
 
CMC: I will post a polyglot, and state one of the languages. The next person names another language in which that program does the same thing, and repeats using the named language as their new stated language. No reusing stated languages.
Python 2, print "Hello, TNB!"
 
2:55 AM
@Pavel foo :P
 
@ASCII-only Now you have to write a Foo polyglot
 
Foo, console.log("9 + 10 = 21")
 
Geez, that's a tough one.
 
It's obviously not JS, but what could it be?
 
3:00 AM
Should I post this on Main, or is it too trivial?
 
Not sure. If you post it, you have to clarify what you mean by polyglot though. For example, your Python program prints a trailing newline, while Foo does not.
 
Well, obviously I'd clarify everything and make it pretty and well defined. But I was wondering if the idea is interesting.
 
You have to be quick to post the next answer before anyone else does, which probably doesn't give enough time to make your polyglot interesting.
 
Yeah, I'm wondering if I can prevent that. I'm interested in the lategame,when most of the languages have been used up.
 
How do you want to score it?
 
3:12 AM
Haven't decided.
I second to last person who posts after a week passes wins, since the last person broke the chain.
Actually, no, since you have to have a polyglot in mind beforehand, posting a valid answer means there is a solution.
So, person who prevents anyone else from trumping him wins.
How to check validity tho...
 
Just like cops'n'robbers: you must post your crack after n days to claim the win.
 
It could just as easily be CNR
 
I think that's already a thing though
 
OK, server is set up
What should I run on it?
Setting up LEMP already.
 
@CheckOutTomato server for?
 
3:24 AM
@CheckOutTomato ASCII art goat anyone who connects
 
@MistahFiggins General home server. Specs: Intel Pentium E2160, 4GB DDR2 RAM, 80GB HDD with 250GB external, and gigabit NIC
 
@ATaco I'm trying to create a hash of commands and functions in Java, but afaict this isn't possible. I don't want to use if(cmd == "foo") sequences, so what should I do?
 
Don't ask me, the way I did it was horrible.
@Pavel take the wheel!
 
@Dennis That comes with the issue of someone using a language that only they knew about but it technically had an implementation since 2015 sitting in GitHub.
@ATaco Eh?
OOOOh
 
@Pavel Please send me this ASCII art goat
 
3:28 AM
@ConorO'Brien Somewhere you're going to have to have a switch-case or if chain, you can offload it as a static method in the interface you use for functions.
 
@ConorO'Brien class?
nm java no eval
 
I mean yeah I'd probably be using classes
 
@Pavel The PLQ solved this by requiring languages to have a Wikipedia, Esolangs, or Rosetta Stone page.
 
@CheckOutTomato oh-my-zsh + agnoster?
 
Ooh, convenient.
 
3:29 AM
@ASCII-only yeah
 
@CheckOutTomato +1
 
What's agnoster?
 
i can post my .zshrc if you like
 
@Pavel :/ so I can't do this with a hash? I thought Java had lambdas, can I use those?
 
@Pavel the theme you use in your shell
 
3:30 AM
@Pavel zsh theme, gives git symbols and the arrows in the prompt
 
@ConorO'Brien Yes.
An interface with only one non-default, non-static method can be expressed as a lambda.
 
so this is going to sound real dumb but I have no idea what an interface is
brb
 
@ConorO'Brien It's like an abstract class, but until Java 8 every method was abstract.
and the public abstract bit is implicit.
 
@ConorO'Brien It essentially is used to group objects by what they can do
 
After Java 8, you can have default methods and static methods.
 
3:32 AM
@ConorO'Brien basically a superclass that defines methods that subclasses must implement
 
so, I should have interface Command and then have each command implement Command?
 
interface SushiFunction {
    SushiObject run();
}
An example interface from my language.
 
I solved the V birthday challenge in brainfuck
I am pleased with myself
 
A basic example, both a person and a bird can whistle, but they are completely different - you don''t want them to both be subclasses to the same object, so you create a ""whistler" interface and have them both extend it
 
Every class that implements SushiFunction must provide an implementation of run()
 
3:34 AM
@ATaco nice!
 
@MistahFiggins Yes, and you can call .whistle() on them.
 
@Mistah @Pavel ohhh thanks. online tutorials simply aren't as clear
 
You can declare variables as type Whistler the same way you can do it with Abstract Classes
@CheckOutTomato +1
 
imma get boatgoat
@Downgoat
 
3:38 AM
@ConorO'Brien And, you can even do this: Whistler w=()->System.out.println("Tweet");, if Whistler only has the one method defined.
This is what lambdas are.
 
ohh cool
 
There's a fairly generic interface Runnable built into Java. It just has the method void run()
 
To some extent, I think that OOP should be taught first in CS classes. The only problem with this is that you can't really practice too much without knowing things like if statements. But I think that it would enforce better programming practices, and fix the "I don't entirely understand classes, so imma use parallel arrays" type problem
 
Also, RProgN2 finally has a use for the Describe proc that was given to Callable.
The flag --d will now write to STDERR how it thinks the program works.
 
CMC: Check primality in Tomato
 
3:46 AM
modifies document to autocheck primality
"I did it guys! 1 byte!"
 
Feature post-dates challenge, noncompeting.
 
So how do loops work exactly? It's not too specific
 
Loops are... not described yet.
 
Ok, will use v and V
 
Fun
 
3:48 AM
Finished describing loops
@MistahFiggins
 
There should be two stacks and a way to toggle between them
So you can have random access
 
@CheckOutTomato Define "test"
 
Re-link the docs?
 
@ATaco It's in my user description
@MistahFiggins There are some in the commands list.
 
i gtg for now, cya later
 
3:51 AM
check out lLt
 
@CheckOutTomato Pushes boolean or 0/1?
 
@Pavel Pushes 0/1
 
oic, t is basically logical not, right?
 
Then you can test if truthy or falsey, by using t, which is like not
@Pavel yes
 
Suggestion: bottom of stack is not empty, but infinite zeroes.
So you can pop it without errors.
 
3:56 AM
And then conditionals use a test with a thing to run first, a thing to run if truthy, and then a thing to run if falsey.
@Pavel How would I implement that?
I'm not starting the implementation until the spec is finished, but seriously, how?
 
pop()?:0
Elvis operator, return left if not null else return right.
 
@Pavel Ingenious use of conditional
 
Or just make the pop() function check if the stack is empty and return 0 if it is.
 

« first day (2225 days earlier)      last day (2622 days later) »