https://www.boundaryml.com logo
Noticed there's a new website yesterday
# general
a
Noticed there's a new website yesterday. Took me a second to recognize the BAML I knew from a few months ago. A lot of interesting changes on the way! - Not only is uv no longer the blessed path for installing the CLI, the recommended brew/curl installer fetches an entirely new CLI. -
baml_client/
is now
baml_sdk/<language>/
- This shit is turing complete all of a sudden, haha. Control flow, variables, function composition (!!). That's insane. -
baml_sdk
contains more than before. Reads like a stdlib. Kind of interesting to browse through. - `baml run`: I see a lot of potential here - New positioning: BAML as a language for agents to write agents. Things that confused me at first: - The updated website doesn't have reference language docs. Sure, you can use 'Old Docs', but all the examples are out of date. - No updated language reference docs in
fern/
on the canary branch either. - In the end, I found lots of interesting examples in https://github.com/BoundaryML/baml/blob/vaibhav/new-copy/baml_language/test_simple.baml Personal feedback: - I'd reconsider the beige palette of the website. It smells of a Claude-designed website in a way that the previous website didn't. More purple! - I don't know why but I love the asymmetric circles around the section numbers on the Explore BAML page. - My impression for now: while pretty, the new website is less informative than the previous one while creating uncertainty about what is now actually the 'correct way' to use BAML (perhaps the agent skill is the source of truth in this regard) Anyway, looking forward to playing around a bit more!
v
yea a lot of changes for sure 🙂
website is actually getting a full redraft on top on this now!
beige theme will be gone as well!
we should put a huge banner at the top of the docs site saying it not aligned to the website, its for legacy BAML. New BAML's source of truth is
baml describe
+ skill (for now while we think about what docs look like in an agent first era).
> what is now actually the 'correct way' to use BAML still drafting that! hopefully the new site is the right thing.
this is were more complicated demos are: https://github.com/boundaryml/baml-demos
but appreiciate all the feedback @a3lem ! helps a ton
a
Oooh, baml-demos is an absolute goldmine! How did I miss that
v
cause we don't link it anywhere 😅
a
Well that explains it
Am I right in guessing that those
baml_src/ns_<name>/
directories and the
from baml_sdk import <name>
imports in the python code points to BAML having namespaces now?!
v
yep!
you should really join the EAP 🙂 https://www.boundaryml.com/eap
also if you're around, i'd honestly love your take on the new website we're doing!
happy to share a bit of it over the office hours channel
a
I was considering it but wasn't sure who the intended audience is. Also, I just assumed the time difference would be brutal (I'm on Brussels time)
But 19:00 local time actually works. I'll join on the 13th!
v
oh thats good feedback, i should probably add a bit more blurb / expose on there
its mostly people that are: * interested in a guided tour of BAML * want to ask more questions about why and where its going
a
I think I'm more in the 'why and where' camp, especially now that BAML appears to be adopting more general purpose programming language features
I've read a fair amount of the source code over the last year. I love the idea of BAML (in kind of the same way that I love the idea of Prolog and Lisp), and I'd like to adopt it in earnest. But adopting it feels riskier than self-rolling in Python or using something like pydantic-ai. Might be interesting to discuss those concerns
v
that makes complete sense 🙂 its part of the reason we've been putting in so much effort into the bridges
curious, is the main risky part just the newness of the language?
a
Not quite. It's more about 'control. Let me give a few examples. (Mind, I'm leaving on family vacay in a few hours, so I might not have a lot of time to continue the convo.) Example 1: when calling a BAML function, my python program hands over control to the BAML engine. Seeing as BAML functions can now have loops, branches, etc. there's a lot more I might need to debug/trace. The accepted approach in our team is to instrument for OTEL. But BoundaryML offers its own paid product for observability (something's got to pay the bills, after all). Unfortunately, that's a tough case to make. In the EU you quickly get questions about SSO, NIS compliance, data residency, server location, and so on. Then how about logging. BAML issues logs but those need to be structured. If it were python code, that would be trivial. --- Okay Example 1 is already a mouthful. I'll leave it at that for now and make a note to add a few more later on
v
enjoy the vacation 🙂 I suspect you will like quite a lot of our answers! we've been thinking a lot about how stuff plugs in to various ecosystems and what we as Boundary can do to make the adoption problem (for both the open products - BAML - and the cloud products) a great use case
but lookin forward to chatting on the 13th!
i suspect it'll be a better convo over the call vs back and forth text messages
2 Views