https://github.com/JensRantil/steps
A discrete event simulator in Go.
Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (5.0%) to scientific vocabulary
Keywords
Repository
A discrete event simulator in Go.
Basic Info
- Host: GitHub
- Owner: JensRantil
- License: mit
- Language: Go
- Default Branch: master
- Homepage: https://pkg.go.dev/github.com/JensRantil/steps
- Size: 44.9 KB
Statistics
- Stars: 9
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Topics
Metadata Files
README.md
steps
"Steps" is a simple discrete event simulator in Go. It's useful for simulations of systems that are driven by events, such as queues, workflows, etc.
See the documentation for API and examples.
Example
```go sim := NewSimulation()
sim.Schedule(Event{When: sim.Now.Add(10 * time.Second), Action: func(s *Simulation) { fmt.Println("Actor 1:", sim.Now) }}) sim.Schedule(Event{When: sim.Now.Add(time.Second), Action: func(s *Simulation) { fmt.Println("Actor 2:", sim.Now) }})
sim.RunUntilDone()
// Output: // Actor 2: 0001-01-01 00:00:01 +0000 UTC // Actor 1: 0001-01-01 00:00:10 +0000 UTC ```
See here for more examples.
Why write yet another discrete event simulator?
- simgo was too slow for my needs. I needed to run simulations in an inner loop.
- godes was too heavyweight and complex for my needs. I just needed a simple performant scheduler (without any goroutines).
Contact & support
This library was coded up by Jens Rantil. Do not hesitate to contact Sweet Potato Tech for support.
Owner
- Name: Jens Rantil
- Login: JensRantil
- Kind: user
- Location: Stockholm, Sweden
- Company: Normative
- Website: http://jensrantil.github.io
- Twitter: JensRantil
- Repositories: 64
- Profile: https://github.com/JensRantil
Backend engineer, engineering mathematics, traveller, nerd, juggler, guitar/african drum player. Inspired Swede.
GitHub Events
Total
- Watch event: 9
- Push event: 3
- Create event: 1
Last Year
- Watch event: 9
- Push event: 3
- Create event: 1
Issues and Pull Requests
Last synced: over 1 year ago
All Time
- Total issues: 0
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 2
- Total downloads: unknown
-
Total dependent packages: 0
(may contain duplicates) -
Total dependent repositories: 0
(may contain duplicates) - Total versions: 4
proxy.golang.org: github.com/jensrantil/steps
- Documentation: https://pkg.go.dev/github.com/jensrantil/steps#section-documentation
- License: mit
-
Latest release: v1.0.1
published over 1 year ago
Rankings
proxy.golang.org: github.com/JensRantil/steps
Package steps provides a simple, fast, discrete event simulator in Go.
- Homepage: https://github.com/JensRantil/steps
- Documentation: https://pkg.go.dev/github.com/JensRantil/steps#section-documentation
- License: MIT
-
Latest release: v1.0.1
published over 1 year ago
Rankings
Dependencies
- actions/checkout v1 composite
- actions/setup-go v1 composite