« first day (3770 days earlier)      last day (1077 days later) » 

4:01 PM
@StackMeter don't let ASCII-only hear you say that
 
 
fora
 
Forums is equally correct in modern English.
 
More-um
 
You don't get the sense of superiority from using latin plurals though
 
:D seen it
That's probably what my latin teacher will be thinking when he marks my exam
 
Do you find it... wisible...
 
Second to last day of school for me
 
4:33 PM
@user I tried to make a funny
@Neil what's an ASCII-only
 
They're a user here
 
Why should I not say "prefix bad" in front of them
 
I'd like to post a challenge about creating English texts, but I'm a little afraid that it might be too broad... any tips? The story created needn't have a coherent plot as long as it's grammatically correct, but again, that's hard to objectively define, is it not?
Also, see this very interesting story my sample program created for me: I can drive a smart joke! He says, "It must cook the mans!" She cooks the smart woman. We stop a computer. She says that it programs an annoying computer. I say that he must program an ugly piano! You say, "Who program they, a really annoying car?" She says, "Who is he, not capable?" We say that she programs a woman. We say, "We program the really annoying woman."
That's the kind of story to make, except more grammatically correct
 
is Charcoal prefix?
 
4:41 PM
yes
@StackMeter :O python uses prefix notation. Is python bad?? O:
 
since when
 
print(1), -2, sum([])
lots of languages use prefix notation, but with ugly parentheses (,,)
 
would you rather it be (1)print?
 
no I'd rather it was 1 print or print 1, or (print 1)
 
Prfix > postfix
@Wezl Yuck
 
4:45 PM
IMO it's only prefix notation if it's an operator, which is distinct from a function call
print(1) is not prefix notation
however, python does have prefix notation technically, because of like -a, +a, ~a, etc
 
@hyper-neutrino What does +a do?
 
Same as JS
except that it can't type-coerce
 
@hyper-neutrino it's worse then, because of icky parentheses. Most of the time you don't need a variable amount of arguments, but you still have to use (,,)
 
not sure actually. it is distinct from JS because JS's + just makes anything a number even if it makes no sense, because JS makes no sense
 
@ophact So...nothing?
 
4:46 PM
@ophact Wait, so what does it do?
 
AFAICT, it is a no-op
well, it errors if you give it a non-number
 
That I'm not really sure.
 
idk if you can override it with a magic function
 
Just tried and unary + doesn't work for [] either.
 
\○/
 
4:47 PM
@Wezl lies
Python is, was and will be infix
 
it's prefix, infix, and postfix, which is much much worse
 
well then infix is just evil i guess
 
tbf so is JS and C and rust, etc.
 
What's postfix?
 
4:48 PM
It's pure infix
 
you can't make a sane language that doesn't mix infix and something else that has infix
 
@RedwolfPrograms after the numbers
 
@RedwolfPrograms a.b
 
No like what in python is postfix?
 
because how are you supposed to infix a unary operator
 
4:48 PM
@Wezl that's infix
 
`class TestClass:
def __init__(self, string):
self.string = string
def __pos__(self):
print(self.string + " hello")`
 
@Wezl That's infix
 
@Wezl that's not an operator
 
ab. is postifx
 
This code overloads unary +.
 
4:48 PM
well i guess you could consider . as an op.
 
But that'd still be infix
 
Postfix would be like x! for factorial.
 
in a.split(), split is the one doing the work
 
4:49 PM
I guess C++ is postfix.
 
5., although that currently does as little as unary plus.
 
Postfix is nice, but I dislike it
 
basically 5. returns 5
 
. is syntax not semantics AFAIAC
 
I think print 5, in Py2 is "postfix"
 
4:50 PM
@RedwolfPrograms Postfix has the benefit that the order of execution matches the reading order.
 
The , says "print with a trailing space"
 
@cairdcoinheringaahing How is that not prefix‽
 
a.split() is a mix of infix and prefix if we want to get technical
 
@Adám Not the print, the ,
 
@cairdcoinheringaahing not really
 
4:51 PM
@cairdcoinheringaahing Does it change the value of 5, so you can do a=5, ?
 
@hyper-neutrino yes (and this is a bad thing)
 
@hyper-neutrino Yeah, I know its more complicated, but ¯\_(ツ)_/¯
 
@Wezl Not really
 
@Wezl that would be, in full postfix notation, a split . () call
 
4:51 PM
Then I'd call print 5, omnifix.
 
so none of those are postfix
 
Mixing prefix and infix is something any reasonable (practical) langauge does
 
, is not really an operator is it?
5, is just tuple([5]) but (5) is brackets so (5,) is necessary for a singleton tuple
 
@RedwolfPrograms then I'm not willing to use a "reasonable (practical)" language
 
also again
if you want infix, you need mixing
unless you are going to add a special null value to infix unary operations which is just stupid
 
4:52 PM
@hyper-neutrino Well no, not really. Adding a 6 after it in Python 2 just outputs 6 with a space after it. It's basically a comma in py3 when put inside a print call.
 
@Wezl What's wrong with -10 * 4, for example?
 
@ophact wdym, print 5, 6?
 
yes.
 
@ophact But it isn't. Python 2's print tries to guess where you want the space if you use ,
 
@Wezl What's an example of a language you do like?!?!?
 
4:54 PM
@RedwolfPrograms - is both prefix and infix, creating ambiguity that needs to be resolved with superfluous commas, semicolons, or newlines
@RedwolfPrograms I'm still waiting ;P
 
That's not necessarily a feature of prefix and infix being combined
You can have _ for negation instead, for example
 
unlambda
 
Kinda off-topic, but just got to a page in a book that had the word "Neutrino" in it. Whatever, back on topic, don't steer off the discussion on (pre/post)fix
 
@cairdcoinheringaahing print is a function
 
@StackMeter Not in python 2
It's a statement in Py2
 
4:56 PM
Functions have, are, and will always be prefix
 
which I don't like, but that's up for discussion lol
 
@StackMeter in python 2, it's a statement, so you can't do (print()+3)*5
 
@Wezl Your idea of a good language, based off of your opinions on other languages you've written here, would be insanely painful :p
 
@ophact I also don't think you can do lambda a: print a in Py 2
 
@RedwolfPrograms it depends on how they're mixed and I prefer postfix+infix to prefix+infix anyway
there are ways to do it write
 
4:56 PM
10_ + 4, quite sensible design
 
i mean if you don't want any mixing then you have to use a postfix / prefix language
assuming you want non-stupid design
sure, you could do (treat_as_unary - 10) + 4 but why
if you technically want to coerce everything into being infix you could
 
Pre/postfix is for golfing languages. Anything meant for actual humans should support infix IMO.
 
agree
 
@ophact that's not legal as Python doesn't have a return value for print(), so it defaults to none, and none * 3 is undefined, and you can't add 4 to undefined
 
which is why lisp is not safe for human consumption ;P
 
4:58 PM
Also I think I subtly implied that golfers aren't real humans lol
 
@StackMeter it's syntactically valid in 3 though, not 2
 
You see why we don't see more lisp
 
@RedwolfPrograms But what languages that humans actually use, allow the human to define additional infix things?
 
I don't know, but I dislike that anyway
 
@RedwolfPrograms I almost agree, except the + shouldn't be built into the syntax so +: 3 and I prefer negate over _ so 10 negate +: 4
 
4:59 PM
(answer is APL)
@Wezl that's way more confusing IMO
 
@Wezl You're just joking at this point right? :p
 
i hope ^
 
One of my main gripes with K is that it got rid of that aspect of APL.
I believe Wezl isn't joking.
 
It actually makes a lot of sense, imo.
 
5:00 PM
insert JoKing joke here
 
@Adám Oh no
 
Makes parsing really easy.
 
Languages should be written for the programmer, not the parser
 
@RedwolfPrograms no this is the syntax in one of my languages. The other ones have (+ 4 $ negate 10) and 10+!04++
 
Ideally both
 
5:01 PM
Languages shouldn't be designed to be easy to parse, they should be designed to be easy to use. Ninja'd
 
Just write everything in machine code if y'all are so obsessed with easy parsing
 
@RedwolfPrograms Humans read code too.
 
@Wezl I think I prefer the first one :P
 
@Adám Humans and parsers read things very differently
 
Yes, but I don't care about the computer's struggles, only about the human's.
 
5:02 PM
@rak1507 yeah after learning trains I almost want to drop my lisp-like
 
the sum of negative ten and four
 
Any function name/operator you see, you apply right away, unless followed by a :
 
10 negate +: 4?!
That makes absolutely no sense unless you forget every bit of intuition you have
 
okay but IMO having an algorithmic approach to reading a line of code isn't the same as it being intuitively followable
 
I would argue that -10 + 4 is far clearer to most people than 10 negate +: 4. I'm not sure what the : even is for
 
5:03 PM
Interestingly, Hebrew kind-of has that : as a word.
 
@Wezl doing everything tacitly isn't ideal though
@cairdcoinheringaahing is -10 + 4 equal to -6 or equal to -14?
 
-10 + 4 = -6
 
@rak1507 -6
 
-(10 + 4) = -14
 
@rak1507 that's just math
 
5:03 PM
so does (-) take one or two arguments? :P
 
^
 
One
It's intuitive
 
@rak1507 Prefix - is syntax sugar for 0-
 
So 10-4 isn't valid?
 
@RedwolfPrograms it makes more sense when you realize that you usually don't have a constant expression like that. Compare: negate +: 4 to lambda x: 4+-x
 
5:04 PM
@cairdcoinheringaahing No it isn't. Then 0-10+4 should be the same as -10+4, no?
 
It...is?
 
Just like a ^ b ^ c is a ^ (b ^ c)
 
0-10+4 is -6
 
@Adám Yes
With + and -, operator precedence is left to right
So that's (0-10)+4 = -10 + 4 = -6
 
OK, 0-10×4 vs -10×4
 
5:06 PM
Well it's more like (0-x)
 
This is just pedantry at this point
 
it's not just pedantry, it's an annoying issue
 
@Wezl trains are much more intuitive than unhelpful single-letter variable names, my language is optimized for trains, and negate +: 4 is better than -+4
 
Besides, math isn't supposed to have "oh, well what about this edge case" in notation. Math, and therefore its notation, should be clear before anything else
 
5:07 PM
@Wezl what about APL's (4+-)?
 
People are used to TMN. Getting rid of all of that just to make it easier for computers is pointless imo.
 
It's why you shouldn't use fancy notation when words do the trick, and this is a big problem with people learning more complex math
 
@rak1507 bad, but better than python.
 
bad because?
 
@cairdcoinheringaahing @RedwolfPrograms What comes first in math? sin or ×?
 
5:07 PM
@rak1507 you don't know the arity
 
reasonable
 
@Adám If your expression is so unclear that it isn't obvious, you're doing it wrong
 
what if you want variable arity
 
@Adám I have no clue what you're asking
 
@cairdcoinheringaahing parentheses make everything obvious ;P
 
5:08 PM
> Math, and therefore its notation, should be clear before anything else
 
@Adám Yes, and it is your job to make it so
 
@RedwolfPrograms You know × comes before +, but what comes first, sin or × ?
 
I think smalltalk uses foo bar: baz to send the message bar to foo with argument baz
 
@rak1507 this is a circular argument. I'm saying variable arity is bad, and you're saying variable arity is good for making variable arity funcitons XD
 
@cairdcoinheringaahing But we can't say that for programming.
 
5:09 PM
@Wezl haha fair enough, so you just don't have variable arity?
 
@user yeah, my notation was inspired by that
 
reasonable
 
^
 
You could write sin x as its Taylor expansion, but that makes it needlessly complex, so we use shortcuts like sin. You could try to define a complete hierarchy for all possible mathematical functions, but its much simpler (and clearer) to use constructs such as parentheses
 
There's a compromise between TMN and programming languages
 
5:10 PM
@rak1507 all functions are monadic, dyadic functions take a pair of arguments and variable-arguments take an array
 
Tmn is sometimes undecidable despite usually being natural
 
In sin 2 × a, × goes before × but in sin a × cos a, sin goes before × :-(
 
@Wezl makes sense
 
And you can say that for programming, by writing readable code. I know that we don't exactly do that here, but in an ideal language, all statements would be obviously unambiguous to both the programmer and the computer
 
@rak1507 thanks, I'm glad someone doesn't doubt my sanity :D
 
5:11 PM
@Wezl even a stopped clock is right twice a day
2
 
Writing a*-~a is a fault of the person who wants to show off, not the fault of the language. If you want it to be clear, write it as a*(a+1) (or whatever it is)
 
or a*a+a
 
@cairdcoinheringaahing the language having such complicated precedence rules makes that more difficult
 
and if typeof a !== Number then a*-~a is the only way to do what you are trying to accomplish because bitwise operators operate differently.
 
and sure, a*-~a is not a great example, but in haskell, I end up over parenthesising because the rules are so complex
 
5:13 PM
@ophact lol yes it's not just syntax
 
I think APL's syntax is clearer than JS or C, but I prefer JS or C anyway because that's what I, and most people, find much more intuitive.
 
if there was no operator precedence at all, languages would be better imo
2
 
it's the same for anything
 
@RedwolfPrograms most people with experience programming
 
@RedwolfPrograms More intuitive, or you're simply used to it?
 
5:13 PM
Both, one because the other
 
same thing
 
That's like not fixing a problem because people should be used to it by now.
 
I thought intuitiveness only applied when you were learning?
 
@rak1507 Clearly, you should just be unable to nest expressions. Why write a+b*sin c, when you can write d = sin c; e = b*d; f = a+b
 
@rak1507 I like operator precedence though. To me it's clearer than not having it.
 
5:14 PM
@cairdcoinheringaahing yay that's prolog right there (replace = with is and ; with ,)
 
@cairdcoinheringaahing Actually, a very early version of APL did that.
 
Totally not inspired by the fact that multiple of my languages have this :P
 
4 + 2 * 3 just makes sense to me. 4 + 2 * 3 without operator precedence requires that I learn a different system.
 
maybe not in languages like haskell where you can set your own operator precedence, and then you end up with libraries where you have code that goes
x = a %%= b ||| c >>=> d
and you have absolutely no clue what's going on
 
That is cursed, I agree
 
5:16 PM
I once read a book which didn't follow the order of operations (it was fiction, but there was a math scene) and I found it difficult to comprehend.
 
Operator precedence should be fixed
But it's useful
 
@rak1507 That's your fault for not writing clear, maintainable code :P
 
(When it lines up with humans' expectations)
 
@rak1507 and it's still bad in languages like lua where you can only use existing operators and you're adding parsers
 
@cairdcoinheringaahing yeah, it's the authors fault/library writers fault for thinking 'ooh wouldn't it be nice if &>&%=<< was a special infix operator' but the language allowing that makes it more complex
 
5:18 PM
well, english allows sentences like "the old man the boat" or "the complex houses married and single soldiers", does that make it a bad langua- oh wait, it is a bad language
 
@hyper-neutrino Those are sentences?
 
@RedwolfPrograms "the old (people) man/operate the boat"
 
this is why everyone should use latin :P
 
5:19 PM
(the old) man (the boat); (the complex) houses (married and single soldiers)
 
"the complex/building houses/inhabits(but backwards) soldiers who are married and single"
 
That's only confusing due to synonyms though
 
Toki pona would like a word :P
 
@hyper-neutrino like - in TMN
 
right, but words occupying different parts of speech is akin to operators occupying multiple arities
but like
i don't quite agree because
it's not hard to tell if - is prefix or infix
 
5:20 PM
@hyper-neutrino And thus, J is born :P
 
if it's between two things, it's infix. if it's before a thing, it's prefix. it's not that unintuitive
 
It's like if + could also be a variable name
 
@RedwolfPrograms Only because your math teacher drilled it into you. There is absolutely nothing about × that inherently makes it need to go before +.
 
No, there's not
 
Why are we using x?
 
5:21 PM
But it's what I'm used to
 
You mean Cartesian product or multiplication?
 
Along with a large number of people
 
@ophact Multiplication.
Math isn't even nearly as universal as some think.
 
@Adám There's nothing inherent about using the × symbol. Why not use o instead? In fact, why not define 5 × 6 = 9, just because?
 
My point is that intition is just as important of a factor as theoretical reasonableness
 
5:22 PM
@cairdcoinheringaahing True.
 
Math is what it is because it is most helpful as it is
 
Some say multiplication has to be ∙ and × is only for matrix multiplication.
 
relevant XKCD btw
 
I love that xkcd oneboxes :P
 
In Denmark, ÷ is minus.
 
5:23 PM
@Adám but the dot is dot product.
 
@cairdcoinheringaahing tio.run/##y0gszk7Nyfn/PzcxM0/…
works in haskell
 
@ophact Heh, leaving no symbol for regular multiplication.
 
In Israel, addition is (sometimes) ﬩
 
@Adám thing is even APL can't fix operators meaning different things in different languages/dialects/contexts/whatever, so...
2
unless you can redefine built-in operators
which is a bit strange but might make sense i guess
 
@pxeger Yup, and not just in Israel.
 
5:24 PM
@ophact But the dot product of 2 scalars is multiplication, so that doesn't matter
 
@hyper-neutrino this is why I'm still waiting/writing my own
 
the only way to multiply is by writing it next to each other
(2)(3)
 
My children's school used something like ժ for plus…
 
@hyper-neutrino In ASCII order of course: X5 rather than 5X
 
@hyper-neutrino reminds me of this
3
 
5:25 PM
I like × as cartesian product is nice, didn't know it had been used that way, but it's too late now :/
 
No notation will be clear to everyone. The best you can do is to make it as accessible as possible.
Clarity contributes to that, but so does intuition. Like many things, it's a balance.
 
the only way to make it truly equally accessible to everyone is to make it accessible to nobody
4
 
\delta
that's the symbol for distance. That is woefully broken.
 
@hyper-neutrino Isn't that basically just the tolerance paradox?
 
uh, sounds close, from looking up what that is :p
 
5:28 PM
isn't that the "tolerance of intolerance" thing?
 
The only way to be tolerant is to not tolerate intolerance
 
Similar to "want to include everyone, you have to include the excluders as well"
 
lol I sparked another debate by criticizing python
 
@pxeger That's gold.
 
:O TIL c++ has been around for 2000+ years
 
5:33 PM
C++ has already existed
 
looks like I won't be getting fanatic for a while :/
 
@rak1507 yes, but an out-of-sync clock (you) is never right
 
hey let's be nice
 
Calling someone an out of sync clock seems a bit rude
 
lol, it's clearly a joke idm
 
5:37 PM
How often is a clock that spins backward correct?
 
depends on the speed
 
if at normal speed, once every 6 hours (for the hour hands on a 12-hour clock)
 
this is like a maths/physics problem
Clock A starts at 3:00 and moves at 50% of the speed of light
Clock B starts at 8:00 and moves at 70% of the speed of light
How many times within a 24 hour period will they be at the same time?
 
._.
why is that clock moving so fast
 
5:39 PM
@rak1507 The tips of the arms would move faster than the inner parts, no?
 
The clocks are moving at that speed so relativity or something
 
So do the clock arms get spaghettified?
 
These are theoretical clocks
 
@Adám From my perspective the clock is moving and the hands are still :p
 
A dizzying thought.
 
5:40 PM
A clock is a machine that spins the entire earth around its hands' axis every 12 hours
 
how about a clock that spins along the wrong axis; how often is it correct
 
@Wezl wrong link :/
@hyper-neutrino define "correct"
 
How often is a clock correct if the left side of it is in a universe with two temporal dimensions and the right half is in one with two spatial ones?
 
5:55 PM
@rak1507 never, because neither square root is rational
 
@Neil assuming things move continuously, doesn't mean they can't be at the same point at the same time
 
a clock starts at midnight and spins backward. That means that it is also right twice per day: once at midnight and once at 12:00
oops sorry four times, once 600, 1200 1800 and midnight
sorry got something mixed up
 
But an "incorrect" or a "broken" clock can still be wrong all the time. If a clock is 15 minutes fast, it's broken, but it still never shows the correct time
 
I wonder how we started discussing this
 
6:22 PM
Because once you put effort into cringe, it becomes quality content
 
May 11 at 1:50, by Redwolf Programs
Sometimes really insightful discussion and shitposting are two sides of the same coin
 
Apparently since tomorrow's the last day of school here, they're running low on lunch food
The sign said "breaded beef fingers with roll"
I have never seen such creativity in naming
It was a deep fried hot dog
 
Why would you deepfry a hot dog tho?
And are hotdogs normally beef? I thought they were pork?
 
Don't ask me, I don't make decisions
 
i think costco's are beef and that's about the only place i ever get hotdogs
 
6:33 PM
I don't know what the ones I eat are, but it's not meat
 
@rak1507 you're right I misread the question. it's about 0.3 times per day
 
i think hot dogs are usually mostly beef
but there are also pork ones
 
I don't know who on earth decided on "beef fingers" to describe hot dogs though
 
According to Wiki, they're typically made with either pork or beef
 
Mechanically separated meat, now there's something I didn't need to know about
 
ngn
6:46 PM
"mystery meat"
 
"advanced meat recovery systems"
 
"Meat slurry"
 
@rak1507 Have you heard of the Hot Dog Principle?
 
"The resulting product is a blend primarily consisting of tissues not generally considered meat along with a much smaller amount of actual meat"
mmmm
@cairdcoinheringaahing no
 
Essentially, the more you learn about a product you like is made, the less you'll like that product
 
6:47 PM
JS is the opposite
 
For example, if you learn how a hot dog is made, you'll be less likely to enjoy them in the future
 
Works for people too!
 
NGL I know enough about how people are made, and it's never really affected my dislike for them :P
4
 
More the learning more about them bit than the how they're made bit :P
 
ngn
yeah, what's there not to like about storks bringing babies
 
6:50 PM
I;m not aware of any safety standards involving storks, so that's a concern
 
that's why nobody ever tells children how vegetables are made
 

« first day (3770 days earlier)      last day (1077 days later) »