Getting started with Readable Human Format
44 points by readabledotred 6 years ago | 33 comments- anamexis 6 years ago
..but why? I don't know anything about Red or this, but why on earth?That's all you need to know as business user except one more thing: if ever your text contains any word containing "Red" (red is ok) you must replace this string by "Red" (in a future evolution, we'll do it for you.)
- fwip 6 years agoMy guess is it's related to Step 2 on their page, "add inline code to generate output or create a build script." The markup for that seems to start with "Red []"
- readabledotred 6 years agoRed [] is the header, It shouldn't behave like this for just Red, I'll raise an issue, so for now you have to be carefull about that though if you don't write tutorials on Red the probability should be low. In the future, I'll make that replacement automatically as I doubt it will be fixed soon if ever the core team will do it.
- readabledotred 6 years agoOh I forget to say, actually you don't need to replace if you won't run a Red on the html script which I do through what I call html proxy https://redlang.red/html-proxy
I'll update the documentation because it will confuse people.
- rebolek 6 years agoThis is project done in Red and it's a limitation of that project, not of Red language.
- fwip 6 years ago
- azhenley 6 years agoA recent HN discussion about the Red language that is helpful if you don't know much about it: https://news.ycombinator.com/item?id=18843544
- zepto 6 years agoThis is not the same language.
Readable.red:
red-lang.org:“The ReAdABLE Human Format aims at Agile Documentation by making WRITING and READING document easier for End User and Developer alike, while allowing a high degree of flexibility.”
“Red’s ambitious goal is to build the world’s first full-stack language, a language you can use from system programming tasks, up to high-level scripting through DSL. You've probably heard of the term "Full-Stack Developer". But what is a full-stack Language, exactly?”
- wool_gather 6 years ago> a language you can use from system programming tasks, up to high-level scripting through DSL
Swift has this same stated goal. I guess ambition is good, but I really don't understand why you would try to make one tool handle such wildly different use cases. It's like me saying "my handheld electric jigsaw can be used from ripping full plywood sheets, up to cabinetry through luthiery". Well, sure, it can...but it's not actually good at more than one or two of those things.
- zepto 6 years agoWhy do you think they are different use cases?
The electric jigsaw example seems to illustrate the contrary of what you think it does because as technology advances it actually does make it possible for a tool to cover more use cases effectively. E.g. example an electric jigsaw covers more use cases than a manual hacksaw.
It’s possible to imagine a miniature drone with a high powered cutting laser that is controlled via an AR/VR interface that would be able to do anything from felling trees to cutting your fingernails. Obviously we’re some way off having that technology today.
But by analogy, it seems like we’re in a much better position to make programming languages that cover a broader and broader set of use cases, because we aren’t so constrained by materials science.
Why would you make one programming language to handle all of these cases? Surely there’s an incredibly strong case for that:
1. It makes more use cases accessible with less cognitive load. That’s pretty much the reason we have programming languages at all.
2. Investments in tooling etc. are magnified.
- zozbot123 6 years agoRust has hygienic macros which one can use to build EDSL's. It's not that hard.
- zepto 6 years ago
- readabledotred 6 years agoYes it is isn't a language it is a format which uses Red as natural processing engine, like json uses javascript language as its format.
- azhenley 6 years agoThe previous title was referring to Red, which is the same Red that I linked to.
- zepto 6 years agoThe linked article has never had anything to do with the article you linked to.
The term ‘Red’ is used as a contraction by the ‘Readable Human Format’.
It’s not clear to my why you think the previous title would be referring to a project other than the one that it linked to.
- zepto 6 years ago
- wool_gather 6 years ago
- zfdrdg 6 years agoI think this is a different red language.
- azhenley 6 years agoNo, it is the same. This article says to install from red-lang.org (which is what my link discusses).
- azhenley 6 years ago
- fock 6 years agoand I still don't get what's so special about it compared to the bunch of other embeddable languages (Lua, Tcl/Tk (which is 16MB in a batteries included package, mature, and shows why building a platform independent GUI into your language just doesn't age well)
- readabledotred 6 years agoI'm language agnostic, I don't care much about them, I just wants to get things done. Red have features that ease things like its unique parse engine https://redlang.red/parse-html which avoid regex headache (recently javascript recognized the problem and tried to add methods to ease parsing it's far from being as elegant as red. I don't remember the research paper from which Carl Sessenrath inspired fromn but it is clearly closer to natural language processing, though still not close enough in my opinion so I'm working on making a dialect that would almost feel the gap and allows anybody to create its own AI for example ;)
So at this stage for me, Red being in alpha stage (not even 1.0. yet and roadmap goes up to 2), you cannot use it like you would use nodejs. Tcp/ip has just being implemented, I hope to have something like async nodejs https server and an independant framework similar to express instead of full blown monolitic server but I don't know what the future will be.
But it is very usable for meta-programming stuff. readable.red is only one brick, I have other projects which will use red to generate code easily in other programming languages in much more friendly way that traditional DSL made for PHD people only ;)
- readabledotred 6 years agoAnd what I present today about readable.red is just the core, I have many ideas in the tube for it, like adding many other tags for mindmapping & timeline (because I just need them) and since I cannot do all, I'll intend to create a plugin architecture for others to implement more amazing stuffs than me.
- fock 6 years agoOh yeah, let's write a parser for html, because regex is too hard https://blog.codinghorror.com/parsing-html-the-cthulhu-way/
- readabledotred 6 years ago
- rebolek 6 years ago16MB is >10x more than Red (batteries included) and also Red takes different approach to GUI - it's platform independent but with OS widgets - so it ages with OS, unlike custom solution.
However, GUI is not the main point of Red, just a part of it. IMO the really special thing is it's ability to create and use dialects (DSLs) very easily, so the 1 MB package can handle tasks from device drivers, through GUI, to natural language processing, with specialized dialects (DSLs).
- fock 6 years agoUnfortunately at the moment Red does not really include a lot of batteries (take a look at IO in their documentation)... Also what's the point of a platform-independent GUI-toolkit if you have to abstract a multitude of different OS-provided-libraries, when you could just use the library as is (which itself is an abstraction over the basic OS-rendering-primitives)?
Also could you elaborate what's so special about an DSL if all of these are locked into a specific syntax (or does the almighty red also include some super-easy grammar-description tools?)
- fock 6 years ago
- readabledotred 6 years ago
- zepto 6 years ago
- tomcam 6 years agoI love the Red language. I think this is an interesting experiment – and I’m not trying to be mean here – I found the page difficult to read. But I hope the OT continues on this path.
- shusson 6 years agoYeah same, I find `ReAdABLE` unpleasant to read.
- shusson 6 years ago
- ryukoposting 6 years agoI've been working on something loosely related as a side project. It's a turing-complete lisp DSL that's made for generating HTML and CSS. Kind of like a scripting language that was made for the sole purpose of CGI scripts.
- HocusLocus 6 years agoI like the priddy colors on black background, it makes me feel hacky while I'm learning a new way to do hack stuff.
- azhenley 6 years ago> What you can do with Red language
The actual title is "Getting started with ReAdable Human Format".
- fock 6 years agoAnd apparently this is some kind of Red-based markup language. So it's technically something you can do with Red. Still not that exciting.
- readabledotred 6 years agoI didn't do it for being exciting, I did it for being usefull like for documentation which is a nightmare in big corps projects where they invest dozens of millions euros each which 50% are wasted to wander though code trying to trace back to business requirements ;)
- fock 6 years agoYeah? I'm just not quite sure how putting HTML-code into blocks is really disrupting this market. Tell me, what your thing can do, what you can't do with a run-of-the-mill templating library/processor and a json for input? It's just not clear, which usecase this solves – there's a ton of mature, stable and feature-ladden options if you want to document code and even more if you want to create human-readable documents with a logical structure (even without resorting to writing all the content in HTML). And most of this solutions even allow you to extend their domain-specific language with your own code, take a look at LuaTEX, pandoc, ...
- fock 6 years ago
- readabledotred 6 years ago
- fock 6 years ago
- 6 years ago