vfosnar/ostraphp

没有时间了

安装: 8

依赖: 0

建议者: 0

安全: 0

星星: 1

分支: 0

类型:项目

v1.0.1 2024-02-09 11:51 UTC

This package is not auto-updated.

Last update: 2024-09-20 13:36:08 UTC


README

OstraPHP 的目标是提高(不仅仅是奥斯特拉瓦的)编程质量。与 PHP 不同,OstraPHP 直接从口语(奥斯特拉瓦方言)出发,也就是从普通人能理解的东西出发。典型的奥斯特拉瓦矿工就不会有问题从煤炭开采转移到键盘。这种语言还解决了摩拉维亚-西里西亚地区的失业问题。

灵感来自 OSTRAJava,在一个更高级的语言中。前言是从他们那里偷来的。

安装

要安装,需要安装包管理器 composer,然后在终端运行

composer global require "vfosnar/ostraphp=^1.0.1"

这将安装 OstraPHP 编译器到 ~/.composer/vendor/bin/ophp。要从终端直接使用,请将路径 ~/.composer/vendor/bin 添加到 PATH

示例

Hello, world

与 MarasJavy(OSTRAJava)不同,问候不需要任何样板代码

<?php
povedz "Toz vitaj" pyco

条件

<?php

$a pyco
$b pyco

//...

kaj ($a === fajne aj $b === fajne) {
   // ...
} kajtez ($a === nyt ci $b === fajne) {
   // ...
} boinak {
   // ...
}

循环

<?php

$i = 0 pyco

rubat ($i < 5) {
    kaj ($i == 4) {
      zdybat pyco 
   }
   //...
   $i++ pyco
}

继承

<?php

tryda Obdelnik {
    moe cyslo $dylka pyco
    moe cyslo $vyska pyco

    makacenko __rynek(cyslo $dylka, cyslo $vyska) {
        $joch->dylka = $dylka pyco
        $joch->vyska = $vyska pyco
    }
}

tryda Stverec fagan_od Obdelnik {
    makacenko __rynek(cyslo $velikost) {
        forant::__rynek($velikost, $velikost) pyco
    }
}

$s = zrob Stverec(5) pyco

方法

<?php

tryda Buu {
    makacenko fuu(dryst $text): cyslo {
        davaj rachuj_dryst($text) pyco
    }
}

$b = zrob Buu() pyco
$f = $b->fuu("uwuw") pyco
cotoe($f) pyco

令牌翻译

您可以在此 查看现有的翻译。我们对进一步的翻译和可能的修正持开放态度。只需创建一个新的 issue,PR 或发送给我建议 无论哪种方式 ;)

开发

编译器本身只是 OstraPHP 几行代码,源代码位于 ostrava/ 目录中。构建项目使用脚本 sestavit.sh