« first day (4294 days earlier)      last day (538 days later) » 
00:00 - 15:0015:00 - 00:00

3:00 PM
ill dash it then
ok here be the updated one
cc: @emanresuA
@Sʨɠɠan nice
@Sʨɠɠan What is this?
26 mins ago, by Sʨɠɠan
so yesterday i posted a graph of programming language relationships, divided into 5 year segments. at the request of @emanresuA here is that with golflangs:
14 hours ago, by Sʨɠɠan
so i made a graph with a bunch of languages and how they relate to each other. each column is a 5 year time period. dotted lines are influences
3:07 PM
Colours, inclusion criteria?
the main question is, do they actually get better over time? :)
23 mins ago, by Sʨɠɠan
@mousetail black is praclang. red is 1st gen, green 2nd gen, blue 3rd gen, purple frac byte
But the goal is including golflangs?
@Adám inclusion criteria is popularity as judged by me
praclang? frac byte?
3:08 PM
What is Arn? Never heard of it.
ive seen it a few times
Why isn't K on the chart?
@Adám emanresu asked me
@Adám because i forgot
3:12 PM
I'd argue (with support from Wikipedia) that APL also influenced Matlab and Mathematica.
A: What are the relationships between programming languages created by PPCG users

AdámUsing the format of Webgraphviz. Links to pages about the languages can be found on TIO. # non-PPCG languages are lightgrey, non-languages are white # PPCG languages are not colored for simplicity # this has the effect of making PPCG be languages with a border digraph PPCGGenealogy { nodesep=0...

Java -> Python
makes no sense; python was released before java
There can be influences after initial release.
i dont see how
3:28 PM
What do I know. Just following Wikipedia (which I've found had wrong info on such things for other languages):
wikipedia wasnt correct about perl -> julia either
except for PCRE :)
that was an intermediate :)
its like ocaml ---> kotlin
though scala
It also said APL→LYaPAS which was completely wrong.
scala wed java and caml, but kotlin took out most of ocaml
3:32 PM
so.. which of the languages in the graph have been completely obsoleted by at least one of the other languages? In other words, for which languages is there no situation where it is the best choice any more?
algol, bcpl, b?
that looks right to start with but I am not sure anyone ever actually used algol
I don't know about the other two
Oh yes they did.
pretty much every ancestor and sibling of c is obsolete (except maybe fortran)
Right, Fortran is definitely not dead.
3:34 PM
fortran is still very useful
for those who care about code speed in certain situations
> ALGOL heavily influenced many other languages and was the standard method for algorithm description used by the Association for Computing Machinery (ACM) in textbooks and academic sources for more than thirty years.
so... the ancestors of C are dead (except fortran)
and i think its siblings too
I miss quickbasic ... the last language where I could be bothered to make animations
it's just too annoying in C or Python
i didint bother to add all the basic dialects
just basic and tibasic
3:37 PM
that makes sense
although quickbasic 4 was the best basic by far
maybe quickbasic 4.5 :)
@RadvylfPrograms I'd had the idea for a half-byte Lisp for a while, but Risky inspired me to actually do something about it.
That's what I'd thought yeah
cobol is dead too, just so much legacy code uses it that i kept it on the list
it used to be you could get paid a lot as a cobol programmer because there weren't any but there was plenty of cobol code that needed maintaining
maybe you still can?
@graffe True! Although the language I miss most for animations is ActionScript.
3:42 PM
@DLosc I have never tried that! And now it's too late :(
@Sʨɠɠan You can add PHP and Perl as influences on Pip. There are also a few ideas from Lisp, CJam, and Rebmu in there, but I don't know that those are significant enough to warrant arrows.
the name pip is confusing for us python coders
@Sʨɠɠan Turns out Dylan is the closest language to Julia en.wikipedia.org/wiki/Dylan_(programming_language)
so that is between lisp and julia
@graffe Despite Python being my main language for years, I hadn't ever used or heard of the Python package manager when I came up with the name :P
@DLosc ah :) How did you live without it?
@Sʨɠɠan also I think your link should be from common lisp to julia not directly from lisp
3:49 PM
@DLosc :)
common lisp has multiple dispatch
which julia people can't stop banging on about
@graffe I usually just need re, sys, and random. Sometimes os and math. The only extra packages I've ever installed were Pygame and I think one that generated Voronoi diagrams.
@DLosc that's a nice combination of packages
@DLosc what do you think of pygame?
@Sʨɠɠan ?
@graffe Not as easy to work with as QBasic ;P
@DLosc :-D nothing is ....
why don't they make a language as good as qbasic!
3:55 PM
@graffe i was repeating what dlosc said
@DLosc was python accurate?
@DLosc Other than that, I never got far enough with the projects that would've used it to form an informed opinion.
@graffe ok i think i understand multiple dispatch, is it a fancy name for function overloading?
I just want a language where I can do for x in 0...100; plot((10, x)) and it plots it one point at a time!
@PyGamer0 there is a lot of discussion online about how they are different
@Sʨɠɠan Yeah, I'm sure it's more Python than anything else. I'm so used to thinking in Python that I can't even think of Python-specific things about Pip--the parts I notice as inspired by something are the parts that aren't like Python.
4:00 PM
@graffe i still don't understand the difference, both literally look the same
interesting that most golflangs were made in 2015
oh multiple dispatch selects function based on all its arguments during runtime
I just google "multiple distance function overloading" and read stuff :)
I don't have any real expertise on this
heres the graphviz code: pastebin.com/aa0y5CBs
"It is not the same, function overloading is a specific case of multiple dispatch, where you just use the type or class of the arguments, to provide the dispatch.

Multiple Dispatch allows for an arbitrary dispatch function that takes all the parameters and can do anything to decide the dispatch, for instance you could take x,y,z as parameters, then determine named directions like northeast above, or southwest below, and then define a method for each named direction. "
4:03 PM
@Sʨɠɠan Oh--there's a bit of APL in there too. Not sure if it was directly inspired by APL or some other array language. (Or maybe even an existing golflang? I don't remember. But it wouldn't have been any of the ones that came out in 2015.)
@PyGamer0 does that quote help?
Pip is a cobbled-together chimera of a language, lol
has anyone here ever coded in Dylan?
@graffe yea
@PyGamer0 that makes you very cool :)
how did you come to do that?
4:06 PM
i understood the difference
between what?
> for instance you could take x,y,z as parameters, then determine named directions like northeast above, or southwest below, and then define a method for each named direction.
oh cool
i didn't understand this part tho
@graffe function overloading and multiple dispatch
what I don't understand is why they love it so much
I can't imagine where I would really want to use it
but it makes them very happy
4:07 PM
@graffe yeah, why do they like it?
@PyGamer0 I am not sure but they really do
@graffe Non-golfers looking at Jelly be like
i think it is faster than function overloading or something
it's like anime girls, I don't understand why people like them either :)
4:09 PM
lol true
@graffe we must consult a weeb
@graffe lol same
@Sʨɠɠan :)
I even tried googling "sexiest anime girls" and nothing... I mean there are ranked lists but ... nothing
it's very sad
@PyGamer0 you just taught me a new word! Thanks
although weeb should surely be a web programming language
@graffe weeb code would be like piet, but instead of pixels it would be pictures of anime girls
@PyGamer0 that's much better
anyone here able to do that?
CMC: Make Weeb an actual language. ^^^
4:14 PM
@PyGamer0 ಠ_ಠ
followed by CMQ make us understand why anyone cares about anime girls
i support this ^
@Sʨɠɠan Given that Tips for golfing in CJam was posted in 2014, I think your 2015 date for CJam is not accurate.
@Sʨɠɠan and flax was made in 2021 not 2020 :P (and its spelled all lowercase :P)
The first CJam answer is from April 2014, so 2014 seems like a safe guess.
4:21 PM
can someone tell my why this doesnt work? ato.pxeger.com/…
@PyGamer0 I've never used match, so I can't help you there, but I can tell you that type(x)!=int or type(x)!=float is always going to evaluate to True, no matter what x is. Probably not what you intended.
... i am bad at programming
Okay I am definitely making my evolution simulator into a KotH
I can already think of all sorts of cool strategies you could do
And if you had teams of organisms working together, more like individual cells, you could do some crazy stuff
@DLosc ok i got it working
@Sʨɠɠan Is it fair to say Nibbles is a descendant of Golfscript? IIRC they belong to completely different paradigms, and Nibbles is more like Husk (though I'm not sure if it was inspired by Husk).
Also GolfScript is based on Ruby.
4:34 PM
@DLosc That's my mistake
They were made by the same person but I misremembered that as Nibbles being GS-inspired
anyone here studied complexity theory at uni?
@PyGamer0 Ah, it's keyword-arg matching. Interesting.
@graffe I would say "was briefly exposed to" more than "studied," but yes.
@DLosc did you learn about PTAS and FPTAS?
How do you solve this?
@graffe No, sorry
4:43 PM
@DLosc I looksed at the first activity on sourceforge
@PyGamer0 oops copypaste error
yep, first CJam answer was 2014
A: Count the unique fractions with only integers

aditsu quit because SE is EVILCJam - 18 22 100,:):X{dXf/}%:|, Oops, I had missed the "no floating point" requirement. Here is an integer-based solution: 100,:):X_:*f*{Xf/}%:|, CJam is a new language I am developing, similar to GolfScript - http://sf.net/p/cjam. Here is the explanation: 100, makes an array [0 1 ... 99] :)...

lol sniped
@DLosc was basing my decision on the fact that it was implemented in java
i 100% know that ones i did for fig are correct
first GS answer was way back in 2009
first GS answer on SO (and therefore ever)
5:00 PM
@Sʨɠɠan It was? The current official implementation is in Ruby, the Esolangs article mentions Ruby a lot, and there are some pretty Ruby-specific edge cases that can be exploited for golfing.
@DLosc the answer is yes :)
5:12 PM
@DLosc i saw somewhere that it was in java
or maybe cjam was in java
LDQ: does it make sense to have normal strings and multiline strings? instead of just normal strings for both cases (i.e. allow normal strings to span multiple lines)
i think it does not
@Sʨɠɠan I believe CJam is implemented in Java, yes
5:41 PM
another LDQ: should i have a char type?
Are we talking golflang or practical?
statically typed, but transpiled to lua
@Sʨɠɠan I think the idea behind not allowing newlines in regular strings is that it's easy to forget a closing quote by accident, and then suddenly a bunch of your code is now part of a multiline string, giving you confusing error messages.
syntax highlighting
But I write code in Notepad
More seriously, TIO/ATO/DSO don't have syntax highlighting (at the moment).
5:49 PM
@Sʨɠɠan Do you want to be able to do character math? (E.g. 'A'+32 = 'a') Also, how are strings handled in the transpiled code?
@DLosc strings are handled as lua strings
idk abt char math
i like the idea, but the usecases are small
It's probably simplest (and most efficient) to stick with how Lua does it
A character type is most useful in a lower-level language like C, where it represents the underlying implementation
In a higher-level language, you're less likely to need character math because you'll have builtins like toLower
g'day mfers
laptop is back in action
6:03 PM
@Sʨɠɠan IMO neither
Multiline strings lead to either an ugly lack of indentation, or a need for the language to be aware of how it's indented, and for almost all cases it's more elegant to either use string concatenation (esp. if "a" "b" -> "ab" is a feature) or a separate file
@Sʨɠɠan I think it only makes sense in low level languages
My rule would be: If strings are primitives, no. If they aren't, then add a char primitive.
@RadvylfPrograms i disagree, but interesting points
6:31 PM
a convenient side-effect of the laptop repair is that my capslock light works again
which is nice
@Ginger Isn't that firmware? What did you do to it that caused it to not work?
I have absolutely no idea
turned it on one day and it just ceased functioning
but it's fine now
6:56 PM
reading about the language server protocol, which is an insanely clever solution to a pretty big problem but also extremely complicated
I want Klein to support as many features from that protocol as possible, which means I have to read pretty much the whole thing :)
once again, python fails to be consistent by not actually having an official language server
there are a few options but I think I'm going to use this one for Klein bc it seems to be very actively maintained
however, it doesn't support linting and stuff
it's a dilemma
or I could use this project which is a maintained fork of this project
7:50 PM
@RadvylfPrograms usually the capslock light is controlled by the OS
oh huh, TIL
@RadvylfPrograms quick q i wanted to ask but never got to it: will tundra have an ffi?
As in like, compatibility with the C ABI and stuff?
Almost certainly not
no not that, an ffi to any language
also i just noticed a really weird feature in rol: due to the way the parser works its possible to define a function into another package from a different package
package a.b.c

fun d.e.f/foo() {}
that will define foo in d.e.f, not in a.b.c
8:00 PM
@RadvylfPrograms and also the fact that I can do stuff like echo 1 > /sys/class/leds/input11\:\:capslock/brightness and have my keyboard's capslock light turn on
which is pretty cool imho :b
exciting raspberry pi kernel update (not really)
kernel updates are boring because you have to wait 3m while some guy named "rpikernelhack" diverts all your dtbos
2 hours later…
10:05 PM
We've had scoring related to time complexity, and we've had challenges related to space complexity. I say we unify them and score based on spacetime complexity. The more memory your program uses, the more it warps the fabric of the CPU, changing the execution times you observe.
10:27 PM
A: Sandbox for Proposed Challenges

Radvylf ProgramsIs this substring list ambiguous? Given a set of substrings, such as [ca, ar, car, rd], it's possible to create infinitely many strings by concatting them together. Some examples of this for the given substrings could be: ca caar card rdca carrd rdrd ... One interesting property of this set of s...

10:40 PM
@SandboxPosts -1, example should contain cai so we can make caird :P
Exactly, the post is clearly not ready for main
A: Sandbox for Proposed Challenges

Jonathan AllanCounting Stripey Bracelets code-golf combinatorics math A bracelet consists of a number, \$N\$, of beads connected in a loop. Each bead may be any of \$C\$ colours. Bracelets are invariant under rotation (shifting beads around the loop) and reflection (turning the bracelet over). Here are all \$...

10:59 PM
Update on NPSP: It's been doing great, no issues in the last couple days. If it makes it until this weekend without any big problems, I'll compare it against the feeds to make sure nothing got skipped silently, then move the bots back into here if everyone's cool with it.
It would be very surprising if something did get skipped, since there's two watch sockets running in parallel and it polls the API every 12-24 minutes to see if it's missed anything, but can't be too careful
One neat feature of NPSP 2.0 is that, in the very unlikely event that it goes down for more than a few seconds, when it comes back and does the API poll, it checks the room to make sure it hasn't been ninja'd. So we won't get any annoying double-posting.
Ooh nice
11:17 PM
A: Sandbox for Proposed Challenges

Radvylf ProgramsFastest approximate square root of a floating point number fewest-operations test-battery math approximation In this challenge, you'll approximate the square root of a floating point number, using some basic arithmetic, bitwise, and control flow operators. Your score will take into account the n...

00:00 - 15:0015:00 - 00:00

« first day (4294 days earlier)      last day (538 days later) »