Skip to content

Latest commit

 

History

History
169 lines (128 loc) · 3.57 KB

syntax.md

File metadata and controls

169 lines (128 loc) · 3.57 KB

TSK Programming language syntax:

AddictionExpression:
	Expression + Expression

SubstractionExpression:
	Expression - Expression

MultiplicationExpression:
	Expression * Expression

DivisionExpression:
	Expression / Expression

RemainderExpression:
	Expression % Expression

ExponentiationExpression:
	Expression ** Expression

BitwiseANDExpression:
	Expression & Expression

BitwiseXORExpression:
	Expression ^ Expression

BitwiseORExpression:
	Expression | Expression

NullishCoalescingExpression:
	Expression ?? Expression

LogicalANDExpression:
	Expression && Expression

LogicalORExpression:
	Expression || Expression

BitwiseLeftShiftExpression:
	Expression << Expression

BitwiseRightShiftExpression:
	Expression >> Expression

BitwiseUnsignedRightShiftExpression:
	Expression >>> Expression

ArgumentBindingExpression:
	Expression :: Expression

GreaterThan:
	Expression > Expression

GreaterThanOrEqual:
	Expression >= Expression

LessThan:
	Expression < Expression

LessThanOrEqual:
	Expression <= Expression

LooseComparison:
	Expression == Expression

StrictComparison:
	Expression === Expression

AddictionAssignmentExpression:
	Expression += Expression

SubstractionAssignmentExpression:
	Expression -= Expression

MultiplicationAssignmentExpression:
	Expression *= Expression

DivisionAssignmentExpression:
	Expression /= Expression

RemainderAssignmentExpression:
	Expression %= Expression

ExponentiationAssignmentExpression:
	Expression **= Expression

BitwiseANDAssignmentExpression:
	Expression &= Expression

BitwiseXORAssignmentExpression:
	Expression ^= Expression

BitwiseORAssignmentExpression:
	Expression |= Expression

LogicalNullishCoalescingAssignmentExpression:
	Expression ??= Expression

LogicalANDAssignmentExpression:
	Expression &&= Expression

LogicalORAssignmentExpression:
	Expression ||= Expression

BitwiseLeftShiftAssignmentExpression:
	Expression <<= Expression

BitwiseRightShiftAssignmentExpression:
	Expression >>= Expression

BitwiseUnsignedRightShiftAssignmentExpression:
	Expression >>>= Expression

ExternalVariable:
	__external_var(String);

Symbol:
	// Note, letter is english alphabet letter, either uppercase or lowercase
	(letter or $ or _ and containg letters, numbers, $, _ and result must not be keyword), arguments, this, ExternalVariable

Expression:
	Symbol,
	Number,
	String,
	Statment,
	AddictionExpression,
	SubstractionExpression,
	MultiplicationExpression,
	DivisionExpression,
	RemainderExpression,
	ExponentiationExpression,
	BitwiseANDExpression,
	BitwiseNOTExpresssion,
	BitwiseXORExpression,
	BitwiseORExpression,
	NullishCoalescingExpression,
	LogicalANDExpression,
	LogicalORExpression,
	BitwiseLeftShiftExpression,
	BitwiseRightShiftExpression,
	BitwiseUnsignedRightShiftExpression,
	ArgumentBindingExpression,
	GreaterThan,
	GreaterThanOrEqual,
	LessThan,
	LessThanOrEqual,
	LooseComparison,
	StrictComparison,
	AssignmentExpression,
	AddictionAssignmentExpression,
	SubstractionAssignmentExpression,
	MultiplicationAssignmentExpression,
	DivisionAssignmentExpression,
	RemainderAssignmentExpression,
	ExponentiationAssignmentExpression,
	BitwiseANDAssignmentExpression,
	BitwiseXORAssignmentExpression,
	BitwiseORAssignmentExpression,
	LogicalNullishCoalescingAssignmentExpression,
	LogicalANDAssignmentExpression,
	LogicalORAssignmentExpression,
	BitwiseLeftShiftAssignmentExpression,
	BitwiseRightShiftAssignmentExpression,
	BitwiseUnsignedRightShiftAssignmentExpression

Statments:
	...Expression