Comments (7)
No reason it can't be supported - there simply wasn't a use case for it to date.
Coincidentally, support for:
Print( .Var )
has been added in the Perforce mainline for release in v0.84. As opposed to:
Print( "$Var$" )
from fastbuild.
Cool, I always find myself writing Print( .Var )
like you saw :)
Handling integer additions might be good in the future, but I have no real usage for it : I just tried to count included projects in a .bff file.
from fastbuild.
I don't want to derail things too much since we're pretty happy with FBuild already. But it seems like more are more procedural features are making their way in. What was the motivation for a custom language over something like Lua/LuaJIT?
from fastbuild.
There are a few reasons I chose to create a domain specific language.
I wanted to:
- tailor the syntax to the problem space
- limit the syntax to things that avoid creating ambiguous or unparallelizable dependencies or even crazier things like non-deterministic dependencies
- avoid licensing complications with 3rd party libraries or frameworks
- avoid code size bloat and/or the inability to have a single stand-alone executable
- be type safe
- be fast
In the end, especially now as the syntax is nearing some level of maturity (still more to do for sure), I think it's the right long-term choice.
from fastbuild.
That's fare,
thanks
from fastbuild.
Integer arithmetic was implemented as part of #117 and will be in the next release (v0.91)
from fastbuild.
v0.91 has been released which includes this change. Thanks again for your contribution!
from fastbuild.
Related Issues (20)
- C++20 module support HOT 3
- Missing dependencies when using array as `.CompilerInputPattern` HOT 8
- Missing XML Quoting support in vcxproj generator HOT 4
- integration Distributed ThinLTO with FASTBuild HOT 7
- `-compdb` does not include commands to generate PCHs HOT 1
- Problem using variable inside #include HOT 2
- Configuration file supporting Libraby and executable HOT 2
- Visual Studio Instrumentation profiling integration? HOT 5
- ObjectList not rebuilt when PreBuildDependencies changes HOT 4
- .CompilerOptionsC option HOT 16
- How to make full use of the build server HOT 3
- FASTBuild 1.13 gives false "Missing precompiled header option Yc in PCHOptions" error when Yc is present HOT 2
- Problems with compressed source files (LNK2019 error) HOT 7
- Compilation fails with 4> clang: error: invalid Xarch argument: '-Xarch_arm64 -o', options requiring arguments are unsupported HOT 3
- fbuild <target> emits warning while there are no warnings in the cl output HOT 1
- warning LNK4042 when linking a library from several ObjectLists that reused the same PCH. HOT 2
- Limit number of cores used for linking HOT 3
- 'Exec' can't have 'ObjectList' node specified as '.ExecInput' HOT 1
- Show remaining tasks in the status line, and document it HOT 3
- -report=json produces malformed output when caching is disabled HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fastbuild.