ALA7 programming language

Ala7 was invented to face main challenges in modern software industry:programmer productivity, code quality and performance.

Ala7 achieves these goals through:

Language syntax

Here is code example:

list toArgumentExprList(list text)=
	l=[];ob=0;s="";al=[]
	le=len(text)
	if le=0 : return l
	else
		for i=0 to le-1
			s=text[i] 
			if s="," and ob=0
				e=toExpr(al,1)
				if e.kind:append(l,e)
				al=[]
		e=toExpr(al,1)
		if e.kind:append(l,e)
	return l

Types

All variables are typed, however we have all type to store all types.
Function parameters are also typed and late binding is possible.

class Instr
	text=[str] 
class Type
	name=""
	all subtype
Type toType(str text)=
	Type type
	return type
proc parseInstr (Instr ins )
	Type type
	le=len(ins.text)
	if le=0:return
	elif le>=2
		s0=ins.text[0];s1=ins.text[1]
		if le >2 and s1="=" 
			if le=5 and ins.text[2]="[" and ins.text[4]="]"
				s3=ins.text[3];type1=toType(s3) 
				if type1.name !="" 
					type.name="list";type.subtype=type1

GUI

Programming win32 GUI applications is easy and intuitive.
The features that make it possible: bind instruction to join gui event and a handler, for gui classes (Window, Control,..) Microsoft Windows specific tasks are handled by runtime, ready-made classes for standard windows controls, convenient procedures in gui module, easy calls to win32 API procedures

Parallel programming:multicore and simd

Parallel:multicore and simd programming is built into the language.
For loops with parallel keyword are automatically performed on all available processor cores. Language also suports simd operations in for simd loops.

for e in l parallel # multicore loop
	p1(e) 

for k=1 to end simd #simd loop using SEE
	matrix[row,k]=matrix1[row,k]*x

The following list shortly describes the new language

Commercial Ala7 software is available from Altcore website.

From this page you can download a trial version of an integrated development environment (editor, compiler, debugger) working on windows platform (XP and Vista). Maximum edited file size is 30k and resulted exe file size is restricted to 500KB. Multicore support limited to two cores.

Contact: mb@altcore.pl