Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/objectionary/dedup
Deduplication of Objects in EO Programs
https://github.com/objectionary/dedup
eolang oop optimization
Last synced: 11 days ago
JSON representation
Deduplication of Objects in EO Programs
- Host: GitHub
- URL: https://github.com/objectionary/dedup
- Owner: objectionary
- License: mit
- Created: 2022-10-30T04:28:02.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2023-12-15T08:29:05.000Z (about 1 year ago)
- Last Synced: 2024-11-12T12:20:54.236Z (2 months ago)
- Topics: eolang, oop, optimization
- Homepage: https://www.eolang.org
- Size: 5.86 KB
- Stars: 7
- Watchers: 2
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
[![EO principles respected here](https://www.elegantobjects.org/badge.svg)](https://www.elegantobjects.org)
[![DevOps By Rultor.com](http://www.rultor.com/b/objectionary/dedup)](http://www.rultor.com/p/objectionary/dedup)
[![We recommend IntelliJ IDEA](https://www.elegantobjects.org/intellij-idea.svg)](https://www.jetbrains.com/idea/)[![mvn](https://github.com/objectionary/dedup/actions/workflows/mvn.yml/badge.svg?branch=master)](https://github.com/objectionary/dedup/actions/workflows/mvn.yml)
[![PDD status](http://www.0pdd.com/svg?name=objectionary/dedup)](http://www.0pdd.com/p?name=objectionary/dedup)
[![codecov](https://codecov.io/gh/objectionary/dedup/branch/master/graph/badge.svg)](https://codecov.io/gh/objectionary/dedup)
[![Maven Central](https://img.shields.io/maven-central/v/org.eolang/dedup.svg)](https://maven-badges.herokuapp.com/maven-central/org.eolang/dedup)
[![Hits-of-Code](https://hitsofcode.com/github/objectionary/dedup)](https://hitsofcode.com/view/github/objectionary/dedup)
![Lines of code](https://img.shields.io/tokei/lines/github/objectionary/dedup)
[![License](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/objectionary/dedup/blob/master/LICENSE.txt)It is a command-line tool that takes a directory with XMIR files and creates a new directory with modified XMIR files: two or more objects that are semantically equivalent are replaced with a single object.
Consider the following EO program:
```
while.
x
[i]
stdout > @
"Hello!\n"
if.
t.lt 0
[]
stdout > @
"Hello!\n"
nop
```This code may be modified as such:
```
[i] > a
stdout > @
"Hello!\n"
while.
x
a
if.
t.lt 0
a
nop
```## How to Contribute
Fork repository, make changes, send us a pull request.
We will review your changes and apply them to the `master` branch shortly,
provided they don't violate our quality standards. To avoid frustration,
before sending us your pull request please run full Maven build:```bash
$ mvn clean install -Pqulice
```You will need Maven 3.3+ and Java 8+.