from http://sweetjs.org/

Sweet.js 给js带来了类似 Rust Scheme 等语言中的卫生宏。宏让你设计可爱的语法,并定制出心中一直想要的语言。

想要 class 语法,但不像等es6 ?自己添加这个语法,只需要用几行代码:

javascript// 这儿,定义 class 宏 ...
macro class {
rule {
$className {
constructor $cparams $cbody
$($mname $mparams $mbody) ...
}
} => {
function $className $cparams $cbody
$($className.prototype.$mname
= function $mname $mparams $mbody; ) ...
}
}
// 现在 classes 来到了 JavaScript!
class Person {
constructor(name) {
this.name = name;
}
say(msg) {
console.log(this.name + " says: " + msg);
}
}
var bob = new Person("Bob");
bob.say("Macros are sweet!");

要更好的体验宏的作用,看看 https://github.com/mozilla/sweet.js/wiki/Example-macros ,或者玩玩我们的在线编辑器 http://sweetjs.org/browser/editor.html

获得 sweet.js

npm 安装

$ npm install -g sweet.js

编译输出到文件

sjs -o output.js my_sweet_code.js

接下来

  • 读文档 http://sweetjs.org/doc/main/sweet.html
  • 在线编辑器写一点宏 http://sweetjs.org/browser/editor.html
  • 报告问题 https://github.com/mozilla/sweet.js/issues
  • 来 irc 求救 at #sweet.js on irc.mozilla.org
  • 加入我们的邮件组 https://groups.google.com/forum/#!forum/sweetjs

sweetjs 简介相关推荐

  1. etcd 笔记(01)— etcd 简介、特点、应用场景、常用术语、分布式 CAP 理论、分布式原理

    1. etcd 简介 etcd 官网定义: A highly-available key value store for shared configuration and service discov ...

  2. Docker学习(一)-----Docker简介与安装

    一.Docker介绍 1.1什么是docker Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源 Docker可以让开发者打包他们的应用以及依赖包到一个轻量级,可移植 ...

  3. 【Spring】框架简介

    [Spring]框架简介 Spring是什么 Spring是分层的Java SE/EE应用full-stack轻量级开源框架,以IOC(Inverse Of Control:反转控制)和AOP(Asp ...

  4. TensorRT简介

    TensorRT 介绍 引用:https://arleyzhang.github.io/articles/7f4b25ce/ 1 简介 TensorRT是一个高性能的深度学习推理(Inference) ...

  5. 谷粒商城学习笔记——第一期:项目简介

    一.项目简介 1. 项目背景 市面上有5种常见的电商模式 B2B.B2C.C2B.C2C.O2O B2B 模式(Business to Business),是指商家和商家建立的商业关系.如阿里巴巴 B ...

  6. 通俗易懂的Go协程的引入及GMP模型简介

    本文根据Golang深入理解GPM模型加之自己的理解整理而来 Go协程的引入及GMP模型 一.协程的由来 1. 单进程操作系统 2. 多线程/多进程操作系统 3. 引入协程 二.golang对协程的处 ...

  7. Linux 交叉编译简介

    Linux 交叉编译简介 主机,目标,交叉编译器 主机与目标 编译器是将源代码转换为可执行代码的程序.像所有程序一样,编译器运行在特定类型的计算机上,输出的新程序也运行在特定类型的计算机上. 运行编译 ...

  8. TVM Operator Inventory (TOPI)简介

    TOPI简介 这是 TVM Operator Inventory (TOPI) 的介绍.TOPI 提供了比 TVM 具有更高抽象的 numpy 风格的,通用操作和调度.TOPI 如何在 TVM 中,编 ...

  9. 计算机视觉系列最新论文(附简介)

    计算机视觉系列最新论文(附简介) 目标检测 1. 综述:深度域适应目标检测标题:Deep Domain Adaptive Object Detection: a Survey作者:Wanyi Li, ...

最新文章

  1. 磁盘I:O 性能指标 以及 如何通过 fio 对nvme ssd,optane ssd, pmem 性能摸底
  2. Spring Cloud构建微服务架构:分布式配置中心(加密解密)
  3. python语言用途-python编程语言有什么用途
  4. C语言数据结构与算法
  5. 利用Basic authentication 测试不同user的metadata access request
  6. 使用rancher创建负载均衡服务
  7. 多项式对数函数ln f(x)
  8. gentoo 安装时的网络配置
  9. 未能卸载该设备.启动计算机,未能卸载该设备。启动计算机时可能需要该设备...
  10. mycat php pdo,mycat程序写入和读取中文乱码解决
  11. 下载了linux版redis怎么用,Linux下redis的安装与使用图文教程
  12. 小D课堂 - 新版本微服务springcloud+Docker教程_6-01 微服务网关介绍和使用场景
  13. 项目管理助力中国企业发展
  14. 使用SpringCloud实现Java分布式开发【part-2】:Ribbon负载均衡的介绍及使用方式
  15. 白话区块链 之1: 为什么账本要这么记?
  16. 组网[ZeroTier]+自建Moon服务
  17. Java内存模型(JMM)详解-可见性volatile
  18. Tomcat7集群共享Session 基于redis进行统一管理
  19. 深圳市工业和信息化局关于征集创新产品的通知
  20. android 微信签名,Android微信签名知识的总结

热门文章

  1. linux 下的 包过滤器 BPF
  2. 关于计算几何一些算法
  3. 三相桥式全控整流电路simulink仿真_可控硅整流器
  4. 【OS学习笔记】二十五 保护模式七:任务和特权级保护对应的汇编源代码
  5. mysql和ES对比
  6. 分布式存储系统——HBase
  7. 递归_青蛙跳台阶(进阶版)
  8. 数据库空间管理-学习笔记
  9. 目标检测之ATSS算法anchor-free和anchor-based的差异
  10. 计算机综合训练50题4,-计算机基础练习题-Excel部分50题.doc