Question:
Would it be normal if I use other programs to make programs?
1970-01-01 00:00:00 UTC
Would it be normal if I use other programs to make programs?
Five answers:
Fred W
2013-04-12 17:56:47 UTC
Yes. These are called DSLs (domain specific languages).



Some examples are Lex and Yacc. Lex writes C programs that implement lexical analyzers. For example:



%%

username { printf("%s", getlogin());

%%



is a Lex program that looks for the string "username" in it's input and replaces it with the current users name.



As you can see, all the hard bits of doing string manipulation, matching, etc. are GONE. Lex takes this input, and writes a C program for you that does this function. Anything having to assemble characters in an input stream into tokens...



Yacc is another DSL that writes C programs. It takes grammar specifications like:



input: /* empty */

| input line;



exp: NUM { $$ = $1; }

| exp exp '+' {$$ = $1 + $2; }

;



and builds a program that interprets that grammar, and produces results (in this case, an rpn addition program). The tokens are usually generated by a program written by Lex.



In both of these cases, DSLs are being used to reduce the programmers work.



Some languages like Scheme have macro languages that make producing DSLs very easy. The DSL is a way to mold the language closer to the problem space, reducing your work.



I use DSLs to produce web pages, advanced maths programming, text processing and other programming tedium. Initially, you can concentrate on leaning DSLs, and then produce your own to reduce your workload.



Unix (Linux) is based on the concept of small tools that each serve a function. These small tools can be thought of as DSLs, and the binder is the shell program . Scripts can tie together the smaller elements. For example: AWK, SED, BC, DC, TR, and many other of the Unix (Linux) tools. There is even a language specifically designed to tie these together (TCL) and TCL has a GUI (TCL/TK). This makes it trivial to generate GUI based programs.



I have given 9 examples of idea of DSLs can programs that "write programs" in this article. Assuming you are using Windows, you can start by investigating CYGWIN (a Unix/Linux work-alike for Windows), and start exploring AWK, TCL/TK, or LEX/YACC depending on your needs.



Please ask more questions as you explore these possibilities.
?
2013-04-12 17:36:29 UTC
I think you must be looking for design or prototyping tools that you can use to generate screens etc and some of the basic code, then refine manually. Loads to chose from if that's the case, but what you want to build will influence the choice.
kenny
2013-04-12 12:57:55 UTC
There are tonnes of free open source application ready for use. If you have heavy sense of belonging, then you should take some programming courses or DIY yourself using PHP. I guess PHP application should be easy to learn.



Else, if you need something free and ready made, then don't waste time developing and go for open source application.



If you are thinking of having a web application, buy a web hosting service and install using built-in applications. The list of available software is here http://www.softaculous.com/softaculous/softwares AFAIK, most web hosting services provide these software for free.



If you are thinking of having a simple desktop application, try Microsoft Office Access. With just drag and drop, you can create your own simple desktop application.



If you are willing to spend some money on app creator software, you can try IronSpeed. Tho, I never try that before because I am a software developer myself.



Finally, outsource it if you don't have time.
Spyker
2013-04-12 12:51:07 UTC
Hi,

There's no program which will build programs by itself. Machines cannot think, so if they can't think by their own then how should it will create a software which takes many years to learn to a man.

But yes, there's program which will design gui without code but only if you know the basics.

Below is the list of some programs to design GUI.

1)Java netbeans, it's a free software.google it.

2)ecclipse for c++, it's also free.google it.

hope this helps.
no1home2day
2013-04-12 05:43:16 UTC
What program is out there that builds another program?



First, I have never even heard of a program that will write a program for you.



Second, unless you write the code yourself, you don't know what kind of garbage you're generating by using another program (which I have never even heard of).



Third, you are responsible for programs you create, and you cannot blame another piece of software if you put out garbage, just because you don't know how to write the code yourself.



Yes, learning to be a good programmer takes YEARS, and not just to learn the language, but to also learn the LOGIC of programming, independent of any language (applied to what EVER language you learn).



Why are you in such a rush that you cannot take the time to learn?



Perhaps you should hire someone, both of you sign a contract that gives you ownership of any software he writes, then give him your ideas, and let him write it for you.



I have heard of free-lance programmers that charge as much as $50.00 an hour, but perhaps you could talk to a high school student or a college student who needs a project for one of his classes. They may even write it for free, not charging you for the time they spend on it.


This content was originally posted on Y! Answers, a Q&A website that shut down in 2021.
Loading...