(CONTINUED)
I HIT THE DISCOURSE POST LENGTH LIMIT!!!
-
Goodbye to FUNCTORs - I don't know what these were from the description. If it was one line of code, he should have put it in the blog.
-
Notes about SECURE - I kept this around much longer than I should have, but ultimately deleted it.
-
REDUCE/into and COMPOSE/into - My opinion on these is well known. Die, /INTO, die.
-
Minimal Readline - Whenever I go back to tinker with R3-Alpha I remember just how bad the console was. Modern Ren-C has what I think is a very good custom multi-line console... and it shares a huge portion of that code between the browser interface and the terminal. It isn't built with libReadline or anything like that, but even the C portions largely delegate to snippets of code bridged to Rebol to do much of the work.
-
Evaluation Quotas - This really shows how much Rebol wants to be an operating system and not a language. How many people when they run a Rebol process care about setting a quota on the number of interpreter evaluation cycles that run? It's not a metric anyone would know or care about. Start the process in an OS-sandbox that quotas on time or CPU use or memory use. If the OS lacks such features it's probably not used by professionals and who is going to care about this?
-
Relative filenames: Relative to what? - This recognizes the different needs. Ren-C has made some progress here and also in some places by using different datatypes. e.g.
load <foo/bar.r>
andload %foo/bar.r
are different. There are oddities you encounter if you try to use the system/script/path-relative form in a function which may be called by another module...because you'll load relative to their path not the path of the one where the source is written. It's like you need another form likeload 'this-module/<foo/bar.r>
, where it has some variable it can latch onto to know what module you want to be relative to. -
Paths for Blocks - We've been in a sort of stalemate over this, which I've written up in BLOCK! and Object Parity In Path Picking. I still think it should go by SET-WORD!.
-
REPLACE replace - The reluctance to just use PARSE with CHANGE here seems short-sighted. It's more performance focus when there are bigger problems.
-
OBJECTS: To COPY or not to COPY (member series) - Some of these questions feel kind of absurdist, and I definitely feel like some time clocked with serious projects in C++ or Haskell or whatever would help "un-ask" the question. If you don't have some methodized code coordinated with the kind of cloning intention you have, you can't know what the intent is. If you don't know the intent, the best you can do is as little as possible.
(There's a bunch of PARSE-related entries I'm just going to skip because UPARSE is fully understood and the most well-tested Rebol dialect ever made.)
-
Another EXPORT Method - I like this form of exportation very much, e.g.
export emit: funct ["Emit HTML...]
. I don't remember if it existed in R3-Alpha, but regardless Ren-C's implementation is based on entirely different code. -
UNSET! is not First Class - This was used as a reference when trying to reason about NULL, in a time before the whole families of "can't put it in a block" antiforms arose. I notice the disclaimer on that outdated post is out of date. Sigh.
-
Pairs as floating point? - Not even Red cared about this, I removed the feature.
-
So, Do You Want RESET - Rebol trying to be an operating system, again. I've mentioned how if you build to WASI and run your web code there, you get the fast tear down and startup for free. Pitching this kind of feature, this late in the game, seems preposterous.
-
About /LOCAL Words - Ren-C of course dismissed with the idea of not using a different part of speech to switch into locals in the function spec dialect. There's nothing wrong with
[a b <local> c d]
instead of[a b /local c d]
, is there? Well of course it was rejected due to the fact that /LOCAL is a refinement and hence was based on an interned word, while each<local>
tag took up space as a string. What I didn't know was the sense of urgency that was felt about callers being able to slip values into the locals from a security standpoint: "We need to address this issue immediately." My impression was that there was no urgency...as it was never fixed. -
Amiga PowerPC Version Released - So here we can just sort of admit that this is a hobby project.