« first day (2013 days earlier)      last day (2828 days later) » 

12:17 AM
0
A: Sandbox for Proposed Challenges

R. KapCount the Unique Rectangles! code-golf In my last challenge, you were asked to find all rectangles given a m x n grid of them. However, it turned out to be very trivial as there actually was a mathematical formula to solve the problem that I did not even know about! So now, for a little bit more...

 
@NewMainPosts I think "Regehex" would've been better.
Or perhaps "RegeHex"
 
RegHex?
 
12:37 AM
@CᴏɴᴏʀO'Bʀɪᴇɴ I still like Hexaregex better
 
that's okay :3
 
12:52 AM
@NathanMerrill you did a better job of creating a happy 100k challenge then me! great challenge!
 
Mini-challenge: Given +int write it as short as possible with k,m,b,t suffixes, with decimal point if necessary. e.g 100000 -> .1m, 1000 -> 1k, 12 -> 12, 37280 -> 37280 or 37.28k
1000000000 -> 1b, 99000000000000 -> 99t
 
"+int
5 bytes :p
 
This came up the other day on a challenge
Is ide autocomplete + language considered its own language?
 
@CᴏɴᴏʀO'Bʀɪᴇɴ 0,0000000000000004pb
 
@RohanJhunjhunwala if you have an interpreter, sure.
 
12:58 AM
can i argue that typing in Netbeans is an interpreter?
 
1:11 AM
no
unless there's someway to automate it
Question: what's the difference between /dev/random and /dev/urandom?
 
@Downgoat man 4 random
 
ah ok thanks
i should install cheddar on raspberry pi and see if i can control my thermostat using cheese :D
 
@Downgoat o_O it can do that?
 
cheddar or raspberry pi?
 
1:17 AM
I added support for character files, meaning it can do serial I/O. answer is yes, it can
 
coool
you know what the best feature for cheddar would be?
 
@Downgoat thanks, I was of that opinion too. Someone posted an excel answer not knowing how to count the bytes and someone else argued that it is less bytes due to autocomplete in excel
 
^^^
 
1:18 AM
jelly-beating ability
 
takes over your smart home and uses a automatic grater
 
@Downgoat do you use/know ruby?
 
@Downgoat add some humourous libraries
 
@CᴏɴᴏʀO'Bʀɪᴇɴ cheese is usually bigger than jelly boxes you get from safeway
@CᴏɴᴏʀO'Bʀɪᴇɴ little bit
i starting learning a few months ago then stopped
 
def pretty(*args)
    str = ""
    args.each do |item|
        if item.kind_of? Array
            str += "[ #{ item.map { |el| pretty(el) }.join(", ") } ]"
        elsif item.kind_of? Fixnum
            str += item.to_s
        elsif item.kind_of? String
            str += item.quote
        end
        str += " " unless item == args.last
    end
    str
end

def pputs(*args)
    puts pretty(*args)
end
 
1:19 AM
like import cheese; as like the main standard librarie
 
^^ best debugging code ever
 
@RohanJhunjhunwala planning to have a import meme for jokes
 
@Downgoat I'm writing a new 2d lang in it.
 
cool
 
1:20 AM
that's the only way I can learn a language :p
 
@CᴏɴᴏʀO'Bʀɪᴇɴ That's basically recursive printing/debugging like Cheddar/Pytek's AST printer
 
@MᴀʀsUʟᴛᴏʀ yes, it is. but it isn't in ruby by default -.-
aw I wanted that +1
;)
 
@CᴏɴᴏʀO'Bʀɪᴇɴ Neither is it in JS/Python
 
@MᴀʀsUʟᴛᴏʀ sure it is. console.log(thing)
 
@CᴏɴᴏʀO'Bʀɪᴇɴ That isn't recursive
 
1:21 AM
@MᴀʀsUʟᴛᴏʀ no?
> a = [1, [2, 3, [4, 5]]]
[ 1, [ 2, 3, [ 4, 5 ] ] ]
> console.log(a)
[ 1, [ 2, 3, [ 4, 5 ] ] ]
 
Question: how to read from /dev/tty?
 
In node, sure, in the browser, kinda
 
@MᴀʀsUʟᴛᴏʀ yeah, in node. browser, eh
 
@CᴏɴᴏʀO'Bʀɪᴇɴ Should have limited depth by default, at least for objects
 
I try to read some bytes but the tty never stops to prompt
 
1:22 AM
@MᴀʀsUʟᴛᴏʀ that's true. it's like 6 levels iirc
@Downgoat think that you... dev?
 
@downgoat the only thing is that is cheddar even goat cheese?
it's made from cow milk :(
 
IO.stdin.raw = true;
IO.stdin.opened = true;

var fd = IO.open('/dev/tty', 'r');
var bytes: Buffer = fd.read(5);

print "The five bytes were...";
print String::bytes
pls halp my chedr code isnt working ;_;
 
@CᴏɴᴏʀO'Bʀɪᴇɴ +1 best way to learn a language
 
@RohanJhunjhunwala cheddar can be made from goat milk
 
On the other hand, I haven't made a single language
 
1:23 AM
@MᴀʀsUʟᴛᴏʀ thanks!
 
ok seems legit
 
@MᴀʀsUʟᴛᴏʀ you really should :3
 
@MarsUltor its fun
 
you can make a shady language like mine. github.com/rjhunjhunwala/S.I.L.O.S
GOTO is the key language construct
both conditional and unconditional branches
 
1:25 AM
> - all of the challenge of assembly all of the slowness of the jvm
sounds promising
@RohanJhunjhunwala idea: put all examples in an examples folder. it cleans up the repo
 
yes!
ok
on it
 
@CᴏɴᴏʀO'Bʀɪᴇɴ Yeah, but I have no idea on what to do for an esolang/non-esolang
 
how do i make folders on git?
 
@RohanJhunjhunwala oh you meant on github
 
1:26 AM
@RohanJhunjhunwala type a slash.
 
@MᴀʀsUʟᴛᴏʀ well, start looking at esolangs for ideas. if none come, just implement some that haven't been yet. if you want to make a non-esolang, I suggest that you (stay with Downgoat on his Cheese train) or hop on the snake electronics train with the star man and the pichu glider
sorry, I kinda went simple towards the end >_<
 
@CᴏɴᴏʀO'Bʀɪᴇɴ I mean, Mathematica has already taken the position of 'has a builtin for everything', Jelly has taken the position of 'wins every numeric challenge', Jellyfish is taking the position of 'golfy fungeoid'
@CᴏɴᴏʀO'Bʀɪᴇɴ ?
 
@MᴀʀsUʟᴛᴏʀ "snake electronics train with the star man and the pichu glider" :p
 
@CᴏɴᴏʀO'Bʀɪᴇɴ My code practices are way too bad to join the astral human (especially in Python, which I seldom use)
 
1:30 AM
@MᴀʀsUʟᴛᴏʀ those aren't the only possibilities. look at some of mine. most don't fit in those categories :p
@MᴀʀsUʟᴛᴏʀ oh, I see. so that's why you're making cheese?
 
Make a humorous language
 
@CᴏɴᴏʀO'Bʀɪᴇɴ good idea, @Downgoat make make cheese equivalent to make install for Cheddar
 
@MᴀʀsUʟᴛᴏʀ XD
 
2d regex is nice, but pretty sure that's what Grime will be doing
 
@MᴀʀsUʟᴛᴏʀ brb will do
 
1:37 AM
I even got animation in the console working !
 
cheddar> IO.stdin.raw = false
false
cheddar> ^[[A
\o/ \o/ \o/ \o/ \o/ \o/ \o/ \o/ \o/ \o/ \o/ \o/ \o/ \o/ \o/
 
@CᴏɴᴏʀO'Bʀɪᴇɴ Raw mode works. Raw mode is a terminal mode where all the keypresses go to the application, without it stuff like clicking left arrow would move the cursor rather than actually send the keypress to the app
 
@Downgoat oh, huh.
macro feature request for Cheddar v.2: gui
 
what do you mean by GUI?
 
1:41 AM
like, a way to make gui
that would make the language very appealing to people
 
like windowded apps?
yes planning on it
that's part of stdlib
 
shouldn't be too hard
 
hahahaha
that's a lot of things isn't it
 
all that really needs to happen is to port libs (i.e. map JS functions to cheddar functions) but that is taking forever >_>
cheddar> IO.stdin.raw = false
IO.stdin.raw = false
false
cheddar> ^[[A
wat is going on
 
1:44 AM
Uh that's normal for cooked mode
 
oh
idk
well in theory my implementation is correct so im just gonna say its working?
question: gtk or qt?
 
@Downgoat You know what the best version of qt is? qt 3.14.
 
@CᴏɴᴏʀO'Bʀɪᴇɴ is it automatically doing that or or you moving cursor?
 
@Downgoat automatically. it's a 2d lang
 
1:49 AM
@CᴏɴᴏʀO'Bʀɪᴇɴ What's gonna be different about it?
 
@CᴏɴᴏʀO'Bʀɪᴇɴ wow cool
 
@El'endiaStarman I'm going to use it for actual programming. It's going to be strictly typed. It will have objects. And functions. It will be glorious.
 
@Downgoat Neither both suck. Qt sucks slightly less than GTK though
 
@quartata alternative reccomendation?
 
your own
 
1:50 AM
im not making GUI lib by myself so ill just make bindings of existing lib
@quartata ;_;
seems hard
 
@CᴏɴᴏʀO'Bʀɪᴇɴ I have minor doubts that you'll use a 2D language for actual programming, but that'll be cool nonetheless.
 
@El'endiaStarman Sure. I will be able to write 2048 and an expression parser in it.
maybe not for a while tho. I need to probably learn more ruby
 
ruby is incredibly easy to learn
also would you mind not oneboxing that gif
Crahing my mobile browser about every minute
 
too late
@El'endiaStarman could you eleven it into a link
@quartata it is. I just need to get used to some of the nuances
 
@CᴏɴᴏʀO'Bʀɪᴇɴ Eleven'd.
 
2:01 AM
ahhh thank you
 
thanks, o great astral 11'er
 
@CᴏɴᴏʀO'Bʀɪᴇɴ Parsing a 2D language is an interesting problem actually
 
@quartata oh, yeah, sure is.
 
@CᴏɴᴏʀO'Bʀɪᴇɴ how do you plan on getting past the problem of long keywords?
 
@NathanMerrill eh?
 
2:07 AM
actual programming usually requires good builtins that are named well
 
what's the problem?
 
like, range() in python
range takes up 5 spots
in 2D programming, that's critical
 
Well, most of my commands will still occupy a single spot. There will be a command, &, that accesses "extended" commands
 
so, I'd have to write &range?
 
no, you'd have to write "range"& until I get further in my thought process.
> "clear"& v
^      ar4 <
 
2:12 AM
cheddar> var fd = IO.open('goats', 'w')
cheddar> fd.write("Hello 123")
< Instance of "fd" >
cheddar>
$ cat goats
Hello 123
\o/ \o/ \o/ \o/ \o/ \o/
 
2:26 AM
@Downgoat electron
 
@CᴏɴᴏʀO'Bʀɪᴇɴ What if range counted as one token in the grid and an arrow could point to any letter in it or a jump to any part
 
@quartata that wouldn't line up very well
 
The lexer would be hellish of course
 
make the language parse strings as one token?
 
@MᴀʀsUʟᴛᴏʀ eh?
 
2:28 AM
@CᴏɴᴏʀO'Bʀɪᴇɴ I think it would look better than you might think
 
@quartata write me an example, perhaps
I may not know what you are talking about :p
 
e.g. "range" would actually be one token/cell, the source will be able to use some sort of padding to line the columns up
 
>v
 range
 
@Downgoat Why is it that recursion doesnt work?
 
@MᴀʀsUʟᴛᴏʀ nah, i want cheddar to have a positive vibe to it :P
 
2:30 AM
hahaha
 
(electron uses node+css too so can't)
 
@LeakyNun it's a mystery, nobody knows
 
@LeakyNun if i could tell you that it wouldn't be broken :P
 
given that ; is the termination character
 
alright
 
2:31 AM
@Downgoat ?
 
brb debugging
 
>v ;
 range
 > ^
 
@MᴀʀsUʟᴛᴏʀ i need pure JS GUI lib
 
would terminate, right?
 
electron is a html/css/node packager
 
2:31 AM
@Downgoat so why not electron.
just make the html and css with JS
 
no can't
well i could
idk
 
@Downgoat Do you have more tips to post?
 
@CᴏɴᴏʀO'Bʀɪᴇɴ @MᴀʀsUʟᴛᴏʀ mind halping make cheddar stdlib apis :3
@LeakyNun yeah, just gotta figure them out
 
@CᴏɴᴏʀO'Bʀɪᴇɴ No. 0,0 to 0,1 to 1,1 to 2,1 to 2,2 to 2,3 to 1,1 to 0,1
 
most tips would be "use this property name not that"
idk if those types of tips are good
 
2:33 AM
@Downgoat i dont mind, but i dont do things well without a list of tasks that set specifically to me (idk why)
 
tthe up arrow is pointing at 1,1. It's kind of a warp
 
@quartata I see. but would it not be better the other way?
 
I think i'll need to make a visualization perhaps
 
wait, spaces are no-ops right?
 
ed?
@MᴀʀsUʟᴛᴏʀ yes
 
2:35 AM
maybe source could be lines split by space?
 
you can pad shorter functions
 
but then I couldn't have something like >range
 
@CᴏɴᴏʀO'Bʀɪᴇɴ It's non intuitive at first but if it is done correctly I think it will lead to cleaner code
 
@quartata when I said "real programming" I meant feasible not production >_<
 
2:36 AM
It's the best solution but it's tough to demonstrate it fully on mobile. will sleep on it
 
but it's still something to consider
 
basically long tokens accept pointers from anywhere, and make them jump to start of token?
 
that's the proposal, yes
 
Yeah
 
@MᴀʀsUʟᴛᴏʀ ok well todo list is:
 
2:39 AM
if I had this done before school starts, I should turn in all assignments for comp sci in it XD
 
FEATURE:
 - [x] Functionized Operators
 - [x] Strict typing in assignment
 - [x] Static enforcement in functions
 - [x] for of
 - [x] ternaries
 - [x] Signal propogation
 - [x] Regex
 - [x] Symbols
 - [ ] Class literals
 - [ ] Func statement
 - [ ] Generators
 - [ ] module system

BY RELEASE:
 - [x] instanceof checking binary `is`
 - [x] get class with `what is`
 - [x] comparison function with unary `is`
 - [ ] Array accessors References

ENHANCEMENTS:
 - [ ] Custom REPL Colors
 - [x] Ommitable fargs
 
also: 2d langs are nice, but is there any way to make the code clean (meaning you can easily use longer var names for readability)?
 
@MᴀʀsUʟᴛᴏʀ my original idea was this:
 
@CᴏɴᴏʀO'Bʀɪᴇɴ use jsfuck/jelly/pyth
 
@MᴀʀsUʟᴛᴏʀ former is trivial, I don't know the latter two
"..." string literal
&..." reference literal
#..." function literal
 
2:41 AM
if you want a good verbose 2d lang you're going to probably need to make a good IDE. I don't want to have to type a space on all 200 lines just because i changed variable name
 
@Downgoat Do generators as soon as possible so that you don't have too much of the stdlib to rewrite
 
use vim or something
 
why would i need to rewrite stdlib because of generators?
 
@Downgoat this is one of strengths of my proposal
 
@Downgoat *>2000
 
2:42 AM
@Downgoat because they can be used to increase performance in many array things
 
range and....?
 
Any thing of this style:
 
@Downgoat i'm more wondering if it's possible to design a 2d lang that doesn't need that
 
    &start&0= 5 #range#

is roughly

    start = 0
    top = range(start, 5)
 
x = []; for y in arr: x << y; return x
 
2:44 AM
now I have to go to sleep. night.
 
Or similarly nested versions
 
@quartata lazy evaluation is not usually wanted unless in specific senarios
i would not make it default for array functiosn
@CᴏɴᴏʀO'Bʀɪᴇɴ g'night .o/
 
@Downgoat +1 for spelling
 
Why?
 
@Downgoat which file should I debug? or, which file is responsible for functions?
 
2:46 AM
That doesn't make sense
You want to use it as much as conceivably possible. if you implement your generators correctly it's a free performance boost and the programmer will never notice the difference
 
@quartata performance boost? Well it's going to be evaluated eventually, it's just delaying the performance hti
@MᴀʀsUʟᴛᴏʀ thx
 
You're iterating through it once rather than twice
 
halp what kinds of esolangs don't exist yet?
 
@LeakyNun since you've installed with npm, you don't have the source installed. I've tried debugging recursion but its' a pain
@quartata why twice?
 
@MᴀʀsUʟᴛᴏʀ those we can't think of
 
2:49 AM
@Downgoat I can read the source, just tell me
 
@Downgoat creating array then accessing array
 
@Downgoat because what do programmers do with arrays
they iterate through them
 
@NathanMerrill +1 very helpful
 
or access them which is still a performance boost since you only need to calculate a part
 
2:53 AM
idk if creating a rubylike/pythonlike version of js will be a good thing
e.g. obj += {foo:'bar'} will add keys to the object
 
Please no
 
@quartata why not
 
obj->foo = 'bar'
 
0
A: Sandbox for Proposed Challenges

milesCount the rectangles in a diagonal grid As a follow-up to this similar challenge, we now want to count the number of rectangles in grid with r rows and c columns where there is a line crossing through every diagonal of a square in the grid. Now, we are still counting the the same rectangles as b...

 
If i want a dictionary I'll use a dictionary. If I want an object I'll use an object. mixing them causes nothing but pain
 
2:57 AM
what about {foo:'bar', baz: 11}
but in js dictionaries are objects
i mean objects are dictionaries
 
There's no point in dynamically adding fields to an object. For anything else I could do what I did above and it would be immediately recognizable
@MᴀʀsUʟᴛᴏʀ Yes and everyone hates it
 
@Downgoat halp, your making variable initialization and redefinition having different syntax means that the function will error when run the second time
 
I would be genuinely surprised to find somone who likes JS's prototype system
 
@quartata be the change you wish to see
 
prototype system?
 
3:00 AM
i.e. make a bignum
 
@quartata is this a complaint about JS's prototype system, or prototype systems in general?
 
@quartata why?
 
@MᴀʀsUʟᴛᴏʀ prototype based inheritance
 
@LeakyNun wait wat no
 
@NathanMerrill Specifically JS's. I do think it can be done right
 
3:02 AM
then what features specifically would you change?
 
cheddar> f=n->{var a=1;a}
< Instance of "Function" >
cheddar> f(3)
1
cheddar> f(3)
Runtime Error: a has already been defined
cheddar>
@Downgoat ^
 
how is it bad
 
@LeakyNun oh my
ohhhhh
 
you broke scoping D:
 
+1000000000000000 you are best debugger
 
3:03 AM
@Downgoat thanks :)
 
@quartata how is it not done right then?
 
JS prototype system is literally as plain as it gets, if you seriously think that you're just taking a jab an JS
 
The problem is without some form of blessing no kind of inheritance can truly properly work. I can modify an object however I want until it isn't an instance any moreand still be an "instance"
 
@quartata that's an argument for no typing system, not a prototypal one
 
yeah, if you wanted to modify that much why did you even inherit?
 
3:06 AM
prototypes make it slightly less painful than it would be class based but I don't like the way JS handles creating instances based on one
@NathanMerrill wasnt finished
 
gotcha :)
 
@MᴀʀsUʟᴛᴏʀ If you wanted 1 + getChar not to work why did you do it
Human mistakes happen.
plus it just feels wrong to be able to do that
 
cheddar> 1<<30
1073741824
cheddar> 1<<31
-2147483648
cheddar> 1<<32
1
cheddar>
@Downgoat please
 
?
 
don't bring the ridiculousness of js to cheddar
 
3:09 AM
so what would your ideal inheritance be like?
 
please don't
do not loosely type a language
than you just encourage jsf***
 
bless(object, prototype) would create a new primitive in essence
That would help
 
@quartata so, you explicitly add the prototype to an explicit object?
that seems difficult, especially if the object doesn't have all of the variables the prototype expects
existing object*
 
Not saying I held all the answers :P but a clear cut way of enforcing a prototype on an object would be great
 
like node's inherits?
 
3:22 AM
eat glass install arch in production try to explain planetary gears to a baby
 
@leak what's so wrong about it?
 
@CᴏɴᴏʀO'Bʀɪᴇɴ alright
 
@rohan please, obfuscaters will find a way.
@leak talking about bit shifts btw
 
@CᴏɴᴏʀO'Bʀɪᴇɴ alright
 
@quartata I like js's prototype system.
 
3:33 AM
yeah, me too
 
@Doorknob From what you hear, do you hear /wi/ > [ɥi] or even [ᶣi] in Spanish (or in English)?
 
Have you ever gotten an Windows 10 update that, near the end of the update, kept going "We couldn't complete the updates / Undoing changes" something like that
Because that's been happening to me since last Patch Tuesday
 
Nope. I still use windows 8.1
 
3:52 AM
@CᴏɴᴏʀO'Bʀɪᴇɴ wat why do people tend to sleepchat in TNB
 
-1
Q: Json file from sd card

Mohsin SyedI am working to parse a json file present in a sd card Problem is that arduino sd library just support 8.3 file name format .json is a LFN. What to do to read .json file in arduino

 
i'm thinking of making a language that interorets input as a CA, but idk how it would do arithmetic
 
4:12 AM
@MᴀʀsUʟᴛᴏʀ already been done. Look at GoLscript on my homepage
 
that's a CA-based fungeoid right?
btw, at school so can't access GH
 
Hey @MᴀʀsUʟᴛᴏʀ. How did your VIC attempt go?
 
@Sherlock9 gave up, was working on other things
 
Ah okay
 
so hard to golf ;_;
 
4:18 AM
Yeah, it really is
I only finished writing the implementation yesterday, I haven't begun golfing it :D
Do you think it's ready to post? Or should I write the decoder post first?
 
@Sherlock9 I write a python implementation for my questions
if you noticed
 
I have. I was working on my Python implementation yesterday. Not sure how decent it is to post, though
 
@Sherlock9 let me see
 
Hang on. Putting it in ideone
It's ungolfed besides some removed whitespace. I just wanted to get the thing working first
 
@Sherlock9 just put this link in your question instead of posting it as an answer
 
4:28 AM
Well, I want to golf it later today. I'm posting it now because you asked to see it
And I wanted to write a second Sandbox post about writing a VIC decoder
 
New challenge in 10 minutes \o/
@Sherlock9 be ready
 
Got it
 
0
Q: Alphabet triangle

Leaky NunYou are to print this exact text: A ABA ABCBA ABCDCBA ABCDEDCBA ABCDEFEDCBA ABCDEFGFEDCBA ABCDEFGHGFEDCBA ABCDEFGHIHGFEDCBA ABCDEFGHIJIHGFEDCBA ABCDEFGHIJKJIHGFEDCBA ABCDEFGHIJKLKJIHGFEDCBA ABCDEFGHIJKLMLKJIHGFEDCBA ABCDEFGHIJKLMNMLKJIHGFEDCBA ABCDEFGHIJKLMNONMLKJIHGFEDCBA ABCDEFGHIJKLMNOPONMLKJ...

@Sherlock9 \o/
 
4:52 AM
Anymore feedback on this proposed challenge of mine?
1
A: Sandbox for Proposed Challenges

R. KapCount the Unique Rectangles! code-golf In my last challenge, you were asked to find all rectangles given a m x n grid of them. However, it turned out to be very trivial as there actually was a mathematical formula I did not even know about to solve the problem! So now, for a little bit more of a...

 
@R.Kap go ahead
 
@LeakyNun Like it?
 
@R.Kap sure
 
@LeakyNun >_> it is on roadmap but still working on it
 
@Downgoat alright, fix the scope first
 
4:56 AM
lots of abstraction tho so it shouldn't be too hard
@LeakyNun Maybe tomorrow I'm trying to sleep early today (it's 10pm rn)
 
@Downgoat it's 1pm here
so you're UTC+17 = UTC-7
 
I'm UTC-8 iirc
 
:o
but on DST?
 
No I think that ended
 
but i'm UTC+8
and you're 9 hours "ahead" of me
 
4:58 AM
It's 9:58 maybe you're thinking 10:58?
 
so you're UTC+17
@Downgoat no, it's 12:59 pm here and you're 9:59 pm
so you're 9 hours "ahead" of me
@R.Kap prepare for 9 byte jelly answer
 
time zones are weird
 

« first day (2013 days earlier)      last day (2828 days later) »