Skip Navigation

Posts
187
Comments
356
Joined
2 yr. ago

  • Woohoo! You didn't even mention: code blocks no longer mangle ampersands and less-than symbols!

    • Is there any way to force it to be recognized as a specific programming language?
    • What library does it use? I'd like to see which langs are supported.
    • Might it become possible to have it use our system/browser-preferred mono font?

    Anyway it looks great and is a much appreciated feature, thank you!

  • I searched and found the project. If you're having the same issue described here, it's been known for a few weeks and

    will be fixed with the next release.

  • I don't know SP or how its shortcuts work, but did you check if you already have those shortcuts assigned in plasma's global shortcuts? The easiest way is to assign them to any plasma global shortcut and see if it tells you there's a conflict.

    If that's not it, can you trigger those SP actions with an external command? Then you could do it through plasma global shortcuts.

  • Thanks!

    I know how stupid this sounds, but I have trouble using or even remembering software until I know how it's spelled and pronounced. Same with human names, really. Does this rhyme with the English word "eyes," or "ice," or neither? Or does it sound exactly like "breeze?"

  • If you want, you could use Telegram without your real phone number by either getting a virtual number from Google Voice or another service, or you could buy a Telegram-only number from their fragment site.

  • Great! If you get a chance, I'd be interested to hear about your rtx complaints.

  • I'm not who you asked, and not a user of pkgx, but one of the reasons I prefer rtx (which supports asdf plugins) to asdf is that by default it doesn't use shims, but updates the PATH instead.

    So for example, running which python will show me a clearly versioned python executable path, rather than a mysterious shim that represents a different realpath at different times.

  • No Zsh support for now, and maybe no user fonts?

    And a warning: it's got telemetry on by default.

  • Concatenative Programming @programming.dev

    The Factor Attraction (2007)

  • Factor on github (with comments and imports):

     
        
    ! hand: "A23A4"
    ! card: 'Q'
    ! hand-bid: { "A23A4" 220 }
    
    : card-key ( ch -- n ) "23456789TJQKA" index ;
    
    : five-kind?  ( hand -- ? ) cardinality 1 = ;
    : four-kind?  ( hand -- ? ) sorted-histogram last last 4 = ;
    : full-house? ( hand -- ? ) sorted-histogram { [ last last 3 = ] [ length 2 = ] } && ;
    : three-kind? ( hand -- ? ) sorted-histogram { [ last last 3 = ] [ length 3 = ] } && ;
    : two-pair?   ( hand -- ? ) sorted-histogram { [ last last 2 = ] [ length 3 = ] } && ;
    : one-pair?   ( hand -- ? ) sorted-histogram { [ last last 2 = ] [ length 4 = ] } && ;
    : high-card?  ( hand -- ? ) cardinality 5 = ;
    
    : type-key ( hand -- n )
      [ 0 ] dip
      { [ high-card? ] [ one-pair? ] [ two-pair? ] [ three-kind? ] [ full-house? ] [ four-kind? ] [ five-kind? ] }
      [ dup empty? ] [
        unclip pick swap call( h -- ? )
        [ drop f ] [ [ 1 + ] 2dip ] if
      ] until 2drop
    ;
    
    :: (hand-compare) ( hand1 hand2 type-key-quot card-key-quot -- <=> )
      hand1 hand2 type-key-quot compare
      dup +eq+ = [
        drop hand1 hand2 [ card-key-quot compare ] { } 2map-as
        { +eq+ } without ?first
        dup [ drop +eq+ ] unless
      ] when
    ; inline
    
    : hand-compare ( hand1 hand2 -- <=> ) [ type-key ] [ card-key ] (hand-compare) ;
    
    : input>hand-bids ( -- hand-bids )
      "vocab:aoc-2023/day07/input.txt" utf8 file-lines
      [ " " split1 string>number 2array ] map
    ;
    
    : solve ( hand-compare-quot -- )
      '[ [ first ] bi@ @ ] input>hand-bids swap sort-with
      [ 1 + swap last * ] map-index sum .
    ; inline
    
    : part1 ( -- ) [ hand-compare ] solve ;
    
    : card-key-wilds ( ch -- n ) "J23456789TQKA" index ;
    
    : type-key-wilds ( hand -- n )
      [ type-key ] [ "J" within length ] bi
      2array {
        { { 0 1 } [ 1 ] }
        { { 1 1 } [ 3 ] } { { 1 2 } [ 3 ] }
        { { 2 1 } [ 4 ] } { { 2 2 } [ 5 ] }
        { { 3 1 } [ 5 ] } { { 3 3 } [ 5 ] }
        { { 4 2 } [ 6 ] } { { 4 3 } [ 6 ] }
        { { 5 1 } [ 6 ] } { { 5 4 } [ 6 ] }
        [ first ]
      } case
    ;
    
    : hand-compare-wilds ( hand1 hand2 -- <=> ) [ type-key-wilds ] [ card-key-wilds ] (hand-compare) ;
    
    : part2 ( -- ) [ hand-compare-wilds ] solve ;
    
      
  • Day 07 (Factor)

    • It works, but I'm not clever so:
      • part 2 is slow
      • part2 duplicates stuff from part1
      • you can see some changes in the git history
    • on github
    • on programming.dev
  • Konsole is my second favorite terminal app. Wezterm may be your holy grail.

  • Factor on github (with comments and imports):

    I didn't use any math smarts.

     
        
    : input>data ( -- races )
      "vocab:aoc-2023/day06/input.txt" utf8 file-lines     
      [ ": " split harvest rest [ string>number ] map ] map
      first2 zip                                           
    ;
    
    : go ( press-ms total-time -- distance )
      over - *
    ;
    
    : beats-record? ( press-ms race -- ? )
      [ first go ] [ last ] bi >
    ;
    
    : ways-to-beat ( race -- n )
      dup first [1..b)          
      [                         
        over beats-record?      
      ] map [ ] count nip       
    ;
    
    : part1 ( -- )
      input>data [ ways-to-beat ] map-product .
    ;
    
    : input>big-race ( -- race )
      "vocab:aoc-2023/day06/input.txt" utf8 file-lines             
      [ ":" split1 nip " " without string>number ] map
    ;
    
    : part2 ( -- )
      input>big-race ways-to-beat .
    ;
    
      
  • Day 05 (Factor)

  • Day 04 (Uiua), by reddit user red2awn

  • Concatenative Programming @programming.dev

    Tal is the programming language for the Uxn virtual machine

    Concatenative Programming @programming.dev

    Advent of Code 2023

    Concatenative Programming @programming.dev

    Meow5 (concatenative assembly): The Conclusion

    Concatenative Programming @programming.dev

    Magic Dict example | Re: Factor

    Concatenative Programming @programming.dev

    Om, a prefix style concatenative language

    Concatenative Programming @programming.dev

    Roc has a great new website!

    Concatenative Programming @programming.dev

    Anonymous Predicates | Re: Factor

    Shell Scripting @programming.dev

    olets/zsh-test-runner: Straight-forward tests and coverage reports for Zsh (and emulated csh, ksh, sh)

    KDE @lemmy.kde.social

    Will it be possible to generalize a launch-or-focus script in the world of Wayland, at least when using Kwin?

    Concatenative Programming @programming.dev

    SMAC: single threaded, multi threaded, networked | Re: Factor

    Concatenative Programming @programming.dev

    Memoization Syntax | Re: Factor

    Concatenative Programming @programming.dev

    Talk: "Concatenative programming and stack-based languages" by Douglas Creager, at Strange Loop 2023

    Concatenative Programming @programming.dev

    Uiua: A stack-oriented array programming language

    Concatenative Programming @programming.dev

    code.golf now accepts Factor solutions

    Concatenative Programming @programming.dev

    New concatenative Discord server

    Python @programming.dev

    svcs: A Flexible Service Locator, from Hynek Schlawak

    Concatenative Programming @programming.dev

    Programming with Interaction Nets

    Python @programming.dev

    Textual Web takes a Textual-powered TUI and turns it in to a web application

    Linux @programming.dev

    Dinit Release v0.17.0: First Beta release