The State of Go

Video in TIB AV-Portal: The State of Go

Formal Metadata

The State of Go
Alternative Title
Go - State of Go
Title of Series
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Release Date
Production Year

Content Metadata

Subject Area
Pulse (signal processing) Scheduling (computing) Group action State of matter Code INTEGRAL Multiplication sign Source code Execution unit Mereology Wiki Mathematics Different (Kate Ryan album) Data conversion Extension (kinesiology) Physical system Curve File format Software developer Bit Process (computing) Software repository Repository (publishing) Order (biology) Interrupt <Informatik> output Right angle Quicksort Arithmetic progression Reading (process) Point (geometry) Web page Ocean current Trail Slide rule Server (computing) Implementation Open source Disintegration Letterpress printing Online help Black box Canonical ensemble Rule of inference Twitter Number Spreadsheet Computer hardware Touch typing Authorization Speicherbereinigung Data structure Form (programming) Self-organization Information Weight Projective plane State of matter Word
Run time (program lifecycle phase) Concurrency (computer science) Code Multiplication sign Compiler Function (mathematics) Computer programming Mathematics Atomic number Different (Kate Ryan album) Damping Physical system Email Moment (mathematics) Bit Variable (mathematics) Flow separation Data management Process (computing) Normal (geometry) Quicksort Cycle (graph theory) Probability density function Point (geometry) Server (computing) Computer file Open source Patch (Unix) Virtual machine Translation (relic) Branch (computer science) Coprocessor Power (physics) Frequency Differenz <Mathematik> Computer hardware Speicherbereinigung Statement (computer science) Multiplication Stapeldatei Assembly language Inheritance (object-oriented programming) Demo (music) State of matter Interactive television Code Directory service Group action Cartesian coordinate system System call Compiler Bootstrap aggregating Integrated development environment Network topology Video game Table (information) Freezing Library (computing)
Group action Building Serial port Code Java applet Multiplication sign View (database) Set (mathematics) PowerPC Mereology Tracing (software) Computer programming Medical imaging Mathematics Roundness (object) Core dump Typprüfung Physical system Programming language Software developer Keyboard shortcut Bit Instance (computer science) Flow separation Connected space Process (computing) Repository (publishing) Code refactoring Quicksort Resultant Mobile Web Virtual machine Control flow Branch (computer science) Mathematical analysis Login Rule of inference Event horizon 2 (number) Number Goodness of fit Software testing Traffic reporting Computing platform Computer architecture Information Demo (music) Graph (mathematics) State of matter Plastikkarte System call Approximation Commitment scheme Statement (computer science) Speech synthesis Musical ensemble Near-ring
Pixel Mobile app Context awareness Server (computing) Computer file Ferry Corsten Multiplication sign Virtual machine Rule of inference Computer programming 2 (number) Revision control Word Medical imaging Mathematics Hacker (term) Profil (magazine) Information Office suite Website Physical system God Email Stapeldatei Touchscreen Key (cryptography) Software developer Projective plane Moment (mathematics) State of matter Data storage device Electronic mailing list Instance (computer science) Complete metric space System call Uniform resource locator Integrated development environment Query language Website Point cloud Quicksort Resultant
Service (economics) Link (knot theory) Interactive television State of matter Revision control Quilt Information Website Hidden Markov model System call
Pulse (signal processing) Complex (psychology) Group action Multiplication sign Execution unit Source code Median Mereology Dimensional analysis Computer programming Formal language CAN bus Core dump Information Website God Rhombus Physical system Area Enterprise architecture Closed set Reflection (mathematics) Binary code Physicalism Bit Type theory Data mining Data management Message passing Funktor Multi-agent system Repository (publishing) output Self-organization MiniDisc Website Moving average Right angle Arithmetic progression Flux Spacetime Trail Game controller Open source Connectivity (graph theory) Letterpress printing Similarity (geometry) Rule of inference Machine vision Number Wave packet Revision control Goodness of fit Internetworking Googol Energy level Software testing Data structure Message passing Traffic reporting Metropolitan area network Standard deviation Dependent and independent variables Weight Projective plane State of matter Planning Plastikkarte Line (geometry) Complex number Computational complexity theory Explosion Personal digital assistant Network topology Normed vector space Charge carrier Family
today and so before I before I start with this I just wanted to but she also so you later Austria's visual after we finalize the schedule for the i lighting talks which should directly after this and there's a bunch of interesting stuff as is to stick around and if you go to the growing Twitter page you'll see that's good all their and the right now I'm going to give the you give my talk on the state of Goa just basically a state of the Union where the project is that and at this point in time so a little bit about what happened last year and in December we released that go 1 . 4 and there is some important things about it like we introduce the beginnings of Andhra support and the canonical import pulse thing and was actually a pretty important in a sort of subtle way to do with the the community and make sure it is using and packages with the right input pulse undergo generate command is also pretty interesting they were elicited of the beginnings of seeing what people for but really what was going on in 1 . 4 was a lot of preparation work and for future releases of there was a lot of prep work for the new garbage collector and it's a lot of prior work that for the conversion of a toolchain from city go and hence the source code was reorganized and a bunch of other stuff like that and you can check the police notes for more details and around the same time as 1 . 4 and the larger disconnected from the 1 . 4 release process and we transitioned from material to get an answer to that means the colgar repository and then all of a sub repositories like the tools repository and so on and and now uh in Gibbons the mercurial we can get all the change history across all the daughter was preserved and that also become sided with moving to and new development the structure stood and was still serving and main repository on on with that rule technology size that we will hardware using Google Source stick-on which is the same primary repo for and current and and and I'm way using Garrett instead of read valves for code review noun which is also coupled with that that's source screwed service and and we using get Harbinson rule codfish tracking and wiki and this is a big deal forgot contributors and somebody uses but for most of the users is not really a big deal isn't really affect how use go what goes about number those of the the Urals one's touch and why we moved and basically the reason why we chose Gibbs and is because and we what we need to move to Garrett and guarantees a skit that why we need to move to guarantee because reed valves the code of the system we were using and was basically unmaintained it used to be used by and the crime project and and so the fact that they were using it meant that there were people working on keeping it running and but then will basically left holding the bag and and were the last people using it and we're like well this sucks and and so wizards which to Daguerre which has a team maintaining it it has a team actually maintaining the structure as well and then so we join large part is like entering crime through units away pretty confident that system is going to keep being worked on an improved the better and and why did we move out issues and stuff away from code to get have and basically because now we can use get hub and it puts us closer to our community which by and large users get help for its and their source open-source development work and and that means that other give have requires can mention like don't commit by hatch for ago issue and in there and issues and documents and so it means we can code kind have a nice more times of coupled relationship with other that predicts the news to go recall doesn't and there was some pros and cons the transition and the prior is a pretty significant them otherwise it would've done but like more people understand gets the mercurial and and importantly contributors can I use the on get workflows previously with mercurial we can have this rigid kind of linear realized persisted follows a contributor and but now uh because all of the sort of and submission and merging is headed on the Garrett server side you can do whatever you want as a contributor in your in git repositories and previously we forbid ABC ABC emitters from using a mercurial extensions lectures of stack commits the stuff like that so afraid that you'd actually push some of the work in progress thing to mastery per Garrett is like a gatekeeper and so we have to worry about that anymore so now people can go crazy get as they like to do and and that touches on the good integration between given garish previously rebuild had nothing to do with mercurial is just kind of those of Foster's connect getting Garrett a fairly and integrated and also now we have automated ceiling checking so the contributor license agreement as a way of and saying as a contributor got that's and you have the authority to to give the project the current you're getting and so it means that anybody who uses go is protected from any kind of spurious licensing claims down the track and previously we had to check a spreadsheet inside of rule and that to see whether someone filled in a form Comunidad told the sort order made that somewhat but now we know and if we receive a code review through Garrett that that person is actually signed the silicon so that us developers are never need to think about that and you just right and there are a number of cons there and get has a steep learning curve a lot of people who used to us simple mercurial base work for an average refused and I feel bad about that to that's just mention base and get have has no weight is they will pull requests which I'll talk about why that's a bad thing in it and we have also has no way to star 0 plus 1 issues which I suggest everyone here just tweak at get help in Austin to implement feature doesn't seem like a be very difficult to do and but it kind of sucks getting an e-mail notification every time someone says no close 1 this would be great to fix like yeah I know that's what's in the issue tracker and it's still open and we're working on so thanks for the input and so actually if you do write a plus 1 or if you have written a comment like that which have a policy will will delete them just because it sort of pollutes the discussion of the issues and so don't be offended if that happens with just it's get faults all and the another unfortunate thing about did have is the standard feature posses gone down and and it's largely because that on the old rule could issue tracker we could we provided this issue 10 plates so when you go to file an issue you get a nice form the words that you know here the pieces of information we want is a format that we wanted and now it's like you go file an issue on the go projecting it black box and you is bright anything and so people do just write anything like I don't understand why need to import the font packaged to print something and it's like this is not the appropriate form for this at this questions on so that's a problem the culture difference and finally was a ton of work to transition so that concept from the better place now which is great the and this is my final slide whining about it held and this widen alike pull requests and a lot of people really surprise that we don except for
requests and so I think it's important to say why it's not because we don't wanna participate in and like the get highway all like the the open source community it's not because we're not accepting patches or anything and we have an our and system of patches through Garrett and that very specific reasons why we don't like pull requests and 1 of them is that the diffu is terrible I know if anyone's tried open like 5 thousand wine diff across multiple files and get and even on a high power machine it's really slow but in a way that should be but it is and and like when you're reviewing code you write comments and and like I might be reviewing breads code unlike commenting life during this like seems weird book and I get to the way through the review and it's like all understand why he's doing this now and I go back and delete the comments and that's what I would do in our old system that's when Garrett didn't get how by the time I get down there all my comments abroad send them by e-mail and so there's no way for me to like back up and change my mind and you know whereas in the other tools we used to you have this kind of atomic processes we dropped earlier comments and send them in 1 big batch and it's really it's really critical the workflow things but and the Council the differences between editions of the tag set as they evolve they change and you can't see how exchange yeah you have to fork the Rosa publicly which of these is weird and when you accepted a pull request to create a management and would prefer to cherry pick the changes to the top of the branch instead so we have a much cleaner and of all these commands for by much commits and and in general I think the whole way pull requests that created doesn't actually encourage people to review covered thoroughly where as we have a culture of very thoroughly reviewing all changes so can generally work well for us of of I would like you the support and the I think it have actually just introduce side by side already yeah yeah so if the you have the power of this year right so that's my wife and I get help I think they know that they can improve it they are working on improving like I think there's a lot of scope for improving develop workflow and that's the business I trust they will get there in time I think there are others that we chose them so we think the good it's not announcing saying that have as their and the what all the of the dealt with this and so you go 1 . 5 the future and I saw a talk yesterday which had this disclaimer and I figured since since we're and it basically means that anything I say is purely speculative and I've covered of replaced the various names with these things maybe you can figure out who that was them so the release cycle has changed a little bit with pushed it out instead of releasing in June when our releasing in August that's because everyone seems be on holiday in June and also that put other release in December and so it meant that basically the whole period of when the tree opens again fell during the June holidays and also during the like December January holidays and so the time when we need it would to be doing most work was also and the time when everybody was away and so if shifted by couple months and so now the freeze period is what is during the holidays and so it means that you know what we're not supposed to be doing work and we can be analogous to perfect and so 1 of the major things about the go call In 1 . 5 His name is an the toolchain being better from C to go so this started early last year and it's been going on in the background largely and most didn't by Ross that and he told me a couple days ago that it be done and by the end of March 4 the variance of much is a much and basically there is you later in assemblers written in go on from scratch and the same was actually propose maybes the cogeneration back and is actually pretty cool it actually reads processor instruction spec sheets from PDF and uses that to some generate the tables from assembly instructions through to the actual by trade output and so if you've seen roses like PDF and reader library that's why that exists and its it's pretty hilariously awesome actually and that the main of the the gotta compiler itself is being machine translated and from C to go and that is doesn't mean that we're going to have a Citigroup translator that anyone can use and it just means that uh Russ's carefully massaging the the compile into a C program that looks like a go program and then we can on the like instantaneously convert that to a parent and the moment sergeant from a program looks like garbage into a real go program made of several sub packages and so on them so that's that's kind happening and that's what should be done for a certain and but the upshot is that spin 1 . 5 will be noisy code anywhere in the toolchain and more even in the runtime all the runtime could be converted by hand and that was done by and a lot of people attendance did a really great but what that means is that to compile go 1 . 5 and later you'll need to have a go toolchain to do that you C-compiler anymore but you will need to go compiler and to build on and so that the way to do that is just to put a directory new 100 recalled go 1 . 4 and put their 1 . 4 in and we can set the guard bootstrap environment variable and 1 downside of this is that for your new offering systems architectures bounds that of working natively that that kind of works more easily in some ways anyway and that if you use a binary distraught go would have if you download go from going to those such Dale and so that way not 1 person 0 well a few years the allies announcements a few times a year I could not do that apparently and anyway if you do that in an iterative have also in 1 . 5 will see a new concurrent garbage collector and his what's been going on for a while and basically the upshot of that is well I've got a programs that are guaranteed to only pause and for a is set to 10 ms on modern hardware and that means that you will go program will be running like Epson and other time in this sort of guaranteed fashion so it's was upper bound on the port of some of the really nice for more interactive applications damages so bread storefront should be through this really great and you know that that's coming that's going on 1 . 5 and because the spec isn't standardized yet and but it that it will be in the standard library at some point and it means that if you have a go HDB server and when it should be 2 specters stabilized it will become a nation to serve a free you want to do anything and in his right your service normal and all speakers to be to that's great and that is 1 demo once again even she sorta ready so the so called and they should 1 over a low-latency
connection it's like a really long time to make all these requests and kind in parallel but mostly in serial they should be 2 it's a pipeline that and then and so thing is going be fantastic particularly on mobile platforms when this is fully rolled out speaking
of well and a bunch of people and have been working on according got to come and read and I obs and so 1 . 4 was possible to build and apps and if you can work out how to do that with and rebuild system which they 900 work here so it's a bit tricky and but in the 1 . 5 save is doing is just noted for instance that the the round statement and so 1 . 5 we have to have some tolling to make the build story much more straightforward and a much more sort of door like you right occurred and then hit building works the approximation you could say asserts can happen and yeah better support for accessing more of the indicate more of the 100 and API is and that conventions and bindings recalling from Java and also to Eilis's is really exciting so the exhibition I for this kind of thing going on in the background for several years now and they're actually looking at merging them into the course of a 1 . 5 and so that's that's really cool the and then also relates events as new architectures so the band power PC 64 there's a part 64 system this they're actually really amazing if you have 1 that's why none of us have and the huge an awesome I'm very industrial kind of settings the useful for and also on 64 is in the works and when images are missing working hard on 1 with that of the full and took out his 64 is basically done there is a bill the running a part the test so that will probably be 1 . 5 and 164 they have a stretch goal to have a branch in the in the main reported by 1 . 5 so when the available but it'll be in development and 64 of course is important for IIS development because of a 64 bit and processes in the new Apple funds them and you can actually see work-in-progress Cervantes 4 in that did have report you and this a new execution traces of that will be part of the agora toolchain and so you'll be able to enable execution tracing in your go binary and basically that means you go program what Don tons of information to disk and about what the program is doing and when and then you can use and the the true rules trace view which is a tool ProMiner sure which team built at 1st but both ended and current use this and to generate diagrams and explore and these kind of logs of and information so this is a so the shaman on screenshot but basically you can see which processes are running which card when this is like a GC pause and and you can see like what's happening there and then and you can also see like the number of hurricanes not stuff and when you click on these things you can actually say like which function it is and what it's executing and other information stack this is showing this GC thing but there's so a lot of information and and this seals the chamber changes to put this into the core rural sent out of the last week or so and ends yeah that's all rolling into the designed occupancy at that you're all here this is a pretty excited about and alan Donovan and some others have been working on tools for and getting information about and also the manipulating and programs and some of that is already in the tools repository and their tools like all graphs to sort of dump to call ref group program which is useful piping into other systems that can visualize that kind of stuff and and the 2 tools Gomez packaging very name that can be used to and in a type-safe or near fathers and safe way and change names of things move things around just to make it easier to like correctly refactor programs and those those programs are a fused now and I also saw a demo of a person called sock drawer which is I'm still in in in change has being reviewed somewhere but basically and that allows you to take a package and say I wanna move this part of the package into another package and will grab all the internals it needs and and only take this sort of internal dependencies of those public that's and so that's kind of that should be quite useful if you find itself building util package that is grows and grows and grows and you should do that but if you do that would be a useful tool for you and Brad has been mostly leading charge in this been helping by reviewing his code that basically we have an hour on made continuous in the structure of and largely because and when you developing a programming language you kind of at the very bottom of the stack and all of the existing infrastructures work out well for us at the time and but so it's now the new infrastructure is now Running a lot of builders on Google Compute Engine and then we have to be running and always 10 9 opinion on a different from emissions and also windows and pretty soon the really nice thing about it is we can spend huge amounts machines to Chen throughout builds and when the happening and so we get our results will faster and also will be over the tests like speculum speculatively test changes and see if they work commitments which really nice and snarling any big news but it's it's good news for us and this is the view it will be integrated with their but it's not right now and that another call thing that it's given us is this tool called garment and which I condemn really quickly basically a really common thing for us is and you'll you'll break something and 1 you'll you'll break something on open this day and then you realize had a wife
exterminated and is inching your uncertainty is still builders is an e-mail you know that give you what was your ssh keys and Morgan in on crater accounts like the it was a time instead now we can say German create and and spent within and running exactly that builders environment and and I probably shouldn't this before I started of the talk the takes about 30 seconds and this is sitting rules Compute Engine API as and and starting a new a new VM which is running it uh image that we pre built and it's stored in Google Cloud Storage somewhere and and then once the instances created a waitress to bring up the instance actually pulls down a version of this bill would program which is a program that is licensed by a city and awaits instructions and from from me the user and announced created I can actually say like I can issue commands to it and so for so I can say you just list the false history and it will run on the remote server and then show me the the results and more interesting is I can say and I can put a tough file from my system Maureen this profile the nice thing is I can say I wanna put got revision and whatever that is in the I can put this Corvision and about sorry that's because of the in the in the hollow yeah OK happen you didn't know yet data I mean screen so wasn't sure would work and then I can put and a particular revision Alexa's pull it out of source control and the nice thing is that revision can be and any revision that you've uploaded 3 Garis so it could be an in-progress change that I have or something like that and and so once that's being shoved on finishing the machine FIL return to start typing I can now of put it I can run the instead of being a less I can run so such make batch and actually start building you go on that machine so now I'm getting the standard output narrow so that 1 running around and so this is this is going to be really nice for us as development thing it may get spun out into something more generally useful and was honestly that running the goal of the blue and right now contributor can use directly unless you're 1 of the candidates and you have the key that will give out and that's largely because of then gives you the abuse that program gives you access to about Google Cloud and uh project and so you could like create instances and sort a botnet or something when a user imagination and 0 yeah so the idea would be that you can use your UBS specify your and project and using a itself and use pay for like I think it will they contingent charges you by the minute after the 1st 10 minutes or something so it's actually quite conceivable that the quenching to work that way all and so that's the go call and as far as the communities concerned there's a bunch of God conferences around the world and and more to be announced fostering query our a and this gothic on India and in Bangalore and that's what was called Bangalore hindered they renamed the city recently the must in really difficult and the this go con in Tokyo and it's been happening twice a year for lost 2 or 3 years so it presumes going to continue happening and this got the con in Denver than did it when he got a Gothic on a few people did yeah and so it's going to be like twice the size this time and which lowered scary and but that should be great if we had a great time last years of the disregard here at all instances and hence doctor will be happening in Paris and later in the year that is more stuff that I'm aware of that I like that's say that that of equal and and also there is the graphical did anyone anticipate fidelity you a couple people for 1 person so because the goal was a global go hack on that happened last week and and and they were teams that would produce apps that were judged by the usefulness creativity completeness and how will they showcased goes strengths and they didn't just happen online there also your physical locations around the world about 30 of them and when people got together and hung on impact on gross stuff and the really cool prize actually you can get crumble pixel whereas the pi all kinds of techie stuff get have accounts and and a trip to Mexico which was totally amazing and and it's like to Colino which I'm not sure what that's like is a place but basically it's a company's invited is invited invited you to fly you out so you can hang out with them and like hacking their office so is going to the beach whatever but it's on the coast of a that makes no sense so let's have a winner is solely be decided the judging is happening at the moment and then you can actually check out the entries and Edgar forgot the challenge us accomplished emissions and is a highlight a couple of entries that caught my attention therefore pretty cool and there was got got the got the and which is need given uses taller to set up monitoring of your websites so you have these toy exit nodes hitting Europe and websites which is kind of cool my put 1 watch list I don't really know and use your use your best judgment but it seems syndical project am I like this 1 in the
growing size of tips so and
the the the and there was a link there it
is it's got a call the main go along the size of the
tips but basically home I
you can you put a GOstruct and it shows you the packing and the struct so you can see if you wanna optimize the packing of your gross trucks and you it will tell you whether it's often more on and and Our ask the services it will explain and so that's well pact if you put something new small and it becomes amounts and so on that's that's an equal and a like this 1 to a
report card and so website that you give it your of projects input path and it will run like God from to Berlin's the I know and there's a close and God that your around Reaper so if I put something of mine and and run it it will tell me that it's 85 % that all this text the test the cyclomatic complexity of your source code I'll have to look at that later and but is this so telling I mean you know that I should definitely be documenting all this stuff and it's definitely true so put this stuff in there and see how it goes like this curious about and great unit the and and this one's going to give and snogger related but it's written in there and it's a command line tool where you can uh recorded voice message and it will encrypted and is it mailed to someone and so you you know you have like some secret love anyone whispers sweet nothings from the command line the few you can do that so that's that's awesome and the idea this like 128 submissions which is a really great number of good enough reason to look at the mall fiction everyone and so definitely check it out that's what was working and and yeah I had with my slider and there it is and also is was mentioned here here is gone to ago user group made up OK this like not enough nearly recon knows there is a God made up in a city but has never been to a perhaps so you should go to God made up so that's but common which Francesca at and then it actually lists it's a machine-generated list of prominent complained but it lists gotta made outs and their sizes and the cities and so on so look for your place it involves and you look over community and if it is in 1 then the onus is on here I command you to start 1 in your town and mn many kick out of program to start distributing cool things like please watch co-authors and T-shirts and stickers and stuff so all these places so that's the reason enough to allow us to get involved you lose yes yeah please do I mean it's really fun like I run the gourmet up with they've Cheney in Sydney and you know we was an interesting talks and fun things going on you're people tend Benasque rather like that well you know the family 0 yeah yes that's 0 that's in my talk so what be thank you and Questions B yes of and all the right and the question was whether any plans have be versioning in imports of some kind of voting rolls vision management system and the answer is no I wouldn't have any such plans um he talk kind of made me so bad and I really know like what I can do as an individual faces problem the I think that in the x dimension like 0 we should and training export some other way that grew old man is the stuff but the way we manage it is we have 1 giant source repository and we put everything in like everything toward us and all that dependencies and so like when you want update when interdependences you import the latest version of heard from its external repository and check into our report and it means that when at the time to do that you have to update all the core the depends on that winning the structure to run all the tests and so on and but like anybody ever mention this approach to just thinks it's crazy like outside of rule it works really well for us because you have been search supported and because weight is 1 big company where you know we can have policies that state you know you need to not break the build and but you can't just tell someone on the internet to not push to they did have it so it's a little bit the the approach that we take is isn't not 1 next the worked outside and in a global sense although area and per really what it was saying is maybe we should try and and make it possible for organisations like what he was describing modern enterprise to take a similar kind of approach and but he as far as like on an a component on open-source kind Internet level I really like the approach that is stubborn mind took with the packaged on in and which is like version input pulse that's 1 approach and the other approach is just entering everything when you care and the their carriers with both of those approaches and you you still have the diamond dependency problem which is theory be intractable but we actually even of the tools to tell you when that's the case anymore and the other side I think definitely work to be done on notion of what the solutions so I apologize that holy unsatisfying response to questions the site you hello world yet this is the yeah so you're asking what's the deal with large firings and it's actually gotten smaller over the last couple of releases also the question well the question was why go binary so big and Allegheny gets small and and yeah they have been getting smaller but the fact is that all gonna go binaries esthetically linked it instead of feeling like C's Hello world is about half the size of gross Hello World down but this is hello world doesn't do you encourage it can and you know if you type functor print lines hello it actually does a ton of reflection and other stuff to make that possible and acceded Edgar overcome last year of data to acquire broke down what happens when you run HelloWorld physics they a lot baked into that and so I don't really feel like it unreasonably large we do a tracking God to so to reduce the size and the fact is that when you add more to the Gur program doesn't necessarily grow like proportion to the size of the source code this is kind of like a baseline large size fortunately disk space is cheap can in the the internet is fastest no questions but if was the will be some of you are really the yes to the question was how that happens the many progress towards I believe was in Taylor's gonna execution warrants document where describes ways of and calling into Goa occurred from and part other host languages and also calling into other languages from God and and probably David will mention a bit about this in his lining talk on on entering is heavily related to uh to the Running a 100 and I ask you to do that and I a I don't really know but not in like not a huge amount of standard we have the toolchain is open flux right now so work like that it's kind of hard to get done In the changing tree right now the anyone else the well control