Skip to content

Commit

Permalink
Merge branch 'refactoring-collections' of https://github.com/RickBarr…
Browse files Browse the repository at this point in the history
…etto/arturo into refactoring-collections
  • Loading branch information
RickBarretto committed Jan 7, 2025
2 parents 3698d4b + 8464d33 commit 30c5d56
Show file tree
Hide file tree
Showing 319 changed files with 7,107 additions and 1,388 deletions.
2 changes: 1 addition & 1 deletion .config/utils/ui.nims
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ proc getLogo*(): seq[string] =
r" \__,_|_| \__|\__,_|_| \___/ ",
r"{styles.clear}{styles.bold} ".fmt,
r" Arturo Programming Language{styles.clear} ".fmt,
r" (c)2024 Yanis Zafirópulos ",
r" (c)2025 Yanis Zafirópulos ",
r" ",
]

Expand Down
14 changes: 6 additions & 8 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
3rd-party:
- src/extras/*
- src/extras/**

ast:
- src/vm/ast.nim
Expand Down Expand Up @@ -27,8 +27,7 @@ command line:
documentation:
- examples/projecteuler/*
- examples/rosetta/*
- docs/*
- docs/wiki/*
- docs/**

error handling:
- src/vm/errors.nim
Expand All @@ -50,7 +49,7 @@ installer:
- src/scripts/update.art

library:
- src/library/*
- src/library/**

"→ Arithmetic":
- src/library/Arithmetic.nim
Expand Down Expand Up @@ -146,14 +145,13 @@ ui:
- src/library/Ui.nim

unit-test:
- tests/errors/*
- tests/unittests/*
- tests/errors/**
- tests/unittests/**
- tests/web/*

values:
- src/vm/values/*
- src/vm/values/custom/*
- src/vm/values/custom/quantities/*
- src/vm/values/custom/**

vm:
- src/vm/*
Expand Down
6 changes: 3 additions & 3 deletions .github/stale.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Number of days of inactivity before an issue becomes stale
daysUntilStale: 240
daysUntilStale: 360
# Number of days of inactivity before a stale issue is closed
daysUntilClose: 120
daysUntilClose: 240
# Issues with these labels will never be considered stale
exemptLabels:
- pinned
Expand All @@ -15,4 +15,4 @@ markComment: >
for your contributions.
# Comment to post when closing a stale issue. Set to `false` to disable
closeComment: >
Closing issue as stale.
Closing issue as stale.
4 changes: 2 additions & 2 deletions .github/workflows/check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,15 @@ jobs:
reviewdog_version: latest

- name: PR Check
uses: reviewdog/action-nimlint@v1
uses: reviewdog/action-nimlint@v1.17.0
with:
github_token: ${{ secrets.github_token }}
level: 'info'
reporter: github-pr-check # Change reporter.
src: 'src/*.nim'

- name: PR Review
uses: reviewdog/action-nimlint@v1
uses: reviewdog/action-nimlint@v1.17.0
with:
github_token: ${{ secrets.github_token }}
level: 'info'
Expand Down
522 changes: 522 additions & 0 deletions .gitignore

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2019-2024 Yanis Zafirópulos (aka Dr.Kameleon)
Copyright (c) 2019-2025 Yanis Zafirópulos (aka Dr.Kameleon)

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,8 +47,8 @@ The language has been designed following some very simple and straightforward pr

```red
factorial: function [n][
if? n > 0 -> n * factorial n-1
else -> 1
switch n > 0 -> n * factorial n-1
-> 1
]
loop 1..19 [x]->
Expand Down Expand Up @@ -220,15 +220,15 @@ License

MIT License

Copyright (c) 2019-2024 Yanis Zafirópulos (aka Dr.Kameleon)
Copyright (c) 2019-2025 Yanis Zafirópulos (aka Dr.Kameleon)

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

Expand Down
2 changes: 1 addition & 1 deletion build.nims
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
######################################################
# Arturo
# Programming Language + Bytecode VM compiler
# (c) 2019-2024 Yanis Zafirópulos
# (c) 2019-2025 Yanis Zafirópulos
#
# @file: build.nims
######################################################
Expand Down
5 changes: 2 additions & 3 deletions docs/website/config.art
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,8 @@ rules: [
lower replace replace location "?" "-" " " "-"
]
template: function [f][
case [not? empty? match f]
when? -> {index\.art} -> return "theme/index.html"
else -> return "theme/function.html"
(not? empty? match f {index\.art})? -> return "theme/index.html"
-> return "theme/function.html"
]

pre: function [f,d][
Expand Down
6 changes: 6 additions & 0 deletions docs/website/data/libraryFunctions.art
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,8 @@
"quantities/angstromstar"
"angularVelocity?"
"macros/angularvelocity-"
"any"
"core/any"
"any?"
"logic/any-"
"append"
Expand Down Expand Up @@ -261,6 +263,8 @@
"numbers/digits"
"directory?"
"files/directory-"
"discard"
"core/discard"
"disjoint?"
"sets/disjoint-"
"div"
Expand Down Expand Up @@ -1011,6 +1015,8 @@
"ui/webview"
"wednesday?"
"dates/wednesday-"
"when"
"core/when"
"when?"
"core/when-"
"while"
Expand Down
58 changes: 24 additions & 34 deletions docs/website/pages/documentation/command line.art
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,11 @@ The command line is where the whole journey starts: whether you want to try out
* [Start the interactive console](#start-the-interactive-console)
* [Working with bytecode](#working-with-bytecode)
- [Package manager](#package-manager)
* [List available modules](#list-available-modules)
* [List remote modules](#list-remote-modules)
* [Get module info](#get-module-info)
* [Install a new module](#install-a-new-module)
* [Uninstall a module](#uninstall-a-module)
* [Update existing modules](#update-existing-modules)
* [List available packages](#list-available-packages)
* [List remote packages](#list-remote-packages)
* [Install a new package](#install-a-new-package)
* [Uninstall a package](#uninstall-a-package)
* [Update all packages](#update-all-packages)

---

Expand Down Expand Up @@ -66,63 +65,54 @@ This will output a `path/to/your/script.art.bcode` file.
arturo -x path/to/your/script.art.bcode
```

<h3 id="package-manager">Package manager <span class="tag is-danger">Experimental</span></h3>
<h3 id="package-manager">Package manager</h3>

Although Arturo's philosophy is batteries-included - so you'll most likely need nothing that is not already included - Arturo also comes with a ready-to-use package manager, to make your life even easier.

<h4 id="list-available-modules">List available modules</h4>
<h4 id="list-available-packages">List available packages</h4>

To list all available modules, just type:
To list all available packages, just type:

```bash
arturo -m list
arturo -p list
```

This will show you all the modules you have installed locally.
This will show you all the packages you have installed locally.)

It looks like this:
<h4 id="list-remote-packags">List remote packages</h4>

![Module listing](https://arturo-lang.io/resources/images/module_list.png)

<h4 id="list-remote-modules">List remote modules</h4>

If you want to fetch a list of *all* modules available to download from the [official repository](https://github.com/arturo-lang/art-modules), just type:
If you want to fetch a list of *all* packages available to download from the [official repository](https://pkgr.art), just type:

```bash
arturo -m remote
arturo -p remote
```

<h4 id="get-module-info">Get module info</h4>
<h4 id="install-a-new-package">Install a new package</h4>

Have you spotted a module you like and want to know more about it? That's easy:
To install a package

```bash
arturo -m info html
arturo -p install grafito
```

<h4 id="install-a-new-module">Install a new module</h4>

When you have finally decided you want to install a module, it's also easy:
> 💡 If you do e.g. `import 'grafito!` from within the REPL or your Arturo script, if the package isn't already installed, it'll automatically be taken care of - so, nothing to worry about! ;-)

```bash
arturo -m install html
```

<h4 id="uninstall-a-module">Uninstall a module</h4>
<h4 id="uninstall-a-package">Uninstall a package</h4>

In order to uninstall a module you have previously, you just have to type:
In order to uninstall a package you have previously, you just have to type:

```bash
arturo -m uninstall html
arturo -p uninstall grafito
```

<h4 id="update-existing-modules">Update existing modules</h4>
<h4 id="update-all-packages">Update all packages</h4>

If you want to update all of your local modules, there's no reason to uninstall/reinstall anything. Just type:
If you want to update all of your local packages, there's no reason to uninstall/reinstall anything. Just type:

```bash
arturo -m update
arturo -p update
```

And *all* of your modules will be automatically up-to-date.
And *all* of your packages will be automatically up-to-date.
}
Loading

0 comments on commit 30c5d56

Please sign in to comment.