HTML Dialect 0.0.5

Just a slight bugfix in the form select tag to allow it to use values for inputs. This increases the version number to 0.0.5.

And oh, now there is documentation. Happy So I consider this to be the first real release, though still in the alpha stage, because the design of the dialect is not 100% set in stone. There are many improvements since 0.0.3, but I’m sure there are many more that can be made. If you have suggestions, or bug reports, please don’t hesitate to sound off in the comments or in AltME.

The HTML dialect can be found in the Downloads area.

Enjoy!
|

HTML Dialect 0.0.4

I’m releasing version 0.0.4 now, as I feel there will be a need for many more changes, but I won’t keep the current changes under wraps any longer.

Some changes are:

- Added OUTPUT-HTML function for direct HTML output to console.
- Code reorganized and cleaned up
- Some testing of the dialect using a testing framework.
- Dynamic input allowed for all inputs (cell-types and href-types)
- Traverse and loop work better now
- Tag rules for common HTML tags
- Private testing framework should increase the reliability of the dialect.

I also removed automatic formatting for links via a page list. I thought at first this was a good idea to include, but it has deeper ramifications than I first calculated and in fact can be a small project in itself. So to avoid ballooning the HTML dialect, this functionality has been removed. I’m contemplating a site dialect where such functionality can be more useful along with other site oriented functions.

Documentation is going up very soon. Documenting a dialect can be a surprisingly comprehensive thing, despite only being 350 lines of code, so this has taken a few days to complete, and I’m not entirely done yet.

There are some known bugs still:

- <script> is sometimes a single and sometimes a double tag. It’s currently treated as a double tag
- Cell-types results are not stackable
- Problems with nested traverse.

The forum is currently driven by version 0.0.4 of the dialect and so far it runs fine.

Notice also I’ve rearranged the HTML dialect directory so each version is stored under its own directory, so if you are loading the dialect directly from my site, you should use:

do http://www.hmkdesign.dk/rebol/html-dialect/src/0.0.4/html.r


Where you replace “0.0.4” with the version number you desire. See here for a listing of available versions.
|

HTML Dialect 0.0.3

I’ve made a new version of the HTML dialect, this time version 0.0.3 with some improvements:

- Better support for META tags and CSS per page.
- Support for redirects.
- Support for forms and server side form auto-filling.
- Cleaned up source code.
- Support for all doctypes and renders XHTML tags correctly. This code lays a good foundation for complete standards compliance.
- Recognizes tags that have no end tag and render them correctly.
- HTML-PARSE is now named HTML-GEN. You might want to know that in case you want to use it. Happy
- Fixed a lot of word leaks.

There is no documentation available yet, so you’ll have to see if you can figure the dialect out with the parser in the source code. Happy Otherwise ask me on AltME.

Version 0.0.3 is available in the download section.

Enjoy!
|

More about VID3.4

A Frequently Asked Question right now about VID3.4 is what is meant by having a stronger link between networking and VID, because it would seem that we can already do that. But apparently:
button “Run Script” [do http://somewhere/script.r]

is not simple enough.

I haven't mentioned this, because I was afraid I would get it wrong and Carl would bash me for it. Happy What I'm writing here below is one of the reasons to switch to a webbrowser mentality. It was also one of the the reasons for dumping VID3. During late design discussions of VID3, Carl focused very much about the ease of use of VID3, and apparently it failed those tests.
Carl wanted a VID3 that could help building a web-like infrastructure of programs and services, all made in REBOL. To build infrastructure, you need extremely simple tools and the way Carl talked about this, it sounded like he struck gold, because then he said “This is going to blow the socks off everything else.”

Infrastructure!


Webbrowser mentality helps building infrastructure, very quickly. You have webpages, hyperlinks and a browser provides the navigational tools to “surf the web”, as they said back in the 90’s. Webbrowsers are also recognizable to most people and a webbrowser is today one of the most used programs in the world, next to the operating system itself. With HTTP, HTML, the webserver and a webbrowser, you have all the basic tools necessary to build an information infrastructure.
When you create a link in a webpage, it takes only a few tags in one line of code (even inline) to do that. You only need to provide the link. The browser takes care of handling the events of displaying the link properly, clicking on the link and all the networking that goes on when you click that link. You don't have to worry about TCP ports or wait for acknowledge from the server. The basic philosophy that goes behind hyperlinking is its extreme simplicity, which is why it's so widespread. It's easy to grasp and easy to code. You can build an entire infrastructure with hyperlinks.

When you for example write in a forum, you are often capable of providing hyperlinks. As a result, hyperlinking is available to any users, who have just the basic knowledge of coding, which to them means "typing funny chars to make a link". Most 10-year olds can do this. But you are really creating program code that the computer can react to in a rather complex way. That is part of the brilliance of hyperlinks.

There is now a stronger link between VID3.4 and networking in the same way as there is a natural link between HTML and HTTP. But where HTML only provides a hyperlink, VID3.4 would provide more kinds of actions in place.

Carl wants something equally powerful and simple as hyperlinks in VID3.4 for basic communication, where you must currently work with ports and do some programming and make complex decisions, and you usually also need to understand what’s at the other end. That level of detail must not be sacrificed of course, but there is a simplifying element that's missing, and that is to use buttons directly as a kind of hyperlink that perform scripts or network oriented actions, like doing a call to a REBOL/Services server without needing to get your hands dirty in protocols and schemes and handling the response. If successful, anyone could code simple VID GUIs.

For further evidence, I asked this: “I've often thought about how to make ad-hoc connections between computers in the same way as you write a VID GUI for simple use in minutes, just to transfer a file or two. Or a message. Or a GUI. Or something else. Happy All without having to mess around with ports.”

Carl responded: “I think we are all thinking alike!”

I'm still sure I'm getting it a bit wrong, because there are no real code examples out yet. This is the best level of detail I could get. There's not much point discussing it right now, so I only tell you this to let you know some of the reasons behind the switch. He emphasized very strongly about building infrastructure through very simple methods that most people can understand and use. He talked about this more than about VID itself, so I guess it’s very important for him to get it right the first time, which is why it takes a little time to do.

So there you have it. More to come, when we have better details.
|