Talk:Keg+ Language Design

From Esolang
Jump to navigation Jump to search

I see. So Keg+ is harder to golf than Keg, as more parts are mandatory compared to Keg. (For example, the for loop now requires iteration.) However, some other problems might be shorter in Keg+. I will choose accordingly. Hmm, and variables will take more bytes than a single accumulator, which in turn can be replaced by the original Keg stack manipulating commands. I guess I will stick to Keg anyway. Keg+ provides too many features that will rarely get used. --"If you don't like it, then don't use it." -- fishHDR; A (talk) 02:16, 3 August 2019 (UTC) 07:38, 3 August 2019 (UTC)

A few things... Loops still have default values, there are 6 types of strings (even 05AB1E has multiple string types) and variables will prove useful in places that stack manipulation won't (eg bf interpreter and 99 bottles of beer). Hey, that's a good meme! JonoCode9374 (talk) 08:03, 3 August 2019 (UTC)
Right now they are syntactic sugars, but I have no idea how you will diversify them. Variables are terrible for golfing, as accessing an accumulator is shorter than variables, and if you replace them with stack manipulation commands in the original Keg, you will golf a lot of bytes off. That is a golfing tip in Keg. I wish that Keg+ supports accumulators. --"If you don't like it, then don't use it." -- fishHDR; A (talk) 02:16, 3 August 2019 (UTC) 08:08, 3 August 2019 (UTC)
One day I'll scan all the handwritten pages of planning regarding to strings and upload them. But until then, be reassured that they all have a different function and aren't just sugar. Accumulators sounds like a good idea. Variables are staying because they can store any data type (there's about 5 now). Also, I feel I haven't explained the SSL and even mentioned the Built-in Function Library (BFL). BFL first: rather than have thousands of built-ins hardcoded into the interpreter, built in functionality will be provided in a type of standard library written in 100% Keg+ (these functions will have single character aliases added in Keg++ [yes, that will be a thing. I've been planning the family of Keg since November last year]). Next, the SSL: something I believe to be unique to a golfing language, the SSL will be a community driven list of 'sequences' which are preprocessed into the program (kind of like how languages have a preprocessor). That's a lot to take in, so I'll leave it at that for now. Hey, that's a good meme! JonoCode9374 (talk) 08:37, 3 August 2019 (UTC)
I indeed wish that the BFL accessing is 2-bytes as in Pyth (or 1 byte, to make Keg+ programs shorter). But anyway, I will be trying to make Pull Reqests to make it look like Keg+ as much as possible. (When I am ready for more features.) "If you don't like it, then don't use it." -- fishHDR; A (talk) 02:16, 3 August 2019 (UTC) 10:48, 3 August 2019 (UTC)
Idea: Add regex matching/replacing to Keg+. This makes golfing much easier. --"If you don't like it, then don't use it." -- fishHDR; A (talk) 02:16, 3 August 2019 (UTC) 01:19, 4 August 2019 (UTC)