You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* the `@oldprocess` macro and the `produce` / `consume` functions are removed because they are no longer supported.
21
+
* v0.5 (2018)
22
+
* The old way of making processes is deprecated in favor of the semi-coroutine approach as implemented in [ResumableFunctions](https://github.com/BenLauwens/ResumableFunctions.jl.git). The `@process` macro replaces the `@coroutine` macro. The old `@process` macro is temporarily renamed `@oldprocess` and will be removed when the infrastructure supporting the `produce` and the `consume` functions is no longer available in Julia. (DONE)
23
+
* This version no longer integrates a continuous time solver. A continuous simulation framework based on [DISCO](http://www.akira.ruc.dk/~keld/research/DISCO/) and inspired by the standalone [QSS](https://sourceforge.net/projects/qssengine/) solver using ConcurrentSim as its discrete-event engine can be found in the repository [QuantizedStateSystems](https://github.com/BenLauwens/QuantizedStateSystems.jl.git) (WIP):
24
+
* Documentation is automated with [Documenter.jl](https://github.com/JuliaDocs/Documenter.jl) (WIP: Overview and Tutorial OK).
25
+
* v0.4.1 (2017)
26
+
* the `@resumable` and `@yield` macros are put in a seperate package [ResumableFunctions](https://github.com/BenLauwens/ResumableFunctions.jl.git):
27
+
* Users have to take into account the following syntax change: `@yield return arg` is replaced by `@yield arg`.
28
+
* v0.4 (2017) only supports Julia v0.6 and above. It is a complete rewrite: more julian and less pythonic. The discrete event features are on par with v0.3 (SimPy v3) and following features are added:
29
+
* Scheduling of events can be done with `Base.Dates.Datetime` and `Base.Dates.Period`
30
+
* Two ways of making `Processes` are provided:
31
+
- using the existing concept of `Tasks`
32
+
- using a novel finite-statemachine approach
33
+
* A continuous time solver based on the standalone [QSS](https://sourceforge.net/projects/qssengine/) solver is implemented. Only non-stiff systems can be solved efficiently.
34
+
* v0.3 (2015) synchronizes the API with SimPy v3 and is Julia v0.3, v0.4 and v0.5 compatible:
35
+
* Documentation is available at [readthedocs](http://simjuliajl.readthedocs.org/en/latest/).
36
+
* The continuous time solver is not implemented.
37
+
* v0.2 (2014) introduces a continuous time solver inspired by the Simula library [DISCO](http://www.akira.ruc.dk/~keld/research/DISCO/) and is Julia v0.2 and v0.3 compatible.
38
+
* v0.1 (2013) is a Julia clone of SimPy v2 and is Julia v0.2 compatible.
A discrete event process oriented simulation framework written in [Julia](http://julialang.org/) inspired by the Python library [SimPy](https://simpy.readthedocs.io/).
<a href="https://juliadynamics.github.io/ConcurrentSim.jl/stable"><img src="https://img.shields.io/badge/docs-stable-blue.svg" alt="Documentation of latest stable version"></a>
8
+
<a href="https://juliadynamics.github.io/ConcurrentSim.jl/dev"><img src="https://img.shields.io/badge/docs-dev-blue.svg" alt="Documentation of dev version"></a>
A discrete event process oriented simulation framework written in [Julia](http://julialang.org/) inspired by the Python library [SimPy](https://simpy.readthedocs.io/). One of the longest-lived Julia packages (originally under the name SimJulia).
9
33
10
34
## Installation
11
35
12
-
SimJulia.jl is a [registered package](http://pkg.julialang.org), and is installed by running
36
+
ConcurrentSim.jl is a [registered package](http://pkg.julialang.org), and is installed by running
* Ben Lauwens, Royal Military Academy, Brussels, Belgium.
49
+
* Maintainer volunteers from the JuliaDynamics and QuantumSavory organizations.
30
50
31
51
## Contributing
32
52
@@ -35,38 +55,4 @@ julia> Pkg.add("SimJulia")
35
55
36
56
## Release Notes
37
57
38
-
* v0.8.2 (2021)
39
-
* implementation of Store based on a Dict
40
-
* v0.8.1 (2021)
41
-
* some minor bug fixes
42
-
* uses ResumableFunctions v0.6 or higher
43
-
* v0.8 (2019)
44
-
* adds support for Julia v1.2.
45
-
* v0.7 (2018)
46
-
* adds support for Julia v1.0
47
-
* v0.6 (2018)
48
-
* adds support for Julia v0.7.
49
-
* the `@oldprocess` macro and the `produce` / `consume` functions are removed because they are no longer supported.
50
-
* v0.5 (2018)
51
-
* The old way of making processes is deprecated in favor of the semi-coroutine approach as implemented in [ResumableFunctions](https://github.com/BenLauwens/ResumableFunctions.jl.git). The `@process` macro replaces the `@coroutine` macro. The old `@process` macro is temporarily renamed `@oldprocess` and will be removed when the infrastructure supporting the `produce` and the `consume` functions is no longer available in Julia. (DONE)
52
-
* This version no longer integrates a continuous time solver. A continuous simulation framework based on [DISCO](http://www.akira.ruc.dk/~keld/research/DISCO/) and inspired by the standalone [QSS](https://sourceforge.net/projects/qssengine/) solver using SimJulia as its discrete-event engine can be found in the repository [QuantizedStateSystems](https://github.com/BenLauwens/QuantizedStateSystems.jl.git) (WIP):
53
-
* Documentation is automated with [Documenter.jl](https://github.com/JuliaDocs/Documenter.jl) (WIP: Overview and Tutorial OK).
54
-
* v0.4.1 (2017)
55
-
* the `@resumable` and `@yield` macros are put in a seperate package [ResumableFunctions](https://github.com/BenLauwens/ResumableFunctions.jl.git):
56
-
* Users have to take into account the following syntax change: `@yield return arg` is replaced by `@yield arg`.
57
-
* v0.4 (2017) only supports Julia v0.6 and above. It is a complete rewrite: more julian and less pythonic. The discrete event features are on par with v0.3 (SimPy v3) and following features are added:
58
-
* Scheduling of events can be done with `Base.Dates.Datetime` and `Base.Dates.Period`
59
-
* Two ways of making `Processes` are provided:
60
-
- using the existing concept of `Tasks`
61
-
- using a novel finite-statemachine approach
62
-
* A continuous time solver based on the standalone [QSS](https://sourceforge.net/projects/qssengine/) solver is implemented. Only non-stiff systems can be solved efficiently.
63
-
* v0.3 (2015) synchronizes the API with SimPy v3 and is Julia v0.3, v0.4 and v0.5 compatible:
64
-
* Documentation is available at [readthedocs](http://simjuliajl.readthedocs.org/en/latest/).
65
-
* The continuous time solver is not implemented.
66
-
* v0.2 (2014) introduces a continuous time solver inspired by the Simula library [DISCO](http://www.akira.ruc.dk/~keld/research/DISCO/) and is Julia v0.2 and v0.3 compatible.
67
-
* v0.1 (2013) is a Julia clone of SimPy v2 and is Julia v0.2 compatible.
68
-
69
-
## Todo
70
-
71
-
* Transparent statistics gathering for resources.
72
-
* Update of documentation.
58
+
A [detailed change log is kept](https://github.com/JuliaDynamics/ConcurrentSim.jl/blob/master/CHANGELOG.md).
0 commit comments