Saturday, March 24, 2007

Web Forms With Erlang

I started a project that I eluded to in my previous entry. I only wrote the specification and started on some code. so it is far from complete. This is what I wrote so far as a "goal" statement:

A mini-framework on top of ErlyWeb to:

1. Generalize a common set of patterns when related to web form development.
2. Siimplify the creation of forms for instant gratification.

This is accomplished by:

1. A general web form behaviour in Erlang, which handles generating new and edit forms as well as deleting and retrieving data for results or details.

2. A specific way of creating multiple amount of forms in a unit.

3. A way to quickly generate forms, which can be played with immediately.

4. An HTML form generator that takes form specificiations an can genereate simple forms as something to start off with before a better design is created.

5. The allowance of the system to easily adapt to new HTML designs and code.


The idea is this: I got a form of something - be it data to fill in from one or more database tables, or email to send, or whatever. The implementation makes a common set of assumptions about what is going to happen to the data.

The assumptions are this:

- This something will be created.
- This something will be edited.
- This something will be deleted.
- This something will be retrieved.

What is being modeled is the common expectations of what will be performed:

- Data needs to be validated
- If validations succeed, we need to know what to do next.
- If the validations fail, we need to know what to do next.

The system will have a sensible set of defaults, making it possible to make a form quickly, with the validations, and the form can immediately be tested (without any database code or what not.) When the form is shown to work, the details can be plugged in. (One idea that came to my head was to have the framework make a temporary table in Mnesia, so the retrieving aspect can be quickly tested.)

My idea is to utilize an Erlang behaviour in this case. With a behaviour, the compiler can check if my specific forms are missing functions, and warn the developer of the missing function.

The result is a framework the mixes a bit of simplicity (sort of what you get with ErlyWeb or Rails instant CRUD generators) as well as being general enough to be actually useful outside of just simple CRUD.

In this process, I have started to rewrite my HTML form builder I mentioned in a prior post. There is a lack of generality in it that I need to fix.

28 Comments:

Anonymous Anonymous said...

Online Buy Viagra usa Buy Viagra usa
[url=http://www-01.ibm.com/redbooks/community/display/~average_viagra_price]Online Buy Viagra online Buy Viagra pfizer soft[/url]
Online Buy Viagra pfizer soft Buy Viagra pills http://www.refractions.net:8080/confluence/display/~boys_viagra
vertiloapolsas

10:17 PM  
Anonymous Anonymous said...

You ought to take part in a contest for one of the most useful websites on the internet.
I'm going to highly recommend this blog!
Feel free to visit my web blog : Free Teen Porn

9:55 AM  
Anonymous Anonymous said...

Hi, I think your website might be having browser compatibility issues.
When I look at your website in Firefox, it looks fine but when opening in Internet Explorer, it has some overlapping.
I just wanted to give you a quick heads up! Other then that, awesome blog!
Stop by my blog post Interracial Threesome

8:34 PM  
Anonymous Anonymous said...

Incredible quest there. What occurred after? Thanks!
my web site - teensex

11:01 PM  
Anonymous Anonymous said...

After exploring a handful of the blog articles on your web site, I seriously appreciate your
way of writing a blog. I saved as a favorite it to my bookmark site list and
will be checking back soon. Please visit my website too and
let me know how you feel.
Also visit my site video chats live

3:11 PM  
Anonymous Anonymous said...

Hi there, You've done an incredible job. I'll certainly digg it and personally recommend to my friends.
I am sure they will be benefited from this site.
Look into my webpage free fuck gallery porn

4:49 PM  
Anonymous Anonymous said...

I always used to study piece of writing in news papers but now as I am a user of internet thus
from now I am using net for posts, thanks to web.
Also see my web page - hookah Orlando fl

7:17 AM  
Anonymous Anonymous said...

Very shortly this web site will be famous among all blogging and site-building visitors, due to it's good content
Also see my web site > Dreambox

5:38 AM  
Anonymous Anonymous said...

Hello to every body, it's my first visit of this web site; this weblog consists of remarkable and truly fine data in favor of readers.
my website :: www.ides.illinois.gov

2:38 PM  
Anonymous Anonymous said...

Hey there, I think your site might be having browser compatibility issues.

When I look at your blog in Safari, it looks fine
but when opening in Internet Explorer, it has some overlapping.
I just wanted to give you a quick heads up!
Other then that, great blog!
Also visit my web blog : health clubs

4:04 AM  
Anonymous Anonymous said...

Thanks for sharing such a pleasant opinion, article
is good, thats why i have read it entirely
Also visit my weblog :: Click On this website

3:07 PM  
Anonymous Anonymous said...

Pretty section of content. I just stumbled upon your site and in accession capital to assert that I get in
fact enjoyed account your blog posts. Any way I will be subscribing to your augment and even I achievement
you access consistently fast.
Also visit my website - penilarge cena

8:27 PM  
Anonymous Anonymous said...

My spouse and I stumbled over here from a different web address and thought I may as well check things out.
I like what I see so now i am following you.
Look forward to checking out your web page for a second time.
Also see my site: visit the up coming document

5:17 PM  
Anonymous Anonymous said...

I've learn several excellent stuff here. Definitely value bookmarking for revisiting. I surprise how much effort you set to create such a great informative website.
Also visit my blog post :: Viagra

3:36 PM  
Anonymous Anonymous said...

Hello, i believe that i saw you visited my web site so i came to
return the prefer?.I am attempting to to find things to improve my website!
I assume its good enough to make use of some of your ideas!
!

my web site: cheap california auto insurance
My web site > low cost auto insurance california

8:23 AM  
Anonymous Anonymous said...

Howdy! Would you mind if I share your blog with my facebook group?

There's a lot of people that I think would really appreciate your content. Please let me know. Cheers

Here is my site :: software torrents download downloadshield.net

2:07 PM  
Anonymous Anonymous said...

Asking questions are actually fastidious thing if you are not understanding anything completely,
however this piece of writing offers fastidious understanding even.


my web blog best free music torrents

2:07 PM  
Anonymous Anonymous said...

I'm curious to find out what blog system you're working with?
I'm having some small security problems with my latest website and I'd like to find something more secure.
Do you have any solutions?

Also visit my website :: download torrent movies

2:07 PM  
Anonymous Anonymous said...

Hello, I enjoy reading through your article. I wanted to write a little comment to support you.


Here is my site ... kitchen cabinet

8:46 PM  
Anonymous Anonymous said...

What i do not understood is in truth how you are now not
actually a lot more smartly-preferred than you might be now.

You're so intelligent. You understand thus considerably with regards to this topic, made me individually consider it from so many various angles. Its like men and women are not fascinated unless it is something to accomplish with Girl gaga! Your personal stuffs outstanding. All the time take care of it up!

Also visit my webpage kitchen cabinet

8:46 PM  
Anonymous Anonymous said...

My spouse and I absolutely love your blog and find nearly all
of your post's to be just what I'm looking for.
Would you offer guest writers to write content for you?
I wouldn't mind composing a post or elaborating on many of the subjects you write regarding here. Again, awesome website!

my blog post kitchen cabinet

8:46 PM  
Anonymous Anonymous said...

Link exchange is nothing else but it is simply placing the
other person's web site link on your page at appropriate place and other person will also do similar for you.

Take a look at my web blog ... http://www.jnmassage.info

4:30 PM  
Anonymous Anonymous said...

What's up, yeah this paragraph is really fastidious and I have learned lot of things from it concerning blogging. thanks.

Look at my web page ... Www.cuteteenporn.Net

1:55 PM  
Anonymous Anonymous said...

Superb, what a blog it is! This weblog provides valuable data to us, keep it up.


Also visit my blog ... http://www.facialcumshotsweb.org

10:42 AM  
Blogger Unknown said...

L’un des Lumineux LED Robinetterie Vasque outils les plus efficaces que chaque fabricant à l’achèvement du processus est différent, Robinetterie vasque de différentes couleurs. De veiller à ce que tous les robinets et accessoires, même d’acquérir leurs fabricants. La plupart des fabricants leur choix facile grace à la fourniture de réservoirs belle aux pièces de rechange telles que la cuisine, le savon et grille robinetterie-cuisine étal.

12:16 AM  
Blogger Unknown said...

Vous acceptez d'actualiser l'administration Robinetterie vasque de la cuisine à accomplir aiguë acceptable pour l'utilisation et à l'époque précitée vous robinetterie-cuisine gratuitement à la peine pour l'esthétique de la zone absolue. Robinet de cuisine est un compte de capital à la place, qui vous chargez d'accepter précisément à Lumineux LED Robinetterie Vasque accomplir concordant avec les accessoires ajoutés ainsi.

5:19 PM  
Anonymous Anonymous said...

Myself, I'll stick with rimless eyeglasses nerd chic looking, but I adore that FinestGlasses.COM bring up rimless glasses in differ fashion design. More attractive with sexy feeling!!!

7:17 PM  
Blogger Unknown said...

This comment has been removed by the author.

6:10 AM  

Post a Comment

<< Home