Skip to content

Commit cc8b16c

Browse files
committed
Update README
1 parent 6cc18db commit cc8b16c

File tree

1 file changed

+10
-56
lines changed

1 file changed

+10
-56
lines changed

README.md

Lines changed: 10 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -42,70 +42,24 @@ julia> Pkg.add("SimJulia")
4242

4343
## Release Notes
4444

45-
* 2017: v0.5
45+
* v0.5 (2017)
4646
* 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)
4747
* 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):
4848
* Documentation is automated with [Documenter.jl](https://github.com/JuliaDocs/Documenter.jl) (WIP: Overview and Tutorial OK).
49-
* 2017: v0.4.1, the `resumable` and `yield` macro are put in a seperate package [ResumableFunctions](https://github.com/BenLauwens/ResumableFunctions.jl.git):
49+
* v0.4.1 (2017)
50+
* the `@resumable` and `@yield` macros are put in a seperate package [ResumableFunctions](https://github.com/BenLauwens/ResumableFunctions.jl.git):
5051
* Users have to take into account the following syntax change: `@yield return arg` is replaced by `@yield arg`.
51-
* 2017: v0.4 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:
52-
* Scheduling of events can be done with `Base.Dates.Datetime` and `Base.Dates.Period`:
53-
```julia
54-
using SimJulia
55-
using Base.Dates
56-
57-
function datetimetest(sim::Simulation)
58-
println(nowDatetime(sim))
59-
yield(timeout(sim, Day(2)))
60-
println(nowDatetime(sim))
61-
end
62-
63-
datetime = now()
64-
sim = Simulation(datetime)
65-
@process datetimetest(sim)
66-
run(sim, datetime+Month(3))
67-
```
52+
* 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:
53+
* Scheduling of events can be done with `Base.Dates.Datetime` and `Base.Dates.Period`
6854
* Two ways of making `Processes` are provided:
69-
- using the existing concept of `Tasks`:
70-
```julia
71-
function fibonnaci(sim::Simulation)
72-
a = 0.0
73-
b = 1.0
74-
while true
75-
println(now(sim), ": ", a)
76-
yield(timeout(sim, 1))
77-
a, b = b, a+b
78-
end
79-
end
80-
81-
sim = Simulation()
82-
@process fibonnaci(sim)
83-
run(sim, 10)
84-
```
85-
- using a novel finite-statemachine approach:
86-
```julia
87-
using ResumableFunctions
88-
89-
@resumable function fibonnaci(sim::Simulation)
90-
a = 0.0
91-
b = 1.0
92-
while true
93-
println(now(sim), ": ", a)
94-
@yield timeout(sim, 1)
95-
a, b = b, a+b
96-
end
97-
end
98-
99-
sim = Simulation()
100-
@coroutine fibonnaci(sim)
101-
run(sim, 10)
102-
```
55+
- using the existing concept of `Tasks`
56+
- using a novel finite-statemachine approach
10357
* 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.
104-
* 2015: v0.3 synchronizes the API with SimPy v3 and is Julia v0.3, v0.4 and v0.5 compatible:
58+
* v0.3 (2015) synchronizes the API with SimPy v3 and is Julia v0.3, v0.4 and v0.5 compatible:
10559
* Documentation is available at [readthedocs](http://simjuliajl.readthedocs.org/en/latest/).
10660
* The continuous time solver is not implemented.
107-
* 2014: v0.2 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.
108-
* 2013: v0.1 is a Julia clone of SimPy v2 and is Julia v0.2 compatible.
61+
* 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.
62+
* v0.1 (2013) is a Julia clone of SimPy v2 and is Julia v0.2 compatible.
10963

11064
## Todo
11165

0 commit comments

Comments
 (0)