Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/moresdavidewayan/abruhp
A programming language for those who find ABAP frustrating
https://github.com/moresdavidewayan/abruhp
abap
Last synced: 3 days ago
JSON representation
A programming language for those who find ABAP frustrating
- Host: GitHub
- URL: https://github.com/moresdavidewayan/abruhp
- Owner: moresdavidewayan
- License: gpl-3.0
- Created: 2023-05-11T08:36:41.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-07-14T10:39:20.000Z (over 1 year ago)
- Last Synced: 2024-10-11T02:23:49.089Z (2 months ago)
- Topics: abap
- Language: C++
- Homepage:
- Size: 136 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
ABRUHP
A programming language and a source-to-source compiler aimed at fixing ABAP's horrible syntax.## Install from source
### Dependencies
In order to compile ABRUHP you need to have at least this tools installed on your machine.**Windows**
- [CMake](https://cmake.org/download/) (v3.26.3 or higher)
- [Visual Studio Build Tools 2019](https://visualstudio.microsoft.com/downloads/) (v16.11.25 or higher)**Linux**
- [CMake](https://cmake.org/download/) (v3.26.3 or higher)
- [gcc](https://gcc.gnu.org/) (v13.1.1 or higher)### Build
**Common steps**
```bash
git clone https://github.com/moresdavidewayan/ABRUHP.git
cd ABRUHP
cmake -S . -B build
```**Linux**
```bash
cd build
make
```## Roadmap
### Compiler
- [x] lexer
- [x] parser
- [x] code generation
- [ ] compile-time checks
- [ ] compile-time optimizations### Basic ABAP functionalities
- [x] PRINT statement
- [x] SKIP statement
- [x] LINE statement
- [x] variable declaration
- [x] global variables
- [x] assignment
- [ ] line comments*
- [ ] inline comments
- [ ] forms
- [ ] functions
- [ ] type inference
- [ ] internal tables
- [ ] structures
- [ ] transparent tables
- [ ] ...### Data types
- [x] byte field
- [x] text field
- [x] integer
- [x] floating point
- [x] packed number
- [x] text string
- [ ] other standard data types
- [ ] runtime defined data types> * partial support, undefined behaviour