-
Notifications
You must be signed in to change notification settings - Fork 6
Advanced Pipefish
tim-hardcastle edited this page Dec 28, 2025
·
5 revisions
Pipefish is meant to be a simple language. But you can do some advanced things in it as needed.
- Interface types, part 2 : we look at how interface types allow modules to share functions.
- Reference parameters : in Imperative Pipefish, you can't return a value, but you can pass a variable to be operated on.
- SQL interop : built-in interop with everyone's favorite relational database.
- Microservices : learn how your services can interact with one another.
- Golang interop : built-in Golang interop.
- Wrapper types : wrap any Go type in a Pipefish type.
- Roll your own IO : a combination of the preceding features helps you to write your own IO commands to interact with whatever database/webservice/etc you like.
- Snippets : embed the language of your choice.
- Embedding Pipefish in Go : how to do that.
🧿 Pipefish is distributed under the MIT license. Please steal my code and ideas.
- Getting started
- Language basics
- The type system and built-in functions
- Functional Pipefish
- Encapsulation
- Imperative Pipefish
-
Imports and libraries
- The files library
- The fmt library
- The html library
- The math library
- The math/big library
- The math/cmplx library
- The math/rand library
- The path library
- The path/filepath library
- The reflect library
- The regexp library
- The sql library
- The strings library
- The terminal library
- The time library
- The unicode library
- Advanced Pipefish
- Developing in Pipefish
- Deployment
- Appendices