Batak Programming Language

advertisement
Batak Programming Language
Design Perspective
Programming language
• Extreme opinions
– Blind fanatism
– DON’T CARE (they are just the same)
• Proportional ones
– Language is very important
• Communication is of utmost important
• Language is a means of communication (bad
language => bad communication)
– No single language suits every needs
– A set of languages can suit every needs
7 language [style] s to fill every needs ?
•
•
•
•
•
•
•
General purpose programming-language
Database-oriented programming-language
Shell programming-language
Application-level scripting language (XML?)
Assembly (style) programming-language
Metalanguage (used in YACC)
Binary-style (intermediate, machine)
May not be the category of language
• String processing (Perl, AWK)
• Internal language of document (PDF;
internal format of Excel, Word documents)
• PCL (Printing Command Language)
• Logic programming-language
• Functional programming-language
Integration with relational database (1)
• Oracle SQL (real world)
CREATE TYPE student AS OBJECT
(
id NUMERIC(8),
name VARCHAR(30)
);
CREATE TABLE IT_students OF student;
CREATE TABLE mech_students OF student;
Integration with relational database (2)
• Some SQL (?)
CREATE TYPE student :=
{ numeric<9> id; char[20] name; };
CREATE TABLE <student> IT_students,
mech_students ( PRIMARY KEY {id} );
Integration with relational database (3)
• In Batak
Program P;
Type student := { numeric<9> id; char[20] name; };
Table<student> IT_students, mech_students (
PRIMARY KEY {id} );
integer main()
{
INSERT mech_students INTO IT_students;
/* not INSERT INTO IT_students SELECT ... */
}
Download