gosh | interpreted language for Go ecosystem | Interpreter library
kandi X-RAY | gosh Summary
kandi X-RAY | gosh Summary
Gosh is an interpreted language for Go ecosystem written in Go. It is in super-early pre-alpha stage. It is also an experiment in community building. We are looking for the brave souls who are interested in contributing and be a subject of this experiment. For everyone else: please check out this project from time to time to see when it moves to the alpha/beta stage.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
- NextToken returns the next token .
- init initializes gofuzz data
- eval evaluates the given line .
- main entry point
- readREPLHistory reads the current history file
- Run the REPL command
- getHeader returns the current header
- checkHeader returns true if the header matches the given header .
- New returns a new scanner .
- Fuzz is a go - fuzz function .
gosh Key Features
gosh Examples and Code Snippets
Copyright (c) 2016-2017 Thorsten Ball
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without l
Community Discussions
Trending Discussions on gosh
QUESTION
I'm a beginner and I'm learning BeautifulSoup and want to get information from a website, but the output doesn't write any information, I don't know where I'm doing wrong, gosh, help me
this is my code
...ANSWER
Answered 2022-Mar-21 at 18:14Note There are a few things in your code and I would recommened to keep it simple. Your strategy should be to select by id
, tag
, class
- This order goes from static to more dynamic provided information. In new code use find_all()
instead of old syntax findAll()
Main issue is that your selection soup.findAll('a',href=True, attrs={'container-fluid page'})
wont find anything, so the result is empty. In fact, that there is only one product at this page, it do not need all these lists.
QUESTION
I have the following HTML code of an Angular app which have a menu for each row. I'm looking for the missing piece of code that would make the closeMe() after selecting a name in the mat-select inside the mat-menu for all the rows not only the first one.
Maybe it's something about #menuContacts which is one name set to access the menu by code but I'm not sure.
...ANSWER
Answered 2021-Dec-26 at 16:34The problem is that you want to get each menu trigger, by using:
QUESTION
ptr[97,186,286,380,433,496]
strpar["BRACKENRIDGE: This is March the 7th, 2018. I'm R. Douglas Brackenridge, Professor Emeritus at Trinity University. With me here at Trinity is Jes Neal who is the Trinity University archivist. And we will be interviewing Betty Meadows, who is a Trinity graduate. Now, what years? You came in--? MEADOWS: I came in 1966 and left in 1970. BRACKENRIDGE: Okay, from 1966 to 1970. And you played tennis at Trinity. Is that correct? MEADOWS: I did. BRACKENRIDGE: Did you play any other sports? MEADOWS: No. BRACKENRIDGE: With that bit of introduction, let me just start back and say, how did you end up at Trinity? MEADOWS: [laugh] BRACKENRIDGE: How did you come to Trinity? And did tennis have anything to do with it when you came? MEADOWS: No. No, no. And I hope I'm going to be helpful, but my memory isn't great about all that. But anyway, I came to Trinity because I'm a Presbyterian and I've always wanted to go to a Presbyterian college. And we lived out in West Texas in a little town called Monahans, which is where I learned to play tennis. And when we moved to San Antonio, wow, I was able to just drive across town and go to college. But I stayed in the dorm; I didn't stay in my parents' home or in my home. But it's a school I always wanted to go to because I heard of its reputation. It did have a tennis team, but that's not really why I came. I came for academics. I came because it was a Presbyterian school. BRACKENRIDGE: And it would have been like maybe your (SP) minister that had any influence on you? MEADOWS: No, no. I was going to be a school teacher. My parents--my dad's a principal, my mother's a teacher, my brother's a teacher. I came to be an education major. Had no intention ever of working in a church, ever. And that call from God didn't come until 10 years later. It came in 1980, and it was a really powerful call. So I left--I went to seminary. But it was not my intention. BRACKENRIDGE: Where did you go? To Austin? MEADOWS: Austin Seminary. BRACKENRIDGE: Just an aside, did you know Bill Walker from Grand Falls? MEADOWS: No. BRACKENRIDGE: (INAUDIBLE) Monahans. Grand Falls was pretty close to Monahans. MEADOWS: It is. Yeah. BRACKENRIDGE: Yeah. But he was born and raised in Grand Falls. MEADOWS: Oh my goodness. BRACKENRIDGE: And he said there's no Grand Falls there. MEADOWS: No, there's no Grand Falls. BRACKENRIDGE: So then what did you major in, Betty? MEADOWS: Elementary education. And I took 21 years of Latin. BRACKENRIDGE: Wow. MEADOWS: Yeah, wow. BRACKENRIDGE: How old were you when you really left Monahans? MEADOWS: Sixteen. BRACKENRIDGE: Okay, so you really grew up there. MEADOWS: I did. BRACKENRIDGE: And again, we're focusing on the athletic part, but did you play tennis and that out there? MEADOWS: I did, I did. I started playing tennis in the seventh grade. And we called it junior high in those days. I started in seventh grade tennis. And the reason I started is we didn't have a girls tennis team and they were trying to get players together and the coach said, "You want to learn?" And he sent me to a tournament in three weeks. I had no idea what I was doing. I had no idea how to hit a ball. But I went to the tournament and had a riot. And we didn't win anything because nobody could hit, but at least the school was able to put in a tennis team, a doubles team. And from that point, it just kind of--it was in my blood. I loved it. And I got better and better. And so I played all the way through high school and a good bit through college. In fact, when I graduated, Doug, I actually coached tennis on the side in San Antonio for a number of years, and loved it. I taught boys and girls how to play. And then when I moved to middle school and started teaching sixth, seventh, and eighth graders, I was the tennis coach after school. And I loved it. I mean, I just loved it. It was a great way to work with kids and give them some support and teach them a skill and teach them also what is etiquette and what is tennis etiquette. And if you threw your racket or said curse words, I withdrew you from the tournament and said, "That's tough." [laugh] Anyway, but I just loved it. Tennis was a great--get you in the sun, got you exercise, got you with other people. Competitive but not too competitive. I mean, it's competitive enough. So, it really became a way of life. And that went into racquetball and then that went into running. And now I just go to the Y during the day. So it's just an active lifestyle. BRACKENRIDGE: Back then, what were your feelings about the fact that that women didn't have much opportunities to do these? That the men were in all these sports. Was that an issue when you were younger or was that not something you really thought much about? MEADOWS: Well, I didn't think much about it because in high school, we had a woman's basketball team. We had a woman's volleyball team. Now we had a woman's tennis team. So I don't think I thought much about it. It wasn't a plus or minus. It was just I wanted to play (INAUDIBLE). BRACKENRIDGE: Did you feel like there was much more interest in the men's sports and the women's were kind of considered just a (INAUDIBLE)? MEADOWS: Always. Always. Always. Because the men could run the whole floor in basketball. They (INAUDIBLE) football. BRACKENRIDGE: The basketball, was it still the stationary, where you couldn't--you didn't play full court? MEADOWS: You could only play half court. BRACKENRIDGE: Right. Well, they were still doing that in the early 1970s. They were still playing basketball that way. Right. MEADOWS: Yeah. The women were thought to be very brittle, very fragile. (INAUDIBLE). And I didn't think much about that either, really. I really didn't think much about that. I just knew that I liked to play tennis, and so I played tennis. And you could be as rough or you could play singles or you could play doubles and you could have mixed doubles. Yeah, yeah. I don't think I thought much about the fact that women didn't have the money. Because Trinity wasn't a big athletic school. BRACKENRIDGE: No, no. MEADOWS: It really wasn't. If I had been going--gone to University of Texas or Alabama or Georgia where you would have seen tons of money put into men's sports, it might have hit me differently. But sports were just kind of an add-on at Trinity. It wasn't-- BRACKENRIDGE: Right. Well, particularly--but tennis was the one big thing. MEADOWS: It was. It was. BRACKENRIDGE: Tennis--not in your days so much, but very shortly thereafter, that was the one sport that women could get scholarships in. And it always got high priority and publicity and an interest, where the other sports were in a definitely lower category. Tennis was a much bigger thing. MEADOWS: Yeah. So when I was there, I don't remember a lot of money being put into scholarships for sports. BRACKENRIDGE: No, there wasn't any. Of course, there wasn't any women's team then, either. So tell me, who helped you or how did you do it? Do you remember? MEADOWS: I am guessing that when I registered and I asked, "When does tennis start and where can I show up?"--and I showed up. I'm sure I just went down to the courts with my racket and talked to the coach. BRACKENRIDGE: You mean the coach Clarence Mayberry? It wasn't Shirley Rushing? Would she have anything to do with that then? MEADOWS: Shirley Rushing, I can't remember when she started. Was she there in 1966? BRACKENRIDGE: Oh, she was there in 1962. She was there in 1960. MEADOWS: Okay, because it was a female coach, so it had to be Shirley Rushing. BRACKENRIDGE: Yeah, that's who would have--yeah, because they didn't have any female coaches. There weren't any listed. She was the only woman in the PE department. MEADOWS: Okay. She was our coach. BRACKENRIDGE: Okay. [laugh] All right. I think that--okay. MEADOWS: She showed up, too. We showed up; she showed up. And we traveled to tournaments. We would all jump in the car. BRACKENRIDGE: I know she went to the tournament with you. MEADOWS: Yeah, she did. She did. BRACKENRIDGE: I guess what I'm asking you--was there any, quote, "coaching" going on or was it just you showed up and played? MEADOWS: No. There was no coaching. We just all got out on the courts and played. We just played our hearts out. BRACKENRIDGE: And then how did you decide who's going to play number one and number two? Would she have something to do with that or did you all--? MEADOWS: Well, we all knew who was number one. That was Emilie Burrer. We all knew that. BRACKENRIDGE: Well, but this is before Emilie Burrer. MEADOWS: Oh, before Emilie? BRACKENRIDGE: 1967, there's no Emilie Burrer there. MEADOWS: When did Emilie come? BRACKENRIDGE: 1968 and 1969. MEADOWS: Oh gosh, I forgot. I don't know who was first. BRACKENRIDGE: That's what I'm saying. You have Mary McLean, Ginger Parker (SP), Sally Goldschmeding, Betty Meadows and Elise Folden (SP) for 1967. So that's why this is so hard to figure out, because we didn't have all these formalities. We didn't have Trinitonian articles about it. And then even Shirley, she doesn't remember everything. I mean, I don't remember--you ask me about what I did in 1967 or 1968, I couldn't tell you. I'd have to go back and try to research it. [NEAL]: I wonder, were Mary McLean and Ginger Parker kind of the number one spots? Because (INAUDIBLE)-- BRACKENRIDGE: Well, I think Mary McLean was a noted player. I mean, I think she was-- [NEAL]: Yeah, she was in the Beaumont tennis tournament. And this is all in 1966. She gained, what is it, single competition, she went to the semifinals. BRACKENRIDGE: Yeah. That Mary McLean apparently was an outstanding player. MEADOWS: She was. BRACKENRIDGE: But you just played with each other, right? And you just played against each other? MEADOWS: Yeah, we weren't coached. We just played with each other. And those who wanted to play singles played singles. Those who liked doubles played doubles. BRACKENRIDGE: And what about schedule? Did you just go to tournaments? MEADOWS: No, we worked out almost every day, is what I remember. BRACKENRIDGE: No, but I mean, did you play other teams, so like in San Antonio? MEADOWS: Oh, yeah. We would go to tournaments. But we basically played with each other at Trinity. I don't remember playing any (INAUDIBLE)-- BRACKENRIDGE: You didn't play SAC [San Antonio College] or Saint Mary's [University] or Incarnate Word? MEADOWS: (INAUDIBLE) BRACKENRIDGE: See, they maybe--not even have a team then. Because there wasn't much going on in that (INAUDIBLE). MEADOWS: Yeah, I don't remember that. I don't remember ever playing another school in San Antonio. I know that we practiced almost every day. I remember walking back to the dorm with my tennis clothes on and I'd shower and I'd go to supper, or study, or whatever. But I don't remember--hmm. (INAUDIBLE) BRACKENRIDGE: Well, did you get to play on the upper courts? On the varsity courts? Or did you go off campus to practice? MEADOWS: No, we played on the varsity courts. We weren't off campus at all. We would play always on campus. BRACKENRIDGE: Okay, but by your time, there weren't tennis courts down by the Sams Center, were there? MEADOWS: No. BRACKENRIDGE: No, they were there by 1970. They were there--1969 or 1970, they built those, because the NCAA was coming for the men's tournament there. But we've read or other tennis players have said that a lot of times it was hard to get on the courts because the men used them a lot and the women just had to grab whatever time they could get to play on. But you don't remember ever having a real problem about that? MEADOWS: Yeah, I don't remember that. I really don't. My memory is [laugh] that we played--there were probably certain hours that the courts were available, I guess. I don't remember. I don't remember jostling around. But my memory is it was a little unorganized. We were just out there enjoying the sport and loving it, making friends, going to tournaments, and going to school. I mean, it wasn't a money thing. It wasn't real organized. We weren't coached. BRACKENRIDGE: And did they like pay for these uniforms? Did they pay for anything, where you're wearing these outfits? No? The white dresses and-- [PERSON]: (INAUDIBLE) MEADOWS: I don't remember them paying for any of that. BRACKENRIDGE: Because now, when you traveled, did Trinity pick up any of the costs? MEADOWS: They did. All travel. BRACKENRIDGE: That would be through the PE department, where you would be getting that money. MEADOWS: Right. The food, expenses, the gasoline, whatever. Right. BRACKENRIDGE: And they paid for your food? MEADOWS: And the hotel. Oh, sure. Whatever our expenses are. And I remember we used to take turns driving. We would all pile into these big cars and we would just all take turns driving until we got there, and then we'd play ball, and then we'd all drive back. BRACKENRIDGE: And most of those would be in Texas, right? You weren't driving out of state? MEADOWS: Right. BRACKENRIDGE: Of course Texas is a big state. You could be driving up in the Panhandle, right, if there was a meeting up there. MEADOWS: Right, right. BRACKENRIDGE: And I noticed--well, I didn't bring that picture, but one of the teams was showing that they got some fancy coats. I don't remember--I thought I--that might have been a little bit later that they had some jackets that they bought, that they made or something. But that might have been after your time. MEADOWS: Yeah, I don't have any of that. No. BRACKENRIDGE: But my assumption is that Shirley Rushing was arranging all this. MEADOWS: That's my memory. BRACKENRIDGE: They often call her the sponsor. They don't call her the coach. They call her the sponsor. So I'm assuming that that's what that role meant more. Because she was a full-time PE teacher and that; she wouldn't have a lot of time to do a lot of coaching. And I don't know that tennis was her first sport. I don't think Shirley ever--I don't know that that was her sport, anyway. MEADOWS: I don't think so. Yeah. I think she was kind to organize it and to take us to tournaments and let us play. But it was for me maybe extra-intramural, extramural, whatever. BRACKENRIDGE: Jim Potter, was he there by the time you were there as intramural, do you remember? He didn't really come until like 1967 or 1968. But you weren't really involved that much with intramurals. MEADOWS: No, no, just--no. BRACKENRIDGE: It was just more the tennis, okay. MEADOWS: Just tennis. BRACKENRIDGE: So again, just that I make sure I understand, more or less your memory is that it was at registration that you were asking about tennis and somebody told you where to go, or whatever, to meet with somebody, and that's where some of the women got together, and that Shirley was the one that kind of organized it. MEADOWS: Right. She organized it, but my memory is the kindness of Emilie Burrer. Emily Burrer would work with you on any skill, any forehand, any backhand, any serve that was giving you trouble. She was just a really wonderful teammate. And she would give her time to coach any of us because there was no coach. BRACKENRIDGE: Okay, well, see, that's something that I had no idea about. And it was her winning that kind of elevated the women's tennis. MEADOWS: Yes, she was a dynamite. She was awesome. Yeah. BRACKENRIDGE: And so when she came, it was still pretty much the same thing, right? That you didn't really have a coach. MEADOWS: No. BRACKENRIDGE: And it was Shirley who would be the person who would be doing whatever was needed to be done. Is that pretty much your memory? MEADOWS: That's my memory, right. Maybe Shirley's role was to get us registered into conferences, to send the entry fee to get us there, house us, bring us back. More of an administrator, I'm guessing, for us, yeah. (INAUDIBLE) BRACKENRIDGE: One of the things that that we have--this is a kind of a side project that--you know, they have this kind of Hall of Fame for athletes here at Trinity, and I think--we think she ought to be recognized for all that she did. See, the kind of things you're talking about, nobody has any idea that that she would be involved in any way about helping. And we've got other stories where the people are saying the same kind of thing that you're saying. Oh, that she helped us and she did this and she did that. So do you remember any other kind of contact with Shirley or you had any classes, or not particularly? MEADOWS: No. It's a long time ago! BRACKENRIDGE: I know it is. I know. If you want to chime in here now--the only thing that I would ask again was your impression of--what was the feeling amongst the other students about women's tennis? Was it a big thing or a little thing or nobody paid much attention to it? Do you have any memories of that or was that not something that was of a concern to all of you? MEADOWS: I don't have any impression that it mattered to the student body. The impression I have is that we enjoyed playing and we enjoyed being with each other. We enjoyed just the athleticism. But it wasn't a big thing for the school. That's my impression. I mean, there weren't accolades, or Emily wasn't held up for all the wins she's made. Because she was our star when she got there. Yeah. I think we played because we loved the sport. We played because it was just an exhilarating feeling to go work out and come back and study. It just was great to work out all the tension through classes, and pressure. I think that was true for all of us. It wasn't awards or it was important to the school or we were in anyone's heyday of--you know. BRACKENRIDGE: Were you aware of like what later became the AIAW? When you went to these tournaments, there were different sponsors. There were invitational tournaments where the school would invite, or this larger women's group. I don't think that was as well organized when you were playing. It was more in the 1970s that it became-- MEADOWS: Right, right. I preceded that. BRACKENRIDGE: One more question. Was there any difference that you got out of playing tennis--did that add to your experience at Trinity in your education? Were there any values you see getting out of that? What would be your mindset on that? MEADOWS: I think sports are good for all people. It's a holistic kind of thing. You learn how to win well. You learn how to lose well. You learn how to compete. You learn how to care for your opponent. You learn how to treat somebody who you just beat. You learn how to work with your classmates and your other team members who lost and didn't think they were going to. It's a whole lot of life skill that comes together in sports. And winning is not the major thing, although it's important. But I think it was the whole roundedness of being an individual. That life isn't just about good grades. It's not just about always winning. But it's about how we get along with each other in the midst of all that stuff. So the life skills were, "I'm never going to be number one, and that's okay with me. I don't have to be number one in everything. I'm a good student. I'm gonna be really good at certain things. But other things I'm gonna be the mediocre." And that's a good thing to know. And mediocre is just fine. I'm never gonna be Emilie Burrer or these other people. But I can learn from them. And to be around an Emily who was so gracious with her time and her technique showed me how to graciously be a number one in anything. Her modeling was wonderful, so that you know later in life if you're number one in anything, you share what you know. It's not all about you. So I think sports is a great teacher. It's a great teaching moment for a human being. BRACKENRIDGE: That's wonderful. That's very eloquent. So what have you done in later life, Betty? You taught. You taught in the public schools? MEADOWS: I did. I taught 10 years in public school. And then I went to seminary and had a small church out in West Texas that I just adored, and wanted to be a pastor forever. But God always has God's ways. And so then I went to Atlanta where I was on the presbytery staff. So then I began to shepherd 110 churches in evangelism as an associate exec. I did that seven years. And I thought, "Oh, this is great. I could just stay here." "No," God said. "No." So then I went to Louisville as the exec. And I was the exec, the top administrative person, for 16 years, in Louisville, Kentucky, for Mid-Kentucky Presbytery. And I thought, "Oh, this is great. I'll retire from here." God said no. So then God brought me to Charlotte where I'm a transitional--general presbyter. So I've shepherded a presbytery that was broken and there was no trust. Lack of transparency. Racial issues, theological issues. And my time here is coming to an end, and we have--by God's grace and a lot of people volunteering, we've been able to heal this presbytery. God has worked with us on that. And now the new person is coming May 1 and I retire! And it has been a wonderful, wonderful journey of--thought I was going to teach forever. No. Thought I was going to be a pastor of a church forever. No. Thought I would be a general presbytery. No. I mean, every time I said, "God, this is it," God said, "Oh, no, it isn't." But I am going to retire. BRACKENRIDGE: But you're not going to stop. MEADOWS: I'm not going to stop , no. I'm going to go back--before seminary, I was teaching school, but I was working with battered women and pregnant teens. And so all I want to do is go back to hands-on street work, just volunteering my time for the sake of somebody else. And I don't need a title, don't need an office, don't need a salary to do that. And I don't need to go to another country. There's enough need in my backyard here in Charlotte. So it's come full circle, Doug Brackenridge. Full circle. So I retire from professional ministry but never from ministry. BRACKENRIDGE: Well, I guess when they say you're honorably retired, that leaves a lot of room for activity, doesn't it? MEADOWS: Tons of room. Tons of room. Yeah. BRACKENRIDGE: So it seems like--I know that there's much more involved in a ministerial call, but it seems like what you said so eloquently about tennis are exactly what you had to deal with in becoming a Presbyterian, a woman pastor, and dealing with all these issues and working with people and having to solve problems. That some of those things you learned a bit during your college years probably carried over. MEADOWS: It did. It did. I mean, what we can learn in athletics really carries through life. And also keeps our bodies healthy so that--my mother's about to turn 100, and I may follow her and I may not. We'll see. BRACKENRIDGE: Well, I was trying to think--we did meet one time. I don't remember whether it was at a general assembly. But it seemed to me we met--there was something else going--I mean, I was in Charlotte doing some research and maybe I met you at some event there, but we did meet. I remember meeting. MEADOWS: We did. I remember that, too. It was a while back. I don't remember--but it was a while back. But that's right; I remember. And I remember your class. I remember your--you had the first religion class. And I remember this strange movement inside of me one day when you were teaching. And I thought, "What is that?" And I was being drawn into ministry. Because it took 10 more years for that seed to develop roots and sprouts. But it started in your class, Doug Brackenridge. BRACKENRIDGE: Well, sometimes you don't ever hear much from students in the past, but sometimes you find, though, that many students have never been introduced to what you'd call the academic study of religion. They've never had that. And it comes as a shock to them. I know it did to me when I was in college. But that it's liberating if it's something that you can view as positive and not negative. You learn that there's something more to learn that you don't know, and you kind of move out. And I think that's one of the things that a liberal arts school should do for somebody. Not to indoctrinate them, but to open up some doors or some windows that they can look through and say, "This is the way I'm gonna follow, but I'm aware there are other ways around." That this is not for me or this is for me. But at any rate, as always, it's a pleasure, isn't it? Every time we do this, it's like we just say, "Wow." Because we're looking at newspaper clippings and we're looking at whatever, and even though I was on the campus then, I wasn't thinking about. You know, with all the little kids and family and new professor. And wow, I was just in over my head. I had never done any teaching before. But we're just so amazed at the lives of--that why we want to kind of bring this bit of history back. Because there's a richness there that is going to be lost. Already there are people from your era that are gone. So we're wanting to be able to get first hand. Because there's no way that we could learn what you said, right, without you telling us. And maybe we find somebody else who's going to tell us, but we can't find that in any of our archives. We can't find that. So we appreciate you giving the time. And I hope you, if you do come back, get back down to San Antonio, that you'll make a point of letting me know and letting us know so we can see you. [END INTERVIEW]"]
...ANSWER
Answered 2021-Nov-29 at 18:23Here is working code
I had to assume some stuff since prt[] and strpar[] is not correct JS
Also you had a }
too many
QUESTION
I have a batch of files "srt" I want to merge
sub1.srt
...ANSWER
Answered 2021-Nov-07 at 15:04You could try the following:
QUESTION
I am working with a third party library which acts as an interface to a pub-sub message broker. The broker is Solace PubSub+.
For subscribers, the vendor library employs a "push messages via callback" pattern.
I am writing a my own wrapper library around the vendor library to make it easier for other devs to work with (hiding all of the internals of how the library communicates with the network and so on).
In that same vein, I think it might be helpful to to expose a subscriber feed as an IAsyncEnumerable
, and I think this might be a good use case for System.Threading.Channels
. I have two concerns:
- Are channels appropriate here, or am I overengineering this? Ie, Is there a more "C# idiomatic" way to wrap callbacks?
- Is my
EnumerableBroker
wrapper implementation safe, or have I fallen into an async trap somewhere?
I realise the first question might be a better fit for CodeReview than SO, but since the answer to that also ties in with the second concern, it seems appropriate to put them together. Worth noting: I am avoiding IObservable
/ Rx, since my goal is to make my interface more basic than the vendor's, not to require that the other devs and myself learn Rx! Understanding how the producer and consumer processes are independent is also trivial with the channel in the middle, whereas with an observable my first mental process is "Ok, so are the producer and the consumer still independent? At first glance it looks like I have to learn about schedulers now... gosh, how about I just use an await foreach
?"
Here's a minimal mockup of consuming messages without the EnumerableBroker
:
ANSWER
Answered 2021-Sep-04 at 16:00Am I overengineering this?
No. A Channel
is exactly the kind of component you need in order to implement this functionality. It's a quite simple mechanism. It's basically an async version of the BlockingCollection
class, with some extra features (like the Completion
property), and a fancy API (the Reader
and Writer
facades).
Is my EnumerableBroker wrapper implementation safe, or have I fallen into an async trap somewhere?
Yes, there is a trap, and you have fallen to it. The SingleWriter = true
configuration means that at most one WriteAsync
operation is allowed to be concurrently in-flight. Before issuing the next WriteAsync
, the previous must be completed. By subscribing to the broker
with an async void
delegate, you are creating essentially a separate writer (producer) for each message pushed by the broker. Most probably the component will complain about this misuse by throwing InvalidOperationException
s or something. The solution is not to switch to SingleWriter = false
though. This will just circumvent the bounded capacity of the Channel
, by creating an external -and highly inefficient- queue with messages that don't fit in the internal queue of the Channel
. The solution is to rethink your buffering strategy. If you can't afford to buffer an unlimited number of messages, you must either drop messages, or throw an exception and kill the consumer. Instead of await buffer.Writer.WriteAsync
, it's better to feed the channel synchronously with bool accepted = buffer.Writer.TryWrite
, and take an appropriate action in case the accepted
is false
.
Another consideration that you should have in mind is that the ChannelReader.ReadAllAsync
method is consuming. This means that if you have multiple readers/consumers of the same channel, each message will be delivered to only one of the consumers. In other words each consumer will receive a partial subset of the channel's messages. You should communicate this to your coworkers, because it's quite trivial to enumerate the same IAsyncEnumerable
more than once. After all an IAsyncEnumerable
is nothing more than a factory of IAsyncEnumerator
s.
Finally, instead of controlling the lifetime of each subscription by a CancellationToken
, you can make your coworkers' lives easier by just terminating a subscription automatically when the enumeration of an IAsyncEnumerator
terminates. When an await foreach
loop ends in any way (like by break
or by an exception), the associated IAsyncEnumerator
is automatically disposed. The C# language has cleverly hooked the DisposeAsync
invocation with the finally
block of the iterator, if a try/finally block wraps the yielding loop. You could take advantage of this great feature like this:
QUESTION
I'm working with the AMI transcriptions dataset (link) and converted the Words files into dataframes. Example of dataframe:
index speaker word_id word start_time end_time 0 E 0 'Kay 3.34 3.88 1 E 1 . 3.88 3.88 2 A 0 Okay 5.57 5.94 3 E 2 Gosh 5.6 6.01 4 A 1 . 5.94 5.94 5 E 3 . 6.01 6.01 6 E 4 'Kay 10.48 10.88 7 E 5 . 10.88 10.88 8 A 2 Does 11.09 11.25 9 A 3 anyone 11.25 11.5 10 A 4 want 11.5 11.65 11 A 5 to 11.65 11.71 12 A 6 see 11.71 12.15 13 A 7 uh 12.15 12.42 14 A 8 Steve's 12.42 12.94 15 A 9 feedback 12.94 13.5 16 A 10 from 13.5 13.71 17 A 11 the 13.71 14.73 18 A 12 specification 14.73 15.53 19 A 13 ? 15.53 15.53 20 E 6 Is 16.77 16.94 21 E 7 there 16.94 17.04 22 E 8 much 17.04 17.25 23 D 0 I 17.08 17.34 24 E 9 more 17.25 17.53 25 D 1 I 17.34 17.47 26 D 2 dry-read 17.47 17.92 27 E 10 in 17.53 17.63 28 E 11 it 17.63 17.73 29 E 12 than 17.73 17.88 30 E 13 he 17.88 18.0I define an utterance as follows: a list (sequence) of words by the same speaker, in which each consecutive words are spaced by no more than 0.5 seconds. Spacing between two consecutive words A, B is defined as the delta between the end time of A and the start time of B.
So for example, in the above data, we have the 7 utterances:
- ['Kay, .] by speaker E (at indices 0, 1)
- [Okay, .] by speaker A (at indices 2, 4)
- [Gosh, .] by speaker E (at indices 3, 5)
- [Kay, .] by speaker E (at indices 6, 7)
- [Does, anyone, want, to, see, uh, Steve's, ..., ?] by speaker A (at indices 8-19)
- [Is, there, much, more, in, it, than, he] by Speaker E (at indices 21-22, 24, 27-30)
- [I, I, dry-read] by speaker D (at indices 23, 25-26)
My goal is to extract the utterances as shown above - by creating a list of words representing each utterance, and indicating the speaker of that utterance. In addition, I need to indicate whether there was any cross-talk during the utterance. Utterances with continuous indicies are those that have no cross-talk. In the above example, these are 1, 4 and 5.
I tried several directions but didn't find how to perform the grouping correctly.
Thanks for any help.
...ANSWER
Answered 2021-Sep-19 at 19:37This one was quite tricky but fun to do :
We can start by groupby shift
for each speaker
:
QUESTION
const users =
[
{
_id: "5fbfa729fc46a415ce5503a6",
first_name: 'Allen',
last_name: 'Border',
timestamp: 1606395689121,
key: [ "5fbf6f91aff7f3320a906547", "5fbfa748fc46a415ce5503a8" ]
},
{
_id: "5fbfa6fbfc46a415ce5503a4",
first_name: 'james',
last_name: 'roger',
timestamp: 1606395689125
},
{
_id: "5fbf6f91aff7f3320a906547",
first_name: 'david',
last_name: 'gosh',
timestamp: 1606395689130,
key: [ "5fbfa729fc46a415ce5503a6" ]
},
{
_id: "5e4e74eb380054797d9db623",
first_name: 'Ricky',
last_name: 'bichel',
timestamp: 1606395689131
}
]
const user_id = "5fbfa748fc46a415ce5503a8";
...ANSWER
Answered 2021-Sep-03 at 09:52You may use Array.prototype.reduce()
the following way:
QUESTION
My question is about function arguments in conjunction with continuations. Specifically, what behavior is required, and what is allowed.
Suppose you have a function call (f arg1 arg2 arg3)
. I realize that
a compliant Scheme implementation is allowed to evaluate the arguments
arg1
, arg2
, and arg3
in any order. That's fine. But now suppose
that, say, arg2
creates a continuation. In general, some of the other
arguments may be evaluated before arg2
is evaluated, and some may be
evaluated after arg2
is evaluated.
Suppose that, in the Scheme implementation we're using, arg1
is
evaluated before arg2
. Further, suppose that f
modifies its local
copy of the first argument. Later, when the continuation created
during the evaluation of arg2
is called, arg3
will be evaluated
again and f
will be called.
The question is this: When f
is called a second time, via the
continuation, what value must/may its first argument have? Does it
need to be the same value that arg1
evaluated to? Or may it be the
modified value from the previous call to f
? (Again, this example
assumes that arg1
is evaluated before arg2
, but the same issue
applies with different argument evaluation orders. I.e., if arg3
is
evaluated before arg2
, then the question applies to arg3
.)
I have tried this in a couple of Scheme implementations, and have obtained
differing results. I took into account different orders of evaluation of
the arguments (it's easy to track it by having the argument expressions
log when they're being evaluated). Ignoring that difference, one
implementation always used the original argument values, and another
sometimes used the original argument values, and sometimes used the
modified argument values, depending on whether f
was an inline
lambda vs. a global function. Presumably the difference is due to
whether the actual arguments end up being copied into the function's
local variables, or whether they are used in-place.
Here is a version that uses a global function:
...ANSWER
Answered 2021-Aug-29 at 22:59A continuation will literally create a copy of the stack in the moment of calling call/cc, copy that is also called a control-point
. The continuation also stores inside it a copy of the current dynamic environment (more precisely, of the state-space from the dynamic-wind module) and a copy of the thread-local state.
So, when you reactivate the continuation, everything will continue from the moment when it was saved. If some arguments were previously evaluated, their evaluation is saved on the stack and the rest of arguments will be re-evaluated a second time. (as a remark, the dynamic state in scheme is implemented over the dynamic-wind module, so saving the dynamic state involved saving the state of dynamic wind, which is a combination between stack and the state-space (a tree keeping the in-out thunks for dynamic-wind calls)).
The stack starts from the top-level (actually there are other stacklets that represent continuations of the shutdown procedures, but those are touched only when you finish your code), they are not memorized when you call call/cc. So, if in a file/repl you gave 2 expressions, such as
QUESTION
I'm building a progress bar for some long-running server-side tasks (up to a few minutes), and I'd like a way to display the progress of the task. I could use WebSockets or poll on intervals, but I don't want to keep track of each task. Instead, I'd like to use long-polling and write progress updates to the stream.
Here is a demo of what the route should look like on the server
...ANSWER
Answered 2021-Jul-23 at 20:39According to this GitHub issue:
https://github.com/ratpack/ratpack/issues/443#issuecomment-59621215
This is a Chrome/Webkit bug. Changing the Content-Type
of the request from anything other than text/plain
makes it work with XHR
on Chrome. So if I change the server response to
QUESTION
I have been using Detectron2 for recognizing 4 keypoints on each image, My dummy dataset consists of 1000 images, and I applied augmentations.
...ANSWER
Answered 2021-Jul-15 at 13:10The problem is that there's nothing unique about the different corners of the rectangle. However, in your annotation and in your loss function there is an implicit assumption that the order of the corners is significant:
The corners are labeled in a specific order and the network is trained to output the corners in that specific order.
However, when you augment the dataset, by flipping and rotating the images, you change the implicit order of the corners and now the net does not know which of the four corners to predict at each time.
As far as I can see you have two ways of addressing this issue:
Explicitly force order on the corners:
Make sure that no matter what augmentation the image underwent, for each rectangle the ground truth points are ordered "top left", "top right", "bottom left", "bottom right". This means you'll have to transform the coordinates of the corners (as you are doing now), but also reorder them.
Adding this consistency should help your model overcome the ambiguity in identifying the different corners.Make the loss invariant to the order of the predicted corners:
Suppose your ground truth rectangle span the domain[0, 1]x[0, 1]
: the four corners you should predict are[[0, 0], [1, 1], [1, 0], [0, 1]]
. Note that if you predict[[1, 1], [0, 0], [0, 1], [1, 0]]
your loss is very high, although you predicted the right corners just in a different order than annotated ones.
Therefore, you should make youy loss invariant to the order of the predicted points:
wherepi(i)
is a permutation of the corners.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install gosh
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page