Tea语言

Tea语言网站(The website of the Tea programming language)

View the Project on GitHub

Tea语言 (Tealang)

echo "Hello, 世界"

简单对比

// Tea
var days = ['Monday', 'Tuesday', 'Wednesday']
var items String.Array = []   	// supported type declarations
for i, day in days {
	items[] = "${i + 1}: $day"  // supports all expression interpolations
}

echo items.join(', ')
<?php
// PHP
$days = ['Monday', 'Tuesday', 'Wednesday'];
$items = [];  	// do not supported type declarations
foreach ($days as $i => $day) {
	$items[] = ($i + 1) . ": $day";  // only supported variable / array-value / object-property interpolations
}

echo implode(', ', $items), "\n";
// JavaScript(ES2015)
let days = ['Monday', 'Tuesday', 'Wednesday']
let items = []   // do not supported type declarations
for (i = 0; i < days.length; i++) {
	let day = days[i]
	items.push(`${i + 1}: ${day}`)  // do not supported interpolations on version < ES2015
}

console.log(items.join(', '))

简要介绍

Tea语言是一种新的计算机编程语言,采用强规范设计(规范即语法),拥有简约的强类型系统和单元模块体系,支持类型推断,支持面向对象和函数式编程,语法精炼简洁。其目标是成为一个友好的,支持多端开发的编程语言,并尽量支持常用编程语言生态,让开发者可以继续使用已有工作成果。目前通过编译生成PHP代码运行,可调用PHP库,可用于Web服务器端开发。预计后续将支持部分其它编程语言。

Tea语言非常注重语法的友好性,通过对语法进行优化设计,希望开发者可以更轻松自然的编写代码,可以更专注于创意实现。也尽量保持了常用编程语言的语法风格和习惯,以降低学习成本。

Tea语言项目最早开始于19年2月份,主要由创业者Benny设计与开发,潘春孟(高级工程师/架构师)与刘景能(计算机博士)参与了设计与使用。项目初衷主要是用于提升内部开发效率和实现产品功能,最初特性较少,在完善和优化后,于19年12月初首次发布开源。

语言特性

安装和使用

致谢

Tea语言从众多优秀的编程语言中获取到设计灵感,主要包括(排名不分先后):PHP、Hack、JavaScript、TypeScript、Python、Swift、Kotlin、Go、Rust、Ruby、Java、C#、Pascal、C、Julia等。在此向设计和维护这些项目的大师们致敬。