last day (30 days later) » 

10:26 PM
what do you guys think of a compilation challenge?
 
@DestructibleLemon link/more details?
 
compile some idea i had about a programming language to BF
basic sketch: you have a main register and secondary registers
writing integers like this: 12345 will add 12345 to the main value
 
Sounds more like transpilation to me
 
- will invert the main value
@H.PWiz transpilation is hyponym of compilation
anything which is transpiling is compiling
 
I never knew that
 
10:29 PM
i believe
> A compiler is computer software that transforms computer code written in one programming language into another programming language.
from wikipedia
and, to store in the secondary registers, you write the name of the register preceded by a >
or something
writing without the preceding > adds the value of the secondary register to the main register
 
Anonymous
Transpiling is a term used to mean compiling one high-level language to another. It's not really well-defined.
 
and i think there will obviously be some control flow but now that i think about it i haven't designed it
 
Anonymous
Compiling is usually used as high-to-low, whereas transpiling is usually used as high-to-hihg
 
also am i allowed to explicitly allow the language to be used in the challenge despite not being implemented yet?
@Mego compiling has different connotations to transpiling, but the denotations are the same practically
 
Anonymous
@DestructibleLemon That wouldn't work - with no implementation, there is no language.
 
10:34 PM
@Mego ah, but as soon as an answer to the challenge is written...
 
Anonymous
Then you have to resolve the paradox
 
"you may use a language implemented in a compliant answer to this question"?
but then again, i guess you get undefined behaviour?
 
Anonymous
That works, but then you increase the effort required to verify whether or not an answer workds
 
Anonymous
Exactly - UB is a problem. Also you have to both verify that the answer in the "language" works, as well as the answer with the implementation.
 
yeah i guess i'll just make the compiler
i mean, the undefined behaviour is more that if i chose to have no undefined behaviour, like erroring and stuff, then you might get a chameleon challenge?
i guess i could count any unrecognised character as part of a register
i could even just make an interpreter rather than a compiler
now i just need to figure out control flow in this language
gotos and labels?
ok so i think i might be overcomplicating it, but what if i used each set of bracket separately as loops and stuff, and they don't need to be matching between each other
it's just that i feel like labels might be clogging it up or something?
 
10:43 PM
@DestructibleLemon I am a fan of intersecting alternate loops
 
it's more that i don't want it to be incredibly difficult to compile to bf though?
so i guess i'll use loops?
ok so, i guess it also matters which bf version i use?
i think i will use 8bit cells. it's still pretty possible to implement checking for zero i think
also maybe i should include declaring every single variable used in the program at the start?
 
@DestructibleLemon That makes it much less challenging to parse, not sure if you want that?
 
actually 8 bit could be pretty annoying... also i probably don't need to post every single thought on the challenge here
because you'd need to like, calculate primes in order to store arbitrary values because the registers hold arbitrary values. maybe i'll use arbitrary cell bf
and no declarations
also i don't even know if this is more high level than bf at this point really. maybe i should add some more mathematical functions?
 
@DestructibleLemon tarpits are always better with accurate complex arithmetic.
 
I think i'll add double and integer half
 
Anonymous
10:57 PM
48 messages moved from The Nineteenth Byte
 
i guess it's a little bit more high level when you consider you can add values more easily?
like
180-someregister- is original value + 180 - value in some register
 
Didn't understand that
set a register to 180, add 180, value goes somewhere?
 
ok so
that's a snippet
 
ah
 
if i had some sort of snippet before hand, the original value would be different
 
11:01 PM
so 180 - REGISTER_NAME == CURRENT_VALUE + (180 - REGISTER_NAME)
 
to be specific
((original value +180)*-1+value from some register)*-1
- inverts the current value
surrounding a value with -s means it is effectively inverted, but really it's because you just reverse the polarity of the value before and after it gets added unmodified
i'm also taking name suggestions
i think negative values are also more high level
I'm expecting answers to this challenge in bf and in (whatever this gets called)
 
Some Assembler Required
 
i was thinking about the name of the language but that sound interesting for the challenge
 
11:18 PM
surprisingly the name "paperclip" is untaken on esolangs wiki so i guess that will be the name
or not... not 100% certain
 
11:42 PM
oh yeah, of course
i need to name it REAL
 

  last day (30 days later) »