Skip to content

Commit

Permalink
Merge pull request #68 from Wopslang/main
Browse files Browse the repository at this point in the history
update lab branch
  • Loading branch information
redocmath authored Oct 20, 2023
2 parents f0669ae + 5aac753 commit c2bcfe7
Show file tree
Hide file tree
Showing 38 changed files with 2,516 additions and 2,033 deletions.
7 changes: 7 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
BasedOnStyle: Google
ColumnLimit: 400
---
Language: Cpp
DerivePointerAlignment: false
---
Language: Proto
22 changes: 22 additions & 0 deletions .github/workflows/trunk-check.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: Pull Request
on: [pull_request]
concurrency:
group: ${{ github.head_ref || github.run_id }}
cancel-in-progress: true

permissions: read-all

jobs:
trunk_check:
name: Trunk Check Runner
runs-on: ubuntu-latest
permissions:
checks: write # For trunk to post annotations
contents: read # For repo checkout

steps:
- name: Checkout
uses: actions/checkout@v3

- name: Trunk Check
uses: trunk-io/trunk-action@v1
60 changes: 38 additions & 22 deletions .github/workflows/ubuntu.yml
Original file line number Diff line number Diff line change
@@ -1,44 +1,60 @@
#
# .github/workflows/ubuntu.yml
# Wopslang Github CI (Action)
#
# 2023, Wops Team
#

name: CI - Ubuntu OS

on:
push:
branches: [ main, lab ]
branches: [main, lab]
pull_request:
branches: [ main, lab ]
branches: [main, lab]

permissions: read-all

jobs:
Build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: make
run: mkdir sample/lib; make CI-TEST-Wopslang;
- uses: actions/checkout@v2
- name: make
run: mkdir sample/lib; make CI-TEST-Wopslang;
Fizzbuzz:
needs: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: make
run: mkdir sample/lib; make CI-TEST-Wopslang; mv Wopslang sample/;
- name: run
run: cd sample; ./Wopslang fizzbuzz.wops debug > out;
- uses: actions/checkout@v2
- name: make
run: mkdir sample/lib; make CI-TEST-Wopslang; mv Wopslang sample/;
- name: run
run: cd sample; ./Wopslang fizzbuzz.wops debug > out;
Hailstone_Sequence:
needs: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: make
run: mkdir sample/lib; make CI-TEST-Wopslang; mv Wopslang sample/;
- name: run
run: cd sample; tree; ./Wopslang hailstone_sequence.wops debug > out;
- uses: actions/checkout@v2
- name: make
run: mkdir sample/lib; make CI-TEST-Wopslang; mv Wopslang sample/;
- name: run
run: cd sample; tree; ./Wopslang hailstone_sequence.wops debug > out;
Hello_Wopslang:
needs: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: make
run: mkdir sample/lib; make CI-TEST-Wopslang; mv Wopslang sample/;
- name: run
run: cd sample; tree; ./Wopslang hello_wopslang.wops debug > out;


- uses: actions/checkout@v2
- name: make
run: mkdir sample/lib; make CI-TEST-Wopslang; mv Wopslang sample/;
- name: run
run: cd sample; tree; ./Wopslang hello_wopslang.wops debug > out;
Multiline:
needs: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: make
run: mkdir sample/lib; make CI-TEST-Wopslang; mv Wopslang sample/;
- name: run
run: cd sample; echo "1" > input; tree; ./Wopslang multiline.wops debug < input > out;
8 changes: 8 additions & 0 deletions .trunk/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
*out
*logs
*actions
*notifications
*tools
plugins
user_trunk.yaml
user.yaml
10 changes: 10 additions & 0 deletions .trunk/configs/.markdownlint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Autoformatter friendly markdownlint config (all formatting rules disabled)
default: true
blank_lines: false
bullet: false
html: false
indentation: false
line_length: false
spaces: false
url: false
whitespace: false
7 changes: 7 additions & 0 deletions .trunk/configs/.shellcheckrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
enable=all
source-path=SCRIPTDIR
disable=SC2154

# If you're having issues with shellcheck following source, disable the errors via:
# disable=SC1090
# disable=SC1091
10 changes: 10 additions & 0 deletions .trunk/configs/.yamllint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
rules:
quoted-strings:
required: only-when-needed
extra-allowed: ["{|}"]
empty-values:
forbid-in-block-mappings: true
forbid-in-flow-mappings: true
key-duplicates: {}
octal-values:
forbid-implicit-octal: true
28 changes: 28 additions & 0 deletions .trunk/trunk.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# This file controls the behavior of Trunk: https://docs.trunk.io/cli
# To learn more about the format of this file, see https://docs.trunk.io/reference/trunk-yaml
version: 0.1
cli:
version: 1.17.1
plugins:
sources:
- id: trunk
ref: v1.2.6
uri: https://github.com/trunk-io/plugins
runtimes:
enabled:
- go@1.21.0
- node@18.12.1
- python@3.10.8
lint:
enabled:
- clang-format@16.0.3
- actionlint@1.6.26
- checkov@2.5.9
- git-diff-check
- markdownlint@0.37.0
- prettier@3.0.3
- shellcheck@0.9.0
- shfmt@3.6.0
- trivy@0.46.0
- trufflehog@3.60.0
- yamllint@1.32.0
26 changes: 26 additions & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,32 @@
- add more function
- support Array(based on `std::vector`)

=== v0.1: 691dffb ===
THIS VERSION IS THE FINAL VERSION OF v0.1.x

- feature
- more flexible grammar (inline statements, multiline expressions)
- unified error message

- improvement
- parser now parses code word by word (big improvement)
- deprecated old error handler

=== v0.1.6: 9b2d6a9 ===
THIS IS INTERNAL UPDATE: THERE IS NO NEW FEATURE

improvement
- deprecated Array class
- developed Object class for v0.2
- big improvement on error handler

v0.1 checklist
- Better parser (inline code & multiline statement)

v0.2 checklist
- Object (Array, Func) (user-definable Object will be in v0.2.1)
- Third party library & changing library code into `.wops`

=== v0.1.5: 239dd25 ===

- feature
Expand Down
55 changes: 32 additions & 23 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,14 @@
<!--
CONTRIBUTING.md
Wopslang Contribute guide
2023, Wops Team
-->

# :page_with_curl: Contribute Guideline

## :wave: Welcome, new Wopers
## :wave: Welcome, new Wopers

First off, thank you for considering contributing to Wopslang. Wopslang could be existed because of many devoted Wopers like you.

Expand All @@ -22,13 +30,13 @@ If you already have a solution for it, please make a PR.
If you already have a solution for it, PR suits you.
Code style should satisfy these checklist.

- [ ] [Google C++ Coding Style Guide #General Naming Rules](https://google.github.io/styleguide/cppguide.html#General_Naming_Rules)
- [ ] K&R Indentation style
- [ ] Use Boilerplate Code :
- [ ] [Google C++ Coding Style Guide #General Naming Rules](https://google.github.io/styleguide/cppguide.html#General_Naming_Rules)
- [ ] K&R Indentation Style
- [ ] Use Boilerplate Code :

```c++
/*
* <file path>
* <file path>
* <file description><Headerfile/Sourcefile>
*
* <year>, Wops Team
Expand All @@ -43,6 +51,16 @@ Code style should satisfy these checklist.
#endif
```

All commit messages should satisfy these checklist.

- [ ] Description Starts with Lowercase Character
- [ ] No Emoji
- [ ] Use Boilerplate Code :

```text
<file name/path>: <description>
```

Also, your PR can be rejected by these reasons:

- Too much change
Expand All @@ -52,30 +70,21 @@ Also, your PR can be rejected by these reasons:
Finally, your PR branch's name should be in one of these forms:

- `patch-[username]-[number]`
- *`dev-[username]-[number]`: only for inside Wopers*
- _`dev-[username]-[number]`: only for inside Wopers_
- `docs-[username]-[number]`

### :speech_balloon: Being the Wopslang Manager

Wopslang managers mediate the overheated community, review the issues and pull requests, and lead the development of Wopslang. Of course, this job requires not only deep knowledge of Wopslang, but also conversation skill. Also, Wopslang managers should be in Wops team; Wopslang managers should be inside Wopers.
Wopslang managers mediate the overheated community, review the issues and pull requests, and lead the development of Wopslang. Of course, this job requires not only deep knowledge of Wopslang, but also conversation skill. Also, Wopslang managers should be in Wops team; Wopslang managers should be inside Wopers.

If you want to contribute as the Wopslang manager, join the [Wops Community Slack](https://join.slack.com/t/wopslangcommunity/shared_invite/zt-nkcy12cy-n8YlAPnOT~ErPODF6k3jOw) and send DM to Wopslang managers. We'll prepare the interview for you.
We're not recruiting the Wopslang manager for now.

#### Wopslang manager list

|Github Username|Slack Username|
|---|---|
|@RedoC-github|@RedoC-github|
|@rdxxer|@codenstory|
|@pokmui|@pokmui|

## :white_check_mark: TODO

**Contributes about things in TODO list will have higher priority than normal one.**

- Nothing



| Github Username | Slack Username |
| --------------- | -------------- |
| @RedoC-github | @RedoC-github |
| @rdxxer | @codenstory |
| @pokmui | @pokmui |

2022, Wops Team
2023, Wops Team
8 changes: 7 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
@@ -1,4 +1,10 @@
# Makefile
#
# Makefile
# Wopslang Makefile
#
# 2023, Wops Team
#
#

ifeq ($(OS), Windows_NT)
OPTION=include/dlfcn.c src/import_/eexec_.cpp -std=c++11
Expand Down
2 changes: 1 addition & 1 deletion NOTICE
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Wops Programming Language
Copyright (c) 2021 Wops Team
Copyright (c) 2023 Wops Team
https://github.com/Wopslang/Wops

This product is licensed under the terms of the Apache Software License 2.0. See the LICENSE file for the full license text.
26 changes: 11 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
> :mega: **IMPORTANT ANNOUNCEMENT**
> Every Wops teammate is a student, preparing for some exams, entrance tests, and more. Now, most developers are living hard as students, not developers. And it is causing delays in updates. However, this project is still onboard, and we always welcome your contributions! Please stay tuned on Wopslang and be with our team.
# :hammer_and_wrench: Working Pseudocode, Wopslang

[![CI - Ubuntu OS](https://github.com/Wopslang/Wops/actions/workflows/ubuntu.yml/badge.svg)](https://github.com/Wopslang/Wops/actions/workflows/ubuntu.yml)
[![Badge](https://img.shields.io/badge/Slack-Join_our_chat-critical.svg?link=https://join.slack.com/t/wopslangcommunity/shared_invite/zt-nkcy12cy-n8YlAPnOT~ErPODF6k3jOw&logo=slack)](https://join.slack.com/t/wopslangcommunity/shared_invite/zt-nkcy12cy-n8YlAPnOT~ErPODF6k3jOw)

```go
func<people WholeNewWorld> Wopslang = {contributors, {
Expand All @@ -17,15 +14,14 @@ func<people WholeNewWorld> Wopslang = {contributors, {
```

### `#LanguageForAlgorithm` `#WorkingPseudo`

_**Wopslang**_ is for every computer scientist who needs a **pseudocode-like**, but **working** programming language.
_**Simple grammar**_ will highlight your logical ideas. _**Fast-runtime**_ will give you immediate feedback to forward.
_Be with our project, using ⭐_

***

## Infomation

Version: **Wopslang v0.1.5 alpha**
Version: **Wopslang v0.1 alpha**
License: Apache License 2.0
[⚒️ Official Documentation](./doc/README.md)
[➕ VSCode Extension](https://github.com/Wopslang/vscode-wops)
Expand Down Expand Up @@ -58,16 +54,16 @@ Check [howto.md](doc/howto.md) for more detail

See [sample folder](./sample) :sparkles:

## Credit
## Credit

|Github Username|Slack Username|Role|
|---|---|---|
|**@RedoC-github**|**@RedoC**|**Lead Programmer of Interpreter**|
|**@pokmui**|**@pokmui**|**Programmer of Interpreter, Admin of Slack**|
|@byunjaewoo|@byunjaewoo|Lead Programmer of Data Structure
|@happybean4|@khanjhy|Planner of Grammar|
|**@rdxxer**|**@codenstory**|**Programmer of Interpreter**|
|@dddddd1234-creator|@dddddd|Lead Programmer of Builtin Function|
| Github Username | Slack Username | Role |
| ------------------- | --------------- | --------------------------------------------- |
| **@RedoC-github** | **@RedoC** | **Lead Programmer of Interpreter** |
| **@pokmui** | **@pokmui** | **Programmer of Interpreter, Admin of Slack** |
| @byunjaewoo | @byunjaewoo | Lead Programmer of Data Structure |
| @happybean4 | @khanjhy | Planner of Grammar |
| **@rdxxer** | **@codenstory** | **Programmer of Interpreter** |
| @dddddd1234-creator | @dddddd | Lead Programmer of Builtin Function |

**Bold user** is the Wopslang manager.
Special Thanks to @jhhan128
Expand Down
Loading

0 comments on commit c2bcfe7

Please sign in to comment.